Best for
- Use when writing code that calls mem0 APIs, configuring memory providers, or integrating mem0 into an application.
mem0ai/mem0/integrations/mem0-plugin/skills/mem0/SKILL.md
Mem0 SDK reference covering Python and TypeScript APIs, memory client methods, configuration, and framework integrations. Use when writing code that calls mem0 APIs, configuring memory providers, or integrating mem0 into an application.
Decision brief
Skill Graph: This skill is part of the Mem0 skill graph: - mem0 (this skill) -- Platform Client SDK + OSS (Python + TypeScript) - mem0-vercel-ai-sdk -- Vercel AI SDK provider
Compatibility matrix
| Platform | Status | Evidence | What to check |
|---|---|---|---|
| Codex | Not declared | No explicit evidence | Portability before use |
| Claude Code | Not declared | No explicit evidence | Portability before use |
| Cursor | Not declared | No explicit evidence | Portability before use |
| Gemini CLI | Not declared | No explicit evidence | Portability before use |
Installation
The source command is displayed only when detected. A safe inspection prompt is always available so your agent can explain every action before execution.
npx skills add https://github.com/mem0ai/mem0 --skill "integrations/mem0-plugin/skills/mem0"Inspect the Agent Skill "mem0" from https://github.com/mem0ai/mem0/blob/b54710a3c3b9060971b288197aee87efa3cc4d98/integrations/mem0-plugin/skills/mem0/SKILL.md at commit b54710a3c3b9060971b288197aee87efa3cc4d98. List every install step, command, network request, credential, file read/write, external action, and rollback step. Explain whether it fits my task. Do not install or execute anything until I approve.
Workflow
Get an API key at: https://app.mem0.ai/dashboard/api-keys?utmsource=oss&utmmedium=mem0-plugin-skill
For async Python, use AsyncMemoryClient.
Every Mem0 integration follows the same pattern: retrieve → generate → store.
Review the “Add memories” section in the pinned source before continuing.
Review the “Search memories” section in the pinned source before continuing.
Permission review
The documentation asks the agent to run terminal commands or scripts.
npm install mem0aiThe documentation asks the agent to run terminal commands or scripts.
python ${CLAUDE_SKILL_DIR}/scripts/mem0_doc_search.py --query "topic"Evidence record
| Signal | Value | Evidence type | Meaning |
|---|---|---|---|
| Quality score | 84/100 | Computed | Documentation, specificity, maintenance, and trust rules |
| Repository stars | 62,498 | Source | Repository attention, not individual Skill quality |
| Compatibility | 0 platforms | Source | Declared in the catalog source record |
| Usage guide | automated source guide | Editorial | Generated or reviewed according to the visible evidence level |
Pinned source
Skill Graph: This skill is part of the Mem0 skill graph:
- mem0 (this skill) -- Platform Client SDK + OSS (Python + TypeScript)
- mem0-vercel-ai-sdk -- Vercel AI SDK provider
Mem0 is a managed memory layer for AI applications. It stores, retrieves, and manages user memories via API — no infrastructure to deploy. For self-hosted usage, see the OSS section in the client references below.
Python:
pip install mem0ai
export MEM0_API_KEY="m0-your-api-key"
TypeScript/JavaScript:
npm install mem0ai
export MEM0_API_KEY="m0-your-api-key"
Get an API key at: https://app.mem0.ai/dashboard/api-keys?utm_source=oss&utm_medium=mem0-plugin-skill
Don't have a
MEM0_API_KEY? Sign up at https://app.mem0.ai and create one from the dashboard. Keys start withm0-.
Python:
from mem0 import MemoryClient
client = MemoryClient(api_key="m0-xxx")
TypeScript:
import MemoryClient from 'mem0ai';
const client = new MemoryClient({ apiKey: 'm0-xxx' });
For async Python, use AsyncMemoryClient.
Every Mem0 integration follows the same pattern: retrieve → generate → store.
messages = [
{"role": "user", "content": "I'm a vegetarian and allergic to nuts."},
{"role": "assistant", "content": "Got it! I'll remember that."}
]
client.add(messages, user_id="alice")
results = client.search("dietary preferences", filters={"user_id": "alice"})
for mem in results.get("results", []):
print(mem["memory"])
all_memories = client.get_all(filters={"user_id": "alice"})
client.update("memory-uuid", text="Updated: vegetarian, nut allergy, prefers organic")
client.delete("memory-uuid")
client.delete_all(user_id="alice") # delete all for a user
from mem0 import MemoryClient
from openai import OpenAI
mem0 = MemoryClient()
openai = OpenAI()
def chat(user_input: str, user_id: str) -> str:
# 1. Retrieve relevant memories
memories = mem0.search(user_input, filters={"user_id": user_id})
context = "\n".join([m["memory"] for m in memories.get("results", [])])
# 2. Generate response with memory context
response = openai.chat.completions.create(
model="gpt-5-mini",
messages=[
{"role": "system", "content": f"User context:\n{context}"},
{"role": "user", "content": user_input},
]
)
reply = response.choices[0].message.content
# 3. Store interaction for future context
mem0.add(
[{"role": "user", "content": user_input}, {"role": "assistant", "content": reply}],
user_id=user_id
)
return reply
add() asynchronously — returns an event ID immediately. Wait 2-3s before searching. Also verify user_id matches exactly (case-sensitive) and use filters={"user_id": "..."} syntax.{"AND": [{"user_id": "alice"}, {"agent_id": "bot"}]} returns nothing. Use OR instead, or query each separately.infer=True (default) and infer=False for the same data. infer=True extracts facts via LLM with dedup. infer=False stores raw — same text can be stored twice.filters={"user_id": "alice"} only returns memories where agent_id, app_id, run_id are ALL null. Wrap in {"OR": [...]} to include memories with non-null scoping fields.from mem0 import MemoryClient. OSS: from mem0 import Memory. Don't mix them — MemoryClient talks to api.mem0.ai, Memory runs locally.top_k=20, threshold=0.1, rerank=False. Adjust as needed.Mem0 v3 uses single-pass extraction, entity linking, and multi-signal retrieval.
Key v3 changes from v2:
POST /v3/memories/add/, POST /v3/memories/search/, POST /v3/memories/ (paginated list)add(), no config needed. Remove enable_graph and graph_store from any old config.top_k=20, threshold=0.1, rerank=Falseorg_id, project_id, enable_graph — all removed from SDKuserId, agentId, appId, topK)GET /v1/event/{event_id}/See the migration guide for details.
For the latest docs beyond what's in the references, use the doc search tool:
python ${CLAUDE_SKILL_DIR}/scripts/mem0_doc_search.py --query "topic"
python ${CLAUDE_SKILL_DIR}/scripts/mem0_doc_search.py --page "/platform/features/graph-memory"
python ${CLAUDE_SKILL_DIR}/scripts/mem0_doc_search.py --index
No API key needed — searches docs.mem0.ai directly.
Language-specific deep references (Platform + OSS):
| Language | File |
|---|---|
| Python (MemoryClient + AsyncMemoryClient + Memory OSS) | client/python.md |
| TypeScript/Node.js (MemoryClient + Memory OSS) | client/node.md |
| Python vs TypeScript differences | client/differences.md |
Load these on demand for deeper detail:
| Topic | File |
|---|---|
| Quickstart (Python, TS, cURL) | references/quickstart.md |
| SDK guide (all methods, both languages) | references/sdk-guide.md |
| API reference (endpoints, filters, object schema) | references/api-reference.md |
| Architecture (pipeline, lifecycle, scoping, performance) | references/architecture.md |
| Platform features (retrieval, graph, categories, MCP, etc.) | references/features.md |
| Framework integrations (LangChain, CrewAI, OpenAI Agents, etc.) | references/integration-patterns.md |
| Use cases & examples (real-world patterns with code) | references/use-cases.md |
| Skill | When to use | Link |
|---|---|---|
| mem0-vercel-ai-sdk | Vercel AI SDK provider with automatic memory | GitHub |
Alternatives
mem0ai/mem0
Mem0 Platform SDK for adding persistent memory to AI applications. TRIGGER when: user mentions "mem0", "MemoryClient", "memory layer", "remember user preferences", "persistent context", "personalization", or needs to add long-term memory to chatbots, agents, or AI apps. Covers Python SDK (mem0ai), TypeScript SDK (mem0ai), and framework integrations (LangChain, CrewAI, OpenAI Agents SDK, Pipecat, LlamaIndex, AutoGen, LangGraph). Also covers the open-source self-hosted Memory class. This is the DE
Jeffallan/claude-skills
Use when building high-performance async Python APIs with FastAPI and Pydantic V2. Invoke to create REST endpoints, define Pydantic models, implement authentication flows, set up async SQLAlchemy database operations, add JWT authentication, build WebSocket endpoints, or generate OpenAPI documentation. Trigger terms: FastAPI, Pydantic, async Python, Python API, REST API Python, SQLAlchemy async, JWT authentication, OpenAPI, Swagger Python.
K-Dense-AI/scientific-agent-skills
Predict regulatory features, gene structure, and expression directly from DNA sequence using Genomic Intelligence's hosted transformer DNA language models — no local GPU or model weights. Six tasks over a REST API and a hosted MCP server (keyless public demo): promoter regions, splice donor/acceptor sites, enhancer activity, chromatin state, sequence-to-expression (log TPM), and de-novo gene annotation, plus a composite find-genes-then-predict-expression workflow. Use when the user has a gene sy
MoizIbnYousaf/marketing-cli
Build applications and agents with Exa's API Platform: search, contents, answer, context, Agent API, monitors, websets, OpenAI-compatible endpoints, and exa-py / exa-js. Use when choosing Exa endpoints, writing Exa API calls, integrating semantic web search or research into products, or debugging Exa request shapes. Load references/ on demand for endpoint details.