The problem Every time an AI coding agent needs to make a change, it faces the same cold-start: it has to manually trace through imports, figure out which files depend on what, identify which tests cover the affected code, and reason about all of it from scratch — burn tokens, take time, and still risk missing something or being inconsistent from one edit to the next. In a multi-language mono-repo like Galaxium Travels (Python + TypeScript + Java), this cost compounds with every single change. The solution dep-graph-guard is an installable MCP server that any coding agent — Bob, Claude Code, or any other — can call before touching a file. It parses the repo once, builds an in-memory dependency graph, and exposes five tools: build_dependency_graph — walks all source files and returns a complete node/edge graph with stats analyze_change_impact — given a list of files to change, returns the full downstream blast radius: directly affected and transitively affected files get_required_tests — cross-references affected nodes against the test suite and surfaces any nodes with no coverage at all build_dependency_graph_detailed — extends the graph to function-level nodes for Python, so the blast radius of changing a single function is narrower and more precise than the whole file visualize_dependency_graph — returns a Mermaid or Graphviz DOT diagram of the graph for instant visual inspection Target users AI coding agents, and the humans directing them. The tool is repo-agnostic — it takes a path at call time, so one installation serves every project. How it works in practice Before changing models.py in the Galaxium Travels Python backend, an agent calls analyze_change_impact and immediately learns that 8 files are directly affected and 10 transitively. It then calls get_required_tests and receives the exact test files to run. No re-reading, no guessing. The visualize_dependency_graph call drops a live Mermaid diagram that confirms models.py and schemas.py are the two central hub dependencies everything else imports. What makes it unique The tool is language-agnostic (Python AST, JS/TS regex, Java package-index), ships as a standard MCP server registered in any mcp.json with three lines, and adds a function-level precision mode for Python that narrows blast radius to the specific callers of one function — not the whole file. The entire thing was designed, planned, built, tested, and validated end-to-end against a real multi-language mono-repo inside a single IBM Bob session.
Category tags: