Model Context Protocol for Unreal Engine について
Unreal Engine MCP は、Cursor、Windsurf、Claude Desktop などの AI アシスタントクライアントから、自然言語で Unreal Engine エディターを操作する実験的なプロジェクトです。UE 5.5 以降を使う開発者を想定し、C++ プラグインと Python の MCP サーバーで構成されています。READMEでは現段階では本番環境での利用は推奨されていません。
主な機能
- 01アクターの作成、削除、検索
- 02アクターの位置、回転、スケールの設定
- 03コンポーネントを含むブループリントクラスの作成
- 04ブループリントのノードグラフと変数の編集
- 05エディターのビューポートのフォーカスとカメラ制御
活用シーン
- 01自然言語によるレベル内のアクター配置
- 02AI アシスタントによるブループリントの作成と変更
- 03エディター内のビューポート操作の自動化
MCP 対応
Python 製の MCP サーバーは FastMCP で実装され、TCP 経由で Unreal プラグインに接続して、エディター操作をツールとして MCP クライアントに公開します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
このプロジェクトでは、Cursor、Windsurf、Claude Desktop などの AI アシスタントクライアントが、Model Context Protocol(MCP)を使用して自然言語で Unreal Engine を操作できます。
⚠️ 実験的なステータス
このプロジェクトは現在、実験的な状態です。API、機能、実装の詳細は大幅に変更される可能性があります。テストやフィードバックを歓迎しますが、次の点にご注意ください。
- 予告なく破壊的変更が発生する可能性があります
- 機能が未完成、または不安定な場合があります
- ドキュメントが古くなっていたり、存在しなかったりする場合があります
- 現時点では、本番環境での使用は推奨されません
🌟 概要
Unreal MCP 統合では、自然言語を通じて Unreal Engine を操作するための包括的なツールを提供します。
| カテゴリー | 機能 |
|---|---|
| アクター管理 | • アクター(立方体、球体、ライト、カメラなど)の作成と削除 • アクターのトランスフォーム(位置、回転、スケール)の設定 • アクターのプロパティの照会と名前による検索 • 現在のレベルにあるすべてのアクターの一覧表示 |
| Blueprint 開発 | • カスタムコンポーネントを含む新しい Blueprint クラスの作成 • コンポーネント(メッシュ、カメラ、ライトなど)の追加と設定 • コンポーネントのプロパティと物理設定の指定 • Blueprint のコンパイルと Blueprint アクターのスポーン • プレイヤー操作用の入力マッピングの作成 |
| Blueprint ノードグラフ | • イベントノード(BeginPlay、Tick など)の追加 • 関数呼び出しノードの作成と接続 • カスタム型とデフォルト値を持つ変数の追加 • コンポーネントと自己参照の作成 • グラフ内のノードの検索と管理 |
| エディター操作 | • 特定のアクターや位置にビューポートをフォーカス • ビューポートカメラの向きと距離の調整 |
これらの機能はすべて、AI アシスタントを介して自然言語のコマンドで利用できるため、Unreal Engine のワークフローを簡単に自動化して操作できます。
🧩 コンポーネント
サンプルプロジェクト(MCPGameProject)MCPGameProject
- Blank Project をベースに、UnrealMCP プラグインを追加したものです。
プラグイン(UnrealMCP)MCPGameProject/Plugins/UnrealMCP
- MCP 通信用のネイティブ TCP サーバー
- Unreal Editor のサブシステムと統合
- アクター操作ツールを実装
- コマンドの実行と応答の処理を担当
Python MCP サーバー Python/unreal_mcp_server.py
unreal_mcp_server.pyに実装- C++ プラグインへの TCP ソケット接続(ポート 55557)を管理
- コマンドのシリアライズと応答の解析を処理
- エラー処理と接続管理を提供
toolsディレクトリからツールモジュールを読み込み、登録- FastMCP ライブラリを使用して Model Context Protocol を実装
📂 ディレクトリ構成
-
MCPGameProject/ - Unreal プロジェクトの例
- Plugins/UnrealMCP/ - C++ プラグインのソース
- Source/UnrealMCP/ - プラグインのソースコード
- UnrealMCP.uplugin - プラグインの定義
- Plugins/UnrealMCP/ - C++ プラグインのソース
-
Python/ - Python サーバーとツール
- tools/ - アクター、エディター、Blueprint 操作用のツールモジュール
- scripts/ - スクリプトとデモの例
-
Docs/ - 包括的なドキュメント
- ドキュメントの目次は Docs/README.md をご覧ください
🚀 クイックスタートガイド
前提条件
- Unreal Engine 5.5+
- Python 3.12+
- MCP クライアント(例:Claude Desktop、Cursor、Windsurf)
サンプルプロジェクト
すぐに始めたい場合は、MCPGameProject にあるスタータープロジェクトを自由にご利用ください。これは UnrealMCP.uplugin がすでに設定された UE 5.5 Blank Starter Project です。
- プロジェクトを準備する
- .uproject ファイルを右クリックします
- Visual Studio プロジェクトファイルを生成します
- プロジェクトをビルドする(プラグインを含む)
- ソリューション(
.sln)を開きます - ターゲットとして
Development Editorを選択します。 - ビルドします
- ソリューション(
プラグイン
あるいは、既存のプロジェクトでプラグインを使用したい場合は、次のようにします。
-
プラグインをプロジェクトにコピーする
MCPGameProject/Plugins/UnrealMCPをプロジェクトの Plugins フォルダにコピーします
-
プラグインを有効にする
- Edit > Plugins
- Editor カテゴリで「UnrealMCP」を探します
- プラグインを有効にします
- 確認を求められたらエディタを再起動します
-
プラグインをビルドする
- .uproject ファイルを右クリックします
- Visual Studio プロジェクトファイルを生成します
- ソリューション(`.sln)を開きます
- お使いのターゲットプラットフォームと出力設定でビルドします
Python サーバーのセットアップ
Python の詳細なセットアップ手順については、Python/README.md を参照してください。内容は次のとおりです。
- Python 環境のセットアップ
- MCP サーバーの実行
- 直接接続またはサーバーベースの接続の使用
MCP クライアントの設定
お使いの MCP クライアントに応じて、mcp 設定には次の JSON を使用してください。
{
"mcpServers": {
"unrealMCP": {
"command": "uv",
"args": [
"--directory",
"<path/to/the/folder/PYTHON>",
"run",
"unreal_mcp_server.py"
]
}
}
}
例は mcp.json にあります。
MCP 設定ファイルの場所
使用している MCP クライアントによって、設定ファイルの場所は異なります。
| MCP クライアント | 設定ファイルの場所 | 備考 |
|---|---|---|
| Claude Desktop | ~/.config/claude-desktop/mcp.json | Windows の場合: %USERPROFILE%\.config\claude-desktop\mcp.json |
| Cursor | .cursor/mcp.json | プロジェクトのルートディレクトリにあります |
| Windsurf | ~/.config/windsurf/mcp.json | Windows の場合: %USERPROFILE%\.config\windsurf\mcp.json |
各クライアントは、上記の例に示したものと同じ JSON 形式を使用します。 設定を、お使いの MCP クライアントに適した場所に置くだけです。
ライセンス
MIT
質問
ご質問がある場合は、X/Twitter で私に連絡できます: @chongdashu
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。