Unreal Engine 5.8 から、Experimental ですが公式の MCP (Unreal MCP) が使えるようになりました。
使ってみたら、VibeUE だと Unreal Editor がクラッシュしたり、すんなり思った通りに実装できなかったのが、一回のやり取りで実装できましたのでメモしておきます。
環境
- MacOS: 26.5.1(25F80)
- Unreal Engine: 5.8.0
- Unreal MCP: 1.0
- EditorToolset: 1.0
- Codex: v0.139.0
- モデル: GPT-5.5
Unreal MCP の有効化
1. Unreal Editor にて、New Project から Third Person のプロジェクトを Blueprint で作成します。
2. Edit → Plugins を選択して、表示されたウィンドウにて Unreal MCP を検索して、Unreal MCP にチェックを入れます。そして、Unreal Editor を再起動します。


3. Edit → Editor Preferences… を選択して、表示されたウィンドウにて Model Context Protocol → Auto Start Server にチェックを入れます。


これで再起動すると、MCP サーバーが立ち上がります。
ただし、このプラグインは MCP サーバーのみで、次で有効化するプラグインを入れないと、結局コーディングエージェントから MCP 経由で Unreal Editor を操作することができないので注意してください。
4. Edit → Plugins を選択して、表示されたウィンドウにて EditorToolset を検索して、EditorToolset にチェックを入れます。そして、Unreal Editor を再起動します。

5. MCP サーバーが立ち上がっているか念の為確認します。「curl -v http://127.0.01:8000/mcp」コマンドで応答があるか確認します。
% curl -v http://127.0.01:8000/mcp
* Trying 127.0.0.1:8000...
* Connected to 127.0.0.1 (127.0.0.1) port 8000
> GET /mcp HTTP/1.1
> Host: 127.0.0.1:8000
> User-Agent: curl/8.7.1
> Accept: */*
>
* Request completely sent off
< HTTP/1.1 405
< keep-alive: timeout=15.000000
< content-length: 0
<
* Connection #0 to host 127.0.0.1 left intact
「curl: (7) Failed to connect to 127.0.0.1 port 8000 after 0 ms: Couldn’t connect to server」といったエラーではなく、405 エラーが返ってきたので、立ち上がっています。
Codex の設定
プロジェクトディレクトリにて、Codex の設定ファイル config.toml を default.rules (オプション) を設定します。
以下のコマンドで空のファイルを作成します。
mkdir -p .codex/rules
touch .codex/config.toml .codex/rules/default.rules
config.toml を以下のように設定します。
sandbox_mode = "workspace-write"
approval_policy = "never"
model_reasoning_summary = "detailed"
model_reasoning_effort = "xhigh"
[mcp_servers.UnrealMCP]
url = "http://127.0.0.1:8000/mcp"
startup_timeout_sec = 30
tool_timeout_sec = 60
[mcp_servers.UnrealMCP.tools.call_tool]
approval_mode = "approve"
[sandbox_workspace_write]
network_access = false
Unreal MCP で必要な最小限の設定は mcp_servers.UnrealMCP だけです。それ以外の設定は以下の意味で、個人的にあった方が良さそうなものを入れています。
- Unreal MCP を使うときに、Codex が各操作に承認を求めてくるので、これを自動で承認するためのもの
- ワークスペース以外の書き込みを制限するようにするもの
- シェルコマンドからのネットワークアクセスを禁止するもの
- 推論要約を詳細に出力させるもの
- 推論モードを xhigh にさせるもの
default.rules には、テスト実行用のコマンド許可と、とりあえず個人的にどんなプロジェクトでも入れている sudo と rm -rf を制限する設定を入れておきます。
prefix_rule(
pattern = ["sudo"],
decision = "forbidden",
justification = "Never run sudo from Codex.",
)
prefix_rule(
pattern = ["rm", "-rf"],
decision = "prompt",
justification = "Recursive deletion must be reviewed manually.",
)
prefix_rule(
pattern = ["rm", "-fr"],
decision = "prompt",
justification = "Recursive deletion must be reviewed manually.",
)
prefix_rule(
pattern = [
"/Users/Shared/Epic Games/UE_5.8/Engine/Binaries/Mac/UnrealEditor-Cmd",
"/Path/To/Project/<プロジェクト名>.uproject",
"-nullrhi",
],
decision = "allow",
justification = "Allow command-line Functional Testing for this Unreal project.",
)
ちゃんと Codex から MCP サーバーを利用して Unreal Editor が操作できるか確認するために、「Unreal Editor にて、中央に球とキューブを並べて作成してください。」と言ったような指示を出してみて、作成されるか確認してみると良いと思います。
簡単なゲームを開発してもらう
1. Functional Tests のテストケースも作成してもらうので、AI は使わないですが、一応先に Functional Testing Editor プラグインを入れておきます。 Edit → Plugins から Functional Testing Editor にチェックを入れて再起動します。

2. 例えば以下のプロンプトで簡単なゲームを開発してもらいます。もし、テスト用にレベルに球とか作成してもらっていたら、ついでに削除も依頼すると良いと思います。
Unreal Engine の現在のレベルで最もシンプルな 3D の鬼ごっこゲームを Blueprint で作成いただけますか?
プレイヤーは鬼に捕まらずに、4 角にある鍵を 4 つ手に入れればクリアです。
現在のレベルに無い 3D オブジェクトを追加する際は、基本図形だけで大丈夫です。
また、Functional Tests にてメジャーなゲームの状況をテストできるようなケースを整備して、テストが通るようにしてください。
Unreal Engine の操作には Unreal MCP サーバーを使ってください。

3. Functional Tests も動くか確認したいので、Tools → Test Automation から、Project → Functional Tests の最下層にあるテストを選択して実行します。

成功しました。
Unreal MCP & EditorToolset を使ってみました。非常に簡単に使えましたし、Codex からもスムーズに開発できました。