このページは英語から機械翻訳されています。英語の原文を読む。

設定

AI Game Developer ウィンドウで Unity MCP を設定する方法 — Cloud モードと Custom モード、ローカルサーバー、ポート、トランスポート、認可、ツール、オーバーライド、CI について説明します。

2026年11月4日に更新 Markdownで表示

ほとんどのプロジェクトでは設定は不要です。プラグインをインストールし、サインインし、お使いのエージェント用に Configure をクリックするだけです。このページでは、AI Game Developer ウィンドウの各設定の役割、設定の保存場所、自動化のために設定をオーバーライドする方法、そして CI やプレイヤービルドでのプラグインの動作について説明します。

AI Game Developer ウィンドウ

Window > AI Game Developer — MCP(Ctrl+Alt+A、macOS では Cmd+Option+A)または Scene ビューツールバーの AI ボタンで開きます。上から順に次の項目があります:

  • Log Level、Timeout (ms)、Tool timeout (ms)、およびプラグインの Version。
  • Connection: Custom / Cloud の切り替えと、選択したモードの設定。
  • 接続タイムライン:Unity(Connect / Disconnect ボタン付き)、MCP server、AI agent。
  • AI agent ドロップダウンと各クライアントの設定項目:Model Context Protocol (MCP)(Configure / Remove)と Skills(Auto-generate と Generate)。
  • Tools、Prompts、Resources のカウンター。それぞれに Open ボタンがあります。
  • Extensions: オプションのツールパックをインストールします(Extensions を参照)。
  • ヘルプリンク:Help / Talk(Discord)、Bug Report(GitHub issues)、およびシリアライズ診断用の Check ボタン。

接続モード

Cloud(デフォルト)

プラグインはホスト型サーバー https://ai-game.dev/mcp に接続します。ローカルサーバーは起動されず、URL は編集できません。Cloud モードではサインインが必要です。Cloud Token の横にある Authorize をクリックしてブラウザでデバイスコードを承認するか、unity-mcp-cli login または AI Game Dev アプリで一度サインインします。Revoke を実行すると、そのマシン上のすべての AI Game Dev ツールからサインアウトします。

Custom(ローカルまたは独自サーバー)

プラグインは Server URL の URL に接続します。デフォルトでは http://localhost:<port> のローカルサーバーであり、プラグインがサーバー(gamedev-mcp-server)のダウンロード、起動、停止を代行します。自分でホストするリモート MCP サーバーの URL を入力することもできます。Server URL は Unity がサーバーから切断されている間のみ編集できます。

Custom モードでは次の設定が追加されます:

  • MCP server: Start / Stop ボタンとステータス(Running、Starting、Stopping、Downloading、または別のプロセスがすでにポートを使用している場合は External)。バイナリのダウンロードに失敗した場合は Download / Retry server が表示されます。
  • Transport: http(推奨)または stdio。http の場合、エージェントは実行中のサーバーに接続し、複数のエージェントが共有でき、サーバーを別のマシンで実行できます。stdio の場合、エージェントがサーバーを自身の子プロセスとして起動し、接続できるエージェントは 1 つだけで、Start / Stop ボタンは無効になります。
  • Authorization Token: none、oauth、token。
    • none: サーバーは任意の接続を受け入れます。ポートが他のマシンから到達できない場合にのみ安全です。
    • oauth: エージェントは ai-game.dev アカウントでサインインし、サーバーはオンラインでトークンを検証します。
    • token: 共有シークレットで、完全にオフラインです。New をクリックしてトークンを生成し、Configure をクリックします(またはトークンをエージェントの設定に手動でコピーします)。

ポート

ローカルポートは 8080 のような固定値ではありません。プロジェクトフォルダから導出されます。つまり、正規化されたプロジェクトパスの SHA-256 ハッシュを 20000 から 29999 の範囲にマッピングします。同じプロジェクトは常に同じポートになり、異なるプロジェクトは異なるポートになるため、複数の Unity インスタンスを同時に実行できます。CLI も同じ計算式を使うため、フラグなしで正しいサーバーを見つけられます。

別のポートを使うには、切断してから Server URL に入力します(例:http://localhost:25000)。設定ツールは入力したポートをエージェントの設定に書き込みます。

設定ファイル

設定はユーザーごとに UserSettings/AI-Game-Developer-Config.json に保存され、初回起動時に作成されます。主なキーは次のとおりです:

キー意味デフォルト
connectionModeCloud または CustomCloud
hostCustom モードのサーバー URLhttp://localhost:<port>
tokentoken 認可モード用の共有トークン生成済み
transportMethodstreamableHttp または stdiostreamableHttp
authOptionnone、oauth または tokennone
keepConnectedサーバーに自動接続するtrue、CI では false
keepServerRunningローカルサーバーを起動して実行し続けるtrue、CI では false
logLevelTrace、Debug、Information、Warning、Error、CriticalWarning
timeoutMsプラグインからサーバーへのタイムアウト10000
toolTimeoutMs1 回のツール呼び出しが実行できる時間300000
tools、prompts、resources項目ごとの表示/非表示デフォルト

Cloud の認証情報はここには保存されず、~/.ai-game-dev/credentials.json にあります。最初からやり直すには、Tools > AI Game Developer > Reset Config を使用します。これによりデフォルトが復元され、スクリプトが再読み込みされます。

ツール、プロンプト、リソース

Tools カウンターは、インストールされているツールのうちエージェントが認識している数と、それらが AI のコンテキストで消費するトークンの推定値を示します。Open をクリックすると個々のツールの表示/非表示を切り替えられます。MCP Prompts と MCP Resources ウィンドウも同様に動作します。

非表示にしたツールは削除されません。エージェントのツール一覧からは消えますが、名前で呼び出されれば実行されます。表示するツールを減らすと、推論用のコンテキストをより多く確保できます。表示/非表示は tool-set-visibility ツールやターミナルから変更することもできます:

unity-mcp-cli configure ./MyUnityProject --enable-tools screenshot-scene-view,script-read
unity-mcp-cli configure ./MyUnityProject --list

環境変数とコマンドラインによるオーバーライド

CI やスクリプトからの起動のために、プラグインは起動時に次の変数(または対応する Unity コマンドライン引数)を読み取ります。オーバーライドはメモリ内でのみ適用され、設定ファイルには書き込まれません。

変数コマンドライン引数値
UNITY_MCP_CLOUD_URL-urlサーバー URL(UNITY_MCP_HOST はレガシーエイリアス)
UNITY_MCP_CONNECTION_MODE-UNITY_MCP_CONNECTION_MODECloud または Custom。ループバック URL は Custom を意味します
UNITY_MCP_KEEP_CONNECTED-UNITY_MCP_KEEP_CONNECTEDtrue または false
UNITY_MCP_AUTH_OPTION-authnone、oauth または token
UNITY_MCP_TOKEN-tokenローカルサーバーのトークン
UNITY_MCP_TRANSPORT-UNITY_MCP_TRANSPORTstdio または streamableHttp
UNITY_MCP_START_SERVER-UNITY_MCP_START_SERVERtrue または false
UNITY_MCP_TOOLS-UNITY_MCP_TOOLS表示するツール ID のカンマ区切りリスト。それ以外はすべて非表示

コマンドライン引数は環境変数より優先されます。ローカルサーバーに接続するバッチモード Editor の例:

Unity -batchmode -projectPath ./MyUnityProject \
  -UNITY_MCP_CLOUD_URL=http://localhost:8080 \
  -UNITY_MCP_KEEP_CONNECTED=true \
  -UNITY_MCP_AUTH_OPTION=token \
  -UNITY_MCP_TOKEN=my-secret-token

unity-mcp-cli open はこれらの変数を自動的に設定します。CLI reference を参照してください。

CI で Unity MCP を無効にする

プラグインは CI 環境を検出すると、サーバーのダウンロードと自動接続をスキップします。通常の CI テストジョブで完全に無効にするには、次の 2 つのオプトアウトのいずれかを使用します:

  • Unity を起動するプロセスの環境で UNITY_MCP_DISABLE=1(または true)を設定します。プラグインは起動、ツール登録、サーバーのダウンロード、NuGet 解決、およびエディターフックをスキップします。コードは引き続きコンパイルされるため、プロジェクトはコンパイルできる必要があります。
  • Project Settings > Player > Other Settings の Scripting Define Symbol に UNITY_MCP_EXCLUDE_FROM_COMPILATION を設定します。これにより、すべてのプラグインアセンブリ(および更新されたファーストパーティ拡張)がコンパイルから除外されます。プラグインの型を参照する自分のコードには #if !UNITY_MCP_EXCLUDE_FROM_COMPILATION が必要です。

-batchmode や -runTests ではどちらも自動的に有効にはなりません。ヘッドレス MCP セッションにはプラグインが必要だからです。

プレイヤービルドとランタイム

プラグインのランタイムアセンブリはすべてのプラットフォーム向けにコンパイルされるため、上記の定義で除外しない限りプレイヤービルドに含まれます。ビルドが勝手に接続することはありません。ゲーム内でコードから UnityMcpPluginRuntime.Initialize(...) を呼び出してオプトインします。これにより、ゲーム内ツールを AI に公開できます(例:AI チェス対戦相手)。Custom tools を参照してください。

MCP サーバーのセルフホスティング

サーバーは共有の GameDev-MCP-Server で、Docker イメージ aigamedeveloper/mcp-server としても公開されています:

docker run -p 8080:8080 aigamedeveloper/mcp-server

次に、プラグインを Custom に設定し、Server URL を http://localhost:8080(または自分のホスト)にして、エージェントも同じアドレスに向けます。サーバーは --port、--client-transport、--authorization、--idle-timeout-seconds などの設定、または対応する MCP_PLUGIN_* 環境変数を受け付けます。すべての一覧はサーバーのドキュメントにあります。

  • エージェント設定とサインインについては Connecting AI clients を参照してください。
  • 接続の問題については Troubleshooting を参照してください。