About gen-system Understand
gen-system Understand is a read-only MCP server for agents investigating codebases. Deterministic parsers provide structural facts across several languages without sending data elsewhere.
Key features
- 01Architecture and symbol lookup
- 02Call and control-flow graphs
- 03Source and file symbols
- 04Effects and routine beliefs
- 05Optional belief corrections
Use cases
- 01Trace calls between routines
- 02Inspect a routine’s control flow
- 03Find symbols across a repository
MCP support
Exposes codebase architecture, symbols, graphs, source, effects, and beliefs through MCP tools. It can also expose a belief-correction tool when enabled.
Configuration
Local server config is the same for every client. Copy it into your client’s MCP config file.
npx -y gen-understandUNDERSTAND_MCP_BINARYPath of a local understand-mcp binary; skips the download, for offline machinesUNDERSTAND_MCP_CACHEFolder for the downloaded binary; defaults to the user cache folderLocal servers need a runtime on your machine (e.g. Node.js 18+). Config file locations differ by client; see your client’s docs.
Tools
Local servers expose tools only once running on your machine, and the maintainer has not provided a tool list.
Details
From the project READMEgen-understand
gen-system's Understand engine as an MCP server. It gives an AI agent parser facts about a codebase: the architecture, symbols, call graphs, control flow graphs, effects, source and the beliefs gen-system holds about each routine. No model writes these answers; deterministic parsers for Go, COBOL with copybooks, CA Gen, Java, TypeScript and Python do.
The server is read only. It runs locally and sends nothing anywhere.
Use it
Claude Code
claude mcp add gen-understand -- npx -y gen-understand --root /path/to/your-repo
Codex (~/.codex/config.toml)
[mcp_servers.gen-understand]
command = "npx"
args = ["-y", "gen-understand", "--root", "/path/to/your-repo"]
Cursor (.cursor/mcp.json)
{
"mcpServers": {
"gen-understand": {
"command": "npx",
"args": ["-y", "gen-understand", "--root", "."]
}
}
}
Tools
architecture, search_symbols, call_graph, control_flow, source, file_symbols, effects
and beliefs. With --allow-corrections, also correct_belief. The full list, the flags and the
protocol details are in
docs/mcp.md.
How this package works
The server is a Go binary. On first run this package downloads the binary for your platform from
the gen-system release of the same version,
checks its SHA-256 against the release's checksums.txt, and caches it. Later runs start at once
and work offline. Builds exist for Linux, macOS and Windows, on x64 and arm64.
| Variable | Use |
|---|---|
UNDERSTAND_MCP_BINARY | Path of a local understand-mcp binary. Skips the download, for offline machines |
UNDERSTAND_MCP_CACHE | Folder for the downloaded binary. Default: the user cache folder |
Without npm, install the binary with Go: go install github.com/hpdkhoa/gen-system/generator/cmd/understand-mcp@latest.
License
Apache-2.0.
Comments
New to MCP?
From what the protocol is to installing your first server, these answers cover most first questions.
An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.