Cartograph
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||
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 |
|---|---|
| find_symbolA | Locate where a symbol is DEFINED, with its file:line, signature and doc. This is the right first call for "where is X?" -- it is exact and ranked by
structural importance, so if a repo has six functions called Use |
| search_codeA | Full-text search across symbol names, signatures and docstrings (BM25). Use when you know the intent but not the identifier. Results are re-ranked by call-graph importance, so central symbols outrank incidental mentions. |
| get_symbolA | Full detail for one symbol: signature, doc, members, callers and callees. Prefer this over reading the whole file: you get the definition plus its
immediate graph neighbourhood, which is usually all the context needed to
make a safe edit. Set |
| who_callsA | Reverse call tree: everything that reaches this symbol, transitively. The tool to use before changing a signature, tightening a validation, or deleting anything. Each edge reports the rule that produced it; treat sub-0.5 edges as leads rather than facts. |
| what_it_callsA | Forward call tree: what this symbol depends on, transitively. Use it to understand an unfamiliar function without reading every file it touches, and to spot the layer a piece of code really sits in. |
| blast_radiusA | Impact analysis: what a change here could break, and which tests to run. Combines the reverse import graph with the reverse call graph, then highlights test files specifically. Recall-first by design (confidence >=0.3): the expensive mistake is a missed impacted test, not an extra one. Call this before editing shared code and after finishing, to pick tests. |
| related_symbolsA | "What else should I read before touching this?" via the call graph. Runs personalized PageRank seeded on the anchor symbol and treats the call graph as undirected, so it surfaces collaborators a plain caller/callee list misses -- siblings that share a hub, helpers two hops away. This is the structural analogue of semantic search, and it needs no embeddings: proximity in the call graph is the relationship. |
| file_summaryA | Outline of one file: what it defines, what it imports, who imports it. Cheaper than reading the file when you only need to know whether it is relevant, and it adds the reverse-import view that reading cannot give you. |
| architecture_overviewA | Orient yourself in an unfamiliar repo: modules, layers, cycles, hotspots. Start here. One call replaces a dozen exploratory file reads: you get module sizes and layering, import cycles, the highest-PageRank symbols (the risky ones to change) and the repo's entry points. |
| index_statsA | Index health: size, coverage, and the edge-resolution breakdown by rule. Worth a call when graph answers look thin -- a low resolution rate or a stale
|
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
| orient | Structured first pass at an unfamiliar codebase, graph-first. |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
| architecture_resource | The module graph, cycles and hotspots as an attachable resource. |
| stats_resource | Index health as an attachable resource. |
TDQS
Scored across 10 tools
Tool purposes are largely distinct and descriptions explicitly route agents to the right one, but find_symbol/get_symbol and who_calls/blast_radius have adjacent responsibilities that could occasionally cause misselection. Overall, the overlap is minor and well-documented.
All names are readable snake_case, but the set mixes verb-object names (find_symbol, search_code, get_symbol), question-style names (who_calls, what_it_calls), and noun-phrase names (blast_radius, file_summary, architecture_overview). This is not chaotic, but it lacks a single consistent naming pattern.
Ten tools is a well-scoped surface for a code-graph analysis server. Each tool addresses a distinct job—search, symbol detail, call trees, impact analysis, overview, index health—without redundancy or bloat.
The toolchain covers symbol discovery, detailed lookup, dependency analysis, impact assessment, file outlining, architecture orientation, and index health, giving strong coverage of the code-understanding workflow. Minor gaps like direct raw-file access or listing all symbols in a file must be worked around via file_summary and get_symbol.