Skip to content
Membase
Mem0 vs Zep vs Membase: Which AI Agent Memory Layer to Use in 2026

Mem0 vs Zep vs Membase: Which AI Agent Memory Layer to Use in 2026

Research
MembaseMembase TeamLast updated
View the original post on Medium

Disclosure: Membase is our product. Mem0 and Zep are the two most established memory layers, and for many projects one of them is the right choice. We say where. Pricing, licenses and features were checked on each vendor's pricing page, docs and GitHub in October 2026; see "How we compared" at the end.

Quick links: Get a free Membase API key · Python SDK · MCP server · Docs

TL;DR

All three give AI agents long-term memory through an API and an MCP server. They differ in how memory is stored and whose memory it is.

  • Mem0 extracts facts from conversations and scopes them by user_id. It's the most widely used memory layer, open source under Apache 2.0, with request-based pricing. Pick it for per-user memory inside a multi-tenant app.
  • Zep builds a temporal knowledge graph that records when each fact was true. Its engine, Graphiti, is open source; Zep Cloud adds team MCP access and enterprise controls. Pick it when facts change over time and you need their history.
  • Membase learns your material into timestamped episodes and shares one memory between your agents and your AI tools (Claude Code, Cursor, Codex, ChatGPT, Claude), with per-app access and a source on every result. Free in beta. Pick it when several agents and AI tools should share one memory.

Mem0 vs Zep vs Membase at a glance

Mem0ZepMembase
Best forPer-user memory in a multi-tenant appFacts that change over time; enterprise contextOne memory shared by your agents and AI tools
Memory modelExtracted facts, linked by entitiesTemporal knowledge graph (facts with validity time)Timestamped episodes in topic trees, each tied to its source
Scoped byuser_id, agent_id, run_id, app_idUsers, threads, and shared graphsAccount (the tenant) and Memories (topics)
Changing factsNewer facts supersede older ones (Dream, on Platform)Old facts are marked invalid with a timestampNo overwrite; episodes keep time and source
MCPHosted: mcp.mem0.ai/mcpHosted Memory MCP (Zep Cloud); Graphiti MCP (self-run, experimental)Hosted: api.app.membase.com/mcp-http; local mode
For chat appsThrough MCPPlugin for Claude and ChatGPT team workspacesMCP for Claude and ChatGPT; Chrome extension for 6 chat apps
SDKsPython, TypeScriptPython, TypeScript, GoPython, TypeScript, CLI, REST
Self-hostingOpen-source library (Docker)Graphiti only; Zep Cloud also offers BYOCLocal mode; compiled engine
LicenseApache 2.0; Platform managedGraphiti Apache 2.0; Zep Cloud proprietaryProprietary engine; SDKs, CLI, MCP public
PricingFree · $19 · $249 · EnterpriseFree (10K credits) · $125 · $375 · EnterpriseFree in beta · Paid plans coming soon
ComplianceSOC 2 Type 1, HIPAASOC 2 Type 2, HIPAANone published yet
Maturity60K+ GitHub starsGraphiti ~31K GitHub starsBeta, launched 2026

What each one is

Mem0 is the most widely adopted memory layer for AI agents. You send conversation turns to add; Mem0 extracts durable facts ("User prefers aisle seats") and you call search before the next model call. It comes as an open-source library you host and as Mem0 Platform, a managed API with graph memory, webhooks and background consolidation.

Zep stores memory as a Context Graph built by Graphiti. Each user has a graph built from their conversation threads and any business data you add. When new data contradicts a fact, Zep keeps the old fact and records when it stopped being true. Zep returns a ready-made Context Block for your prompt.

Membase, built by Unibase, is a memory layer that your code and your AI tools share. You add notes, documents, web pages or chat exports to a Memory; a learning run turns them into timestamped episodes. Your agents reach it through the SDK or REST, AI tools through MCP, and chat apps through the Chrome extension.

6 differences that decide the choice

1. How memory is stored

How it worksStrong atWeak at
Mem0An LLM extracts facts from messages; facts that mention the same entities are linkedShort, durable user facts; fast to startKeeping the original context of a fact
ZepMessages and data become graph nodes and edges; each fact has the time it became true and stopped being true"What was true in March?"; facts that changeSetup and per-write LLM cost if you self-host Graphiti
MembaseMaterial is narrated into episodes that keep who said what, and when; episodes sit in topic treesTracing an answer back to a document; mixed material (notes, files, chats)No entity graph; no automatic "current truth"

2. Whose memory it is

This decides most cases.

  • Mem0: your application owns memory about its users. One API key reaches all of them, and each call carries a user_id.
  • Zep: also application-centric. You create a Zep user for each of your users; each gets a graph. Shared graphs hold context that isn't owned by one user, such as product knowledge.
  • Membase: the account is the tenant, and a Memory is a topic, not an end user. If your product serves many people, each connects their own Membase account by OAuth consent or their own key. There is no app-wide key that reaches every user's memory.

What that means for you: for a SaaS product with thousands of end users behind your backend, Mem0 or Zep fits better today. For agents you run yourself or with your team, or a product where users bring and own their memory, Membase fits better.

3. When facts change

  • Mem0 Platform: a background process (Dream) marks older facts outdated when newer ones contradict them and merges duplicates. The open-source library stays additive; you call update or delete.
  • Zep: contradiction is built into the graph. The old fact stays, with the time it was invalidated, so you can ask what was true at any point.
  • Membase: doesn't overwrite. Each episode carries its time and source, so the newest statement comes back with its context, and the model sees both.

If you need a maintained "current truth", use Mem0 Platform. If you need history, use Zep. If you need to show where an answer came from, use Membase.

4. AI tools and MCP

All three run a hosted MCP server, aimed at different users.

Mem0 MCPZep Memory MCPMembase MCP
Endpointhttps://mcp.mem0.ai/mcphttps://api.getzep.com/mcphttps://api.app.membase.com/mcp-http
Built forA developer's own memory in coding toolsCompany teams; members sign in with Google Workspace or OIDCIndividuals and teams; any account can connect
ClientsClaude, Claude Code, Codex, Cursor, Windsurf, VS CodeClaude and ChatGPT through an org plugin; Cursor and others directlyClaude, ChatGPT, Claude Code, Cursor, Codex and any MCP client
PermissionsUser, agent, app or run filtersPer-member user graph; writes gated per connectionRead-only by consent; developer keys add write access per Memory
BillingWithin your Mem0 planPer MCP seatFree in beta

Zep's plugin route for Claude and ChatGPT expects team workspace plans (Claude Team or Enterprise, ChatGPT Business or Enterprise). Membase connects to individual accounts as a custom connector or plugin, and its Chrome extension also saves context from Gemini, Grok, DeepSeek and Kimi.

Add Membase to Claude Code:

claude mcp add --transport http membase https://api.app.membase.com/mcp-http \
  --header "Authorization: Bearer $MEMBASE_API_KEY"

More options: Best MCP Memory Servers in 2026

5. Self-hosting and license

  • Mem0: the library is Apache 2.0, with a Docker setup for a self-hosted server. Graph memory, Dream and the dashboard are Platform features.
  • Zep: the Zep server is cloud-only (the old Community Edition was discontinued in 2025). You can self-host Graphiti under Apache 2.0 with Neo4j, FalkorDB or Amazon Neptune, plus LLM calls on each write. Zep Cloud also offers bring-your-own-cloud deployment.
  • Membase: pip install 'unibaseio-membase[local]' runs memory on your machine with your own model key. The engine is compiled and proprietary; the SDKs, CLI and MCP server are public.

If you need source code you can read and change, choose Mem0 or Graphiti.

6. Price, compliance and maturity

Pricing (each vendor's pricing page, October 2026):

FreePaid
Mem010K adds and 1K retrievals a monthStarter $19 · Pro $249 (graph memory) · Enterprise
Zep10K credits a monthFlex $125 (50K credits) · Flex Plus $375 · Enterprise; annual billing is discounted
MembaseFree in betaPaid plans coming soon

Mem0 meters requests: retrievals run out first when several agents share a project. Zep meters credits for data you ingest. Membase's free plan includes an allowance for model turns; after that you can connect your own model key.

Compliance: Mem0 lists SOC 2 Type 1 and HIPAA; Zep lists SOC 2 Type 2 and HIPAA. Membase is in beta and has no published certifications yet. If you need the paperwork now, choose Mem0 or Zep.

The same task in all three

Save a decision, then retrieve it.

Mem0 Platform

from mem0 import MemoryClient
client = MemoryClient(api_key="...")
client.add([{"role": "user", "content": "We picked Postgres for the ledger service."}],
           user_id="alice")
client.search("what database is the ledger on?", filters={"user_id": "alice"})

Zep

from zep_cloud.client import Zep
from zep_cloud import AddMessage
client = Zep(api_key="...")
user = client.user.create(user_id="alice")
thread = client.thread.create(user_uuid=user.uuid_)
client.thread.add_messages(thread.uuid_, messages=[
    AddMessage(name="Alice", role="user", content="We picked Postgres for the ledger service.")
])
context = client.thread.get_context(thread.uuid_).context  # a Context Block for your prompt

Membase

from membase import Membase
m = Membase()  # reads MEMBASE_API_KEY
m.add("We picked Postgres for the ledger service.", container="mv-...")
m.search("what database is the ledger on?")

The scope argument shows the difference: Mem0 asks which user, Zep asks which thread (and its user), Membase asks which Memory.

What about benchmarks?

All three publish results, and they don't line up:

  • Mem0 and Zep have publicly disputed each other's LoCoMo numbers and methods.
  • Each vendor uses different reader models, judges and benchmark variants.
  • Membase's local memory engine reports 93.1% on LoCoMo, 92.6% on LongMemEval_S and 92.2% on DMR (method). The hosted Membase service does not run this engine today, so these are not measurements of the hosted API. Zep reports 94.8% on DMR in its own paper, so on that benchmark Zep's published number is higher.

We don't put the three side by side. Test each on a sample of your own conversations before you decide.

Which should you choose?

Your situationChoose
SaaS or consumer app with thousands of end users behind one backendMem0
You want open-source code you can self-host and modifyMem0 (library) or Graphiti
Facts change and you need to know what was true whenZep
You need context from business data (CRM, tickets) joined with chat historyZep
Your company wants memory in Claude and ChatGPT team workspaces with SSOZep
You need SOC 2 or HIPAA documentation todayMem0 or Zep
Several agents share one memory, each with its own scoped keyMembase
Claude Code, Cursor, Codex and ChatGPT should read the same memory as your codeMembase
Answers must show which document they came fromMembase
You want to start free while you buildMembase (free in beta)

Using two together is reasonable: Mem0 or Zep for per-user memory inside your product, Membase for your team's working memory across agents and AI tools.

Start building with Membase

How we compared

We read each vendor's pricing page, documentation and GitHub repository in October 2026: Mem0's pricing, Platform and MCP docs; Zep's pricing, key concepts, SDK and Memory MCP docs and launch post; and Membase's docs and SDK. Benchmark figures are as each vendor published them; we did not re-run them. Membase is our product. Spot an error? Email support@membase.com and we'll fix it.

Sources

Frequently Asked Questions

What is the difference between Mem0 and Zep?
Mem0 extracts facts from conversations and scopes them by user_id; it's open source and request-priced. Zep stores memory as a temporal knowledge graph that records when each fact was true; its engine Graphiti is open source and Zep Cloud is credit-priced.
Is Zep better than Mem0?
For facts that change over time, Zep's temporal graph is stronger. For the simplest per-user personalization and an open-source library you can self-host, Mem0 is faster to start.
Where does Membase fit between Mem0 and Zep?
Membase is for one memory shared by your agents and your AI tools, with separate access per app and a source on every result. Mem0 and Zep are built for an application's memory about its many users.
Do Mem0, Zep and Membase support MCP?
Yes. Mem0's hosted server is mcp.mem0.ai/mcp, Zep's is api.getzep.com/mcp, and Membase's is api.app.membase.com/mcp-http. Graphiti also has a self-run MCP server.
Which is open source?
Mem0's library and Zep's Graphiti engine are Apache 2.0. Membase's SDKs, CLI and MCP server are public, but its core engine is proprietary.
Which is cheapest?
Membase is free in beta. Mem0 is free up to 10K adds and 1K retrievals a month, then $19. Zep is free up to 10K credits a month, then $125.
Can I self-host Zep?
Not the full Zep service; Zep Community Edition was discontinued. You can self-host Graphiti, Zep's open-source graph engine, with a graph database such as Neo4j or FalkorDB.
Which has the best benchmark scores?
Each publishes strong results on its own setup, and Mem0 and Zep dispute each other's LoCoMo methods. The numbers aren't comparable; test on your own data.
Can I use them together?
Yes. A common split is Mem0 or Zep for per-user memory inside your product, and Membase for your team's memory across agents and AI tools.
Back to all posts