Unreal MCP
An MCP server that lets an agent control the Unreal Engine editor in words: actors, blueprints, node graphs, camera
Medium risk
We rate an entry medium when the tool runs code, makes network calls or reads project files. Check what exactly it does before installing.
Why this level
- The server runs locally and controls the open Unreal editor over TCP
- It changes project contents: it creates actors, blueprints and graph nodes
Install
In your terminal, with SkillFoxx CLI
npx skillfoxx add mcp/unreal-mcpDetects the agents on your machine, checks the risk and pins the version.
Other ways to install
Assembled automatically, review before installing.
Run in a terminal
claude mcp add --transport stdio --env 'PYTHON=<PYTHON value>' unrealMCP -- uvx --directory '<PYTHON value>' run unreal_mcp_server.pyOr add to the file .mcp.json, in the project
{
"mcpServers": {
"unrealMCP": {
"command": "uvx",
"args": [
"--directory",
"<PYTHON value>",
"run",
"unreal_mcp_server.py"
],
"env": {
"PYTHON": "<PYTHON value>"
}
}
}
}If the file already exists, add the server inside the mcpServers key.
Keys and settings
PYTHONrequired- Path to the Python folder containing unreal_mcp_server.py
Replace the values in angle brackets with your own. Keys never go into install links and are not stored by us.
The button opens the agent and offers to add the server. If nothing happens, copy the config below.
Add to the file ~/.cursor/mcp.json, for all projects
{
"mcpServers": {
"unrealMCP": {
"command": "uvx",
"args": [
"--directory",
"<PYTHON value>",
"run",
"unreal_mcp_server.py"
],
"env": {
"PYTHON": "<PYTHON value>"
}
}
}
}If the file already exists, add the server inside the mcpServers key. For a single project, put the same block into .cursor/mcp.json.
Keys and settings
PYTHONrequired- Path to the Python folder containing unreal_mcp_server.py
Replace the values in angle brackets with your own. Keys never go into install links and are not stored by us.
The button opens the agent and offers to add the server. If nothing happens, copy the config below.
Run in a terminal
code --add-mcp '{"name":"unrealMCP","type":"stdio","command":"uvx","args":["--directory","<PYTHON value>","run","unreal_mcp_server.py"],"env":{"PYTHON":"<PYTHON value>"}}'Or add to the file .vscode/mcp.json, in the project
{
"servers": {
"unrealMCP": {
"type": "stdio",
"command": "uvx",
"args": [
"--directory",
"<PYTHON value>",
"run",
"unreal_mcp_server.py"
],
"env": {
"PYTHON": "<PYTHON value>"
}
}
}
}If the file already exists, add the server inside the servers key.
Keys and settings
PYTHONrequired- Path to the Python folder containing unreal_mcp_server.py
Replace the values in angle brackets with your own. Keys never go into install links and are not stored by us.
Run in a terminal
codex mcp add unrealMCP --env 'PYTHON=<PYTHON value>' -- uvx --directory '<PYTHON value>' run unreal_mcp_server.pyOr add to the file ~/.codex/config.toml, for all projects
[mcp_servers.unrealMCP]
command = "uvx"
args = ["--directory", "<PYTHON value>", "run", "unreal_mcp_server.py"]
env = { PYTHON = "<PYTHON value>" }If the file already exists, append the block to the end.
Keys and settings
PYTHONrequired- Path to the Python folder containing unreal_mcp_server.py
Replace the values in angle brackets with your own. Keys never go into install links and are not stored by us.
Add to the file ~/.gemini/settings.json, for all projects
{
"mcpServers": {
"unrealMCP": {
"command": "uvx",
"args": [
"--directory",
"<PYTHON value>",
"run",
"unreal_mcp_server.py"
],
"env": {
"PYTHON": "<PYTHON value>"
}
}
}
}If the file already exists, add the server inside the mcpServers key.
Keys and settings
PYTHONrequired- Path to the Python folder containing unreal_mcp_server.py
Replace the values in angle brackets with your own. Keys never go into install links and are not stored by us.
Add to the file ~/.config/devin/mcp_config.json, for all projects
{
"mcpServers": {
"unrealMCP": {
"command": "uvx",
"args": [
"--directory",
"<PYTHON value>",
"run",
"unreal_mcp_server.py"
],
"env": {
"PYTHON": "<PYTHON value>"
}
}
}
}If the file already exists, add the server inside the mcpServers key. Legacy Cascade keeps the MCP config in ~/.codeium/windsurf/mcp_config.json.
Keys and settings
PYTHONrequired- Path to the Python folder containing unreal_mcp_server.py
Replace the values in angle brackets with your own. Keys never go into install links and are not stored by us.
Formerly Windsurf.
Add to the file cline_mcp_settings.json, for all projects
{
"mcpServers": {
"unrealMCP": {
"command": "uvx",
"args": [
"--directory",
"<PYTHON value>",
"run",
"unreal_mcp_server.py"
],
"env": {
"PYTHON": "<PYTHON value>"
}
}
}
}If the file already exists, add the server inside the mcpServers key. Open the settings file in Cline: MCP Servers tab, Configure MCP Servers.
Keys and settings
PYTHONrequired- Path to the Python folder containing unreal_mcp_server.py
Replace the values in angle brackets with your own. Keys never go into install links and are not stored by us.
Add to the file .roo/mcp.json, in the project
{
"mcpServers": {
"unrealMCP": {
"command": "uvx",
"args": [
"--directory",
"<PYTHON value>",
"run",
"unreal_mcp_server.py"
],
"env": {
"PYTHON": "<PYTHON value>"
}
}
}
}If the file already exists, add the server inside the mcpServers key.
Keys and settings
PYTHONrequired- Path to the Python folder containing unreal_mcp_server.py
Replace the values in angle brackets with your own. Keys never go into install links and are not stored by us.
A fork of Roo Code, same .roo folders.
Add to the file opencode.json, in the project
{
"mcp": {
"unrealMCP": {
"type": "local",
"command": [
"uvx",
"--directory",
"<PYTHON value>",
"run",
"unreal_mcp_server.py"
],
"environment": {
"PYTHON": "<PYTHON value>"
}
}
}
}If the file already exists, add the server inside the mcp key.
Keys and settings
PYTHONrequired- Path to the Python folder containing unreal_mcp_server.py
Replace the values in angle brackets with your own. Keys never go into install links and are not stored by us.
Add to the file ~/.config/zed/settings.json, for all projects
{
"context_servers": {
"unrealMCP": {
"command": "uvx",
"args": [
"--directory",
"<PYTHON value>",
"run",
"unreal_mcp_server.py"
],
"env": {
"PYTHON": "<PYTHON value>"
}
}
}
}If the file already exists, add the server inside the context_servers key.
Keys and settings
PYTHONrequired- Path to the Python folder containing unreal_mcp_server.py
Replace the values in angle brackets with your own. Keys never go into install links and are not stored by us.
Add to the file .codeassistant/mcp.json, in the project
{
"mcpServers": {
"unrealMCP": {
"command": "uvx",
"args": [
"--directory",
"<PYTHON value>",
"run",
"unreal_mcp_server.py"
],
"env": {
"PYTHON": "<PYTHON value>"
}
}
}
}If the file already exists, add the server inside the mcpServers key.
Keys and settings
PYTHONrequired- Path to the Python folder containing unreal_mcp_server.py
Replace the values in angle brackets with your own. Keys never go into install links and are not stored by us.
Clone https://github.com/chongdashu/unreal-mcp, in the Python folder run uv venv and uv pip install -e ., build the UnrealMCP plugin in your Unreal project, and add the server to the MCP config as uv --directory <path>/Python run unreal_mcp_server.py.
Other ways from the author
git clone https://github.com/chongdashu/unreal-mcp.git
cd unreal-mcp/Python
uv venv
uv pip install -e .Needs Python 3.10 or newer and uv. Separately build the UnrealMCP plugin in your Unreal 5.5 project and enable it under Edit, Plugins.
This is third-party code. Review the repository files before installing.
What it does
The project connects a coding agent to the Unreal Engine editor over the MCP protocol. It consists of a C++ plugin that runs a TCP server inside the editor and a Python FastMCP server that receives the agent's commands and forwards them to the plugin. In natural language the agent creates and deletes actors, sets their transforms, assembles Blueprint classes with components, adds nodes and variables to the graph and aims the viewport camera. The author marks the project as experimental, and the capability list is in the Docs folder.
Who it is for. For game developers and technical artists on Unreal Engine who want to automate editor routine through an agent.
Good fit when
- You want to create and place actors or assemble blueprints with natural language commands
- You want to automate repetitive actions in the Unreal Engine 5.5 editor
- You need a bridge between a coding agent and an open Unreal project
Not a fit when
- You need production-grade stability rather than an experimental tool
- You cannot build the C++ plugin and set up Unreal Engine 5.5
Example request
Create a cube and a point light in the current level, raise the light by two meters and aim the viewport camera at itLimitations
The project is marked experimental, so breaking changes and documentation gaps are possible. It needs Unreal Engine 5.5 or newer, Python 3.10 or newer and the uv manager, and the C++ plugin must be built in the project. The Unreal editor must be open and running, with communication over the local TCP port 55557. There is no PyPI package; the server runs from source via uv.
How to disable. Remove the server entry from your client's MCP config and disable the UnrealMCP plugin under Edit, Plugins in the Unreal editor.
MCP
- Transport
- stdio
- Authentication
- not required
Security check
- The server runs locally and controls the open Unreal editor over TCP
- It changes project contents: it creates actors, blueprints and graph nodes
README in short
The README presents a bridge between AI clients such as Cursor, Windsurf and Claude Desktop and the Unreal Engine editor over the MCP protocol. The project consists of a sample Unreal project, a C++ plugin with a native TCP server and a Python FastMCP server that loads tool modules for actors, blueprints, nodes and the editor. Installation is described in two parts: building the plugin in Unreal 5.5 and setting up the Python environment via uv, after which the server is added to the MCP client config with a uv run command. The status is explicitly called experimental. MIT licensed.
FAQ
Is this a finished product?
No, the author marks it experimental: the API and features may change without notice.
What is needed to run the server?
The built UnrealMCP plugin in the project, a running Unreal 5.5 editor and the Python server started via uv. Communication goes over a local TCP port.
Related
A skills library that gives coding agents a development process: brainstorming, planning, TDD, subagents and code review
Skills for real engineers by Matt Pocock
Skills For Real Engineers
Small composable skills for engineering with agents: plan grilling, TDD, bug diagnosis, code review and architecture
GitHub toolkit for spec-driven development: the specify CLI adds agent commands and skills to a project, from principles to implementation
Reference MCP servers
Model Context Protocol servers
Official reference MCP servers: Filesystem, Fetch, Git, Memory, Sequential Thinking, Time and Everything