unreal-mcp
Provides tools for driving a running Unreal Engine editor, including listing assets and actors, importing assets, spawning and manipulating actors, controlling the viewport, taking screenshots, saving all, and executing arbitrary Python code in the editor.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@unreal-mcpTake a screenshot of the current level and save it to Desktop"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
unreal-mcp
An MCP server that drives a running Unreal Engine editor from Claude.
It speaks Epic's own Python Remote Execution protocol:
UDP multicast on 239.0.0.1:6766 to discover editor instances, then a TCP channel to run Python inside the editor.
Claude ──stdio──▶ unreal-mcp ──UDP discovery + TCP──▶ Unreal Editor (PythonScriptPlugin)The client half of the protocol is not vendored. The server locates Epic's
remote_execution.py inside your engine install at runtime, so it keeps working
across engine versions.
Requirements
Unreal Engine 5.x (developed against 5.6)
Python 3.10+ and
uv
Related MCP server: unreal-mcp
Setup
1. Enable remote execution in Unreal — this is the step everyone misses
Remote execution is OFF by default. Without it the editor is invisible to discovery and every tool will fail.
Edit > Plugins→ enable Python Editor Script Plugin → restart.Edit > Project Settings > Plugins > Python→ tick Enable Remote Execution.Restart the editor.
2. Install
cd unreal-mcp
uv sync3. Register with Claude
Add to claude_desktop_config.json:
{
"mcpServers": {
"unreal": {
"command": "uv",
"args": ["--directory", "E:\\Maya\\unreal-mcp", "run", "unreal-mcp"]
}
}
}Then start a new conversation — servers added mid-session are not picked up by a chat that is already running.
If your engine is somewhere non-standard, set UNREAL_ENGINE_ROOT:
"env": { "UNREAL_ENGINE_ROOT": "D:\\Epic\\UE_5.6" }Tools
Tool | Read-only | What it does |
| ✅ | Is an editor reachable? Which project, level, actor count. Start here when anything fails. |
| ✅ | Browse the content browser, filtered and paginated |
| ✅ | Actors in the open level with their transforms |
| Import FBX / OBJ / textures via the automated pipeline | |
| Place a content asset into the level | |
| Move / rotate / scale a placed actor | |
| Destructive — destroys an actor | |
| Aim the editor viewport | |
| High-res PNG of the viewport | |
| Save modified assets and the level | |
| Escape hatch: arbitrary Python in the editor |
Listing tools paginate with limit / offset and return has_more plus
next_offset.
How results come back
Tool bodies are shipped to the editor wrapped in a harness that assigns to a
result variable and prints it as JSON between sentinels. That keeps a stray
print() or an Unreal log line from corrupting the payload, and turns an
exception inside the editor into a structured error instead of a traceback
buried in stdout.
Security note
unreal_execute_python runs unsandboxed code in the editor's interpreter
with full unreal module access. It can modify or delete project content. Treat
it with the same care as a Python console in the editor itself.
Troubleshooting
"No running Unreal Editor was discovered" — almost always the Enable Remote
Execution setting above. Confirm with unreal_get_status.
"Lost the connection ... while running a command" — the editor was closed or is blocked in a modal dialog. Dismiss the dialog and retry; the session re-discovers automatically.
Multiple editors open — the first discovered node wins.
unreal_get_status lists them all so you can tell which is which.
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceEnables AI assistants to interact with Unreal Editor 5 through the Python remote execution protocol. It allows for managing the editor lifecycle, configuring project settings, and executing Python scripts directly within the Unreal Engine environment.MIT
- AlicenseBqualityDmaintenanceEnables Claude Desktop to interact with Unreal Engine 5.3 via Remote Control API, creating and manipulating 3D objects from text prompts for scene building and editor control.2146MIT
- AlicenseBqualityBmaintenanceEnables Claude to control Unreal Engine 5 editor, spawn actors, build materials, author Blueprints, and more, with zero plugin installation.31MIT
- FlicenseNot gradedqualityDmaintenanceBridges Claude AI to a live Unreal Engine 5 editor session, enabling natural language control of scene inspection, modification, logging, source search, console commands, and C++ class scaffolding.
Related MCP Connectors
Control Unreal Engine to browse assets, import content, and manage levels and sequences. Automate…
A comprehensive Model Context Protocol (MCP) server that enables AI assistants to control Unreal E…
Drive a live Cinevva game session: edit game files, import CC0 assets, preview changes.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/Christancho-co/unreal-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server