recon_changes
Git diff → affected symbols → risk assessment → affected tests.
WHEN: Before commit, or reviewing a PR. NOT: No changes have been made yet. THEN: Fix issues, then commit.
Ask a symbol graph over your repository who calls this, what breaks if you change it, which tests go with it, and then rename it across every reference instead of grepping for the name.
No longer maintained. The GitHub repository for this server is archived — no fixes or security updates are expected.
LABSCO SUMMARY
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.
Nothing — no account, no key.
One command — npx recon-mcp serve
USE CASES
Take the architecture overview first, locate the pieces you were told about, then read the context around whichever one matters.
Read what depends on the symbol before you touch it, and find out which tests are going to be the ones that catch a mistake.
Turn the diff into the set of symbols it actually moves, with a risk read and the affected tests, then generate a diagram to reason about it.
Produce the plan first, check what the rename would touch and what it would break, then run it for real.
Ask the graph for dead code, circular dependencies and unused exports, then confirm each finding before deleting anything.
Counted once with only startup setup. Other versions, modes or optional credentials may expose a different list.
recon_changesGit diff → affected symbols → risk assessment → affected tests.
WHEN: Before commit, or reviewing a PR. NOT: No changes have been made yet. THEN: Fix issues, then commit.
recon_explainFull 360-degree context of a symbol: callers, callees, flows, cross-language links.
WHEN: You need to understand a function/class before modifying it. NOT: You just need to read the source code (use Read tool). THEN: recon_impact if you plan to change it.
recon_exportGenerate Mermaid diagram of package/symbol/file relationships.
WHEN: Need visual representation for documentation or understanding. NOT: Just need a list of packages (use recon_map). THEN: Paste diagram in PR or docs.
recon_findSmart search: exact name, wildcard (*Handler), or natural language.
WHEN: Looking for a symbol, function, class, or pattern. NOT: You already know the symbol name and need full context (use recon_explain). THEN: recon_explain for details on a result.
recon_impactBlast radius: what breaks if you change this symbol, including affected tests.
WHEN: Before modifying any exported function or shared type. NOT: Just exploring (use recon_explain first). THEN: Make the change, then recon_changes to verify.
recon_mapArchitecture overview: tech stack, packages, entry points, health.
WHEN: First time in a codebase, or need to recall architecture. NOT: You need details about a specific symbol (use recon_explain). THEN: recon_find to locate specific symbols.
recon_renameGraph-aware safe rename across all files. Always dry_run first.
WHEN: Renaming a symbol and want to catch all references. NOT: Simple text replacement in one file (use Edit tool). THEN: Review plan, then run with dry_run: false.
recon_rulesCode quality analysis via knowledge graph: dead code, circular deps, unused exports.
WHEN: Reviewing code quality, cleaning up, or auditing architecture. NOT: Looking for a specific symbol (use recon_find). THEN: recon_explain on flagged items for context.
BEFORE YOU INSTALL
8 tools when we connected.
Node.js ≥ 20
Both documented clients run the server on your machine.
CONTEXT COST
Rated by the size of the 8 tool definitions that ride along on every turn, not by how many there are
INSTALLATION
npx recon-mcp serve{
"mcpServers": {
"recon": {
"command": "npx",
"args": [
"recon-mcp",
"serve"
],
"cwd": "<YOUR_PATH_TO_PROJECT>"
}
}
}