Context7
Feeds AI the latest docs for libraries and frameworks before it answers, so code it writes does not use outdated, removed functions.
Description from the maker (original English)
Local-first memory engine for AI-agent teams: team/project ACL, recall, and federated sync.
These three are never merged into one score: opinions, measurements and popularity are different things.
We have not written a plain-language summary for this one yet. Below are the facts we read from the registry.
Pick the AI app you use, then copy the settings.
AGENT_MEMORY_AGENT_ID, AGENT_MEMORY_HOMEYou need
Which app do you use?
Pick your app above. We remember it, so next time the button says “Install in …”.
Open Claude Desktop → Settings → Developer → Edit Config, and paste this into claude_desktop_config.json
{
"mcpServers": {
"agent-memory-os": {
"command": "uvx",
"args": [
"agent-memory-os"
],
"env": {
"AGENT_MEMORY_AGENT_ID": "your-value",
"AGENT_MEMORY_HOME": "your-value"
}
}
}
}Run this in your terminal
claude mcp add agent-memory-os --env AGENT_MEMORY_AGENT_ID=your-value --env AGENT_MEMORY_HOME=your-value -- uvx agent-memory-osFill in the empty values before running it.
Paste into .cursor/mcp.json in your project, or ~/.cursor/mcp.json
{
"mcpServers": {
"agent-memory-os": {
"command": "uvx",
"args": [
"agent-memory-os"
],
"env": {
"AGENT_MEMORY_AGENT_ID": "your-value",
"AGENT_MEMORY_HOME": "your-value"
}
}
}
}Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.
Paste into .vscode/mcp.json in your project
{
"servers": {
"agent-memory-os": {
"type": "stdio",
"command": "uvx",
"args": [
"agent-memory-os"
],
"env": {
"AGENT_MEMORY_AGENT_ID": "your-value",
"AGENT_MEMORY_HOME": "your-value"
}
}
}
}Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.
This one runs on your computer, and ChatGPT can only connect to servers on the internet. Pick another app.
Your choice stays on this device in a cookie; no account needed.
AGENT_MEMORY_AGENT_ID envAGENT_MEMORY_HOME envThese settings are generated from the maker’s registry entry. If the README says otherwise, follow the README.
Runs on your computer; the tool list appears in your AI app after you install it.
We check information anyone can see; we have not read the code. Checks that do not apply are left out of the count. · Checked Nov 7, 2026
The registry name was verified with the GitHub account yamantaka520, which owns the repo
We have not read this repo from GitHub yet
We have not read this repo from GitHub yet
This one runs on your computer; there is no internet endpoint
Runs on your computer and uses local settings instead
Runs on your computer; we can only read tool lists from internet endpoints
Compared with every active server in this category in the registry. Stars count only when the publisher owns the repo.
It passed 1 of 1 applicable basic checks. We have not read the code. Before adding a key or token, see what access the server asks for and use a key with only the permissions you need.
The registry does not list a required key, though some servers ask you to sign in on first use.
It runs on your computer. Your AI app starts it when needed, and data does not pass through the maker’s servers (unless it calls an online service itself).
The GitHub repo last changed –, and the latest version (1.10.1) reached the registry 2 months ago.
Apps that support MCP, such as Claude Desktop, Claude Code, Cursor and VS Code. You also need Python (uv) on your computer.
In the same category: Context7, Codebase Memory, Exa
Servers in the same category from other makers, sorted by stars.
Reading a card:★ GitHub starsiThree pillars: reviews · checks · usageiUpdated = latest version published to the registryi
Feeds AI the latest docs for libraries and frameworks before it answers, so code it writes does not use outdated, removed functions.
Codebase knowledge graph for AI agents — 162 languages, sub-ms queries, 99% fewer tokens.
Connect AI agents to Exa for web search, content fetching, and multi-step research.
Copied from the maker’s repo as written. PopNx MCP has not reviewed or endorsed it. HTML, images and scripts are removed. Links lead off this site.
English · 繁體中文
A local-first memory system for AI-agent teams — not just giving one agent a memory, but a shared memory fabric for a *fleet* of agents working together: private, team, and project-scoped memories behind a hard ACL, associative recall, and federated sync that keeps a mesh of nodes (and their org structure) in agreement. One SQLite file, zero required dependencies, Apache-2.0.
Why · Compare · Install · Quickstart · Features · Federation · Web UI · User Guide
The built-in web console: token-usage by agent/team/project, memory browse, and the ACL-safe association graph.
Real work happens in teams of agents — a project might mix Claude Code, Codex, OpenClaw, and several Hermes profiles, across multiple teams and projects, on one machine or many. They need to share the *right* knowledge with the *right* teammates and keep private what should stay private:
team: memory; a project (a subset of the team) sees project: memory; nothing leaks across the boundary. Membership is first-class and manageable, and drives the ACL.project: means the same thing everywhere.pip install and go.team: memory reaches the whole team, project: memory only that project — a hard ACL, managed in the console/CLI/API. Removing a member re-scopes recall instantly; deleting a scope revokes its memory.shared/full/team:/project:) is an enforced authorization scope: a peer can only assert membership within its own scope and can only *shrink* a memory's visibility, never widen it — no cross-scope escalation from a bundle.context_pack_report() explains every include/exclude decision).CONFLICT markers), and reserved budget for core memories.memory_links graph lets related memories surface even when they share no query terms; traversal is ACL-safe (invisible nodes are untraversable).record_recall, or auto_reinforce=True on context packs); unhelpful recalls weaken links and confidence (helpful=False).procedure, a companion on preference); profiles persist in the database and re-weight ranking only, never bypassing ACL.consolidate() pass that merges duplicates and synthesizes strongly co-recalled clusters into concept memories.Most agent-memory systems optimize for LLM-driven extraction at hosted scale. AgentMemoryOS optimizes for a different point: local-first, team-scoped, and federated — memory you run yourself, shared across a fleet under a hard ACL. This is a *positioning* comparison (architecture, not a benchmark); verify each row against the projects' current docs.
| AgentMemoryOS | Mem0 | Zep / Graphiti | |
|---|---|---|---|
| Run it | One SQLite file, pip install | Self-host (configure LLM + vector DB) or hosted | Zep Cloud, or self-host Graphiti on Neo4j/FalkorDB |
| Core needs an LLM | No (FTS5 + optional local vectors) | Yes (LLM extraction, e.g. gpt-5-mini) | Yes (LLM builds the temporal graph) |
| External services | None required | LLM API + vector store | Graph DB + LLM + embeddings (3+ systems to self-host) |
| Scope / ACL model | Private / agent / team / project / global — hard gate before ranking | Per user / agent / session id | Per user / session graph |
| Cross-node federation | Yes — memories *and* org structure converge; revocation propagates | Centralized store | Centralized (Cloud or your graph DB) |
| Built-in MCP server | Yes | Via SDK | Via SDK |
| License / self-host | Apache-2.0, fully OSS | OSS core; graph & advanced tiers paid | Community Edition deprecated; self-host = raw Graphiti |
Mem0 and Zep are strong at LLM-based extraction and managed-scale retrieval — things AgentMemoryOS deliberately doesn't do. Reach for AgentMemoryOS when you want a dependency-light memory you own, shared correctly across a *team* of agents, that keeps working offline and syncs on your terms.
pip install 'agent-memory-os[full]' # recommended: everything (Web UI, MCP, turbovec)
Or pick pieces: agent-memory-os (core, zero dependencies), [api] (Web UI), [mcp] (MCP server), [semantic] (turbovec vector recall).
Docker: the prebuilt multi-arch image is the complete AgentMemoryOS (web console + MCP server + CLI); the first argument picks the mode:
docker run -p 8000:8000 -v amos-data:/data yamantaka520/agent-memory-os # web console (default)
docker run -i --rm yamantaka520/agent-memory-os mcp # stdio MCP server docker run --rm -v amos-data:/data yamantaka520/agent-memory-os check # any CLI command
Or docker compose up -d. Console at http://localhost:8000, memories persist in a volume. See the Docker guide (Docker Hub image + a two-node sync mesh).
Requires Python 3.11+ with SQLite FTS5 (included in standard CPython builds).
After installing, run two commands:
agent-memory doctor # verifies FTS5, turbovec, and the other extras
agent-memory token create # protects the Web UI API with a bearer token
The token is stored at /web_token (mode 600); agent-memory-web picks it up automatically and the console prompts for it on first use. Manage it later with agent-memory token show|rotate|disable. Two narrower tiers exist: --readonly (GET-only) and --sync (federation routes only — hand this to a peer instead of the admin token).
Prefer a runnable script?
examples/team_memory.pyshows three agents sharing one store under a hard ACL in ~40 lines —python examples/team_memory.py.
from agent_memory_os import MemoryClient, RecallProfile
client = MemoryClient(home="~/.agent-memory")
client.add("User prefers dark mode.", owner="mizuki", type="preference", visibility=[]) # private to owner client.add("Deploy target is port 8000.", owner="neo", type="environment", visibility=["global"]) # visible to every agent
hits = client.search("deploy port", requester_agent_id="neo")
pack = client.context_pack("deploy port", requester_agent_id="neo", max_tokens=1200, auto_reinforce=True)
a = client.add("Staging deploy failed with database lock.", visibility=["global"]) b = client.add("Always snapshot before schema changes.", visibility=["global"]) client.link(a.id, b.id, relation="caused_by", weight=0.8)
client.save_profile(RecallProfile(agent_id="neo", type_weights={"procedure": 1.5, "note": 0.7}))
client.consolidate()
query
-> candidate providers (FTS5 | vector sidecar | resonance graph | fallback) -> merge/dedupe by stable memory_id -> rejoin authoritative rows from SQLite -> ACL hard gate -> expires_at hard gate -> scoring (relevance x importance x confidence x freshness x reinforcement) -> per-agent profile re-weighting (soft) -> truth arbitration + context budget allocation
Design invariants:
memories table is the single source of truth; FTS/vector indexes are disposable and rebuildable (rebuild_indexes()).memory_links) are authoritative data, survive index rebuilds, decay when unused, and never let an invisible memory bridge two visible ones.See SPEC.md for the full contract.
AgentMemoryOS uses two storage layers with strictly different authority:
Only the beginning is shown; read the rest in the repo