MCP Tools

The agent-facing interface. These tools are what your AI agent calls directly.

The Memento Protocol MCP server exposes tools that map to the SaaS API. Each tool call makes an HTTP request to the Workers endpoint.


Session startup

memento_init

Initialize a workspace.

Verifies workspace exists (auto-creates if needed). No parameters. Run once when setting up a new project.

memento_health

Workspace health report.

No parameters. Returns memory counts (active, expired, consolidated), working memory staleness, skip list count, and access log totals. Run this first at the start of every session.


Long-term memory

memento_store

Store a new long-term memory.

ParamTypeDescription
contentstringThe memory content (required)
typestring?fact | decision | observation | instruction
tagsstring[]?Tags for categorization and recall filtering
expiresstring?ISO date for auto-expiry (e.g. "2026-06-01")

Returns an 8-character memory ID. Content is embedded for semantic search automatically.

memento_recall

Search memories by query.

ParamTypeDescription
querystringSearch query (required)
tagsstring[]?Filter to memories with these tags
typestring?Filter by memory type
limitnumber?Max results (default: 10)

Uses hybrid ranking (keyword + semantic). Returns formatted results with scores. Recall before starting any subtask — someone may have already figured it out.

memento_consolidate

Merge overlapping memories into one richer memory.

ParamTypeDescription
source_idsstring[]IDs of memories to consolidate — minimum 2 (required)
contentstring?Your synthesis (recommended). Omit to auto-generate.
typestring?Type for the new memory (default: most common among sources)
tagsstring[]?Additional tags (merged with source tags)

The new memory replaces the originals in recall results. Originals are deactivated, not deleted. Use when recall returns 3+ memories about the same topic.


Working memory items

Structured entries for tracking active work, decisions, skip lists, and more. Use these for orientation at session start — they tell you what's in progress, what's decided, and what to skip.

memento_item_list

List working memory items.

ParamTypeDescription
categorystring?active_work | standing_decision | skip_list | waiting_for | session_note
statusstring?active | paused | completed | archived
querystring?Search title and content

No filters returns all active items. The primary orientation tool — run at session start after memento_health.

memento_item_create

Create a working memory item.

ParamTypeDescription
categorystringactive_work | standing_decision | skip_list | waiting_for | session_note (required)
titlestringItem title (required)
contentstring?Details and context
statusstring?Default: active
prioritynumber?0–10, higher = more important
tagsstring[]?Tags for filtering
next_actionstring?What to do next — tell future-you exactly

memento_item_update

Update a working memory item (partial update).

ParamTypeDescription
idstringItem ID to update (required)
titlestring?New title
contentstring?New content
categorystring?New category
statusstring?active | paused | completed | archived
prioritynumber?New priority
tagsstring[]?New tags (replaces existing)
next_actionstring?Updated next action

Only provided fields change. Update next_action as you make progress — include what was done and what comes next so future-you avoids repeating work.

memento_item_delete

Permanently delete a working memory item.

ParamTypeDescription
idstringItem ID to delete (required)

Prefer archiving (status: "archived") over deletion — archived items are hidden from default views but preserved for history. Only delete items created in error or containing incorrect information.


Skip list

memento_skip_add

Add a skip list entry.

ParamTypeDescription
itemstringWhat to skip (required)
reasonstringWhy it should be skipped (required)
expiresstringISO date for expiry — required. Skips are temporary by design; use memento_item_create with category: "skip_list" for permanent skips.

memento_skip_check

Check a message against the skip list.

ParamTypeDescription
querystringThe message to check (required)

Returns any matching skip entries with their reasons. Auto-clears expired entries.


Identity

memento_identity

Read the identity crystal.

No parameters. Returns the current first-person prose snapshot of who the agent is, what it cares about, and what persists across sessions. Returns a placeholder with setup instructions if no crystal exists yet.

memento_identity_update

Write or replace the identity crystal.

ParamTypeDescription
crystalstringThe identity crystal text — first-person prose (required)

Each update is stored as a new snapshot (history is preserved). Write in first person. Earned identity — distilled from real experience — is richer than anything generated from scratch.


Legacy working memory

These tools manage the original markdown-based working memory. For most use cases, prefer the structured item tools above (memento_item_list, memento_item_create, etc.) — they support categories, priorities, next actions, and status tracking.

memento_read

Read working memory as markdown.

ParamTypeDescription
sectionstring?Specific section key (omit for all)

Returns the full working memory document or a single section as markdown.

memento_update

Update a working memory section.

ParamTypeDescription
sectionstringSection key (e.g., active_work) (required)
contentstringNew markdown content (required)

Configuration

{
  "mcpServers": {
    "memento": {
      "command": "node",
      "args": ["/path/to/memento-protocol/src/index.js"],
      "env": {
        "MEMENTO_API_KEY": "mp_live_your_key_here",
        "MEMENTO_API_URL": "https://memento-api.myrakrusemark.workers.dev",
        "MEMENTO_WORKSPACE": "my-project"
      }
    }
  }
}

Environment variables

VariableRequiredDescription
MEMENTO_API_KEYYesYour API key (mp_live_...)
MEMENTO_API_URLYesAPI base URL
MEMENTO_WORKSPACENoWorkspace name (default: default)

What to read next