Cortex vs. Graphiti

Build it. Or just ship it.

Graphiti is an open-source Python library for temporal knowledge graphs — excellent primitives if you want to build your own memory system on top. HangarX Cortex is the memory system you'd build: ingestion, graph, vectors, hybrid retrieval, claims, contradictions, and an MCP server, already wired up.

Pick Cortex if

You want managed memory infrastructure, not a primitive.

Storage, graph, retrieval, claims, and MCP serving — bundled. You ingest a corpus and your agents start querying.

Pick Graphiti if

You want to build a custom memory system from primitives.

A research-quality temporal-graph library you compose yourself. Maximum flexibility, full control over schema, retrieval, and serving.

What we agree on

  • Temporal knowledge graphs are the right shape for AI memory
  • Claims have validity ranges — facts should expire and be invalidated, not just overwritten
  • Open source is the foundation — both are OSS
  • Graph + vector beats either alone
  • Provenance matters — claims should link back to sources
  • Multi-LLM — neither locks you in

Where we differ

DimensionHangarX CortexGraphiti
Layer of the stackManaged memory platformOpen-source temporal-graph library (Python)
Temporal knowledge graph

Both support temporal claims with validity ranges. Graphiti is purpose-built around this; Cortex supports asOf queries across the claim graph.

Storage included

Graphiti needs a Neo4j instance you run yourself. Cortex ships FalkorDB graph + Postgres pgvector preconfigured in Docker.

Document ingestion pipeline
Hybrid retrieval (BM25 + vector + graph + reranker)
Claims with provenance
Contradiction detection
MCP server (cross-tool memory)
Native Obsidian plugin
Agent integrationMCP-native + RESTPython SDK only
Multi-LLM provider support8+ providersOpenAI / Anthropic / Gemini / others via direct integration
Time-to-first-queryMinutes (Docker up + ingest)Hours to days (you stand up Neo4j, write ingestion, build retrieval, expose serving)

The wedge

Graphiti is a research-quality library. The temporal-graph design is one of the more thoughtful contributions to AI memory infrastructure. If you have ML and platform engineers and a strategic reason to own your memory stack end-to-end, Graphiti is the right floor.

But most teams don't want to build memory infrastructure — they want to use it. Cortex is what Graphiti looks like when someone's already wrapped it (or the equivalent) with ingestion, hybrid retrieval, reranking, contradiction detection, an MCP server, and a managed-or-self-hosted deployment. Same temporal-graph foundation; you just don't have to assemble it.

When you should pick Graphiti

  • You're building a custom memory system and want a research-quality temporal-graph primitive to start from.
  • You have ML/platform engineers and want full control over schema, ingestion, retrieval, and serving.
  • You're already on Neo4j and want to add temporal knowledge-graph semantics on top.
  • You want to study the algorithm itself or contribute to the library.

When you should pick Cortex

  • You want grounded agent memory shipping in days, not a quarter.
  • You'd rather not operate Neo4j + ingestion + retrieval + reranking + serving yourselves.
  • You want MCP-native serving so Claude, Cursor, Cline, Windsurf all share one memory.
  • You're an Obsidian user and want a native plugin.
  • You want managed cloud as an option, not just self-host.

FAQ

Is Graphiti a competitor to Cortex?

Not at the same layer. Graphiti is an open-source temporal-graph library — it gives you the primitives to build a memory system. Cortex is the full memory system. If you want to build your own temporal memory infrastructure with maximum control, Graphiti is excellent. If you want grounded memory shipping in days, Cortex.

Could I rebuild Cortex with Graphiti?

Theoretically yes — Graphiti gives you the temporal graph primitive, and you'd add document ingestion, hybrid retrieval, reranking, claim provenance, contradiction detection, an MCP server, and serving infrastructure on top. That's roughly the work Cortex has already done. Most teams don't have ML/infra bandwidth to rebuild that stack from a library.

What's the relationship between Graphiti and Zep?

Graphiti is Zep's open-source temporal-graph library. The Zep platform is built on Graphiti, but the platform itself is closed-source and managed-only. So 'Cortex vs. Graphiti' is fundamentally a build-vs-buy framing; 'Cortex vs. Zep' (covered separately) is more of a managed-vs-managed framing.

Is Cortex open source?

Yes. The Cortex API stack and the Obsidian plugin are open source. You can self-host the full platform in Docker. So you have the same OSS option Graphiti gives you, just at the platform level instead of the library level.

Skip the assembly. Ship the memory.

Graphiti gives you primitives. Cortex gives you the platform — already wired up, already tuned.