Unreal Engine Editor
About
Transforms Unreal Engine Editor into an MCP-compatible server using Python's asyncio framework, enabling direct control of editor functionality for automated workflows and content creation.
Details
- Author
- cc8887
- Repository
- cc8887/UE-Editor-MCPServer
- GitHub stars
- 5
- Categories
- Productivity, Design, AI, Infrastructure, Developer Tools, Automation, Frontend
Jump to
Setting up with Highlight
This MCP is not yet compatible with Highlight’s one-click setup. However, you can still use it with Highlight by following these steps:
- Download and install Highlight from highlightai.com/download
- Navigate to the plugins tab and select "Add Custom Plugin"
-
Configure the plugin with the settings below
Plugin Name
Unreal Engine EditorCommand (node, npx, python, etc.)uvArguments-
Argument 1
run -
Argument 2
--directory -
Argument 3
D:\MCP\Plugins\UE-Editor-MCPServer -
Argument 4
python -
Argument 5
main.py -
Argument 6
--project -
Argument 7
D:\MCP\YourProj.uproject
Please refer to the README for specific instructions on how to obtain API keys or other required environment variables.
-
Argument 1
- Enable "Start Automatically" if you want the plugin to start when Highlight launches
Claude Desktop / Cursor
Paste into your MCP client config file to install this server.
{
"mcpServers": {
"unreal engine editor": {
"env": {},
"args": [
"run",
"--directory",
"D:\\MCP\\Plugins\\UE-Editor-MCPServer",
"python",
"main.py",
"--project",
"D:\\MCP\\YourProj.uproject"
],
"command": "uv"
}
}
}
Linux
{
"env": [],
"args": [
"run",
"--directory",
"D:\\MCP\\Plugins\\UE-Editor-MCPServer",
"python",
"main.py",
"--project",
"D:\\MCP\\YourProj.uproject"
],
"command": "uv"
}
Macos
{
"env": [],
"args": [
"run",
"--directory",
"D:\\MCP\\Plugins\\UE-Editor-MCPServer",
"python",
"main.py",
"--project",
"D:\\MCP\\YourProj.uproject"
],
"command": "uv"
}
Windows
{
"env": [],
"args": [
"run",
"--directory",
"D:\\MCP\\Plugins\\UE-Editor-MCPServer",
"python",
"main.py",
"--project",
"D:\\MCP\\YourProj.uproject"
],
"command": "uv"
}
UE-Editor-MCPServer
将 Unreal Editor 封装为 MCP (Model Context Protocol) Server,供 AI Agent 通过 Python 脚本驱动编辑器,实现自动化迭代。
---
快速开始
1. 安装 Python 依赖
插件根目录下执行(需要 uv):
uv sync
> 不使用 uv:pip install -r requirements.txt
2. 启动 UE 编辑器
启动编辑器后,C++ 模块自动启动 Forwarder(监听 127.0.0.1:8100)。
3. 配置 MCP 客户端
stdio 模式(推荐)
由 MCP 客户端自动拉起 main.py,无需手动操作。
{
"mcpServers": {
"ue-editor": {
"command": "uv",
"args": [
"run", "--directory", "D:\\MCP\\Plugins\\UE-Editor-MCPServer",
"python", "main.py",
"--project", "D:\\MCP\\YourProj.uproject"
]
}
}
}
> --project 指向 .uproject 路径,用于额外暴露 open_editor / close_editor 工具(自动 GPF/Build/启动/关闭编辑器)。省略则只暴露 execute_command / excute_file / get_editor_state 三个工具。
SSE 模式
手动启动 MCPStandalone:
python main.py --transport sse
客户端配置:
{
"mcpServers": {
"ue-editor": {
"url": "http://127.0.0.1:8099/SSE"
}
}
}
> SSE 端点路径大小写不敏感:/SSE、/sse、/Sse 均可。
---
配置说明
配置优先级:命令行参数 > 环境变量 > .env 文件 > 默认值。
.env 配置文件
在插件根目录创建 .env(可复制 .env.example):
# MCP 服务监听地址(仅 SSE 模式使用)
MCP_HOST=127.0.0.1
MCP_PORT=8099
UE 编辑器 Forwarder 地址(TCP 转发器)
EDITOR_HOST=127.0.0.1
EDITOR_PORT=8100
默认端口:MCP 8099,Editor Forwarder 8100。多项目需分配不同端口。
| 参数 | 说明 | 默认值 |
| ---------------- | ------------------------- | ----------- |
| --transport | 传输模式:stdio(默认)或 sse | stdio |
| --mcp-host | MCP 监听地址(仅 SSE 模式) | 127.0.0.1 |
| --mcp-port | MCP 监听端口(仅 SSE 模式) | 8099 |
| --editor-host | 编辑器 Forwarder 地址 | 127.0.0.1 |
| --editor-port | 编辑器 Forwarder 端口 | 8100 |
| --project | .uproject 绝对路径,启用 open_editor / close_editor | 无 |
| --debug | 调试模式(输出详细日志到 stderr) | 关闭 |
| --mypy-enabled | 执行 Python 代码前启用 mypy 类型检查 | 关闭 |
---
mypy 类型检查(可选)
在 Python 代码执行前自动进行 mypy 类型检查,尽早发现类型错误。
启用
# .env
MYPY_ENABLED=true
或命令行:python main.py --mypy-enabled
> 需要系统 Python 安装 mypy:pip install mypy
---
故障排除
客户端无法连接
- stdio 模式:检查客户端配置中的 command 和 args 路径是否正确
- SSE 模式:确认已手动运行 python main.py --transport sse
- 确认端口未被占用(默认 8099/8100)
- 使用调试模式:python main.py --transport sse --debug
工具调用失败 / execute_command 无返回
- 确认编辑器已完全加载(底部状态栏无"Loading")
- 确认 Forwarder 正常运行:在编辑器 Python 控制台执行 from mcp_server import Start; Start.print_status()
- 检查 8099 和 8100 端口是否都可访问
- 查看 MCPStandalone 的 stderr 输出(stdio 模式在客户端日志中)
端口冲突
修改 .env:
MCP_PORT=8199
EDITOR_PORT=8200
重启编辑器并更新客户端配置。
---
Sign in to leave a review
Use Google, GitHub, or an email account so ratings stay tied to real people.
No reviews posted yet.

