Chir24 Unreal Mcp
chir24/unreal_mcp · 699 stars · C++ · MIT
MCP server A comprehensive Model Context Protocol (MCP) server that enables AI assistants to control Unreal Engine through the native C++ Automation Bridge plugin. Built with TypeScript and C++.
Install
claude mcp add --transport http unreal-engine http://127.0.0.1:3000/mcp --header "X-MCP-Capability-Token: <token>"These repos do not share one command. When an entry shows a command, it was copied as published. Check the repo's README before you run it.
Files
and let it build levels, Blueprints, UI, materials, effects and more, through a native C++ editor plugin.
📌 Which version is this? This README describes the 0.6 line: the
devbranch and npmunreal-engine-mcp-server@beta. The previous stable release, 0.5.30 (npmlatest), exposes 23 separate tools instead of one; see Upgrading from 0.5.x.
Contents · What it does · How it works · Quick start · The unreal tool · Configuration · Security · Engine plugins · Docker · Documentation · Development · Community
What it does
🏗️ Levels and actors Spawn one actor or hundreds in a single call, place and attach them, find the ones sunk into the floor, and load, stream and save levels.
🧩 Blueprints and UI Create Blueprints, variables and components, build whole event graphs in one batch, and lay out UMG widgets, with a preview image to check them.
🎨 Materials and worlds Material graphs and instances, procedural textures, lighting, landscapes, foliage, Niagara effects and PCG graphs.
🕹️ Gameplay Characters and animation, Gameplay Ability System, AI (Behavior Trees, State Trees, EQS), inventory, networking and Enhanced Input.
🎬 Cinematics and audio Level Sequences, cameras, Movie Render Queue and Take Recorder; Sound Cues and MetaSounds.
🧪 Play and verify Run Play-In-Editor with synthetic input, take screenshots the model can see, read logs, profile, run Python, and package builds.
Nearly 400 capabilities in all, behind a single MCP tool. The assistant finds them by searching in plain words, so nobody has to learn their names. The full list is the generated Action Reference.
How it works
The MCP Automation Bridge plugin runs inside the editor and does all the work, on the editor's game thread. Clients reach it in one of two ways, and both expose the same single tool, unreal:
Everything listens on 127.0.0.1 and requires the project's capability token unless you change it.
Quick start
The Quick Start page walks through this with screenshots. You need Unreal Engine 5.0 to 5.8 and a project with C++ code; a Blueprint-only project can use prebuilt binaries.
1. Add the plugin
Download McpAutomationBridge-plugin-<version>.zip from the newest v0.6 pre-release on the Releases page, and copy the McpAutomationBridge folder it contains into your project:
MyGame/Plugins/McpAutomationBridge/
Or use a clone of this repository: copy plugins/McpAutomationBridge/, or reference the folder from your .uproject with "AdditionalPluginDirectories": ["C:/Path/To/Unreal_mcp/plugins"].
Open the project and let Unreal rebuild the plugin. When it's loaded, the status bar shows MCP off. If you see "Engine modules cannot be compiled at runtime", build the project once in Visual Studio, Rider or Xcode. More in Installation.
https://github.com/user-attachments/assets/d8b86ebc-4364-48c9-9781-de854bf3ef7d
Build the plugin once on a machine with the engine and a compiler, then hand out the zip. No compiler is needed on the target machine:
node scripts/package-plugin.mjs "C:/Program Files/Epic Games/UE_5.7"
This writes build/McpAutomationBridge-v<version>-UE5.7-<Platform>.zip, where <version> is the package.json version (currently 0.6.0-beta-c). Unzip it into YourProject/Plugins/. Binaries only work with the engine minor and platform they were built for: a 5.6 build won't load in 5.5, 5.7 or 5.8.
2. Connect your client
Route A · Native HTTP (no Node.js)
- In Edit › Project Settings › Plugins › MCP Automation Bridge, tick Enable Native MCP Server (port
3000by default), then restart the editor. The status bar now readsMCP :3000 (0).
- Read the capability token the plugin generated:
<YourProject>/Saved/MCP/capability-token. Treat it like a password. - Add the server to your client and send the token in the
X-MCP-Capability-Tokenheader. Claude Code:
claude mcp add --transport http unreal-engine http://127.0.0.1:3000/mcp --header "X-MCP-Capability-Token: <token>"
Or in a project .mcp.json (Claude Code), reading the token from an environment variable:
{
"mcpServers": {
"unreal-engine": {
"type": "http",
"url": "http://127.0.0.1:3000/mcp",
"headers": { "X-MCP-Capability-Token": "${UNREAL_MCP_TOKEN}" }
}
}
}
Cursor (.cursor/mcp.json) takes the same url and headers without type. VS Code, Windsurf and others: Connecting Clients.
- Check it: when the client connects, the count in the status bar goes up.
A client connected straight to /mcp loses its session whenever the editor closes or crashes, and has to reconnect by hand. The package's proxy command sits in between over stdio: while the editor is down every call answers NOT_CONNECTED, and the first call after it is back reaches it, with no reconnect. It keeps the editor's last tool list, so a session that starts before the editor still gets the real tool.
{
"mcpServers": {
"unreal-engine": {
"command": "npx",
"args": ["-y", "unreal-engine-mcp-server@beta", "proxy"],
"env": { "UE_PROJECT_PATH": "C:/Path/To/YourProject" }
}
}
}
The token is found the same way as on Route B (MCP_AUTOMATION_CAPABILITY_TOKEN, else the project's token file). UNREAL_MCP_URL points it at another endpoint (default http://127.0.0.1:3000/mcp). Route B survives editor restarts the same way on its own.
Route B · stdio (Node.js 20.19+)
Facts
- Kind
- MCP server
- Repo
- chir24/unreal_mcp
- Group
- Uncategorized
- Stars
- 699
- License
- MIT
- Language
- C++
- Last push
- 2026-10-09
- Forks
- 173
- Topics
- mcp, mcp-server, unreal-engine, unreal-engine-5
- 1Everythingmodelcontextprotocol/serversThis MCP server attempts to exercise all the features of the MCP protocol. It is not intended to be a useful server, but rather a test server for builders of MCP clients. It implements prompts, tools, resources, sampling, and more to showcase MCP capabilities.85.8k
- 2Fetchmodelcontextprotocol/serversA Model Context Protocol server that provides web content fetching capabilities. This server enables LLMs to retrieve and process content from web pages, converting HTML to markdown for easier consumption.85.8k
- 3Gitmodelcontextprotocol/serversA Model Context Protocol server for Git repository interaction and automation. This server provides tools to read, search, and manipulate Git repositories via Large Language Models.85.8k
- 4Memorymodelcontextprotocol/serversA basic implementation of persistent memory using a local knowledge graph. This lets Claude remember information about the user across chats.85.8k
- 5Sequential Thinkingmodelcontextprotocol/serversAn MCP server implementation that provides a tool for dynamic and reflective problem-solving through a structured thinking process.85.8k
- 6Timemodelcontextprotocol/serversA Model Context Protocol server that provides time and timezone conversion capabilities. This server enables LLMs to get current time information and perform timezone conversions using IANA timezone names, with automatic system timezone detection.85.8k