Tech Tips

  1. ゲーム開発
  2. 6 view

Unreal Engine 5.8 の Unreal MCP を使用して Codex に Unreal Engine を操作させて Blueprint + Functional Tests で簡単なゲーム開発をさせる

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 からもスムーズに開発できました。

ゲーム開発の最近記事

  1. Unreal Engine 5.8 の Unreal MCP を使用して Codex に …

  2. VibeUE を使用して Codex に Unreal Engine を操作させてテスト込…

  3. CoplayDev 版 unity-mcp を使用して Codex に Unity を操作…

  4. 「Xcode Metal Compiler error: error: error: ca…

関連記事

PAGE TOP