Fathom is a free, open-source plugin that helps AI coding assistants better understand your Unreal Engine 5 C++ projects. Whether you use Claude, Gemini, Codex, or any other LLM, Fathom gives them the right project context at the right time, reducing hallucinations and increasing your productivity.
Unreal Engine projects are more than just C++ code. They include various binary files that are linked to the C++ code. Without understanding what's happening "in engine", LLMs working on UE5 C++ projects frequently hallucinate class names, miss Blueprint relationships, and produce code that doesn't match your project's actual structure. They can only see the files you feed them, and they have no way to query your project as a whole.
Fathom solves this by exposing your project's full picture through MCP tools that any compatible AI assistant can call on demand.
- Solution-Wide Code Analysis: Your LLM can query diagnostics and inspections for any file in the solution, not just the ones currently open.
- Blueprint and Asset Discovery: Find which Blueprints derive from a given C++ class, what they do and what their dependencies and referencers are.
- Automatic Data Freshness: Asset data is kept up to date so your LLM always works with the current state of the project.
- MCP Tools: Provides over 15 MCP tools to inspect various aspects as needed, using a UE5 plugin to query pertinent UE5 data.
Fathom is not here to automate everything. It exists to reduce the friction of using LLMs with UE5, especially for C++ development. It intentionally does not provide Blueprint or uasset editing capabilities. Instead it focuses on helping your LLM agents better understand the full codebase, both C++ and Blueprints.
Install the latest Fathom plugin from the JetBrains Marketplace or manually by downloading it from the GitHub releases page.
- Rider 2025.3+
- Unreal Engine 5.4+
- Windows 10 or 11. Other operating systems not yet supported.
Blueprint and asset features require the Fathom UE Link companion plugin. Fathom prompts you to install it and offers two locations: Engine (recommended, installs to Engine/Plugins/Marketplace/) or Game (installs to the project's Plugins/ directory). Engine installation keeps your project clean and applies to all projects using that engine. The status bar widget shows the current installation status and location.
Fathom exposes an MCP endpoint at http://localhost:19876/mcp (streamable HTTP transport). The port defaults to 19876 and can be changed in Rider under Settings > Tools > Fathom.
Some tools are auto-configured on startup. If your tool was not configured automatically, follow the manual instructions below.
Auto-configured. Fathom writes .mcp.json in the solution root on every startup.
To verify, type /mcp in your Claude Code conversation. You should see fathom listed.
If it was not picked up, create or edit .mcp.json in your solution root:
{
"mcpServers": {
"fathom": {
"type": "http",
"url": "http://localhost:19876/mcp"
}
}
}Auto-configured when a .cursor/ directory exists in the solution root.
To set up manually, create or edit .cursor/mcp.json:
{
"mcpServers": {
"fathom": {
"type": "http",
"url": "http://localhost:19876/mcp"
}
}
}Auto-configured when a .vscode/ directory exists in the solution root.
To set up manually, create or edit .vscode/mcp.json:
{
"servers": {
"fathom": {
"type": "http",
"url": "http://localhost:19876/mcp"
}
}
}Create or edit .codex/config.toml in your project root (or ~/.codex/config.toml for global config):
[mcp_servers.fathom]
url = "http://localhost:19876/mcp"Verify with:
codex mcp listCreate or edit .gemini/settings.json in your project root (or ~/.gemini/settings.json for global config):
{
"mcpServers": {
"fathom": {
"httpUrl": "http://localhost:19876/mcp"
}
}
}Auto-configured when an opencode.json already exists in the solution root.
To set up manually, create or edit opencode.json in your solution root:
{
"mcp": {
"fathom": {
"type": "remote",
"url": "http://localhost:19876/mcp"
}
}
}Verify with:
opencode mcp listEdit %USERPROFILE%\.codeium\windsurf\mcp_config.json:
{
"mcpServers": {
"fathom": {
"serverUrl": "http://localhost:19876/mcp"
}
}
}Claude Desktop does not support remote HTTP servers via its config file. Instead, add Fathom through the UI: Settings > Connectors, then enter http://localhost:19876/mcp as the server URL.
- Windows only
- Unreal Engine only (Unity support is planned)
- The UE companion plugin can be installed to the Engine (
Engine/Plugins/Marketplace/) or the Game project (Plugins/)
- API Reference: Endpoint documentation with parameters, response formats, and status codes.
- Technical Overview: Architecture and design decisions.
- Unreal Companion Doc: Details on the UE companion plugin integration.
- Release Process: Versioning, bump script, and release workflow.
- Learnings & Troubleshooting: Hard-won lessons and SDK quirks.
- SDK API Notes: API details for contributors.
Initialize the required build tools:
pwsh -ep Bypass -File .\scripts\setup.ps1.\gradlew.bat :compileDotNet # Compile the backend
.\gradlew.bat :runIde # Launch sandbox with the pluginOnce running with your project open, verify the plugin is active:
Invoke-RestMethod http://localhost:19876/healthThis project is licensed under the MIT License - see the LICENSE file for details.
