mcpField
K
KitWright Unity MCP

KitWright Unity MCP

ローカル
kitwright.dev開発ツール342 週間前に更新

KitWright Unity MCP について

KitWright Unity MCP は MIT ライセンスの Unity エディター用 MCP サーバーで、Claude Code、Cursor、VS Code Copilot などの AI アシスタントが実行中の Unity プロジェクト内で直接操作できるようにします。シーン編集、スクリプト生成、プレイモードの自動化、スクリーンショットなどを扱う 274 個の組み込みツールを備えています。

主な機能

  1. 01execute_code によるメモリ内での C# コードの実行
  2. 02プレイモードでのキーボードおよびマウス入力のシミュレーション
  3. 03プロジェクトコンテキストやシーン、ログのライブリソース
  4. 04core と full の切り替え可能なツールプロファイル
  5. 05複数の AI クライアント向けワンクリック MCP 設定

活用シーン

  1. 01AI アシスタントによるプロンプトからのシーンとゲームロジックの構築
  2. 02プレイモードでのスクリーンショットによる動作検証
  3. 03MCP 経由でのエディター状態とコンソールログの取得

MCP 対応

本プロジェクトは Unity エディター内で動作する MCP サーバーで、ローカルの HTTP エンドポイントを通じてツール、リソース、プロンプトを MCP クライアントに提供します。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

インストール方法は未掲載です

このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。

リポジトリ

ツール

ツール一覧はまだ取得されていません

ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。

詳細

KitWright MCP for Unity

Unity Editor 向けの最も先進的な MCP サーバー

Unity 2022.3+ License: MIT MCP Compatible Editor Only

中文 | English

The Most Advanced MCP Server for Unity

💖 このプロジェクトが役に立ったと感じたら、ぜひ Star を付けていただけると嬉しいです。より多くの Unity 開発者の目に留まるきっかけになり、継続的な開発を支えることにつながります。


KitWright MCP for Unity は、MIT ライセンスの Unity Editor 用 MCP サーバーです。Claude Code、Cursor、LM Studio、Windsurf、Codex、VS Code Copilot などの AI アシスタントが、実行中の Unity プロジェクト内で直接操作できるようにします。

ゲームを一文で説明するだけで、AI アシスタントは KitWright MCP for Unity の 274 個の組み込みツール(シーン作成、スクリプト生成、ランタイム検証、入力シミュレーション、パフォーマンス分析、エディター自動化)を通じて、Unity 上でそれを構築します。

「10x10 のグリッド、食べ物の出現、スコア UI、ゲームオーバー画面を備えたスネークゲームを作って」

AI アシスタントは KitWright MCP for Unity を通じてそれを処理します。シーンを作成し、すべてのスクリプトを生成し、UI をセットアップし、ゲームロジックを構成します — すべてたった一つのプロンプトから。

KitWright MCP for Unity — demo

デモ — AI がプロジェクトのプレハブを検索し、MCP ツールを通じて都市のシーンを構築します。HD MP4 を見る。

クイックスタート

とにかく素早く接続したい場合は、次の 3 つを行ってください。

  • Git URL から Unity パッケージをインストールする
  • Window > KitWright > MCP Window を開き、Server タブからサーバーを起動する
  • 組み込みのワンクリッククライアント構成を使用する
1. UPM(Git URL)でインストールする

Unity で Window → Package Manager → + → Add package from git URL に移動します。

https://github.com/kitwright/unity-mcp.git#upm

💡 クローンやインストールの前に、GitHub で ⭐ を付けていただけると大変ありがたいです。

オプション: OpenUPM からインストールする

Unity Package Manager にレジストリベースのパッケージバージョン履歴を表示させ、バージョン選択を可能にしたい場合は、Git ではなく OpenUPM からインストールしてください。

OpenUPM CLI を使用する場合:

openupm add com.kitwright.unity.mcp

または、Packages/manifest.json にスコープ付きレジストリを手動で追加します:

{
  "scopedRegistries": [
    {
      "name": "OpenUPM",
      "url": "https://package.openupm.com",
      "scopes": [
        "com.kitwright"
      ]
    }
  ],
  "dependencies": {
    "com.kitwright.unity.mcp": "1.0.1"
  }
}

以前に Git URL からインストールした場合は、まず Git 依存関係を削除してから、OpenUPM からインストールしてください。Git でインストールされたパッケージは Unity では解決された Git バージョンのみが表示され、レジストリベースの Version History リストは取得されません。

オプション: Unity Asset Store からインストールする

Asset Store パッケージをインポートすると、This Unity Package has Package Manager dependencies ダイアログが表示されます。Install/Upgrade を選択してください — このパッケージには com.unity.nuget.newtonsoft-json が必要であり、プロンプトをスキップするとプロジェクトにそれが入らず、すべての KitWright スクリプトがコンパイルできなくなります。

すでに Skip を選択した場合、パッケージは次のドメインリロード時に依存関係をインストールするよう提案します。また、Window → Package Manager → + → Add package by name から自分で追加することもできます:

com.unity.nuget.newtonsoft-json
2. MCP サーバーを起動する

メニュー: Window → KitWright → MCP Window を開き、Server タブからサーバーを起動します。

サーバーは既定で http://127.0.0.1:8765/ で起動します。

Broker Mode は既定のトランスポートです。Unity に同梱された Mono を使って小さなローカルブローカーを実行し、MCP クライアントに対して同じ 127.0.0.1 ポートを維持し、クライアント側の設定変更を必要とせず、Unity のスクリプト再コンパイルや Play Mode のドメインリロードをまたいで接続を保持します。ブローカーを起動できない場合、サーバーは自動的に直接インプロセス HTTP にフォールバックします。Server タブでブローカーモードをオフにして、常に直接 HTTP を使用することもできます。

ウィンドウには 5 つのタブがあります: Server、Settings、Skills、Tool Exposure、Integrations です。

core または full によって公開される正確なツールを編集したい場合は、Tool Exposure タブを開いてください。

execute_code の安全デフォルト設定やプラグインのデバッグログを調整したい場合は、Settings タブを開いてください。

3. AI クライアントを設定する

まず Server タブにある組み込みの One-Click MCP Configuration を使用してください。

対象のクライアントを選択し、Configure をクリックすると、パッケージが推奨の MCP 設定エントリを書き込みます。

Claude Code、Cursor、Codex の場合は、Configure + Skills をクリックすると、既定のプロジェクト MCP ワークフロースキルもインストールされます。

現在の Unity プロジェクト向けにプロジェクト固有の AI ガイダンスが必要な場合は、Skills タブを開いて対応プラットフォームを選択し、既定の unity-mcp-workflow スキルをインストールしてください。

設定ファイルを手動で編集したい場合は、以下の例をフォールバックのリファレンスとして使用してください:

Claude Code / Claude Desktop
{
  "mcpServers": {
    "kitwright": {
      "type": "http",
      "url": "http://127.0.0.1:8765/"
    }
  }
}
Cursor
{
  "mcpServers": {
    "kitwright": {
      "url": "http://127.0.0.1:8765/"
    }
  }
}
LM Studio

LM Studio はワンクリックの対象には含まれていません — その mcp.json の場所はバージョンとプラットフォームによって異なります。LM Studio で Program > Install > Edit mcp.json を開き、以下のエントリを貼り付けてください。

{
  "mcpServers": {
    "kitwright": {
      "url": "http://127.0.0.1:8765/"
    }
  }
}
VS Code
{
  "servers": {
    "kitwright": {
      "type": "http",
      "url": "http://127.0.0.1:8765/"
    }
  }
}
Trae
{
  "mcpServers": {
    "kitwright": {
      "url": "http://127.0.0.1:8765/"
    }
  }
}
Kiro
{
  "mcpServers": {
    "kitwright": {
      "type": "http",
      "url": "http://127.0.0.1:8765/"
    }
  }
}
Codex
[mcp_servers.kitwright]
url = "http://127.0.0.1:8765/"
Windsurf

ローカルの Windsurf バージョンが異なる MCP 設定フォーマットを必要としない限り、Cursor と同じ JSON 構造を使用してください。

4. 接続を確認する

AI クライアントを開き、まずいくつかの安全なリクエストを試してください:

  • 「get_scene_info を呼び出して、どのシーンが開いているか教えて」
  • 「unity://project/context を読み取り、現在のエディター状態を要約して」
  • 「execute_code を使ってアクティブなシーン名を返して」

これらが動作すれば、MCP サーバー、リソース、主要な実行ツールが正しく接続されています。

5. 構築を始める

AI クライアントを開き、次のように試してください: 「5 つの浮遊プラットフォームを備えた 3D プラットフォーマーレベルを作成して」

始める前に

  • このパッケージはエディター専用です。ビルドしたゲームにランタイムコンポーネントを追加することはありません。
  • MCP サーバーはデフォルトで http://127.0.0.1:8765/ で起動します。
  • ローカル MCP サーバーの設定は UserSettings/KitWrightMcpSettings.json に保存されます。
  • このパッケージは、AI クライアントにとってのツールリストのノイズを減らすため、デフォルトで core MCP ツールプロファイルを使用します。core は現在、execute_code、プレイモード制御、入力シミュレーション、スクリーンショット、パフォーマンス検査、ログ、コンパイルチェック、構造化オブジェクトの特定とコンポーネント編集、エディターの選択 / プレハブステージの状態、ライブ C# API リフレクション、Unity ドキュメント検索、そして摩擦の少ないフォールバックである execute_menu_item を中心とした 43 個の高シグナルツールを公開します。274 個のツールすべてを公開したい場合は、Server タブで full に切り替えてください。
  • Settings タブでは、execute_code の安全性チェックと、より厳格なファイルシステムガードがデフォルトで有効になっています。このガードは、明らかに破壊的なスニペット、広範な System への書き込み、生のファイルストリーム、絶対パス / ユーザー / システム / トラバーサルパスをブロックします。これは事故を防ぐものであり、意図を防ぐものではありません。safety_checks はツールの引数であるため、execute_code を呼び出せるクライアントは safety_checks=false を渡して、ソースのブロックリストとコンパイル済みアセンブリのガードの両方をスキップできます。これはセキュリティ境界でも安全境界でもありません — SECURITY.md を参照してください。
  • プラグインのデバッグログはデフォルトでオフになっており、Settings タブから有効にできます。警告とエラーは常に Unity コンソールに書き込まれます。
  • 公開されているすべての MCP ツールは直接実行されます。追加の承認トグルはありません。
  • ウィンドウはバックグラウンドで更新を確認し、新しいリリースが存在する場合はヘッダーに Update ボタンを表示します — これは Git インストールをその場で更新したり、unitypackage を自動的にダウンロードしてインポートしたりできます。

このプロジェクトの特長

  • execute_code ファースト — リッチなエディター / ランタイムオーケストレーションのための、インメモリ C# 実行ツールを中心に最適化されています。詳細は以下の execute_code: インメモリ C# 実行 を参照してください。
  • デフォルトの安全性チェック — execute_code にはデフォルトでオンになる永続的なトグルがあり、呼び出しごとの引数を明確に公開しないクライアント向けの、より厳格なファイルシステムガードも含まれます
  • プレイモード自動化 — 同じ MCP セッションから、プレイモードへの移行、キーボード / マウス入力のシミュレーション、スクリーンショットの取得、ログの検査、動作の検証を行えます
  • プロジェクトコンテキストを標準搭載 — プロジェクトの状態、アクティブなシーン、選択、コンパイル、コンソール出力、MCP インタラクション履歴のライブリソースを公開します
  • デフォルトで絞り込み、必要に応じてフル — core はコンパクトで高シグナルなツールセットを公開し、full は 274 個のツールを公開します
  • 単一の Unity パッケージ — 追加の承認 UI も、クリックして進める外部デーモンも、Unity 側プラグイン自体に Python の要件もありません
  • 拡張可能 — 属性ベースの検出でカスタムツールを追加したり、必要に応じて Unity を外部の MCP サービスに接続したりできます

ハイライト

  • 274 個の組み込みツール — シーン編集、アセット、スクリプト、再生モード制御、スクリーンショットとスクリーンショットの差分比較、パフォーマンス分析、プロンプト、リソース、構造化オブジェクトの位置特定、SerializedObject ベースのコンポーネントおよびプロジェクト設定の編集、アニメーター作成、複合 uGUI コントロール、エディター状態の検査、メニュー項目のフォールバック、そして 57 モジュールにわたるエディター自動化。完全なリスト: TOOLS.md
  • 構造化された戻り値 + instanceId チェーン — ツールは {success, message, data} JSON を返し、安定した instanceId フィールドを含むため、エージェントは名前で再解決するのではなく、by_id 呼び出しを確実にチェーンできます
  • execute_code 用の IKitWrightCommand — 自動 Undo (ctx.RegisterObjectCreation / ctx.RegisterObjectModification / ctx.DestroyObject)、構造化ログ (ctx.Log/LogWarning/LogError)、そしてエージェントに返される追跡可能な変更履歴を備えた新しいスニペットテンプレート
  • リソースとプロンプト — ライブプロジェクトコンテキスト、シーン/選択/エラーのリソース、リソーステンプレート、再利用可能なワークフロープロンプト
  • 入力シミュレーション + スクリーンショット — キーボード/マウスシミュレーションで再生モードを操作し、ゲーム/シーンのキャプチャで結果を検証
  • 組み込みの更新機能 — MCP ウィンドウが新しいリリースを表示し、Git パッケージを再プルするか、最新の unitypackage を自動インポートします
  • 統合タブ — Hot Reload、Memory Profiler、Addressables、Input System、Timeline、URP、Test Framework を検出し、それぞれが解放するツールを表示します
  • ワンクリッククライアント設定 — Unity ウィンドウから直接 19 のターゲット向けに MCP 設定エントリを書き込みます: Claude Code、Cursor、VS Code (+ Insiders)、Codex、Windsurf、Cline、Kiro、Trae、Rider (+ Junie)、Kimi Code、Qwen Code、Antigravity、Kilo Code、OpenCode、GitHub Copilot CLI、CodeBuddy CLI、Roo Code
  • ツール公開制御 — core と full によって公開される正確なツールを編集
  • プロジェクトスキルマネージャー — 対応する AI クライアント向けのプロジェクトレベルのスキルを設定します。現在はデフォルトの unity-mcp-workflow スキルをインストールします
  • MCP 設定 — MCP 接続やツール実行のトラブルシューティング時に、execute_code の安全デフォルトを調整し、詳細なプラグインデバッグログを有効化します
  • ベンダー非依存 — MCP をサポートするあらゆる AI クライアントで動作します: Claude Code、Cursor、LM Studio、Windsurf、Codex、VS Code Copilot など

execute_code: インメモリ C# 実行

execute_code は、Unity 向け KitWright MCP の中核です。これにより、AI は C# スニペットを記述し、Roslyn 優先のインメモリフローでコンパイルして、エディタスレッド上で実行できます。エージェントは、プロジェクトファイルをディスクに書き込むことなく、Unity Editor とランタイム API の完全なサーフェスを利用できます。

  • プロジェクトへの影響ゼロのコンパイル — スニペットは、インメモリのコンパイル/実行フローを維持したまま、まず Unity にバンドルされた Roslyn csc でコンパイルされます。Assets/ 配下に .cs ファイルは書き込まれず、ドメインリロードもトリガーされず、スニペット自体が行う以外にプロジェクトの状態は一切変更されません。
  • 実行前にエディタ対応済み — 各呼び出しは AssetDatabase を更新し、保留中のコンパイルが完了するのを待ってからスニペットをコンパイルするため、外部ファイルの編集が別途 request_recompile を必要とせず自動的に反映されます。
  • 自動 Undo + 構造化ログ(推奨テンプレート) — IKitWrightCommand を実装し、注入された ExecutionContext を使用することで、作成/変更/破棄されたすべてのオブジェクトがエディタの Undo に参加し、変更履歴がエージェントに返されます。
using UnityEngine;
using UnityEditor;
using KitWright.Editor.Tools.Helpers;
using KitWright.Editor.Tools.Scripting;

public class CommandScript : IKitWrightCommand
{
    public void Execute(ExecutionContext ctx)
    {
        var go = GameObject.CreatePrimitive(PrimitiveType.Cube);
        ctx.RegisterObjectCreation(go);          // auto-Undo + tracked
        ctx.Log("Created {0}", go.name);
        ctx.ReturnValue = GameObjectSerializer.Describe(go, includeComponents: false);
    }
}

レスポンスには { logs, created, modified, destroyed, returnValue } が含まれるため、エージェントはシーンを再クエリすることなく、何が変更されたかを正確に検証できます。

レガシーテンプレート(public static string Run())も引き続きサポートされています。構造化された追跡が過剰な、一回限りの検査スニペットに便利です。

execute_code と専用ツールのどちらを使うべきか — execute_code は、多段階のオーケストレーション、新規の読み取り、および 5~10 個の狭いツール呼び出しを連鎖させるよりも 1 つのスニペットの方がノイズが少ない状況で威力を発揮します。単一フィールドのコンポーネント編集、単純な選択の変更、または既存のツールでカバーされるあらゆる用途には、専用ツールを優先してください。LLM にとって呼び出しコストが低く、検証も容易です。

Coplay との比較

以下の表は、このリポジトリと、GitHub 上の Coplay のオープンソース unity-mcp リポジトリで公開されている動作( v10.0.0 および公開ドキュメントサイトで確認 )を比較したものです。

領域KitWright MCP for UnityCoplay unity-mcp
Unity 側のアーキテクチャ組み込みの HTTP MCP サーバーを備えた、Unity Editor に埋め込まれるパッケージUnity ブリッジと Python MCP サーバー。ローカルで実行するか、API キー認証を用いてリモートでホスト
追加のローカル前提条件コアワークフローには Unity パッケージのみ公開されているクイックスタートによると Unity + Python 3.10+ + uv
ツールの範囲57 モジュールにわたる 274 個の細分化されたツールで、instanceId によって連鎖ツールごとに action 列挙型を持つ、約 51 個の広範な manage_* エントリポイント( README には「47 focused entrypoints」と記載 )
主なワークフロースタイルまず execute_code、次に特化したヘルパーツールまず manage_* ファミリー。execute_code は scripting_ext グループで利用可能
デフォルトのツール公開コンパクトな core プロファイルと、任意の full への拡張manage_tools によってセッションごとにツールグループを切り替え
アセット生成組み込みではない( execute_code で外部 API を組み合わせる )fal.ai、Tripo、Meshy による generate_image / generate_audio / generate_model、および Sketchfab インポート
UI Toolkit と ProBuilder組み込みではない( uGUI 作成ツールのみ )UXML/USS/UIDocument 向けの manage_ui と、エディター内モデリング向けの manage_probuilder
組み込みのコンテキストモデルプロジェクトリソース、リソーステンプレート、ワークフロープロンプト、インタラクション履歴公開 README ではツールファミリーとブリッジ/サーバーワークフローを重視
Play モードの検証パッケージに組み込みの Play モード制御、スクリーンショット、ログ、入力シミュレーション公開 README では広範な Unity 管理および自動化ツールを重視
C# API イントロスペクションreflect_api — 宣言されたメンバー、メンバーごとの完全なシグネチャ、拡張メソッド、非推奨メンバー、インターフェース、および unity / packages / project / all をスコープとする部分文字列による search。型またはメンバー名が解決できない場合に候補の提案を追加し、大文字と小文字を区別しないメンバー照合、およびプライベートメンバーと内部メンバー向けの include_non_public を提供unity_reflect — 同等のスコープフィルターを備えた get_type / get_member / search、拡張メソッドの解決、およびインターフェースと非推奨メンバーの一覧表示
ドキュメントREADME.md と TOOLS.md。どちらも [ToolProvider] ソースから生成ツールごとにパラメーター、アクション、例を網羅した詳細ページを持つ自動生成ドキュメントサイト
ツール公開の切り替えset_tool_profile がクライアントから minimal / core / extended / full を切り替え、tools/list_changed をプッシュmanage_tools がセッションごとにツールグループを有効化および無効化
ツールのアノテーション読み取り専用ツールに annotations.readOnlyHintアノテーション付きツールに readOnlyHint と destructiveHint
位置づけAI 駆動のエディター制御向けの、軽量で直接的な MIT ライセンスの Unity MCP サーバーCoplay が保守する、Python ベースのサーバーセットアップを備えた多機能な Unity ブリッジ

Coplay 列の出典: CoplayDev/unity-mcp およびそのツールリファレンス

Unity AI Assistant との比較

以下の表では、このリポジトリと Unity Technologies の公式 com.unity.ai.assistant パッケージ(2026-05 時点で v2.7.0-pre.2)を比較しています。

領域KitWright MCP for UnityUnity AI Assistant
最小 Unity バージョン2022.36000.3 (Unity 6 のみ)
ライセンスMIT、オープンソースUnity 利用規約、プロプライエタリ
デプロイEditor 内のローカル HTTP MCP サーバー、クラウド不要Editor + ネイティブ Relay サブプロセス + Unity Cloud バックエンド
課金無料、ユーザーが自身の AI クライアントを持ち込むクレジットベース (Unity Dashboard)
ツール公開57 モジュールにわたる 274 ツール、core (43) / full プロファイル約 15 の MCP ツール (主に Manage* ファミリー)
汎用エスケープハッチexecute_code — Roslyn ファーストのインメモリコンパイル、IKitWrightCommand + Undo、サンドボックスなし (クライアント側の承認)RunCommand — 名前空間ブラックリストサンドボックス
再生モードの検証フルループ: 開始 / 入力シミュレーション / キャプチャ / ログ読み取り / 終了開始/終了のみ、入力シミュレーションなし
アセットジェネレーター組み込みなし (execute_code 経由で外部 API を組み合わせる)ネイティブの Image / Mesh / PBR / Sound / Animation ジェネレーター
主要クライアントモデル任意の MCP クライアントを持ち込み可能 (Claude Code / Cursor / LM Studio / Codex / VS Code)組み込みチャットウィンドウ + Gateway 経由の Claude/Gemini 向け ACP
オフライン対応ツール呼び出しは可 (推論は選択したクライアントに依存)不可 (推論には Unity Cloud が必要)

両アプローチの詳細な比較については、KitWright MCP for Unity vs Unity AI Assistant detailed comparison(中国語)をご覧ください。

MCP 機能

現在のオープンソースパッケージは、4 つの価値の高い機能レイヤーを公開しています。

  • ツール — full で合計 274 ツール、core で 43 の絞り込まれたツール
  • 主要な実行 — リッチなエディター/ランタイムオーケストレーションのための execute_code
  • プロンプト — fix_compile_errors、runtime_validation、create_playable_prototype などのワークフロープロンプト
  • リソース — プロジェクトコンテキスト、シーンサマリー、選択状態、コンパイルエラー、コンソールエラー、MCP インタラクション履歴、さらにシーンオブジェクト、コンポーネント、アセットパス用のリソーステンプレート

組み込みツール

KitWright MCP for Unity は 57 モジュールにわたる 273 のツール関数を提供しています(core プロファイルではそのうち 53 を公開)。

モジュールツールモジュールツール
EditorState18Texture4
GameObject14Build3
Profiler13ComponentBatch3
Scene13ComponentProperty3
Animation10Docs3
Prefab10Lighting3
Asset8Package3
Terrain8Physics3
AssemblyDefinition7ScriptableObject3
InputSimulation7Sprite3
Prefs7Testing3
SpriteAtlas7Undo3
UI7AssetImport2
Visual7EditorDialog2
Addressable6EditorWindowInteraction2
Audio6Material2
Code6Performance2
InputActions6ProjectSettings2
NavMesh6References2
Shader6Batch1
File5Hierarchy1
MemorySnapshot5Interop1
SceneView5MenuItem1
Screenshot5Mesh1
Volume5Particle1
Camera4Reflection1
Compilation4Timeline1
LodConstraint4ToolExposure1
Script4

📖 各ツールとその説明: TOOLS.md。

📊 Profiler ツールの完全なリファレンス、実装上の注意点、既知の制限、テストレポートについては PROFILER_TOOLS.md をご覧ください。

カスタムツールの追加

プロジェクトでは、組み込みツールが使用するのと同じ属性を使って、独自の MCP ツールを宣言できます。クラスを Editor アセンブリに配置してください — KitWright.Editor は autoReferenced であるため、asmdef 参照の設定は不要です:

using System.ComponentModel;
using KitWright.Editor.Tools;

[ToolProvider("MyTools")]
public static class MyCustomTools
{
    [Description("Spawns enemies at random positions in the scene")]
    public static string SpawnEnemies(
        [ToolParam("Number of enemies to spawn", Required = true)] int count,
        [ToolParam("Prefab path in Assets")] string prefabPath)
    {
        // Your implementation here
        return $"Spawned {count} enemies";
    }
}

クラス上の public static メソッドは自動的に検出され、snake_case (spawn_enemies) に変換され、パラメーターリストから生成された JSON Schema 定義とともに MCP 経由で公開されます。メソッドがシーンやプロジェクトを変更しない場合は [ReadOnlyTool] を付けてください。クライアントはそのメソッドに対して annotations.readOnlyHint を受け取ります。

プロジェクトで宣言されたツールは、デフォルトの core を含む すべて のプロファイルで公開されます。なぜなら、ツールを書くこと自体がすでに明示的なオプトインであり、そうでなければカスタムツールはほとんどのクライアントが接続するプロファイルから見えなくなってしまうからです。これらのツールは Tool Exposure タブにも表示されるため、そこで設定されたプロファイルは他の組み込みツールと同様にそれらをオフにできます。

アーキテクチャ

MCP Server (HTTP JSON-RPC 2.0)
    └─ MCPRequestHandler (protocol handling)
        └─ MCPExecutionBridge
            └─ FunctionInvoker (reflection-based invocation)
                └─ Tool Functions (274 built-in tools across 57 modules)
External AI Client → HTTP Request → MCPRequestHandler → MCPExecutionBridge → FunctionInvoker → tool method

要件

  • Unity 2022.3 以降
  • com.unity.nuget.newtonsoft-json — UPM および OpenUPM インストールでは自動的に取り込まれます。Asset Store からのインポートでは、Package Manager の依存関係ダイアログで提供されます
  • com.unity.ugui および com.unity.test-framework — 宣言された依存関係であり、デフォルトの Unity プロジェクトにすでに含まれています

コントリビューション

コントリビューションを歓迎します! PR を送信する前に Contributing Guide をお読みください。

セキュリティ

脆弱性を発見しましたか? 非公開で報告してください — Security Policy をご覧ください。

ライセンス

MIT — 自由に使用、変更、配布でき、商用またはオープンソースプロジェクトに統合できます。

KitWright の名前とロゴは KitWright プロジェクトの商標であり、MIT ライセンスの対象では ありません。事前の書面による許可なく、派生作品のブランディングにこの名前やロゴを使用したり、承認を暗示させたりすることはできません。ブランド資産 (Editor/Icons/ 配下のファイル) に関するすべての権利は留保されています。

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。