The Mem0 MCP Server wraps the Mem0 Memory API as a Model Context Protocol server, enabling MCP-compatible clients to manage long-term memories through tools for adding, searching, updating, and deleting memories across users and agents. It provides nine tools including `add_memory`, `search_memories`, `update_memory`, and `delete_memory` that allow LLMs to perform semantic search and structured retrieval of stored conversation history and text data. The server is now archived with an official cloud-hosted replacement available, though it can still be deployed locally via Python package, Docker, or remote hosting services.
[!CAUTION]
This project has been archived
mem0-mcp-server is no longer actively maintained and this repository is now a public archive.
Thank you to the 640+ stargazers, 140+ forkers, and every contributor who helped shape this project. Your support and feedback meant the world to us.
Looking for Mem0 MCP? We now offer an official cloud-hosted MCP server. Check out the docs to get started.
Quick install across all major clients:
npx mcp-add \ --name mem0-mcp \ --type http \ --url "https://mcp.mem0.ai/mcp" \ --clients "claude,claude code,cursor,windsurf,vscode,opencode"
mem0-mcp-server wraps the official Mem0 Memory API as a Model Context Protocol (MCP) server so any MCP-compatible client (Claude Desktop, Cursor, custom agents) can add, search, update, and delete long-term memories.
The server exposes the following tools to your LLM:
| Tool | Description |
|---|---|
add_memory | Save text or conversation history (or explicit message objects) for a user/agent. |
search_memories | Semantic search across existing memories (filters + limit supported). |
get_memories | List memories with structured filters and pagination. |
get_memory | Retrieve one memory by its memory_id. |
update_memory | Overwrite a memory's text once the user confirms the memory_id. |
delete_memory | Delete a single memory by memory_id. |
delete_all_memories | Bulk delete all memories in the confirmed scope (user/agent/app/run). |
delete_entities | Delete a user/agent/app/run entity (and its memories). |
list_entities | Enumerate users/agents/apps/runs stored in Mem0. |
All responses are JSON strings returned directly from the Mem0 API.
There are three ways to use the Mem0 MCP Server:
uvx with any MCP client/mcp HTTP endpointuv pip install mem0-mcp-server
Or with pip:
pip install mem0-mcp-server
Add this configuration to your MCP client:
{
"mcpServers": {
"mem0": {
"command": "uvx",
"args": ["mem0-mcp-server"],
"env": {
"MEM0_API_KEY": "m0-...",
"MEM0_DEFAULT_USER_ID": "your-handle"
}
}
}
}
To test the server immediately, use the included Pydantic AI agent:
# Install the package
pip install mem0-mcp-server
# Or with uv
uv pip install mem0-mcp-server
# Set your API keys
export MEM0_API_KEY="m0-..."
export OPENAI_API_KEY="sk-openai-..."
# Clone and test with the agent
git clone https://github.com/mem0ai/mem0-mcp.git
cd mem0-mcp-server
python example/pydantic_ai_repl.py
Using different server configurations:
# Use with Docker container
export MEM0_MCP_CONFIG_PATH=example/docker-config.json
export MEM0_MCP_CONFIG_SERVER=mem0-docker
python example/pydantic_ai_repl.py
# Use with Smithery remote server
export MEM0_MCP_CONFIG_PATH=example/config-smithery.json
export MEM0_MCP_CONFIG_SERVER=mem0-memory-mcp
python example/pydantic_ai_repl.py
The Mem0 MCP server enables powerful memory capabilities for your AI applications:
MEM0_API_KEY (required) – Mem0 platform API key.MEM0_DEFAULT_USER_ID (optional) – default user_id injected into filters and write requests (defaults to mem0-mcp).MEM0_ENABLE_GRAPH_DEFAULT (optional) – Enable graph memories by default (defaults to false).MEM0_MCP_AGENT_MODEL (optional) – default LLM for the bundled agent example (defaults to openai:gpt-4o-mini).To run with Docker:
Build the image:
docker build -t mem0-mcp-server .
Run the container:
docker run --rm -d \
--name mem0-mcp \
-e MEM0_API_KEY=m0-... \
-p 8080:8081 \
mem0-mcp-server
Monitor the container:
# View logs
docker logs -f mem0-mcp
# Check status
docker ps
To connect to a Smithery-hosted server:
Install the MCP server (Smithery dependencies are now bundled):
pip install mem0-mcp-server
Configure MCP client with Smithery:
{
"mcpServers": {
"mem0-memory-mcp": {
"command": "npx",
"args": [
"-y",
"@smithery/cli@latest",
"run",
"@mem0ai/mem0-memory-mcp",
"--key",
"your-smithery-key",
"--profile",
"your-profile-name"
],
"env": {
"MEM0_API_KEY": "m0-..."
}
}
}
}
Clone and run from source:
git clone https://github.com/mem0ai/mem0-mcp.git
cd mem0-mcp-server
pip install -e ".[dev]"
# Run locally
mem0-mcp-server
# Or with uv
uv sync
uv run mem0-mcp-server
io.github.ericm1018/skillfm-llm-cost-optimizer-openai-anthropic-usage
io.github.mikerawsonnz/llm-orchestration-agent
io.github.mikerawsonnz/authenticated-llm-agent
labforgedev/copilot-memory-mcp
csoai-org/agent-prompt-injection-firewall-mcp
io.github.mikerawsonnz/authenticated-multi-llm-agent