
Koragraph
in.koragraphPublished by koragraph.inv0.1.4Updated Oct 24, 2026
Local multi-repo code graph over MCP. Blast radius, call graphs, and memory anchored to code.
Overview
Builds a local multi-repo code graph and code-anchored memory so an assistant can trace call graphs, blast radius, and past fixes.
- What you can do
- Koragraph indexes every repository you point it at into one local graph of services, files, endpoints, tables, and the resolved calls between them, including edges that cross repo boundaries. Nine tools are exposed over MCP and as CLI commands: blast_radius, explore, search_code, neighbours, changes_with, file_symbols, overview, recall, and remember. Results return file:line references rather than pasted source, and queries accept format and token-budget options. A memory layer stores facts anchored to declarations, so they follow renames and retire when the code is deleted.
- When to use it
- Useful when an assistant works across several repositories and needs structural context instead of text search: checking what depends on a file before editing, finding callers and callees, seeing what historically ships together, or recalling a past failure and its fix. It is aimed at coding agents such as Claude Code, Cursor, or Windsurf.
- Requirements
- Runs locally as a stdio process installed from the npm package koragraphmcp, so Node.js and npm are needed. Repositories must be ingested first with the ingest command, and the MCP server is registered in the editor's configuration. No accounts, API keys, or environment variables are declared.
Installation
In SourceWeft
- Open Koragraph 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
The ultimate context layer for your AI coding agent.
Completely free. Runs entirely on your machine.
A local knowledge graph of every repo you point it at, plus a memory layer that knows when the code it remembers has changed.
[npm] [License: BUSL-1.1] [Node.js >=22] [MCP compatible] [Website]
Install
koragraph doctor checks the whole chain and prints the exact line for any editor.
Two ways to use it from here: your agent calls the tools over MCP, or you (or a script, or a Claude
Code hook) run them straight from the shell, for example koragraph explore "how does checkout work"
or koragraph blast src/pay.js. Same graph either way.
Then run KORAINIT in your editor
This is the step that lights up the memory layer, so don't skip it. In your coding agent (Claude Code, Cursor, Windsurf, whatever you use), tell it:
"Read
KORAINIT.mdand follow it."
It imports your existing CLAUDE.md / AGENTS.md into koragraph's memory, anchored to the code
each rule is about, flags any rule that points at code that's already gone, and finishes wiring
koragraph into the session. Run it once per project.
Prefer zero setup? Hand the whole thing to your agent instead. Paste this from the repo you want indexed, and it installs, indexes, wires itself in, and runs KORAINIT for you:
Works with
[Claude Code] [Cursor] [GitHub Copilot] [Windsurf] [Zed] [Cline] [Continue] [OpenCode] [Codex] [Antigravity]
Adoption is highest on Claude Code: its hooks let koragraph put the graph in front of the agent on every turn, so it actually gets used instead of falling back to grep. Other editors reach koragraph over MCP, where the agent decides when to call it.
One map of everything you've built
Koragraph turns every repo you point it at into one live graph: a resolved structure, with an edge only where there really is one.
- Every service, file, endpoint, and table.
- The real calls between them, resolved against the syntax tree, not guessed by name.
- The edges that cross a repo boundary, where single-repo tools go quiet.
koragraph serve: code (cool nodes) and its memory (gold diamonds), one local page.
A memory that knows when the code changed
Everything your agent learns is saved locally, anchored to the exact declaration, not a line
number. Rename the code and the fact follows; delete it and the fact retires. No CLAUDE.md to
maintain, and it survives every upgrade.
- Failures and their fixes. The fix surfaces before you hit the same wall twice.
- Hazards, rules, corrections. Stated once, honoured every session after.
- The "let's push this to Wednesday." Deferrals and half-finished intent, parked against the code and surfaced the moment you're back.
Measurably the most accurate, scored by the compilers
Every graph is graded by an independent compiler front-end (CPython ast, go/parser, Roslyn,
syn, tsc, Ripper, php-ast, ctags, swiftc), never the tool under test. koragraph wins 34 of
39 language×plane cells, and leads precision on all 39.
Call-graph recall, the hardest plane:
Reproduces from test/benchmark: pinned corpus, pinned competitor versions,
pinned oracles. Full breakdown in test/benchmark/REPORT.md.
The tools
Nine tools, reachable two ways: as MCP tools in your editor, and as CLI commands in your
shell. On Claude Code a hook also calls the CLI to push the relevant slice into context on every
turn, so the graph gets used whether or not the agent thinks to ask. Every tool returns file:line,
never pasted source. Exactly one writes.
Every query verb takes --format compact|json|paths and --budget <tokens>, so a result can be
trimmed before it ever enters an agent's context. Plus the operational CLI: ingest, serve,
status, doctor, diff, trace, hooks, practice, report.
Languages
c · c++ · c# · go · java · javascript · php · python · ruby · rust · swift ·
typescript / tsx, fully resolved, tree-sitter throughout. Plus experimental kotlin · scala ·
elixir · solidity · vue · zig · objective-c · ocaml · rescript.
License
BUSL-1.1. Free to use, including at work. Converts to Apache-2.0 on the change date.
Built by Akhil Katakam · Ethan Faleiro · [email protected]
Source: README.md at commit c9ce746
Tools
0Version history
1- v0.1.4LatestSep 16, 2026
Score
40% 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
Declare a license in the repository or the registry entry.