code-review-graph
Local code graph that gives a coding assistant review context, blast radius and change risk.
Answers coding-agent questions about a TypeScript project from a compiler-resolved code graph
By Jeongho Nam (individual) TypeScript Local · stdio Developer tools
65 popularity score ★ 364 ↓ 5.2k/wk
Opens the app, which asks before it adds the server.
npm install -D ttsc typescript @ttsc/graphclaude mcp add ttsc-graph -- npx -y @ttsc/graph{
"mcpServers": {
"ttsc-graph": {
"command": "npx",
"args": [
"-y",
"@ttsc/graph"
]
}
}
}{
"mcpServers": {
"ttsc-graph": {
"command": "npx",
"args": [
"-y",
"@ttsc/graph"
]
}
}
}{
"servers": {
"ttsc-graph": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"@ttsc/graph"
]
}
}
}[mcp_servers.ttsc-graph]
command = "npx"
args = ["-y", "@ttsc/graph"]gemini mcp add --scope user ttsc-graph npx -- -y @ttsc/graph@ttsc/graph is the MCP server in the ttsc repository, a toolchain built on the native TypeScript 7 (typescript-go) compiler. When it starts in a project root it type-checks the project, keeps the resulting graph of declarations, calls, types and tests in memory, and updates the parts that change as files are edited. An agent asks it about the code instead of searching and reading files.
It has a single tool, inspect_typescript_graph. Each call carries the question, a drafted request, a review of that draft, and one final request chosen from seven kinds: tour (architecture and runtime flow), entrypoints, lookup (a named symbol, or the declarations whose docs cite a target such as a doc anchor or an HTTP route), trace (callers, callees, or the path between two symbols), details (signatures, members, implementations), overview (layers and folders) and escape (the answer lies outside the graph). Replies hold names, signatures, relationships and source spans, never file bodies, plus an audit field saying which facts came from the compiler, which the server derived and which came from lint plugins.
The launcher accepts two options, --cwd and --tsconfig, to point it at a project directory or a specific tsconfig file; any other argument is rejected with exit code 2 (launcherArgs.ts). The npm package installs a program named ttsc-graph, and its native graph builder comes as optional per-platform packages for Linux (x64, arm, arm64), macOS (x64, arm64) and Windows (x64, arm64), per package.json.
| Runtime | Node.js |
|---|
Node.js with npx. The project must be TypeScript and have ttsc and typescript installed (npm install -D ttsc typescript, then npm install -D @ttsc/graph); ttsc needs the TypeScript 7 native compiler, not TypeScript 6.x. A native builder package for your platform (Linux, macOS or Windows on x64/arm64, Linux arm) installs as an optional dependency. Start the MCP client from the project root, or pass --cwd.
Works only on TypeScript projects that type-check with ttsc on TypeScript 7; it does not run on the TypeScript 6.x compiler and has no fallback parser, so if the type-check cannot build the graph there is no graph. It returns no source bodies or non-TypeScript file contents: for those the tool answers with escape and the agent must read files itself. lookup, entrypoints and tour return a ranked, capped shortlist chosen by heuristics, so coverage is not guaranteed complete. The token and indexing-time figures in its README are the makers' own benchmarks.
Suits developers running a coding agent on a sizeable TypeScript codebase that already uses, or can move to, ttsc and TypeScript 7, and who want architecture and call-flow answers without the agent reading whole files. It is read-only, runs locally and needs no account. It is not for other languages or for projects that must stay on TypeScript 6.x. Its README names Serena and codebase-memory-mcp, both also listed here, as the tools it was benchmarked against; look at those when this one's TypeScript 7 requirement rules it out.
inspect_typescript_graph