
Graphpilot
@graphpilot-oss
About Graphpilot
GraphPilot gives coding agents persistent structural knowledge of a codebase. It parses TypeScript/JavaScript with tree-sitter into a graph of symbols and call edges, then exposes that graph over MCP so the agent can recall definitions, find callers, and trace change impact witho
Config
Add this server to your MCP-compatible client using the configuration below.
{
"mcpServers": {
"graphpilot": {
"command": "npx",
"args": [
"-y",
"@graphpilot-oss/graphpilot",
"mcp"
]
}
}
}Tools
4Re-index the repo after batch edits so subsequent gp_* calls see your changes. Call after any non-trivial edit session. Do NOT call before every query — indexing is slow; only needed when source files changed.
Find a symbol definition by name — returns kind, file:line, and signature. ALWAYS use instead of `grep -rn "function X"` or reading files to locate a definition: pre-indexed, no false positives from comments or strings, sub-millisecond. Pass substring:true for partial-name searches. Do NOT use for "who calls X?" — use gp_callers for that.
List every caller of a symbol (direction=callers) or everything it calls (direction=callees). ALWAYS use instead of `grep -rn "X("` for "who calls X?" — pre-indexed reverse map, sub-millisecond, no false positives from comments or strings. Use direction=callers to find dependents before a rename; direction=callees to understand what a function depends on. Do NOT use for full blast-radius analysis across multiple hops — use gp_impact instead.
Compute the blast radius of a rename or signature change: direct callers, transitive callers up to depth 3, affected tests, and whether the symbol is exported (breaking-change risk). ALWAYS call before proposing a rename, signature change, or behavior change — replaces `git diff | xargs grep` with a single structured answer. Pass `since: <commit|branch>` to scope callers to files changed since that ref (ideal for PR review or refactor scoping). Do NOT use just to see direct callers; use gp_callers for that.
Overview
What is Graphpilot?
Graphpilot is a local CLI + MCP server that indexes TypeScript/JavaScript repos into a structural graph (symbols, callers, callees, blast radius) and exposes it to coding agents like Claude Code, Cursor, and Cline, so they stop grepping the same files every session. It runs entirely on your machine and serves as persistent structural memory between agent sessions, reducing token usage and hallucinations.
How to use Graphpilot?
Install the package globally (npm install -g @graphpilot-oss/graphpilot), then run graphpilot index <path> once to build the graph. For agent integration, add a two-line MCP server entry to your agent's configuration pointing to graphpilot mcp. Optionally run graphpilot watch <path> for sub-second incremental updates and graphpilot init to write editor rules that teach the agent to use the gp_* tools.
Key features of Graphpilot
- Evidence anchors with
file:line@shaon every result - Differential impact scoped to branch changes via
since - Worktree‑aware indexing without manual configuration
- Local‑first, zero telemetry, deterministic graph
- Sub‑second incremental watch mode updates
- Four MCP tools: gp_recall, gp_callers, gp_impact, gp_index
Use cases of Graphpilot
- Find all callers of a function before refactoring
- Assess blast radius of renaming a symbol up to depth 5
- Perform PR‑scoped impact analysis using branch filter
- Locate a symbol definition quickly without grep
- Keep agent’s structural knowledge fresh via watch mode
FAQ from Graphpilot
What are the prerequisites for using Graphpilot?
Node.js ≥20, an MCP‑capable coding agent (Claude Code, Cursor, Cline, Windsurf, or Continue), and a TypeScript or JavaScript repository to index.
How does Graphpilot compare to grep?
In a benchmark on 10 structural queries, Graphpilot achieved F1 0.89 vs grep’s 0.42 while reading 99.9% fewer bytes (721 B vs 528 KB). An agent using Graphpilot on 40 questions used 61% fewer tokens and cost $3.68 instead of $8.88.
Does Graphpilot send any data off my machine?
No. Graphpilot is local‑first by design — it has no telemetry, no remote calls, and the
Frequently asked questions
What are the prerequisites for using Graphpilot?
Node.js ≥20, an MCP‑capable coding agent (Claude Code, Cursor, Cline, Windsurf, or Continue), and a TypeScript or JavaScript repository to index.
How does Graphpilot compare to grep?
In a benchmark on 10 structural queries, Graphpilot achieved F1 0.89 vs grep’s 0.42 while reading 99.9% fewer bytes (721 B vs 528 KB). An agent using Graphpilot on 40 questions used 61% fewer tokens and cost $3.68 instead of $8.88.
Does Graphpilot send any data off my machine?
No. Graphpilot is local‑first by design — it has no telemetry, no remote calls, and the
Basic information
More Other MCP servers
🪟 Windows-MCP
CursorTouchMCP Server for Computer Use in Windows
Awesome Mlops
visengerA curated list of references for MLOps
Blender
ahujasidOpen-source MCP to use Blender with any LLM
XcodeBuildMCP
cameroncookeA Model Context Protocol (MCP) server and CLI that provides tools for agent use when working on iOS and macOS projects.
🚀 Model Context Protocol (MCP) Curriculum for Beginners
microsoftThis open-source curriculum introduces the fundamentals of Model Context Protocol (MCP) through real-world, cross-language examples in .NET, Java, TypeScript, JavaScript, Rust and Python. Designed for developers, it focuses on practical techniques for building modular, scalable,
Comments