Unity MCP Package について
Unity MCP Packageは、Pythonサーバーを介してUnityとLLMをつなぎ、アセットやシーンの編集、エディター作業の自動化を行いたい開発者向けです。マテリアル強化を実装済みで、アセット、シーン、スクリプトの操作にも対応します。
主な機能
- 01UnityとLLM間の双方向データ通信
- 02アセット管理とプレハブ作成
- 03シーンとゲームオブジェクトの編集
- 04マテリアル、ライティング、シェーダーの編集
- 05C#スクリプトの作成と更新
- 06エディター作業の自動化
活用シーン
- 01アセットのインポートやプレハブの生成
- 02シーンやゲームオブジェクトのプロパティ変更
- 03マテリアルとライティングの調整
- 04ビルドやプレイモード移行の自動化
MCP 対応
Pythonサーバーを介してUnityをClaude DesktopやCursorなどのMCPクライアントに接続します。アセット、シーン、スクリプト、Unity Editorの操作機能を提供します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
Unity MCP Package
元の MCP 機能を基盤とし、マテリアル編集の強化に重点を置いた Unity パッケージです。現在実装されているのはマテリアルの強化のみですが、プロジェクトは活発に開発されており、頻繁に更新されています。今後は、ライティング効果、高度なマテリアルプロパティ、物理演算との連携、地形の強化などの機能が追加される予定です。このパッケージを使うと、Model Context Protocol(MCP)を介して Unity と大規模言語モデル(LLM)がシームレスに通信できます。Unity からコマンドを送信し、MCP 準拠のツールから応答を受け取るための橋渡しとして機能します。
概要
Unity MCP Server は、Unity(C# 経由)と Python サーバーの間に双方向の通信チャネルを提供し、次のことを可能にします。
- アセット管理:Unity アセットをプログラムで作成、インポート、操作できます。
- シーン制御:シーン、オブジェクト、およびそのプロパティを管理できます。
- マテリアル編集の強化:ライティングとシェーダーのサポートを改善し、マテリアルを適用、変更できます。
- スクリプト連携:Unity 内で C# スクリプトを作成、表示、更新できます。
- エディターの自動化:元に戻す、やり直し、プレイモード、ビルド処理など、Unity Editor の機能を制御できます。
- Unity の追加機能:高度なライティング制御やポストプロセス効果など、新しい実験的機能を活用できます。
このプロジェクトは、LLM を活用して Unity プロジェクトを強化したり、反復的なタスクを自動化したりしたい開発者に最適です。
インストール
Unity MCP Package を使用するには、次のものがインストールされていることを確認してください。
- Unity 2020.3 LTS 以降(⚠️ 現在は URP プロジェクトでのみ動作します)
- Python 3.12 以降
- uv パッケージマネージャー
ステップ 1:Python をインストールする
python.org から Python 3.12 以降をダウンロードしてインストールします。インストール時に Python をシステムの PATH に追加してください。
ステップ 2:uv をインストールする
uv は依存関係の管理を簡単にする Python パッケージマネージャーです。お使いのオペレーティングシステムに応じて、以下のコマンドでインストールしてください。
-
Mac:
brew install uv -
Windows:
powershell -c "irm https://astral.sh/uv/install.ps1 | iex"次に、uv を PATH に追加します。
set Path=%USERPROFILE%\.local\bin;%Path% -
Linux:
curl -LsSf https://astral.sh/uv/install.sh | sh
別のインストール方法については、uv のインストールガイドを参照してください。
重要:uv をインストールせずに先へ進まないでください。
ステップ 3:Unity パッケージをインストールする
- Unity を開き、
Window > Package Managerに移動します。 +ボタンをクリックし、Add package from git URLを選択します。- 次の URL を入力します:
https://github.com/HuangChILun/reavorse-mcp.git
インストールすると、Unity MCP Package を Unity プロジェクトで使用できるようになります。Claude Desktop や Cursor などの MCP クライアントで使用すると、サーバーは自動的に起動します。
機能
- 双方向通信:Unity と LLM の間でデータをシームレスに送受信できます。
- アセット管理:アセットのインポート、プレハブのインスタンス化、新しいプレハブのプログラムによる作成ができます。
- シーン制御:シーンを開く、保存する、変更するほか、ゲームオブジェクトを作成、操作できます。
- マテリアル編集とライティングの強化:マテリアルプロパティ、高度なライティング、シェーダー連携、ポストプロセス効果をより細かく制御できます。
- スクリプト連携:Unity 内で C# スクリプトを作成、表示、更新できます。
- エディターの自動化:プロジェクトのビルドやプレイモードへの移行など、Unity Editor のタスクを自動化できます。
- 実験的機能:Unity の追加機能をテスト中です。フィードバックをお待ちしています。
トラブルシューティング
問題が発生した場合は、次の方法をお試しください。
-
Unity Bridge が起動していない
Unity Editor が開いていて、MCP ウィンドウがアクティブになっていることを確認してください。必要に応じて Unity を再起動してください。 -
Python サーバーに接続されていない
Python と uv が正しくインストールされていること、Unity MCP パッケージが適切にセットアップされていることを確認してください。 -
Claude Desktop または Cursor の設定に関する問題
MCP クライアントが Unity MCP サーバーと通信するように設定されていることを確認してください。 -
接続が停止している、または進展がない 処理が進まず停止しているように見える特殊な状況では、Claude と Unity プロジェクトの両方を閉じてから再接続し、接続を確立し直してください。
お問い合わせ
プロジェクトについてご質問がありますか?お気軽にお問い合わせください!
謝辞
オリジナルの作者:オリジナルの Unity MCP Package を作成した justinpbarnett に心より感謝します。この拡張版は、その成果を基に開発されています。
優れた Editor API を提供してくださった Unity Technologies と、継続的にフィードバックを寄せてくださったコミュニティに、特別な感謝を申し上げます。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。