Skip to content

MCP Tools

memtomem exposes its LTM features as MCP tools. New users should keep the default core mode: it gives agents the common tools directly and routes everything else through mem_do, which keeps the agent’s visible tool list small.

Set the mode with MEMTOMEM_TOOL_MODE in your MCP client config.

ModeTools exposedUse when
core (default)9 total, including mem_doBest default for most agents
standard38, including mem_doYou want common management tools directly visible
full96 current tools + 1 deprecated aliasYou are debugging, documenting, or using a client that handles large tool lists well

Example:

{
"mcpServers": {
"memtomem": {
"command": "memtomem-server",
"env": { "MEMTOMEM_TOOL_MODE": "core" }
}
}
}

In core mode, the agent sees the tools needed for daily memory work:

ToolPurpose
mem_statusCheck server, storage, embedding, and index status
mem_statsReturn index statistics
mem_addStore a new memory
mem_searchHybrid search over indexed memory
mem_recallBrowse recent or date-filtered memory
mem_indexIndex a file or directory
mem_listList indexed memories / sources
mem_readRead an indexed source file
mem_doRoute all non-core actions by name

Tell the agent what you want in natural language. It will usually pick the right core tool.

mem_do provides access to every remaining action. It takes an action and optional params.

mem_do(action="help")
mem_do(action="help", params={"category": "context"})
mem_do(action="schedule_list")
mem_do(action="context_diff", params={"scope": "project_shared"})
mem_do(action="context_artifact_transfer", params={"asset_type": "skill", "name": "my-skill", "mode": "copy", "to_scope": "project_shared"})

Use mem_do(action="help") from your MCP client to see the action catalog for the installed version.

The full v0.3.10 registry contains 96 current tools. Full mode also keeps the deprecated mem_context_migrate alias (97 registered names total) until its v0.5.0 removal. Pinned Context adds mem_pinned_list/get/set/delete and mem_context_compose; review-first formation adds mem_formation_scan and mem_candidate_propose/list/review/recover.

mem_candidate_propose creates a privacy-scanned pending review item rather than durable memory. It requires content, source, source_ref, and an idempotency_key; approved candidates alone pass through the normal write path.

The npm plugin source exists but is not published. Configure a local MCP server in opencode.json today:

{
"$schema": "https://opencode.ai/config.json",
"mcp": {
"memtomem": {
"type": "local",
"command": ["uvx", "--isolated", "--from", "memtomem[all]==0.3.10", "memtomem-server"],
"enabled": true,
"timeout": 60000,
"environment": {"MEMTOMEM_TOOL_MODE": "core"}
}
}
}

After npm publication, OpenCode uses the singular configuration key {"plugin": ["opencode-memtomem@0.1.0"]}; there is no opencode plugin add command.

CategoryExamples
Namespacens_list, ns_set, ns_assign, ns_update, ns_rename, ns_delete
Tagstag_list, tag_rename, tag_merge, tag_delete
Sessionssession_start, session_end, session_list
Scratchscratch_set, scratch_get, scratch_promote
Context Gatewaycontext_detect, context_init, context_generate, context_diff, context_sync, context_artifact_transfer (move/copy skills, agents, commands across projects and tiers), context_version, context_promote
Maintenancededup_scan, dedup_merge, decay_scan, decay_expire, cleanup_orphans, auto_tag
Import / exportexport, import, import_obsidian, import_notion, ingest
Analyticsactivity, timeline, eval, reflect

Stay in core when:

  • You are setting up memtomem for an agent.
  • You want lower prompt/tool-list overhead.
  • You are not sure which mode you need.

Use standard when an MCP client works better with direct tools than mem_do routing.

Use full when you are testing, writing docs, or manually exercising every tool. full intentionally exposes a large surface.

Most common MCP operations have CLI equivalents:

MCPCLI
mem_statusmm status
mem_addmm add
mem_searchmm search
mem_indexmm index
mem_do(action="context_sync")mm context sync
mem_do(action="schedule_list")mm schedule list

If an agent is struggling to call the right tool, run the CLI command once yourself and then ask the agent to follow the same operation.