mcp-repo-graph
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| REPO_GRAPH_REPO | No | The path to the repository to analyze |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| orientA | Get the lay of the land — ALWAYS the first call on a codebase. With no arguments: a counts + entry-points overview plus a |
| findA | Turn any text into the ranked nodes that matter — the on-ramp to the graph. A symbol or keyword returns matching nodes; a pasted stacktrace / failing-test id / diff is resolved to the code it implicates and ranked by relevance. Set |
| impactA | Blast radius in one call: fan out from one or more nodes to everything they affect (forward) or depend on / are used by (backward), returned as a complete, deduped, Personalized-PageRank-ranked, located closure. Each row carries |
| traceA | Follow the code across boundaries. One argument: trace a feature end-to-end — the ordered path from entry through the stack, each hop labelled with its mechanism (call / HTTP / queue / event / data), crossing service boundaries (frontend→backend). Two arguments: the shortest path between two specific nodes, hop by hop. This is where the graph beats reading many files — it knows the cross-stack links grep can't see. |
| readA | Return the source code for one or more nodes, sliced from their files by the graph's line spans. Use after |
| refreshA | (Re)build the structural graph with tree-sitter AST parsing across 20 languages, running the cross-stack resolvers (HTTP, gRPC, GraphQL, WebSocket, queues, events, CLI). Incremental by default — only changed files re-parse — so it's cheap to call after edits; set |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 6 tools
Each tool targets a clearly distinct action: refresh builds the graph, orient gives context, find discovers nodes, read exposes source, impact computes dependencies, and trace follows cross-boundary paths. No two tools overlap in purpose, and the verbs map cleanly to separate phases of graph-assisted analysis.
All six tools use single, lowercase imperative verbs (read, refresh, find, impact, orient, trace), which is a consistent and predictable convention. There are no mixed styles or awkward noun-verb hybrids.
Six tools is well-scoped for a code-graph server; each covers a core operation (build, orient, discover, inspect, impact, trace) without redundancy. Nothing feels missing or gratuitous.
The surface covers the full analysis lifecycle: refresh builds and updates the graph, orient provides context, find locates nodes, read exposes source, impact computes blast radius, and trace follows cross-stack flows. For a read/analysis-oriented server, no create/update/delete operations are needed, and the set avoids dead ends.