loading…
Search for a command to run...
loading…
An MCP server for indexing and querying Unreal Engine C++ codebases using a local SQLite database. It enables users to analyze call graphs, class structures, an
An MCP server for indexing and querying Unreal Engine C++ codebases using a local SQLite database. It enables users to analyze call graphs, class structures, and Blueprint-exposed symbols through tools integrated with Claude Code.
MCP server for indexing and querying Unreal Engine C++ codebases.
Indexes your UE project's Source/ directory into a local SQLite database and exposes 15 MCP tools so Claude Code can answer questions about call graphs, class structure, #include dependencies, and Blueprint-exposed symbols — without reading raw files every time.
UCLASS, UPROPERTY, UFUNCTION)BlueprintCallable functions and BlueprintReadWrite properties#include dependency graph — what a file includes, and what includes it (transitive support)ue-graph commands directly from the terminal without Claude| Requirement | Version | Check |
|---|---|---|
| Node.js | 22 LTS | node --version |
| npm | 9+ | npm --version |
| Claude Code | latest | claude --version |
Node.js 22 LTS is required. Odd-numbered "Current" releases (v23, v25, etc.) are incompatible with tree-sitter's native bindings and will fail to parse files.
Download from https://nodejs.org (click the LTS tab) or use winget:
winget install OpenJS.NodeJS.LTS
setup.batcd C:\path\to\ue-codegraph-mcp
.\setup.bat
setup.bat will:
node-gyp globally (needed for native module builds)npm install (builds tree-sitter and better-sqlite3 from source)npm link to register the ue-graph CLI globallymcp.jsonIf the native build fails, install Visual Studio Build Tools with the C++ build tools workload, then re-run
setup.bat.
ue-graph index "G:\YourProject\Source" my-project
Output:
Indexing G:\YourProject\Source as "my-project" (project)...
Done!
Files: 1784 (new: 1784, changed: 0)
Symbols: 45623
Macros: 3210
Calls: 28450
Includes: 9120
Time: 32.5s
claude mcp add -s user ue-codegraph node "C:\path\to\ue-codegraph-mcp\build\index.js"
Verify with claude mcp list. Then start Claude Code in your project directory and run /mcp to confirm the server is connected.
Once registered, Claude automatically uses the MCP tools when you ask natural-language questions:
"Find everything that calls SetHP"
"Trace the call chain from DamageMyPlayer to ApplyDamage"
"Analyze the UAMirLuaManager class"
"Which files include AMirCharacter.h?"
"Show all BlueprintCallable functions in UAMirAbilityComponent"
Use ue-graph directly from the terminal without Claude Code.
ue-graph index <path> [name] # Index a codebase
ue-graph status # Show indexed codebases and stats
ue-graph reindex <file_path> # Re-index a single file after changes
ue-graph delete <id|name|all> # Remove a codebase from the index
ue-graph callers SetHP # Who calls SetHP?
ue-graph callees BeginPlay # What does BeginPlay call?
ue-graph chain DamageMyPlayer SetHP # Call path from A to B
ue-graph analyze UAMirLuaManager # Methods, fields, UE macros
ue-graph hierarchy AAMirCharacter # Inheritance tree (up + down)
ue-graph blueprint UAMirLuaManager # Full Blueprint interface
ue-graph search "SetHP" # FTS symbol search
ue-graph code "CL2LG_MY_CHARACTER_SPAWN_REQ" # Code text pattern search
ue-graph refs DamageMyPlayer # Where is this symbol used?
ue-graph macros UFUNCTION # All UFUNCTION macros
ue-graph macros UFUNCTION BlueprintCallable # Filter by specifier
ue-graph deps "G:\...\MyActor.h" # #include dependency graph
| Tool | Description |
|---|---|
init_codebase |
Index a UE source directory |
get_index_status |
Show registered codebases and stats |
reindex_file |
Re-index a single file |
find_callers |
Find all callers of a function |
find_callees |
Find all functions called by a function |
find_call_chain |
Shortest call path from function A to B |
get_file_dependencies |
#include graph (includes + included-by) |
analyze_class |
Class methods, fields, UE macros, base classes |
get_class_hierarchy |
Ancestor and descendant class tree |
find_ue_macros |
Search UE macros by type and specifier |
get_macro_specifiers |
Get specifiers for a specific symbol's macro |
find_blueprint_exposed |
All BlueprintCallable/BlueprintReadWrite symbols |
get_blueprint_interface |
Full Blueprint interface of a class |
search_symbols |
FTS5 symbol search |
search_code |
Code text pattern search |
find_references |
Cross-reference lookup |
| Issue | Workaround |
|---|---|
analyze_class may fail on 3000+ line headers (forward declarations) |
Use Grep + Read instead |
Parent class lookup broken when GENERATED_BODY() is the only inheritance hint |
Use grep 'class Foo.*public' |
find_callees can mix results when multiple classes share the same method name |
Use unique function names or find_callers |
All files fail with Invalid argument during indexing
→ Wrong Node.js version. Install Node.js 22 LTS, delete node_modules/, re-run setup.bat.
Native build errors (node-gyp, better-sqlite3)
→ Install Visual Studio Build Tools (C++ workload), then re-run setup.bat.
MCP server not visible in Claude Code
→ Confirm the path in claude mcp list is an absolute path. Restart Claude Code and run /mcp.
MIT
Добавь это в claude_desktop_config.json и перезапусти Claude Desktop.
{
"mcpServers": {
"ue-codegraph-mcp": {
"command": "npx",
"args": []
}
}
}