Unity MCP with Ollama Integration

local-only server

The server can only run on the client’s local machine because it depends on local resources.

Integrations

  • Enables communication between Unity and local Large Language Models (LLMs) running through Ollama, allowing developers to automate Unity workflows, manipulate assets, and control the Unity Editor programmatically without cloud-based LLMs.

  • Provides bidirectional communication with Unity for asset management, scene control, material editing, script integration, and editor automation functions like undo, redo, play, and build operations.

Ollama 統合による Unity MCP

Ollamaを介してUnityとローカルの大規模言語モデル(LLM)間のシームレスな通信を可能にするUnity MCP(モデルコンテキストプロトコル)パッケージ。このパッケージはjustinpbarnett/unity-mcpを拡張してローカルLLMと連携させ、開発者がクラウドベースのLLMに依存せずにワークフローを自動化し、アセットを操作し、Unityエディターをプログラムで制御できるようにします。

概要

Ollama 統合を備えた Unity MCP は、次の間の双方向通信チャネルを提供します。

  1. Unity(C#経由)
  2. Python MCPサーバー
  3. Ollamaを通じて運営されるローカルLLM

これにより、次のことが可能になります。

  • アセット管理: Unity アセットをプログラムで作成、インポート、操作します
  • シーンコントロール: シーン、オブジェクト、およびそのプロパティを管理します
  • マテリアル編集: マテリアルとそのプロパティを変更します
  • スクリプト統合: Unity スクリプトの表示、作成、更新
  • エディター自動化:Unity エディターの元に戻す、やり直し、再生、ビルドなどの機能を制御します。

すべては独自のローカル LLM によって実行され、インターネット接続や API キーは必要ありません。

サポートされているモデル

この実装は、次の Ollama モデルで動作するように特別に構成されています。

  • deepseek-r1:14b - 強力な推論機能を備えた140億パラメータモデル
  • gemma3:12b - 優れた汎用性を備えたGoogleの120億パラメータモデル

Unity MCP ウィンドウでこれらのモデルを簡単に切り替えることができます。

インストール(資産方式)

Unity のパッケージ マネージャーの互換性の問題により、インストールにはAsset Methodを使用することをお勧めします。

前提条件

  • Unity 2020.3 LTS以降
  • Python 3.10以降
  • システムにOllamaがインストールされている
  • 次の LLM モデルが Ollama に取り込まれました:
    • ollama pull deepseek-r1:14b
    • ollama pull gemma3:12b

ステップ1: エディタースクリプトをダウンロードしてインストールする

  1. このリポジトリをダウンロードまたはクローンします:
    git clone https://github.com/ZundamonnoVRChatkaisetu/unity-mcp-ollama.git
  2. Unity プロジェクトの Assets ディレクトリにフォルダーを作成します。
    Assets/UnityMCPOllama
  3. クローンしたリポジトリからEditorフォルダーを Unity プロジェクトにコピーします。
    # Copy the entire Editor folder [Repository]/Editor → Assets/UnityMCPOllama/Editor
  4. フォルダ構造が正しいことを確認します。
    Assets/ UnityMCPOllama/ Editor/ MCPEditorWindow.cs UnityMCPBridge.cs
  5. Unityでスクリプトをインポートしてコンパイルする

ステップ2: Python環境の設定

  1. Python 環境用のフォルダーを作成します (Unity プロジェクトの外部)。
    mkdir PythonMCP cd PythonMCP
  2. クローンしたリポジトリから Python フォルダをコピーします。
    cp -r [Repository]/Python .
  3. 仮想環境を作成してアクティブ化します。
    # Create a virtual environment python -m venv venv # Activate the virtual environment # On Windows: venv\Scripts\activate # On macOS/Linux: source venv/bin/activate
  4. 依存関係をインストールします:
    cd Python pip install -e .

ステップ3: Ollamaを設定する

  1. Ollamaがシステムにインストールされ、実行されていることを確認してください
  2. サポートされているモデルをプルします。
    ollama pull deepseek-r1:14b ollama pull gemma3:12b
  3. Ollama サーバーを起動します。
    ollama serve

OllamaでUnity MCPを使用する

ステップ1:Unity Bridgeを起動する

  1. Unityプロジェクトを開く
  2. Window > Unity MCPに移動して、MCP ウィンドウを開きます。
  3. **「ブリッジを開始」**ボタンをクリックしてUnityブリッジを開始します

ステップ2: Pythonサーバーを起動する

  1. コマンドプロンプトまたはターミナルを開きます
  2. Python 環境に移動します。
    cd PythonMCP
  3. 仮想環境をアクティブ化します。
    # On Windows: venv\Scripts\activate # On macOS/Linux: source venv/bin/activate
  4. Python ディレクトリに移動してサーバーを起動します。
    cd Python python server.py

ステップ3: Ollamaの設定を構成する

  1. Unity MCPウィンドウで、 Ollama Configurationセクションを見つけます。
  2. 次の設定を確認または更新します。
    • ホスト: localhost (デフォルト)
    • ポート: 11434 (デフォルト)
    • モデル: deepseek-r1:14bまたはgemma3:12bのいずれかを選択してください
    • 温度:必要に応じて調整します(0.0~1.0)
  3. Ollama構成の適用をクリック

ステップ4: チャットインターフェースを使用する

  1. Unity MCPウィンドウの**「チャットインターフェースを表示」**ボタンをクリックします。
  2. メッセージ欄に指示を入力してください
  3. リクエストを処理するには**[送信]**をクリックしてください

プロンプトの例:

  • 「位置 (0, 1, 0) に赤い立方体を作成します」
  • 「シーンに球体を追加し、青いマテリアルを適用する」
  • 「現在のシーン内のすべてのオブジェクトを一覧表示する」
  • 「簡単な動作スクリプトを書いてキューブに添付する」

接続ステータスインジケーター

Unity MCP ウィンドウには、各コンポーネントのステータス情報が表示されます。

  • Pythonサーバーステータス: Pythonサーバーが実行中かどうかを示します
    • 緑: 接続済み
    • 黄色: 接続されていますが、問題があります
    • 赤: 接続されていません
  • Unityブリッジステータス: Unityソケットサーバーが実行中かどうかを表示します
    • 実行中: Unity は接続を待機しています
    • 停止: Unity ソケット サーバーがアクティブではありません
  • Ollamaステータス: Ollamaへの接続ステータスを表示します
    • 接続済み: Ollama サーバーに正常に接続されました
    • 接続されていません: Ollama に接続できません

トラブルシューティング

よくある問題

  1. Python サーバーの「未接続」ステータス
    • Python サーバーが実行中であることを確認します ( python server.py )
    • Pythonコンソールでエラーを確認する
    • Unity Bridgeが動作していることを確認する
  2. Unity MCP メニューが見つかりません
    • エディタースクリプトがプロジェクトに正しくインポートされていることを確認してください
    • Unityコンソールでエラーがないか確認する
    • 必要に応じてUnityを再起動します
  3. Ollama 接続の問題
    • ollama serveでOllamaが動作していることを確認する
    • モデルが適切に引き出されているか確認する
    • ファイアウォールがポート11434をブロックしていないことを確認する
  4. MCPコマンド実行失敗
    • 詳細なエラーメッセージについてはPythonコンソールを確認してください
    • Unity Bridgeが動作していることを確認する
    • プロンプトが明確かつ具体的であることを確認してください

Python環境の明示的なセットアップ手順

Python 環境の設定中に問題が発生した場合:

  1. Python 3.10以降をインストールする
  2. ollama.aiからOllamaをインストールする
  3. Python 環境専用のディレクトリを作成します。
    mkdir C:\PythonMCP cd C:\PythonMCP
  4. このリポジトリをクローンまたはダウンロードし、Python フォルダーをコピーします。
    git clone https://github.com/ZundamonnoVRChatkaisetu/unity-mcp-ollama.git copy unity-mcp-ollama\Python .
  5. 仮想環境を作成します。
    python -m venv venv
  6. 仮想環境をアクティブ化します。
    venv\Scripts\activate
  7. 依存関係をインストールします:
    cd Python pip install -e .
  8. サーバーを実行します。
    python server.py

パフォーマンスに関する考慮事項

ローカル LLM のパフォーマンスはハードウェアによって異なります。

  • deepseek-r1:14bの場合:推奨最小12GBのVRAM
  • gemma3:12bの場合:推奨最小10GBのVRAM
  • CPUのみの操作は可能だが、速度が大幅に低下する

貢献

貢献を歓迎します!お気軽にプルリクエストを送信したり、問題を報告してください。

ライセンス

このプロジェクトは MIT ライセンスに基づいてライセンスされています。

謝辞

-
security - not tested
A
license - permissive license
-
quality - not tested

Ollama を介して Unity をローカルの大規模言語モデルに接続するサーバー。開発者はクラウドベースの LLM に依存せずにワークフローを自動化し、アセットを操作し、Unity エディターをプログラムで制御できます。

  1. Overview
    1. Supported Models
      1. Installation (Asset Method)
        1. Prerequisites
        2. Step 1: Download and Install Editor Scripts
        3. Step 2: Set Up Python Environment
        4. Step 3: Configure Ollama
      2. Using Unity MCP with Ollama
        1. Step 1: Start Unity Bridge
        2. Step 2: Start Python Server
        3. Step 3: Configure Ollama Settings
        4. Step 4: Use the Chat Interface
      3. Connection Status Indicators
        1. Troubleshooting
          1. Common Issues
          2. Explicit Setup Instructions for Python Environment
        2. Performance Considerations
          1. Contributing
            1. License
              1. Acknowledgments
                ID: 5bav8wr998