uMCP について
uMCPは、AIエージェントとUnityアプリケーションをつなぐMCP サーバーです。Streamable HTTPでクライアントと直接通信し、事前に許可された操作だけを実行します。
主な機能
- 01Streamable HTTPで通信
- 02許可済み操作に限定
- 03カスタムコマンドに対応
- 04Unity管理ツールの例を同梱
活用シーン
- 01MCPクライアントからUnityプロジェクトを操作
- 02Unity向けの独自操作を追加
- 03許可済みコマンドで管理タスクを実行
MCP 対応
Unityアプリケーションの操作をMCPツールとして公開し、Streamable HTTPでクライアントに接続します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
uMCP
uMCP は、Unity で AI を活用するために設計された、MCP プロトコルのサーバー実装です。
AI エージェントを Unity アプリケーションに接続するために使用できる、最小限かつ効率的なサーバーです。
特長
- 安全性:uMCP では AI に任意のコードを実行させることはできません。あらゆる操作は、事前に許可された操作を通じてのみ実行できます。
- 拡張性:uMCP は容易に拡張できるように設計されており、
McpServerToolType属性とMcpServerTool属性を使って、独自のカスタムコマンドや操作を追加できます。- 例は
Assets/NatsunekoLaboratory/ModelContextProtocol/ManagementToolsディレクトリで確認できます。
- 例は
仕組み(他の MCP 実装との違い)
uMCP は、他の依存関係を必要とせず、Streamable HTTP プロトコルを使用して MCP クライアントと直接通信できます。 そのため、Python、Node.js、その他の言語ランタイムなどの追加依存関係を必要とする他の MCP サーバーと比較して、より効率的で軽量な実装を実現できます。
Your MCP Client <-- Streamable HTTP --> uMCP Server
インストール
前提条件
- Unity Editor:バージョン 2022.3 LTS 以降。
- MCP クライアントが Streamable HTTP に対応している必要があります(例:VSCode Agent Mode、Cursor、CLINE など)。
1. CoreFramework をインストールする
Unity Package Manager を使用する場合
openupm add com.natsuneko.modelcontextprotocol.core-framework- Unity プロジェクトを開きます。
Git URL を使用する場合
- Unity プロジェクトを開きます。
Window > Package Managerを開きます。+をクリックして、Add package from git URL...を選択します。- URL を入力します:
https://github.com/mika-f/uMCP.git?path=/Assets/NatsunekoLaboratory/ModelContextProtocol/CoreFramework Addをクリックします。- Unity プロジェクトを実行すると、MCP サーバーが自動的に起動します。
2. Management Tools(およびその他のパッケージ)をインストールする
Unity Package Manager を使用する場合
openupm add com.natsuneko.modelcontextprotocol.management-toolsopenupm add com.natsuneko.modelcontextprotocol.vrchat-world-tools
Git URL を使用する場合
- Unity プロジェクトを開きます。
Window > Package Managerを開きます。+をクリックして、Add package from git URL...を選択します。- URL を入力します:
https://github.com/mika-f/uMCP.git?path=/Assets/NatsunekoLaboratory/ModelContextProtocol/MagagementTools Addをクリックします。
3. MCP クライアントを設定する
Streamable HTTP に対応した MCP クライアント(VSCode Agent Mode、Cursor、CLINE など)を MCP サーバーに接続します。
http://localhost:7225/sse
# or
http://localhost:7225/mcp
VSCode Agent Mode の例:
{
"servers": {
"uMCP": {
"url": "http://localhost:7225/mcp"
}
}
}
使用方法
- Unity プロジェクトを開きます。
- MCP クライアント(VSCode Agent Mode、Cursor、CLINE など)を起動します。
- 操作を開始します。これで MCP クライアントが Unity アプリケーションと通信できるようになります。
拡張
独自のカスタムコマンドや操作を作成して、uMCP を拡張できます。
using System;
using System.ComponentModel;
using NatsunekoLaboratory.ModelContextProtocol.CoreFramework.Attributes;
using NatsunekoLaboratory.ModelContextProtocol.CoreFramework.Models;
using NatsunekoLaboratory.ModelContextProtocol.CoreFramework.Protocol.Abstractions;
using NatsunekoLaboratory.ModelContextProtocol.CoreFramework.Protocol.Interfaces;
namespace NatsunekoLaboratory.Examples.MyCustomCommands
{
[McpServerToolType]
public class MyCustomCommand
{
[McpServerTool]
[Description("This is a custom command that does something.")]
public static IToolResult Execute([Description("An example parameter for the custom command.")] string exampleParameter)
{
// Your custom command logic here
return new TextResult($"Executed custom command with parameter: {exampleParameter}");
}
}
}
ライセンス
@6jz による MIT
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。