← Back to directory
U

Unreal Engine API Documentation MCP Server

Community
Instant, accurate Unreal Engine C++ API lookups that save tokens and prevent hallucinated signatures.
GitHub source repository ↗
★ 95 Stars Category · Dev Tools Popular
52FMRS · D

A practical MCP server for Unreal Engine C++ developers whose main value is replacing expensive source reads and unreliable model memory with fast database lookups, sharply reducing hallucinated signatures, wrong #include paths, and deprecated API usage. Its own benchmarks show the MCP configuration beating Grep/Read-only and Read-only setups on questions about recent deprecations, exactly where model memory is weakest. It fits developers writing UE5 C++ in Claude Code, Cursor, or Windsurf, but it does not index third-party plugins or marketplace assets, is a third-party (non-Epic) project, and depends on a network download for its first run.

Reliability
8/20
Security and permissions
9/20
Maintenance
10/20
Documentation
13/20
Setup experience
12/20
Read the FMRS scoring method →

This is a Model Context Protocol (MCP) server that gives AI coding agents accurate Unreal Engine C++ API documentation. It answers queries from a version-specific SQLite database, returning exact function signatures, #include paths, class member lists, and deprecation warnings, so agents avoid inventing signatures, guessing wrong headers, or calling deprecated APIs. On first run it automatically downloads the database for the matching engine version into ~/.unreal-api-mcp/, then serves over stdio. No Unreal Engine installation is required. Coverage includes all Engine Runtime, Editor, and Developer modules plus built-in plugins (Enhanced Input, Gameplay Abilities, Common UI, Niagara, Chaos, and many more), with Blueprint graph internals indexed as well (158 UK2Node subclasses, UEdGraphSchema_K2, BlueprintGraph, KismetCompiler, GraphEditor). It does not cover third-party plugins or marketplace assets. Licensed under MIT, with commercial use requiring permission.

Tools

search_unreal_api
Find APIs by keyword, e.g. "character movement", "spawn actor", "K2Node".
get_function_signature
Get the exact signature with parameters and return type, e.g. AActor::GetActorLocation.
get_include_path
Resolve the #include for a type, e.g. "ACharacter" to #include "GameFramework/Character.h".
get_class_reference
Return a full class reference card, e.g. "APlayerController", "UK2Node_SpawnActorFromClass", "UEdGraphSchema_K2".
get_deprecation_warnings
Check whether an API is obsolete, e.g. K2_AttachRootComponentTo suggests using AttachToComponent() instead.

Setup

  1. Add the server to your MCP config file (.mcp.json, mcp.json, or your tool's MCP settings).
  2. Use uvx as the command: command "uvx", args ["unreal-api-mcp"].
  3. Set the UNREAL_VERSION environment variable to match your project (e.g. "5.5"), or set UNREAL_PROJECT_PATH to your project directory to auto-detect the version from the .uproject EngineAssociation field.
  4. On first run, the server downloads the matching database to ~/.unreal-api-mcp/.
  5. It is recommended to add usage rules to your project's CLAUDE.md (or equivalent instructions file) so the AI verifies signatures and include paths before writing UE API calls.
  6. Alternative install: pip install unreal-api-mcp, then set command to "unreal-api-mcp".
claude_desktop_config.json
{
  "mcpServers": {
    "unreal-api": {
      "command": "uvx",
      "args": ["unreal-api-mcp"],
      "env": {
        "UNREAL_VERSION": "5.5"
      }
    }
  }
}

Fit and risk

Best for

  • Developers writing Unreal Engine C++ with AI agents
  • Teams wanting to cut token usage and avoid API hallucinations
  • UE5 projects that must handle the latest deprecations and version differences
  • Developers working in MCP-compatible tools such as Claude Code, Cursor, or Windsurf

Not for

  • Users needing third-party plugin or marketplace asset APIs (not indexed)
  • Projects using engines other than Unreal Engine
  • Users who want a graphical interface rather than agent-driven lookups
  • Users requiring official Epic Games support or endorsement

Required permissions

  • Local file system access: to auto-detect the engine version from .uproject and to read/write the database cache in ~/.unreal-api-mcp/
  • Network access: to download the version-specific database from GitHub on first run and to check for updates on startup

Risks and side effects

  • The first run needs internet access to download the database; restricted networks may fail
  • If neither UNREAL_VERSION nor UNREAL_PROJECT_PATH is set, it may serve a version that differs from your actual project and return APIs for the wrong engine version
  • Only engine and built-in plugin APIs are covered, so third-party queries return nothing and may mislead an agent into thinking an API does not exist
  • Maintained by a third-party developer, not an official Epic Games project, and offers no official support
  • Although licensed under MIT, commercial use requires additional permission

Troubleshooting

  1. "Could not download UE X database": check your internet connection, or build the database locally with python -m unreal_api_mcp.ingest --unreal-version 5.6 --unreal-install H:/UE_5.6
  2. Wrong API version being served: set UNREAL_VERSION explicitly and check stderr for "unreal-api-mcp: serving UE <version>"
  3. Server won't start: check python --version is 3.10+ and confirm the path with which unreal-api-mcp or where unreal-api-mcp
  4. Third-party plugins return no results: this is expected; only built-in Engine and Plugin APIs are indexed

Use cases

Verifying function signatures, parameters, and return types while writing Unreal Engine C++ code
Confirming which #include path a given type needs
Reviewing all members of a class such as UCharacterMovementComponent
Searching engine APIs by keyword, e.g. finding "spawn actor" related interfaces
Checking whether an API is deprecated and what replaces it
Looking up Blueprint graph internals when writing custom K2 nodes or editor tooling

Supported clients

Claude CodeFull support
CursorFull support
WindsurfFull support