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.
| Dimension | HangarX Cortex | Graphiti |
|---|---|---|
| Layer of the stack | Managed memory platform | Open-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 integration | MCP-native + REST | Python SDK only |
| Multi-LLM provider support | 8+ providers | OpenAI / Anthropic / Gemini / others via direct integration |
| Time-to-first-query | Minutes (Docker up + ingest) | Hours to days (you stand up Neo4j, write ingestion, build retrieval, expose serving) |
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.
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.
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.
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.
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.
If you're evaluating this against Cortex, you're probably also weighing these.
Graphiti gives you primitives. Cortex gives you the platform — already wired up, already tuned.