mem0-mcp
This demonstrates a structured approach for using an MCP server with mem0 to manage coding preferences efficiently. The server can be used with Cursor and provides essential tools for storing, retrieving, and searching coding preferences.
Mem0 MCP Server
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.
Tools
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.
Usage Options
There are three ways to use the Mem0 MCP Server:
- Python Package - Install and run locally using
uvxwith any MCP client - Docker - Containerized deployment that creates an
/mcpHTTP endpoint - Smithery - Remote hosted service for managed deployments
Quick Start
Installation
uv pip install mem0-mcp-server
Or with pip:
pip install mem0-mcp-server
Client Configuration
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"
}
}
}
}
Test with the Python Agent
Click to expand: Test with the Python Agent
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
What You Can Do
The Mem0 MCP server enables powerful memory capabilities for your AI applications:
- Remember that I'm allergic to peanuts and shellfish - Add new health information to memory
- Store these trial parameters: 200 participants, double-blind, placebo-controlled study - Save research data
- What do you know about my dietary preferences? - Search and retrieve all food-related memories
- Update my project status: the mobile app is now 80% complete - Modify existing memory with new info
- Delete all memories from 2023, I need a fresh start - Bulk remove outdated memories
- Show me everything I've saved about the Phoenix project - List all memories for a specific topic
Configuration
Environment Variables
MEM0_API_KEY(required) – Mem0 platform API key.MEM0_DEFAULT_USER_ID(optional) – defaultuser_idinjected into filters and write requests (defaults tomem0-mcp).MEM0_ENABLE_GRAPH_DEFAULT(optional) – Enable graph memories by default (defaults tofalse).MEM0_MCP_AGENT_MODEL(optional) – default LLM for the bundled agent example (defaults toopenai:gpt-4o-mini).
Advanced Setup
Click to expand: Docker, Smithery, and Development
Docker Deployment
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
Running with Smithery Remote Server
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-..." } } } }
Development Setup
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
License
Recommend MCP Servers 💡
fibery-mcp-server
This MCP (Model Context Protocol) server provides integration between Fibery and any LLM provider supporting the MCP protocol (e.g., Claude for Desktop), allowing you to interact with your Fibery workspace using natural language.
firecrawl-mcp
Official Firecrawl MCP Server for web scraping integration with LLMs.
antymijaljevic/k8s-doc-mcp
A Kubernetes documentation assistant MCP server that fetches and converts docs to Markdown and provides recommendations.
dank-mcp
An MCP server that provides tools and data for cannabis datasets, enabling Large Language Models (LLMs) to answer questions about cannabis products and related information.
irvinebroque/repro-root-mcp-issue
A remote Model Context Protocol (MCP) server designed to run on Cloudflare Workers, providing tools (like a math tool) accessible via SSE transport with OAuth login.
rr-mcp
A generic MCP server for extracting .NET interface, OpenAPI, and data (models/entities/enums) information from any .NET solution using PowerShell scripts for AI agents.