
MCP Mem0
github.com/coleam00/mcp-mem0- Category
- Developer Tools
- Rank
- No. 1138Tools index
Previous survey · No. 1144 ·
- Pricing
- Open Source
- Type
- TOOL
- Builder
- coleam00
- GitHub
- 682 stars
- Date
About
MCP server for long-term agent memory powered by Mem0 — also a useful template for building your own Python MCP server from scratch.
What it does
MCP Mem0 gives an agent three memory operations: store information, list everything retained, and retrieve relevant items by meaning. Mem0 processes the content, while a PostgreSQL-backed vector store holds it. Clients connect through a local process or an SSE endpoint.
Why it's ranked here
The project is small enough to understand quickly and complete enough to run. It covers lifecycle setup, configuration, two MCP transports, container deployment, and semantic retrieval. Its narrow scope is a strength for learning, but the fixed identity and limited management controls constrain serious multi-user use.
What's good
The interface stays focused on the core memory loop. Search accepts natural-language queries and limits returned results. Both local-process and network transports are documented, with Python and container launch options. Provider configuration covers OpenAI, OpenRouter, and Ollama for memory processing, while PostgreSQL supplies durable vector storage.
Tradeoffs
Every operation uses one hard-coded user identity, so memories are not separated by caller. The server offers no update or deletion operation. OpenRouter receives language-model configuration, but the code only configures embedding providers for OpenAI and Ollama. Failures become returned text strings, which may be harder for clients to handle systematically.
How to use it well
Use it for a personal agent, prototype, or teaching project where explicit saving and semantic recall are enough. It fits workflows that can search memory before decisions and occasionally load the full collection. It does not provide multi-user isolation, memory editing, deletion, or a broader agent orchestration layer.
Technical notes+
src/main.py builds a FastMCP server with mem0_lifespan, exposes save_memory, get_all_memories, and search_memories, and selects SSE or stdio from TRANSPORT. All calls pass DEFAULT_USER_ID = "user". src/utils.py constructs Memory.from_config, maps OpenAI and Ollama embedding dimensions, and always configures the Supabase vector-store provider from DATABASE_URL; its OpenRouter branch configures the LLM but no embedder branch. pyproject.toml requires Python 3.12 and declares MCP CLI, Mem0, vecs, and httpx dependencies. Dockerfile installs the project with uv and launches src/main.py.
Observed
- License
- MIT License
- Primary language
- Python
- Runtime
- Python 3.12 or newer
- Install surface
- Editable installation with uv, or a locally built Docker image
- Interface
- MCP server supporting SSE and stdio transports
- Storage
- PostgreSQL connection configured through the Supabase vector-store provider
Read from README.md, pyproject.toml, src/main.py, src/utils.py, LICENSE, uv.lock, Dockerfile, .env.example.
What it can do
Store long-term memories for AI agents
Memory data and context → Stored memory records
Retrieve relevant memories based on context
Query or context information → Relevant memory records
Update existing agent memories
Memory identifier and new data → Updated memory record
Delete stored memories
Memory identifier → Confirmation of deletion
Search through agent memory history
Search query or filters → Matching memory records
Provide MCP server template for Python development
Developer requirements → Python MCP server boilerplate code
Tags
Tech Stack
Comments (0)
No comments yet
Editorially curated, with community endorsements as a secondary signal. Corrections welcome.