add_memory
Stores a piece of text or structural messages as a memory in Mem0.
Give an assistant a memory store it can add to, search by meaning and correct — scoped separately per user, agent, app or run.
LABSCO SUMMARY
Each call carries a scope — user, agent, app, run or session — so a single store can serve several assistants without their recollections bleeding into each other. get_memory_capabilities reports what the configured backend actually supports, so the calls that exist only against the cloud service announce themselves instead of failing mid-task.
A client for Mem0: 16 tools that write memories from text or messages, search them with a similarity threshold and topK, and manage the records afterwards — updates, deletions, ratings, event logs and exports.
A Mem0 API key in MEM0_API_KEY and npx on your PATH. DEFAULT_USER_ID, DEFAULT_AGENT_ID and DEFAULT_APP_ID set the scope calls fall back to.
One command plus a key — npm install -g @pinkpixel/mem0-mcp, then supply credentials
USE CASES
Write what matters as a memory — plain text or the message exchange it came from — with metadata attached, then search it back by meaning with a similarity threshold so the retrieval is not exact-match.
Every call takes userId, agentId, appId, runId or sessionId, so one Mem0 account can back several assistants and listing is scoped to the one you are asking about.
Fetch the record by ID to see what it actually says, update the text if it needs rewording, and delete it when it should not have been remembered at all.
List what is held under that run or session, then delete the IDs in a single confirmed call instead of one request per record.
The revision log shows what a record used to say, and the background event log shows the processing jobs that wrote it — which is what you need when a memory looks wrong and nobody typed it.
An export runs as a job against a schema and instructions you set, then is polled for status and download, so moving or archiving the memory set is not a scrape.
Counted once with only startup setup. Other versions, modes or optional credentials may expose a different list.
add_memoryStores a piece of text or structural messages as a memory in Mem0.
batch_delete_memoriesPerforms bulk deletions of multiple memories.
batch_update_memoriesPerforms bulk updates of text contents for multiple memories (cloud only).
create_memory_exportKicks off an async memory export query job (cloud only).
delete_memoryDeletes a specific memory record by ID.
get_memoryGets a single memory by its ID.
get_memory_capabilitiesReturns the features and APIs supported by the current storage mode backend.
get_memory_eventManually retrieves detail logs of a specific background event job (cloud only).
get_memory_exportRetrieves status and downloads of a memory export job (cloud only).
get_memory_historyGets the audit trail and revision log of a memory (cloud only).
list_memoriesLists all memories scoped to specific identifiers with pagination.
list_memory_eventsLists history logs of background memory processing events (cloud only).
rate_memorySubmits quality feedback evaluation for a memory record (cloud only).
search_memoriesSearches stored memories based on a query.
search_memoryBackward-compatible alias for search_memories.
update_memoryUpdates a specific memory record.
BEFORE YOU INSTALL
16 tools when we connected. Seven tools are cloud-only, so Supabase or local storage leaves nine usable. search_memory is an alias for search_memories.
CONTEXT COST
Rated by the size of the 16 tool definitions that ride along on every turn, not by how many there are
INSTALLATION
npm install -g @pinkpixel/mem0-mcp{
"mcpServers": {
"mem0-mcp": {
"command": "npx",
"args": [
"-y",
"@pinkpixel/mem0-mcp"
],
"env": {
"MEM0_API_KEY": "<YOUR_MEM0_API_KEY>",
"DEFAULT_USER_ID": "user123",
"DEFAULT_AGENT_ID": "<YOUR_DEFAULT_AGENT_ID>",
"DEFAULT_APP_ID": "<YOUR_DEFAULT_APP_ID>"
}
}
}
}The configuration on this page does not set SUPABASE_URL, SUPABASE_KEY and OPENAI_API_KEY; the project's instructions put them in a .env file. To supply them without depending on where the server looks for that file, use the block's "env" section.
npx -y @smithery/cli install @pinkpixel-dev/mem0-mcp-server --client claude