# unity-mcp-cli リファレンス — Unity · AI Game Developer Wiki

unity-mcp-cli のコマンドリファレンス。Unity MCP のインストール、サインイン、AI エージェント設定の書き込み、Unity のヘッドレス起動、ターミナルからのツールや C# の実行を行えます。

このページは英語から機械翻訳されています。[英語の原文を読む](https://ai-game.dev/docs/wiki/unity/cli)。

`unity-mcp-cli` は Unity MCP 用のコマンドラインツールです。Unity とプラグインのインストール、ai-game.dev へのサインイン、AI エージェント設定の書き込み、エディターの起動と終了、ターミナルや CI スクリプトからの MCP ツールの呼び出しやエディター内での C# 実行ができます。このページではバージョン 1.6.2 のすべてのコマンドとフラグを一覧で説明します。

## インストール

```bash
npm install -g unity-mcp-cli
```

または、インストールせずに任意のコマンドを実行できます: `npx unity-mcp-cli <command>`。Node.js `^20.19.0` または `>=22.12.0` が必要で、Windows、macOS、Linux で動作します。エディターを管理するコマンドは Unity Hub CLI を使用します。Unity Hub がない場合、CLI がインストールします。

すべてのコマンドで利用できるグローバルオプション:

| オプション | 説明 |
| --- | --- |
| `-v, --verbose` | 詳細な診断出力 |
| `-V, --version` | CLI のバージョンを表示 |
| `--help` | そのコマンドのヘルプ |

非対話ターミナル（CI）では、CLI はスピナーと色を自動的に無効化します。プロジェクトパスを受け取るほとんどのコマンドは、位置引数または `--path` として受け取り、デフォルトは現在のフォルダーです。

## 典型的なセッション

```bash
unity-mcp-cli install-plugin ./MyGame
unity-mcp-cli login
unity-mcp-cli setup-mcp claude-code ./MyGame
unity-mcp-cli open ./MyGame
unity-mcp-cli wait-for-ready ./MyGame
unity-mcp-cli run-tool tests-run ./MyGame --input '{"testMode":"EditMode"}'
unity-mcp-cli close ./MyGame
```

## プロジェクトセットアップコマンド

### install-unity

Unity Hub 経由で Unity エディターをインストールします。引数を指定しない場合は最新の安定版リリースをインストールします。

| 引数 / オプション | 説明 |
| --- | --- |
| `[version]` | エディターバージョン（例: `6000.3.1f1`） |
| `--path <path>` | 既存のプロジェクトから必要なバージョンを読み取る |

### create-project

エディターで新しい Unity プロジェクトを作成します: `unity-mcp-cli create-project ./MyGame --unity 6000.3.1f1`。

| 引数 / オプション | 説明 |
| --- | --- |
| `[path]` | プロジェクトを作成する場所（必須、または `--path`） |
| `--unity <version>` | エディターバージョン（デフォルト: インストール済みの最新版） |

### install-plugin

OpenUPM のスコープ付きレジストリと `com.ivanmurzak.unity.mcp` を `Packages/manifest.json` に追加します。インストール済みのより新しいバージョンをダウングレードすることはありません。フォルダーは Unity プロジェクトである必要があります。

| オプション | 説明 |
| --- | --- |
| `[path]` | Unity プロジェクト（デフォルト: 現在のフォルダー） |
| `--plugin-version <version>` | インストールするバージョン（デフォルト: OpenUPM の最新版） |
| `--with-server` | このマシン用の `gamedev-mcp-server` バイナリも CLI 自身のフォルダーにダウンロードする |
| `--server-version <version>` | `--with-server` で使用するサーバーバージョン |
| `--server-source <path-or-url>` | ローカルの zip または URL からサーバーをインストールする（オフラインや CI 向け。チェックサム検証はスキップされます） |
| `--enroll <code>` | チーム登録コードを引き換えて、このプロジェクトに固定されたプラグイン資格情報を取得する |
| `--enroll-stdin` | 登録コードを stdin から読み取り、シェル履歴に残さない |
| `--yes` | 確認プロンプト（`--enroll` 中のアカウント切り替えなど）に自動で同意する |

### install-extension

公式拡張機能を `Packages/manifest.json` にインストールします。[拡張機能](https://ai-game.dev/ja/docs/wiki/unity/extensions)を参照してください。

| 引数 / オプション | 説明 |
| --- | --- |
| `[id]` | カタログ名（`Tilemap`）またはパッケージ ID（`com.ivanmurzak.unity.mcp.tilemap`） |
| `[path]` | Unity プロジェクト（デフォルト: 現在のフォルダー） |
| `--extension-version <version>` | インストールするバージョン（デフォルト: OpenUPM の最新版） |
| `--list` | インストール可能な拡張機能を一覧表示して終了する（プロジェクトやネットワークは不要） |

### remove-plugin

`com.ivanmurzak.unity.mcp` を `Packages/manifest.json` から削除し、スコープ付きレジストリは保持します。`[path]` を取ります（必須、または `--path`）。

### configure

`UserSettings/AI-Game-Developer-Config.json` 内のツール、プロンプト、リソースの表示・非表示を切り替えます。非表示の項目も、名前で呼び出せば実行されます。

| オプション | 説明 |
| --- | --- |
| `[path]` | Unity プロジェクト（必須、または `--path`） |
| `--list` | 現在の設定を表示して終了する |
| `--enable-tools <names>`、`--disable-tools <names>` | 特定のツールを表示または非表示にする（カンマ区切り） |
| `--enable-all-tools`、`--disable-all-tools` | すべてのツールを表示または非表示にする |
| `--enable-prompts <names>`、`--disable-prompts <names>` | プロンプトについても同様 |
| `--enable-all-prompts`、`--disable-all-prompts` | すべてのプロンプト |
| `--enable-resources <names>`、`--disable-resources <names>` | リソースについても同様 |
| `--enable-all-resources`、`--disable-all-resources` | すべてのリソース |
| `--agent <id>` | 代わりにマネージドサーバーのコンフィギュレーター経由で AI エージェント設定を書き込む |
| `--url <url>` | `--agent` と一緒に渡すサーバー URL |

### bootstrap-local

プロジェクトの設定を、指定したサーバー URL とトークンを使って Custom（ローカル）モードに固定します。冪等です。

| オプション | 説明 |
| --- | --- |
| `[path]` | Unity プロジェクト（デフォルト: 現在のフォルダー） |
| `--url <url>` | ローカル MCP サーバーの URL（必須） |
| `--token <token>` | ローカルのベアラートークン（必須） |
| `--dry-run` | 書き込まずに、変更される内容を報告する |

## サインインと AI エージェントのコマンド

### login

ブラウザの OAuth デバイスフローで ai-game.dev にサインインし、認証情報を `~/.ai-game-dev/credentials.json` に保存します。Editor プラグインとデスクトップアプリは同じ認証情報を使用します。すでにサインイン済みの場合は何もせず終了します。

| オプション | 説明 |
| --- | --- |
| `--project <path>` | 認証情報をマシンストアではなく `<path>/.ai-game-dev/` に保存する |
| `--force` | 認証情報が存在していても再サインインする |
| `--tools-only` | CI ランナー向けにエンジンツールのみを認可する。エージェントの認証情報は保存されない |
| `--yes` | アカウント切り替えの確認プロンプトを表示せずに確定する |

### setup-mcp

AI エージェントの MCP 設定を書き出します。Editor ウィンドウの **Configure** と同じ出力です。デフォルトでは URL はこのプロジェクトに固定され（`https://ai-game.dev/mcp/p/<pin>`）、Cloud HTTP 設定の場合はサインイン済みであればこのプロジェクトのキーが含まれます。詳しくは [AI クライアントの接続](https://ai-game.dev/ja/docs/wiki/unity/connecting-ai-clients) を参照してください。

| オプション | 説明 |
| --- | --- |
| `[agent-id]` | 設定するエージェント。例: `claude-code`、`cursor`、`codex` |
| `[path]` | Unity プロジェクト（デフォルト: 現在のフォルダー） |
| `--transport <transport>` | `http`（デフォルト）または `stdio` |
| `--url <url>` | `http` 用のサーバー URL の上書き |
| `--token <token>` | プロジェクトキーの代わりにこの Personal Access Token を書き込む |
| `--oauth` | URL のみの設定を書き出す。エージェントは自身の OAuth でサインインする |
| `--regenerate-key` | 新しいプロジェクトキーを発行し、設定を書き換えて古いキーを無効化する |
| `--no-pin` | 固定されていない `https://ai-game.dev/mcp` エンドポイントを使用する |
| `--list` | エージェント ID とその設定パスを一覧表示する |

### setup-skills

実行中の Editor を介してエージェントのスキルファイルを生成します。Unity がプラグイン接続済みの状態で開かれている必要があります。

| オプション | 説明 |
| --- | --- |
| `[agent-id]` | スキルを生成するエージェント |
| `[path]` | Unity プロジェクト（デフォルト: 現在のフォルダー） |
| `--url <url>`、`--token <token>` | サーバー URL とトークンの上書き |
| `--timeout <ms>` | リクエストのタイムアウト（デフォルト 60000） |
| `--list` | エージェントとスキル対応可否を一覧表示する |

## Editor コマンド

### open

Unity Editor でプロジェクトを開き、指定したオプションからプラグインの接続用環境変数を設定します。エディターはデタッチ状態で起動します。

| オプション | 説明 |
| --- | --- |
| `[path]` | Unity プロジェクト（デフォルト: 現在のフォルダー） |
| `--unity <version>` | エディターバージョン（デフォルト: プロジェクトのバージョン、次にインストール済みの最高バージョン） |
| `--editor-path <path>` | Editor 実行ファイルを明示的に指定する。Unity Hub の検出をスキップする |
| `--no-connect` | MCP 接続変数を設定せずに開く |
| `--url <url>` | サーバー URL（`UNITY_MCP_HOST` を設定する。これは `UNITY_MCP_CLOUD_URL` のエイリアス） |
| `--keep-connected` | 接続を強制的にオンにする |
| `--token <token>` | ローカルサーバーのトークン（`UNITY_MCP_TOKEN` を設定する） |
| `--auth <option>` | 認可モード（`UNITY_MCP_AUTH_OPTION` を設定する）。このバージョンでは `none` または `required` を指定できる |
| `--tools <names>` | 表示するツールをカンマ区切りで指定する（`UNITY_MCP_TOOLS` を設定する） |
| `--transport <method>` | `streamableHttp` または `stdio` |
| `--start-server <value>` | ローカルサーバーの自動起動を `true` または `false` で指定する |
| `--headless` | ウィンドウなしで起動し（`-batchmode`、グラフィックスは維持）、MCP サーバーが応答するまで待機する |
| `--idle-timeout <seconds>` | ツール呼び出しがないままこの秒数が経過したら終了する。その前に変更されたシーンとアセットを保存する |
| `--ready-timeout <ms>` | `--headless` の場合の待機時間（デフォルト 300000） |
| `--no-auto-dismiss-launch-errors` | Unity の「起動時のコンパイルエラー」ダイアログで **Ignore** をクリックしない |
| `--launch-dismiss-timeout-ms <ms>` | そのダイアログを監視する合計時間（デフォルト 30000） |
| `--launch-dismiss-poll-interval-ms <ms>` | そのダイアログのポーリング間隔（デフォルト 1500） |

起動時エラーダイアログの自動消去には、macOS ではターミナルに対するアクセシビリティ権限が、Linux X11 では `xdotool` が必要です（Wayland はサポートされません）。

### close

プロジェクトの Editor を正常に終了します: `unity-mcp-cli close ./MyGame --timeout 60 --force`。実行されていない Editor を閉じても成功とみなされます。

| オプション | 説明 |
| --- | --- |
| `[path]` | Unity プロジェクト（デフォルト: 現在のフォルダー） |
| `--timeout <seconds>` | 正常終了を待つ（デフォルト 30） |
| `--force` | その時点で終了していなければ Editor を強制終了する |
| `--owned-only` | CLI が起動した Editor（`exec`、`open --headless`）のみを閉じる |

### wait-for-ready

Editor と MCP サーバーがツール呼び出しを受け付けるまでポーリングします。オプション: `[path]`、`--url`、`--token`、`--timeout <ms>`（デフォルト 120000）、`--interval <ms>`（デフォルト 3000）。

### status

Unity が実行中かどうか、ローカル MCP サーバーが応答するかどうか、設定されたサーバー（たとえばクラウド）に到達可能かどうかを表示します。オプション: `[path]`、`--url`、`--token`、`--timeout <ms>`（デフォルト 5000）。

## ツールコマンド

### run-tool

サーバーの HTTP API 経由で MCP ツールを呼び出します。URL とトークンは、上書きしない限りプロジェクト設定（Custom または Cloud モード）から取得されます。

```bash
unity-mcp-cli run-tool rql-query ./MyGame --input '{"query":"objects | where name == \"Player\" | select path name active"}'
unity-mcp-cli run-tool unity-tool-list ./MyGame --raw
```

| オプション | 説明 |
| --- | --- |
| `<tool-name>` | 呼び出すツール |
| `[path]` | Unity プロジェクト。設定とポートの検出に使用される |
| `--url <url>`, `--token <token>` | 設定をバイパスして上書きする |
| `--input <json>`, `--input-file <file>` | ツールの引数（デフォルト `{}`） |
| `--raw` | 生の JSON 出力 |
| `--timeout <ms>` | リクエストのタイムアウト（デフォルト 60000） |

### run-system-tool

`run-tool` と同じオプションですが、MCP クライアントに公開されていないシステムツール（スキル生成やセッション制御など）向けです。

### exec

`script-execute` を介してエディター内で C# を実行し、結果を出力します。エディターが開いていればそれを使い、開いていなければ後続の呼び出しのためにウォームな状態を保つヘッドレスエディターを起動し、`--idle` 秒後に終了します。

```bash
unity-mcp-cli exec 'GameObject.FindObjectsOfType<Camera>().Length'
echo 'Application.unityVersion' | unity-mcp-cli exec
```

| オプション | 説明 |
| --- | --- |
| `[code]` | C# ステートメント。最後の式が結果になります（`-f` または標準入力も使用可） |
| `--path <path>` | Unity プロジェクト（デフォルト: 現在のフォルダー） |
| `-f, --file <file>` | ファイルからコードを読み込む（標準入力には `-`） |
| `--using <namespace>` | 追加の名前空間。繰り返し指定可 |
| `--include <path>` | `.ai-game-dev/snippets` 配下のヘルパー `.cs` ファイルまたはフォルダー。繰り返し指定可 |
| `--window` | ヘッドレスではなくウィンドウ付きでエディターを起動する |
| `--idle <seconds>` | `exec` が起動したエディターが終了するまでのアイドル時間（デフォルト 300、0 で終了しない） |
| `--ready-timeout <ms>` | エディターの待機（デフォルト 300000） |
| `--timeout <ms>` | ツール呼び出しのタイムアウト |
| `--raw` | 生のツールレスポンス JSON |
| `--url <url>`, `--token <token>` | 上書き |

コンパイルエラーが発生すると終了コード 1 で終了し、該当する行を示します。

## メンテナンス

### update

CLI を最新の npm バージョンに更新します。`--check` は確認のみを行い、更新が利用可能な場合は終了コード 2 で終了します。`npx` 経由の場合は更新するものがありません。

## ライブラリとしての利用

このパッケージは型付きの Node.js API（`installPlugin`、`removePlugin`、`configure`、`setupMcp`、`installExtension` など）もエクスポートしており、出力の代わりに結果オブジェクトを返します。詳細はパッケージの [npm の README](https://www.npmjs.com/package/unity-mcp-cli) を参照してください。

## 関連ページ

- [インストール](https://ai-game.dev/ja/docs/wiki/unity/installation) と [はじめに](https://ai-game.dev/ja/docs/wiki/unity/getting-started)。
- `open` が設定する環境変数については [設定](https://ai-game.dev/ja/docs/wiki/unity/configuration#overrides) を参照してください。
- デスクトップアプリ独自の CLI、`gamedev`: [アプリ CLI](https://ai-game.dev/ja/docs/wiki/app/cli)。

---

Source (HTML): https://ai-game.dev/ja/docs/wiki/unity/cli

Machine-translated (ja) from the English page: https://ai-game.dev/docs/wiki/unity/cli
