RxAi AMP · Compare ·
All five give an AI agent memory that outlasts a session. They differ in where that memory lives, how it reaches the agent, and what you have to run. This page compares how each is designed, as its own documentation describes it on 24 September 2026. It does not rank them; each fits a different job.
| RxAi AMP | Mem0 | Zep / Graphiti | Letta | MCP memory server | |
|---|---|---|---|---|---|
| Where memory lives | GitHub Issues in your repository; the index is Markdown compiled by GitHub Actions | A vector store (their quickstarts use Qdrant, or Postgres with pgvector); graph memory is on the hosted platform only | A graph database for Graphiti: Neo4j, FalkorDB or Amazon Neptune. Zep keeps it for you | Postgres with pgvector | One local JSONL file |
| What you run | Nothing beyond GitHub | The vector store, or the hosted platform | A graph database and an LLM provider (Graphiti); Zep is hosted only | The Letta server and Postgres, or Letta Cloud | One Node process (npx or Docker) |
| How memory reaches the agent | Lifecycle hooks inject pointers at session start and summaries matched to each prompt; the agent does not have to ask | Your code calls search and puts the results in the prompt; a hosted MCP server is also offered | An API, or MCP tools the model calls; hybrid search over the graph | The agent reads and edits its memory tiers through tool calls | MCP tools the model calls, such as search_nodes |
| Learns from outcomes | Yes: success and failure comments raise or lower a memory’s weight, and recalls that went unused decay | Not documented as a feature | Not documented; facts carry validity times and are invalidated when contradicted | Not documented | Not documented |
| Sharing between agents | One repository shared by every agent and person with access; each memory records who sent it to whom | Scoped by user_id, agent_id and run_id | Namespaces through group_id | Moving from shared memory blocks to git-backed shared memory repositories (MemFS) | Only by pointing clients at the same file; not a documented feature |
| Reading and editing by people | Every memory is an issue you can read, comment on or close, with GitHub’s history | Through the API or the platform | Through graph queries | In the Agent Development Environment (ADE) | Plain JSONL you can open and edit |
| Licence | AGPL-3.0-or-later, or commercial | Apache-2.0; the hosted platform is paid | Graphiti: Apache-2.0; Zep is a hosted service | Apache-2.0; Letta Cloud is hosted | Open source; the repository licence mixes Apache-2.0 and MIT |
| Languages | Node.js 22, no runtime dependencies | Python, TypeScript | Python (Graphiti); Python, TypeScript and Go SDKs (Zep) | Python and TypeScript SDKs | TypeScript |
Changed recently: Zep stopped maintaining its self-hosted Community Edition in April 2025, and its open-source work continues as Graphiti. Mem0’s graph memory moved to the hosted platform. Letta’s docs now recommend git-backed memory repositories over shared memory blocks.
What AMP does not try to do: its recall matches memories by title and place, not by embeddings, so semantic search across thousands of memories is not its goal. It needs GitHub. How much it saves depends on the model; the benchmarks show where it pays for itself and where it does not.
Each project’s own repository and documentation, checked on 24 September 2026. Projects change; if something here is out of date, say so in GitHub Discussions.