Loomle MCP for Unreal について
Loomleは、構造化SALテキストを使ってUnreal Engineのエディターオブジェクトを調査・編集する、AIエージェント向けMCPワークフローを提供します。複雑なアセットを含むUnrealプロジェクトを対象に、グラフやウィジェットなどをクエリ・変更可能なテキストへ変換し、UE本来の意味を保ちます。
主な機能
- 01構造化SALクエリと順序付きパッチ
- 02Blueprint、グラフ、ウィジェット、アセットの調査
- 03利用可能なスキーマとインターフェース機能の発見
- 04変更適用前のドライラン
- 05プロジェクトのバインドとエディター状態確認
- 06Unreal標準の診断とPythonフォールバック
活用シーン
- 01編集前にBlueprintグラフを調査
- 02検証プレビューを使ったUnrealアセットの変更
- 03UEオブジェクトで使える操作の確認
- 04構造化インターフェースにない機能でPythonを実行
MCP 対応
同梱のLoomle Clientはstdio経由で8つのMCPツールを提供し、Unreal Editor内のLoomleBridgeに接続します。SALのクエリとパッチ、スキーマ確認、エディター操作、プロジェクトのバインド、エージェントスキルの読み込みに対応します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
Loomle
Loomle は、SAL(Structured Agent Language)を通じて複雑なエディターオブジェクトを読み取り、変更するためのエージェントネイティブな Unreal Engine 統合です。
SAL は、Blueprint グラフ、Widget ツリー、Class リフレクション、アセットなど、テキストではない UE の状態を、人とエージェントの双方が読み取り、コピーし、議論し、パッチを適用できる、コンパクトで順序付けられたテキストに変換します。UE に忠実であり、ネイティブパス、型、フィールド名、値、パレットアクション、コンパイラー診断、エディターのセマンティクスを、別の JSON モデルに置き換えることなく維持します。
Loomle が選ばれる理由
テキストコードでは、すでにエージェントが正確な検索、参照、差分、編集を行えます。しかし、Unreal のアセットではそうはいきません。Loomle は、エディターと UE API を信頼できる唯一の情報源として維持しながら、欠けていたテキストのワークフローを提供します。
- コンパクトな SAL Object Text は、大規模な汎用 JSON ペイロードよりも少ないトークン数で済みます。
- クエリはグラフ全体をダウンロードするのではなく、概要とローカルビューから始めます。
- ターゲット相対の安定した識別パスにより、返されたノード、ピン、グラフ、Widget、Blueprint オブジェクトを、種類の名前空間を指定せずに安全に追跡できます。
- パレットと動的なスキーマ検出により、コンストラクターやフィールドを推測するのではなく、UE が実際に公開している機能をエージェントが利用できます。
- ドライランでは、変更を適用する前に、実際の解析、解決、検証、計画の経路を使用します。
- ネイティブのコンパイラー診断とオブジェクトの健全性診断は、それらが説明するオブジェクトの近くに表示されます。
現在の 0.7 インターフェイス
スタンドアロンのクライアントは、8 つの MCP ツールを公開します。
status:クライアントのバージョン、アップデートの有無、バインドされたセッションと Bridge の健全性を確認します。project:プロジェクトの利用可否を確認し、この MCP セッションを 1 つの Unreal プロジェクトにバインドします。sal_query:自己完結型の SAL Query Text を 1 つ実行します。sal_patch:順序付けられた SAL Patch Text を 1 つ実行します。sal_schema:常駐する SAL ガイドとアクティブなインターフェイスカードを検出します。agent_skill:エージェント固有の別途インストールを必要とせず、MCP が管理する Loomle ワークフローの Skills を検出して読み込みます。editor:引数を空にして現在の Unreal の操作状況を確認するか、正規の SAL Target Text から特定の Blueprint または Graph を開き、フォーカスし、閉じます。python:構造化された Loomle インターフェイスでは対応していない機能の代替手段として、制限なしの Unreal Editor Python を実行します。また、初回の結果に継続処理が指定されている場合に限り、その実行結果をポーリングします。
現在公開されている SAL モジュールは、Asset、Blueprint、Class、Graph、StateTree、Widget です。これらは、Asset Registry による検出、Blueprint の宣言とコンポーネント、Class のリフレクションとデフォルト値、グラフ単位のフローと変更、StateTree の階層とバインディング、Widget ツリー、事実に基づく参照クエリ、コンパイル、保存、エディターコンテキストを扱います。
例:
door = target {
domain: blueprint,
asset: "/Game/Blueprints/BP_Door.BP_Door"
}
query door
summary
アクティブなモジュールのインデックスには sal_schema({}) を、特定のインターフェイスカードには sal_schema({ module: "graph" }) を使用してください。対応する正確な読み取りと Palette Entry では、with schema による動的な検出が可能です。各インターフェイスカードには、これを使用できる対象が明記されています。
インストール
最新の安定版 Loomle リリースは、Unreal Engine 5.7 および 5.8 向けに GitHub Releases から入手できます。インストール済みのエンジンバージョンに合ったパッケージを選択してください。
| パッケージ | 内容 |
|---|---|
loomle-bridge-ue5.7.zip | Mac Apple Silicon および Windows x64 向けの UE 5.7 プラグイン一式 |
loomle-bridge-ue5.8.zip | Mac Apple Silicon および Windows x64 向けの UE 5.8 プラグイン一式 |
これらの安定版ファイル名は、常に最新の正式版 GitHub Release を参照します。 そのリリースには、バージョン付きの変更不可な両アーカイブのコピーも保持されています。
Fab listing では、マーケットプレイスで承認済みの最新 Loomle ビルドを提供しています。Fab の更新が審査中の場合、GitHub Releases のほうが新しいことがあります。
アーカイブ一式には、両方のネイティブターゲットと、それぞれに対応するクライアントが含まれています。
LoomleBridge/
Source/
Resources/
Loomle/
<platform-arch>/
loomle(.exe)
Resources/Loomle 内の実行ファイルは、単体で動作する SAL クライアントです。別途 Python、uv、Node.js、グローバルな Loomle のインストール、またはプロジェクト内のクライアントは必要ありません。
0.6 からアップグレードする前に、Unreal Editor を閉じ、古い
<Project>/Plugins/LoomleBridge ディレクトリを削除するか、別の場所に移動してください。同名のプロジェクトプラグインは新しいエンジンプラグインより優先されるため、0.6 が引き続き読み込まれてしまいます。
アーカイブ一式を展開し、LoomleBridge ディレクトリを次の場所にコピーします。
<UE_5.7-or-5.8>/Engine/Plugins/Marketplace/LoomleBridge
LoomleBridge を有効にして Unreal Editor を再起動し、loomle という名前の MCP サーバーを設定して、バンドルされたクライアントを引数 mcp で起動します。
macOS: LoomleBridge/Resources/Loomle/darwin-arm64/loomle
Windows: LoomleBridge/Resources/Loomle/win32-x64/loomle.exe
詳細な手順:https://loomle.ai/install.html
クイックスタート
LoomleBridgeを有効にした状態で Unreal プロジェクトを開きます。- Loomle の設定後、Codex、Claude、または該当する MCP ホストを再起動します。
statusを一度呼び出して、クライアント、更新、セッション、Bridge の状態を確認します。- セッションがバインドされていない場合は、
projectを呼び出して、対象のプロジェクトを確認するかバインドします。 - ユーザーの現在のエディター状態から開始するには
editor({})を呼び出します。Blueprint または Graph の表示を正確に制御するには、editor({ operation: "open" | "close", target })を使用します。 - 対象のモジュールや正確な操作がわからない場合は、
sal_schemaを使用します。 sal_queryで確認し、sal_patchで変更をドライランしてから、対象アセットを通じて適用し、確定します。
最初のクエリとパッチの詳細については、https://loomle.ai/quickstart.html を参照してください。
アーキテクチャ
Agent / MCP host
-> bundled Loomle Client (stdio MCP + SAL)
-> local runtime record
-> LoomleBridge inside Unreal Editor
-> UE 5.7 or 5.8 editor APIs and object model
クライアントは ~/.loomle/state/runtimes を通じて、稼働中の Bridge インスタンスを検出します。このディレクトリは実行時の検出状態を保持するものであり、グローバルなインストール先ではありません。各 MCP セッションはプロジェクトとのバインドを 1 つ保持し、そのプロジェクトの現在のエディターを短いライブヘルスプローブで検証します。バインドされたプロジェクトがオフラインの場合、Loomle はその状態を報告し、別のオンラインプロジェクトに切り替えることはありません。候補を確認し、必要に応じて明示的にバインドまたは切り替えるには、project({}) を使用します。
開発
リポジトリには、現在 4 つの製品境界があります。
sal/:言語パーサー、正規化モデル、スキーマ、TypeScript SDK。interfaces/:常駐ガイドと静的な UE インターフェースカード。client/:スタンドアロン MCP クライアント。engine/LoomleBridge/:Unreal Editor プラグイン。
ワークスペースの依存関係をインストールし、TypeScript テストスイートを実行します。
npm install
npm test
現在サポートされているランナー向けに、ネイティブクライアントをビルドしてテストします。
npm run build:executable
npm run test:executable
ネイティブテストと同じコミットの開発用プラグインをコンパイルし、Loomle UE Automation カテゴリ全体を実行します。
npm run test:ue-automation -- \
--ue-root <UE-root> \
--project-template tests/fixtures/ue/LoomleTestHost \
--plugin-dir <compiled-same-commit-test-plugin> \
--output-dir <new-artifact-directory> \
--target darwin-arm64
出力ディレクトリは、あらかじめ存在していてはいけません。プラグインのソースコードだけでは、実行可能な候補になりません。最終リリースアーカイブには意図的にネイティブテストコードが含まれていないため、Automation の候補として不完全です。
監査済みの正確なリリースアーカイブと、そのバンドルされたクライアントを使って、小規模なクライアントから UE へのワークフローを実行します。
npm run test:packaged-e2e -- \
--ue-root <UE-root> \
--project-template tests/fixtures/ue/LoomleTestHost \
--plugin-archive <final-release-candidate.zip> \
--output-dir <new-artifact-directory> \
--target darwin-arm64
リリースの組み立てでは、.tmp/client/<platform-arch>/loomle(.exe) にある正規プログラムのみを使用し、Bridge のソースプラグインと組み合わせます。アーティファクトの仕様については、packaging/client/ および packaging/fab/ を参照してください。
ドキュメント
- ウェブサイト:https://loomle.ai/
- インストール:https://loomle.ai/install.html
- クイックスタート:https://loomle.ai/quickstart.html
- インターフェースの概要:https://loomle.ai/tools/
- リリース:https://github.com/loomle/loomle/releases
リポジトリと製品の設計ドキュメントは docs/ にあります。正規の SAL および
UE インターフェース契約は sal/docs/ と interfaces/ にあります。Loomle 0.6 の
ソースとドキュメントは、0.6 ブランチ、そのリリースタグ、およびリポジトリの
履歴から引き続き参照できます。main には現在の設計とコードのみが含まれます。
ライセンス
Loomle は MIT License の下でオープンソースとして公開されています。詳しくは LICENSE をご覧ください。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。