
Graphiti Local
io.github.renezander030Published by GitHub account renezander030v0.10.0Updated Oct 24, 2026
Local-first temporal knowledge graph with six read-only MCP tools and human-reviewed writes.
Overview
A local-first temporal knowledge graph that gives assistants six read-only memory tools, with proposed updates held for human approval.
- What you can do
- Retrieve project decisions and facts from a local temporal knowledge graph through six read-only MCP tools or the kg CLI command line tool, with current facts by default and an explicit historical view. Ingest Markdown, text or JSONL into the graph, with large documents split at stable boundaries and receipts and failure logs recording what landed. Propose graph updates that stay in a separate queue until a human reviews and applies them, with accept, refuse or contested decisions and a checksum-sealed snapshot of accepted facts only. Run a demo against a small synthetic graph using keyword retrieval alone, without a model or database setup.
- When to use it
- Use it when you want agents to recall local project decisions and facts with explicit human review before anything is written. Skip it if agents must write through MCP, or if you want a hosted service without local setup.
- Requirements
- A local Python setup with uv and Ollama installed and running; setup downloads need internet access. Environment variables GRAPHITI_LOCAL_CONFIG, KG_WORKSPACE_DIR and KG_LADYBUG_PATH configure the run. Ollama models qwen2.5:7b and nomic-embed-text are pulled for extraction. No Docker or cloud API key is needed for the local setup.
Installation
In SourceWeft
- Open Graphiti Local in the dashboard and add it to a workspace.
- Enable the server for the chats that should use its tools.
Desktop only via STDIO. STDIO servers start a local process, so they need the SourceWeft desktop host.
Other MCP clients
Follow the launch instructions in the repository.
README
Graphiti Local
Local memory for your agents. You approve what they learn.
Retrieve project decisions through six read-only MCP tools or the kg CLI.
Proposed updates stay in a separate queue until a human approves and applies them.
Ollama handles local inference; embedded LadybugDB stores the graph. No Docker or
cloud API key is needed for the local setup.
[42-second synthetic memory demo]
Captured output excerpts with pauses condensed. Measured results and limitations.
Try it in one command
Answers a question against a small synthetic graph shipped with the package. No Ollama, no model downloads, no database setup: retrieval runs on keywords alone, so nothing contacts a model. Ask your own question by passing it as an argument.
This is the read path only. Building a graph from your own text needs extraction, which needs a model, and that is the full setup below.
Try it locally
Install uv and Ollama, then start Ollama. Setup downloads need internet access. Run these commands in bash or zsh:
The synthetic example returns DuckDB. Follow the complete walkthrough to propose PostgreSQL, review and apply that update, and retrieve it from an MCP client. Model extraction can be wrong; inspect the returned facts and validity timestamps.
To review extraction before it touches the configured graph, run
kg-ingest INPUT --review-output review.jsonl, inspect the snapshot, and mark every
fact in the generated review.jsonl.review.jsonl file as accept, refuse, or
contested. The printed restore command refuses unresolved decisions and promotes a
checksum-sealed snapshot containing accepted facts only. Searches return current facts
by default; kg ask --history is the explicit historical view.
kg-ingest also accepts a Markdown/text file or a directory tree directly. Large
documents split at stable text boundaries. Transient writes retry with one stable
episode id; ingest-receipts.jsonl and ingest-failures.jsonl in the workspace show
exactly what landed and what still needs attention.
Multiple users on Ladybug
Give each user a group, and each group its own Ladybug file:
Each file is named by the SHA-256 of its group, so no group id can point outside the
directory. Reads, kg ask and the drain open only the file of the group they address;
a token granted alice never opens Bob's file. A read names one group, or the token's
single group is used. For a tenant boundary inside one database server, use FalkorDB
or Neo4j.
Is it a fit?
Use it for local agent memory with explicit human review. Skip it if you need agents to write through MCP or want a hosted service without local setup. FalkorDB and Neo4j are also supported.
- Setup and MCP configuration
- Commands, ingestion, backups, and deployment
- Privacy · Security · Container discovery
- Report a successful or blocked setup
If this helps your workflow, star the repository and share your setup result.
Maintained by René Zander, who builds context layers for AI agents on temporal knowledge graphs.
Independent community project built on Graphiti, not affiliated with or endorsed by Zep. Apache-2.0.
Source: README.md at commit cce3cbc
Tools
0Version history
7- v0.10.0LatestOct 23, 2026
- v0.9.0Oct 16, 2026
- v0.8.0Oct 16, 2026
- v0.7.0Oct 9, 2026
- v0.6.0Sep 25, 2026
- v0.5.0Sep 23, 2026
- v0.4.1Sep 18, 2026
Score
50% of the applicable checks met
How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.
- Reached in the last 30 days25 pts
Keep the endpoint answering the MCP handshake; SourceWeft probes it every 30 days.
- Auth declared10 pts
Declare the credential headers in the registry entry, or keep the endpoint answering the probe so its auth can be classified.
- Tools listed15 pts
Answer tools/list without a credential, or ship a package that starts in a sandbox without one.
- DescriptionRequired15 pts
- Logo10 pts
- Documentation15 pts
- License10 pts