The tools are laid out as a sequence rather than a menu — recon_map to orient, recon_find to locate, recon_explain for context, recon_impact before the edit, recon_changes after it — and each one names the call that follows, which makes the server navigable without reading documentation first. recon_rename writes to files and is meant to be run with dry_run before it is run for real; the difference between it and a find-and-replace is precisely that recon_rename works from the reference graph. recon_rules earns its place separately, since dead code, circular dependencies and unused exports are findings a graph produces cheaply and a reader of the source produces slowly.
A code-intelligence server that builds a symbol graph over a repository and answers architecture, impact, rename and code-quality questions from that graph rather than from a text match.
- An orientation pass over an unfamiliar repository: recon_map returns the tech stack, packages, entry points and health for the repo you point it at.
- Lookup that takes whatever you actually remember: recon_find accepts an exact name, a wildcard such as *Handler, or a natural-language query, narrowed by language, package and type and capped by limit.
- The full surround of one symbol: recon_explain returns callers, callees, flows and cross-language links, resolved by name and file, walked to depth, with include_source pulling in the source itself.
- Change safety before the edit and after it: recon_impact reports what breaks if you change a target symbol and which tests are affected, walked in direction to maxDepth; recon_changes takes the git diff against base within scope and maps it to affected symbols, a risk assessment and affected tests, with include_diagram attaching a diagram.
- Renames that follow references rather than text: recon_rename rewrites a symbol across all files, with dry_run producing the plan before anything is written.
- Something to paste into the review: recon_export generates a Mermaid diagram of package, symbol and file relationships around a target, scoped by scope and direction, walked to depth and capped by limit.
- Codebase hygiene from the same graph: recon_rules flags dead code, circular dependencies and unused exports, selected by rule and narrowed by language and package.
Nothing — no account, no key.
One command — npx recon-mcp serve
