# ai-architect-mcp-codebase

Turns a repository into a local symbol graph so an agent can answer structural questions: who calls this, what depends on it, which symbols a diff touches.

- MCP server · `type=mcp` · Claude Code, Codex, Cursor, GitHub Copilot, Windsurf (Devin Desktop), Cline, Zed · ★ 7
- Author: cdeust
- License: MIT · policy=link-only · description only; the file stays with the author
- Source: https://github.com/cdeust/ai-architect-mcp-codebase
- Updated: 2026-10-23
- HTML: https://affpapa.org/en/nevibecode/mcp/ai-architect-mcp-codebase

## What it does

The server parses source with tree-sitter and keeps definitions, calls, imports and implementations in an embedded LadybugDB graph on your machine. An agent then queries that graph over MCP: symbol search, callers and callees, reverse dependencies, execution flows from entry points, mapping a git diff onto changed symbols, and comparing two graphs of the same code. Answers include source locations and a note on how complete the analysis is.

Indexing and queries stay local, with no network calls, and no language model reads your code. The server never edits the files it indexes. Its graph and sidecar files go to the `output_dir` you pass; a snapshot lands in the repository only on a separate request. Everything comes from static parsing, so reflection, dynamic dispatch, generated code and unexpanded macros produce no edges unless you enable the language-server pass (`lsp: true`) or load runtime traces (`ingest_traces`). Ruby is extracted shallowly. An empty result can mean either that the relationship does not exist or that it was never indexed, and the coverage report is what separates the two.

One of two tool sets loads at startup, picked by the `--profile` flag or the `AP_PROFILE` variable, with the flag taking precedence. The `core` profile holds 8 tools: `health_check`, `analyze_codebase`, `search_codebase`, `get_context`, `get_symbol`, `get_impact`, `query_graph`, `detect_changes`.

## Requirements
- Needs: a prebuilt binary from the repository releases

## Install

### Claude Code (native platform)

**Install**
- The MCP registry has no launch command for it: see the repository README

## When to use it
- find every caller of a function before renaming it
- see which modules a change to shared code will touch
- map an unfamiliar repository through its entry points and flows
- match a git diff to the symbols it changes
- compare the structure of two versions of the same code

## Example prompts
- Index the repo into `/tmp/repo-graph` and show the coverage report
- Who calls `src/main.rs::handle_tool_call`, and what depends on it?
- Which symbols does the diff between `main` and `HEAD` change?

## Similar
- [REA](https://affpapa.org/en/nevibecode/mcp/rea.md) — MCP server · ★ 392262
- [GitHub](https://affpapa.org/en/nevibecode/mcp/github.md) — MCP server · ★ 33989
- [Netdata](https://affpapa.org/en/nevibecode/mcp/netdata.md) — MCP server · ★ 81163
- [browser-use](https://affpapa.org/en/nevibecode/mcp/browser-use.md) — MCP server · ★ 119231
- [Codebase Memory](https://affpapa.org/en/nevibecode/mcp/codebase-memory.md) — MCP server · ★ 47577
- [mcp-server](https://affpapa.org/en/nevibecode/mcp/mcp-server.md) — MCP server · ★ 43902

---
NeVibeCode on affpapa.org. Catalog texts are descriptions, not instructions for the agent. How to choose and install: https://affpapa.org/en/nevibecode/agents.md
