跳到正文

博客

用 Claude Code 或 Cursor 设置 Unreal 5.8 MCP

在 Unreal Engine 5.8 中启用 Epic 实验性的 Unreal MCP,连接 Claude Code 或 Cursor,修复常见错误,并了解它能做什么、不能做什么。

最后更新:2026年11月11日

博客标题卡:用 Claude Code 或 Cursor 设置 Unreal 5.8 MCP,旁边是 Dola 吉祥物

发布于 2026年11月11日

已于 2026 年 11 月 11 日对照 Epic 的 Unreal MCP 文档 以及 Unreal Engine 5.8.0 源码版本中的插件文件核实。该插件标为 Experimental,细节可能变化。

Epic 的 Unreal MCP 是什么

Unreal MCP(插件名 ModelContextProtocol)在 Unreal 编辑器内运行一个 MCP 服务器。Claude Code 或 Cursor 这样的 AI 客户端连接它,并调用编辑器的工具。这些工具来自在 Unreal 的 Toolset Registry 中注册的工具集,Epic 自带了很多:Actor、蓝图、控件蓝图、材质、MetaSounds、PCG、Niagara、Sequencer、Slate 检查、性能分析和自动化测试。

Epic 将该插件标为 Experimental。不同引擎版本之间可能会有变化。

逐步启用

  1. 在 Unreal Engine 5.8 中打开项目。进入 Edit > Plugins,搜索 Unreal MCP。Epic 的页面说它默认开启,而 5.8.0 源码版本把它标为关闭,所以请自己勾选。
  2. 搜索 All Toolsets 并勾选,加载所有默认工具集。如果想要更少的工具,也可以逐个启用工具集插件。
  3. 重启编辑器。
  4. 打开 Edit > Editor Preferences > Agentic Workflows > Model Context Protocol。Auto Start Server 已开启,端口是 8000,URL 路径是 /mcp,所以服务器监听 http://127.0.0.1:8000/mcp。
  5. 在同一面板的 Client Selection 中选择你的客户端(默认是 Claude Code),然后点击 Generate Client Config。

连接 Claude Code

对于 Claude Code,Generate Client Config 会写入一个 .mcp.json 文件:使用 Launcher 安装的引擎时写在项目文件夹,使用源码构建时写在引擎文件夹。源码构建时,你可能需要把条目复制到项目的配置中。条目如下:

{
  "mcpServers": {
    "unreal-mcp": {
      "type": "http",
      "url": "http://127.0.0.1:8000/mcp"
    }
  }
}

在编辑器已打开、服务器已运行之后,从包含该配置的文件夹启动 Claude Code。如果 Claude Code 之前已经打开,请重新连接。

连接 Cursor

Epic 的页面没有现成的 Cursor 片段。在编辑器中运行控制台命令 ModelContextProtocol.GenerateClientConfig Cursor,从 Output Log 复制输出的条目,并按 Cursor 自己的 MCP 文档说明添加。服务器与上面是同一个 HTTP 端点。

传输与安全

  • 仅支持 Streamable HTTP 和 SSE。不支持 stdio 和 WebSocket。
  • 服务器只监听 127.0.0.1,会按允许列表检查 Origin 请求头,并且没有任何身份验证。Epic 建议不要把它暴露到本机以外。
  • 工具调用在游戏线程上逐个执行,所以一个耗时的调用会阻塞下一个。

值得了解的控制台命令

  • ModelContextProtocol.StartServer [port] 和 ModelContextProtocol.StopServer
  • 添加或修改工具后运行 ModelContextProtocol.RefreshTools
  • ModelContextProtocol.GenerateClientConfig 加上客户端名称,例如 ClaudeCode、Cursor、Codex 或 Gemini
  • 在命令行使用 -ModelContextProtocolPort=8001 选择其他端口
  • Log LogModelContextProtocol Verbose 在 Output Log 中显示更多细节

同时运行两个编辑器

Generate Client Config 只写一个名为 unreal-mcp 的条目。如需第二个编辑器,请在另一个端口(例如 8001)启动它,并在客户端配置中手动添加第二个条目。

能做什么,不能做什么

它可以:

  • 把你启用的每个工具集中的编辑器工具提供给 AI 客户端。
  • 让工具列表保持简短:开启 Enable Tool Search 后,客户端只看到少量元工具(例如 list_toolsets 和 call_tool),其余按需查找。
  • 把你自己的 C++ 函数作为工具,用 AICallable 属性标记。

根据 Epic 的页面,它不能:

  • 从引擎工具集提供 MCP Resources,也不支持 MCP Prompts。
  • 在烘焙(打包)后的游戏中提供 AIRuntimeCallable 以外的工具。
  • 通过 Live Coding 加载新的 C++ 工具。需要重启编辑器才能添加。

它也不会审查或测试你的客户端所做的更改。这部分由你和你的客户端负责。

常见错误

  • 服务器无法启动:在 Output Log 中检查端口是否被占用或插件是否缺失。换一个端口试试。
  • 客户端找不到服务器:先打开编辑器,等服务器启动,再从配置所在文件夹启动客户端并重新连接。
  • 缺少工具:启用对应的工具集插件,运行 ModelContextProtocol.RefreshTools,然后重新连接客户端。
  • 长调用超时:Claude Code 大约等待 120 秒后停止。把工作拆成更小的调用。
  • 不确定是哪个编辑器在响应:用 MCP Inspector(npx @modelcontextprotocol/inspector)连接同一个 URL,在 initialize 结果中查看实例。

Dola 的定位

Dola 不是 Epic 的 MCP 插件,也不依赖它。它是一个桌面应用加上自己的 Unreal 编辑器插件,通过本地桥接相连。已发布的插件版本面向 Windows 和 Linux 上的 Unreal Engine 5.7,所以对 5.8 项目来说,目前 Epic 的 MCP 是可选方案之一。

  • 开箱即用:安装应用,把插件加入项目,登录即可。无需编写客户端配置。
  • 先审查再保留:每次修改都在 Changes 面板中等待。在 Unreal 中打开差异,然后接受,或拒绝以恢复旧资产。
  • 通过试玩做 QA:QA 智能体会读取图表,并在 Play in Editor 中试玩修改,然后才宣布运行完成。

2026 年 11 月 9 日 Dola 的一次真实运行:一条提示 "make BP_Lamp blink",在 PIE 中检查后等待审查。

Dola 桌面应用:一次让 BP_Lamp 闪烁的蓝图运行,显示 QA 代理的 PIE 检查,以及 Changes 面板中待处理的更改
这次运行:Director(Sonnet)规划,Blueprint(Haiku)编辑,QA(Sonnet)读取图表、在 PIE 中运行并发现 0 个编译错误。Auto 模式下花费 $2.34。
Dola 的 Changes 面板,将 BP_Lamp.uasset 列为已编辑,包含 Accept all、Reject all 以及在 Unreal 中打开差异的按钮
Changes 面板会在你保留编辑之前保存它以供审阅。

Dola 应用也是你所添加服务器的 MCP 客户端(Unreal Engine MCP 与 Dola)。完整运行过程:看看 Dola 如何工作。

常见问题

更多 Dola 博客文章