はじめに
【シリーズ記事 / 正式版編です】
この記事は2部構成の 正式版編 です。プレビュー版(正式リリース前の GitHub ソース + Preview 版)での調査は前編にまとめています。👉 前編:UE5.8で一気に増えたAIエージェント向けプラグインを一通り調べてみる(プレビュー版)
本記事は「前編からの差分」に絞った構成 です。ToolsetRegistry や MCP サーバの基礎、既存 Toolset の個別解説、MCPClient / AIAssistant の詳細は前編で扱っているので、ここでは要約とリンクにとどめ、正式版で新しくなった部分を中心に掘り下げます。
UE5.8 が 2026-06-17 に正式リリース されました。前編はリリース前のソースをもとにした調査だったので、正式版で実際どう変わったかを追い直したのが本記事です。
ざっくり、変化の大きかったところは次の3点です。
-
Toolset が約 14 種から 26 種(+ メタプラグイン
AllToolsets)へ倍増。とくにグラフ・アセット編集系(PCG / Niagara / UMG / MVVM など)が一気に増えました - 前編で「できないこと」の筆頭に挙げていた PIE の開始・停止が追加(EditorToolset)
- SemanticSearch のバックエンドが OpenAI 互換 API に一新 され、公開ビルドでも実際に使えるようになりました
紹介するプラグインは正式版でも すべて Experimental ステータス なので、API は今後も変わる可能性が高い前提で読んでいただければと思います。
(UE5.8 の全プラグインの増減そのものは、前編でも紹介したおかずさん(@pafuhana1213)の棚卸し記事が一望できておすすめです。)
調査環境:
UE5.8 正式版(5.8 リリースビルド)/ 調査日: 2026-06-25
本記事で何度か触れる自作プラグインについて、先に軽く紹介しておきます。
冒頭の「UE 向けの AI エージェント統合プラットフォームプラグイン」は UnrealAIIntegrationPlatform(以下 UAIP) という名前で公開しています。
Claude Code・Codex・Cursor などの AI エージェントが MCP / HTTP / WebSocket / CLI 経由で UE の Editor と Runtime を「操作・観測・実行・検証」 できるプラグインで、PIE 制御・Artifact(スクリーンショットや JSON ダンプ)の出力・複数コマンドのシナリオ実行・Capability ベースの権限制御などを備えています。
本記事では以降、このプラグインを「UAIP」と表記します。
- 製品版(Fab):UnrealAIIntegrationPlatform
- ドキュメント:overview(日本語)
プレビュー版からどれくらい増えたか
前編(プレビュー版、2026-05-09 時点の GitHub ソース)と本記事(正式版、2026-06-17)で、AI Toolset まわりは次のように変化しました。
| 指標 | プレビュー版 | 正式版 |
|---|---|---|
| Toolset の数 | 約 14 種 |
26 種(+ メタプラグイン AllToolsets) |
| 正式版で新規追加された Toolset | なし | +12 種 |
| 新規 Toolset 分の AICallable(ヘッダー実測) | なし | 約 184 個 |
| PIE の開始・停止 | ❌ 未対応 | ✅ EditorToolset |
| エディタ設定の読み書き | ❌ 未対応 | ✅ ConfigSettingsToolset |
| プラグイン作成 | ❌ 未対応 | ✅ PluginToolset |
| SemanticSearch の実用性 | 公開ビルドでは事実上使用不可 | ✅ OpenAI 互換 API で使用可 |
| ModelContextProtocol | 実験的な単一構成 | 6 モジュール構成に整理 |
正式版で新規追加された 12 種は次のとおりです。
EditorToolset / PCGToolset / NiagaraToolsets / UMGToolSet / PluginToolset / MVVMToolset / ConfigSettingsToolset / DataRegistryToolset / ChaosClothAssetToolset / SemanticSearchToolset / GameFeaturesToolset / MetaHumanGenerator
特に NiagaraToolsets(56)・PCGToolset(31)・EditorToolset(25)の3つだけで 110 個を超える AICallable が追加されています。プレビュー版が「エディタ UI を触る・テストを回す・GAS を覗く」あたりが中心だったのに対し、正式版は グラフ・アセットを AI から本格的に編集する 方向へ大きく踏み込んだ、というのが数字に表れています。
補足: AICallable 数はヘッダーから数えられた実測値です。GameFeaturesToolset(数未確認)と Python 実装の MetaHumanGenerator(C++ ヘッダーにツールを持たない)はこのカウントに含めていません。「約 184 個」はあくまで新規追加分のうち数えられたぶんの合計です。
UE5.8 正式版でできること / できないこと
できること ✅
| カテゴリ | 具体的にできること |
|---|---|
| エディタ操作の基盤 | アクター選択・カメラ操作・コンテンツブラウザ操作・PIE 制御・Viewport キャプチャ(EditorToolset) |
| PIE の開始・停止 | PIE / Simulate-In-Editor の開始・停止・実行状態確認(EditorToolset) |
| エディタ UI 操作 | ウィジェットのクリック・入力・ドラッグ・スクリーンショット取得(SlateInspectorToolset) |
| 自動テスト実行 | Automation Test の検索・実行・結果取得・中断(AutomationTestToolset) |
| GAS 操作・観測 | アトリビュート値取得、アクティブエフェクト一覧、アビリティ確認(GASToolsets) |
| Gameplay タグ管理 | タグ一覧・追加・削除・リネーム・参照元検索(GameplayTagsToolset) |
| PCG グラフ編集 | PCG グラフの作成・ノード編集・接続・実行(PCGToolset、31 AICallable) |
| UMG / MVVM 編集 | ウィジェット編集(UMGToolSet)、ViewModel バインディング編集(MVVMToolset) |
| Niagara 編集 | Niagara System / Emitter / Component の編集(NiagaraToolsets、56 AICallable) |
| エディタ設定の読み書き | Project Settings / Editor Preferences の取得・更新(ConfigSettingsToolset) |
| プラグイン管理・作成 | プラグインの一覧・依存照会・新規作成・有効化(PluginToolset) |
| アセット意味検索 | 自然言語クエリでアセットを検索(SemanticSearch、正式版で OpenAI 互換 API に対応) |
| 独自ツール公開 |
UFUNCTION(meta=(AICallable)) を付けるだけで MCP 経由に公開(ToolsetRegistry) |
| 外部 MCP 接続 | 外部 MCP サーバのツールを UE 内に取り込む(MCPClientToolset、OAuth 2.0 対応) |
| エディタ内 AI チャット | Epic Developer Assistant をエディタパネルに表示し UE 操作と連携(AIAssistant) |
できないこと ❌
| カテゴリ | 制約の内容 |
|---|---|
| Runtime 中のアクター観測 | PIE の開始・停止はできるが、PIE 実行中のアクターのプロパティ取得・状態ダンプは未対応 |
| Artifact 管理 | スクリーンショットや JSON ダンプを体系的に保存・バンドルする仕組みがない |
| 複数コマンドの連鎖実行 | ステップ間の条件分岐・リトライ・タイムアウト管理などのオーケストレーションは未対応 |
| 認証・権限制御 | Bearer Token 認証や実行できる機能別の権限制御がない(Origin ヘッダーのみ) |
| WebSocket / stdio | MCP サーバは HTTP のみ。WebSocket・stdio transport は未実装 |
| UE5.7 以前の環境 | 全プラグインが UE5.8 以降専用(Experimental) |
補足: プレビュー記事では「Runtime / PIE 制御」を一括で「できないこと」に入れていましたが、正式版で PIE の開始・停止だけは EditorToolset で解消 されました。
エディタ環境では現時点でUAIPとの差がかなり縮まった印象です。
とはいえエンジン側の機能ということで追加・更新はエンジンバージョンの更新時になると思うので、追加・更新のフットワークの軽さでも勝負していく必要がありそうですね...。
さらにUAIPで対応出ていない範囲をカバーするtoolsetも登場していたため、現在それらの対応を含めた次期バージョンのリリースに向けて開発中です。
正式版で増えた Toolset の全体像
プレビュー調査時点で確認していたのは約 14 種でしたが、正式版では 26 種(+ メタプラグイン AllToolsets) に増えています。
AICallable 数はソースコードのヘッダーから確認した実測値です(ツールチップやプロパティ定義の都合で前後する場合があります)。
| Toolset | AICallable 数 | 概要 |
|---|---|---|
| SlateInspectorToolset | 14 | UI 操作・スクリーンショット |
| AutomationTestToolset | 6 | 自動テスト実行 |
| GASToolsets(3分割) | 計 14 | GAS 観測・Cue 実行 |
| GameplayTagsToolset | 5 | Gameplay タグ管理 |
| DataflowAgent | 17 | Dataflow グラフ編集 |
| WorldConditionsToolset | 2 | WorldConditions 編集 |
| AnimationAssistantToolset | Python 実装 | Animation 操作 |
| AIModuleToolset | Python 実装 | BehaviorTree 等 |
| SequencerAnimMixerToolset | Python 実装 | Sequencer Anim Mixer 設定 |
| ConversationToolset | 既存 | CommonConversation グラフ操作 |
| PhysicsToolsets | 既存 | Physics Asset 編集 |
| StateTreeToolset | 既存 | StateTree 編集 |
| LiveCodingToolset | 既存 | Live Coding ビルド・再ロード |
| MCPClientToolset | クライアント | 外部 MCP サーバ接続 |
| EditorToolset | 25 | エディタ操作・PIE 制御・Viewport キャプチャ |
| PCGToolset | 31 | PCG グラフ作成・ノード編集・実行 |
| NiagaraToolsets | 56 | Niagara System / Emitter / Component の編集 |
| UMGToolSet | 23 | UMG ウィジェット編集 |
| PluginToolset | 17 | プラグイン管理・作成・依存編集 |
| MVVMToolset | 9 | MVVM バインディング編集 |
| ConfigSettingsToolset | 8 | Project Settings / Editor Preferences の読み書き |
| DataRegistryToolset | 7 | Data Registry クエリ・検査 |
| ChaosClothAssetToolset | 6 | Chaos Cloth アセット設定 |
| SemanticSearchToolset | 2 | SemanticSearch の Toolset 化 |
| GameFeaturesToolset | 未確認 | GameFeature 管理 |
| MetaHumanGenerator | Python 実装 | MetaHuman の AI 生成・編集 |
AllToolsets:まとめて有効化するメタプラグイン
正式版では AllToolsets という メタプラグイン が追加され、21 個の Toolset が依存として一括登録されています。
これ1つを有効化すれば主要 Toolset がまとめて入る形です。
ただし ChaosClothAssetToolset は AllToolsets の依存に含まれていません。利用する際は個別に有効化が必要です。
推測:
AllToolsetsから外れているのは、Chaos Cloth が専門性の高い限定的な用途のためで、独立したオプション扱いにしているのだと思われます。
前提:3層アーキテクチャと ToolsetRegistry(前編の要約)
正式版の差分に入る前に、土台だけ短くおさらいします(コード例を含む詳細は前編にまとめています)。
UE5.8 の AI 統合は ModelContextProtocol(MCP サーバ)→ ToolsetRegistry → 各 Toolset の3層構造です。各レイヤーが分離されていて、Toolset を1つ追加するだけで自動的に MCP 経由でも呼べる ようになります。この設計のおかげで、正式版で Toolset が倍増しても上位層は何も変えずに全ツールを扱えています。
ToolsetRegistry の肝は、UFUNCTION(meta=(AICallable)) を付けるだけ でツールが公開され、UHT リフレクションから引数・戻り値の JSON スキーマが自動生成される点です(戻り値は常に JSON 文字列)。このスキーマ生成や ExecuteTool の流れは前編を参照してください。
正式版での差分として、ModelContextProtocol が 6 モジュール構成(Runtime / Engine / Editor + 各テストモジュール)に整理 されました。仕様自体(HTTP のみ、デフォルトポート 8000、認証は Origin チェックのみ、tools/call を SSE でストリーミング)は前編から変わっていません。
また、ツールが増えると AI のコンテキスト枠を圧迫するため、前編で触れた Deferred Loading(最初は list_toolsets / describe_toolset / load_toolset の3メタツールだけ公開し、必要な Toolset を AI が自分でロードする遅延モード)が、26 種に増えた正式版では実質ほぼ必須になっています。
主要な新規 Toolset の詳細
EditorToolset(PIE 制御がついに来た)
正式版で最も重要な追加 Toolset です。エディタ操作の基盤となるツール群で、25 個の AICallable(EditorAppToolset: 21 個 + LogsToolset: 4 個)を持ちます。
プレビュー記事で「できないこと」の筆頭に挙げていた PIE の開始・停止 が、ここに入りました。
| カテゴリ | ツール | 概要 |
|---|---|---|
| PIE 制御 | StartPIE |
PIE または Simulate-In-Editor を開始 |
StopPIE |
実行中の PIE を停止 | |
IsPIERunning |
PIE が実行中かどうかを確認 | |
| キャプチャ | CaptureViewport |
Viewport のスクリーンショット(アノテーション付き) |
CaptureAssetImage |
アセットのサムネイル取得(StaticMesh / Material / Texture 等) | |
CaptureEditorImage |
エディタウィンドウ全体のスクリーンショット | |
| アクター選択 |
GetSelectedActors / SelectActors
|
選択中アクターの取得・選択 |
GetVisibleActors |
Viewport に映っているアクターを一覧取得 | |
FocusOnActors |
指定アクターにカメラをフォーカス | |
| カメラ |
GetCameraTransform / SetCameraTransform
|
Viewport カメラの Transform 取得・設定 |
WorldPosToScreenCoords / ScreenCoordsToWorld
|
ワールド座標とスクリーン座標の相互変換 | |
| アセット |
GetSelectedAssets / SelectAssets
|
コンテンツブラウザの選択取得・選択 |
GetContentBrowserPath / SetContentBrowserPath
|
コンテンツブラウザのパス取得・変更 | |
OpenEditorForAsset / GetOpenAssets
|
アセットを開く・開いているアセット一覧 | |
| その他 | SearchCVars |
コンソール変数を名前で検索 |
| ログ | (LogsToolset の 4 ツール) | OutputLog / MessageLog の取得・検索 |
CaptureViewport のアノテーション機能
CaptureViewport は アノテーションオーバーレイ 付きのキャプチャができます。
グリッド(ワールド空間の座標グリッドを投影)とアクターラベル(カメラに近い順に最大 12 個)を画像上に重ねて返す仕組みで、AI が空間的な配置を把握するヒントをワンショットで渡せる設計になっています。
StartPIE のウォームアップ
StartPIE は WarmupSeconds(デフォルト 2 秒)を持ち、PIE 開始後に指定時間だけ待機してから完了を返します。
プロジェクト固有の初期化(サービス起動、認証など)が落ち着くのを待ってから AI が状態を検査できるよう配慮された作りです。
なお、機能の都合上、他の Toolset(SlateInspector や各アセット系)と重複する操作も多めです。「迷ったらまず EditorToolset を見る」くらいの位置づけになっています。
PCGToolset
Procedural Content Generation(PCG)グラフを AI から操作するための Toolset で、31 個の AICallable を持ちます。新規 Toolset の中では EditorToolset / NiagaraToolsets に次ぐボリュームです。
| カテゴリ | ツール例 | 概要 |
|---|---|---|
| グラフ |
CreateGraph / GetGraphStructure
|
グラフの新規作成・構造取得 |
| グラフパラメータ |
SetGraphParams / RemoveGraphParams / GetGraphSchema
|
上書き可能パラメータの編集とスキーマ取得 |
| グラフインスタンス |
SpawnGraphInstance / ExecuteGraphInstance
|
PCG Volume のスポーンと実行 |
GetGraphInstanceParams / SetGraphInstanceParams
|
インスタンスパラメータの読み書き | |
| ノード |
ListNativeNodes / GetNativeNodeSchema
|
利用可能なノード型とスキーマの取得 |
AddNode / AddSubgraphNode / UpdateNode
|
ノードの追加・更新 | |
ConnectNodePins / DisconnectNodePins
|
ピンの接続・切断 | |
RemoveNode / RepositionNode
|
ノードの削除・移動 | |
| データ検査 | GetNodeDataView |
実行後の特定ノードの出力データを取得 |
| コメントボックス |
AddCommentBox / UpdateCommentBox / RemoveCommentBox
|
グラフ内コメントの管理 |
| その他 | DrawSpline |
ユーザーにスプライン描画を要求(インタラクティブ) |
ノードの追加・接続から実行・出力データの検査までひと通り揃っていて、グラフ系の Toolset としては完成度が高い印象です。
PluginToolset
プラグインの情報照会・作成・有効化管理を行う Toolset で、17 個の AICallable があります。
| カテゴリ | ツール | 概要 |
|---|---|---|
| 一覧 |
ListEnabledPlugins / ListDiscoveredPlugins
|
有効/全プラグイン一覧 |
| 情報取得 |
GetPluginInfo / GetPluginDependencies / GetPluginDependents
|
メタデータ・依存関係の取得 |
GetPluginForAsset |
アセットパスからプラグイン名を逆引き | |
| 作成 |
GetPluginTemplateDescriptions / CreatePlugin
|
テンプレート一覧と新規プラグイン作成 |
| 管理 | SetPluginEnabled |
有効・無効の切り替え(再起動後に反映) |
| ディスクリプタ編集 |
GetPluginDescriptor / UpdatePluginDescriptor
|
.uplugin のメタ情報を読み書き |
AddPluginDependency / RemovePluginDependency
|
依存関係の追加・削除 |
AI に「新しいプラグインの雛形を作らせて、依存を足してもらう」といった作業まで任せられるのは、地味ですが実用度が高いと感じました。
MVVMToolset
UMG の MVVM(Model-View-ViewModel)バインディングを AI から編集するための Toolset で、9 個の AICallable があります。
| ツール | 概要 |
|---|---|
CreateViewModel |
新規 ViewModel アセットを作成 |
AddViewModelProperty |
ViewModel にプロパティを追加 |
ListViewModels / ListWidgetViewModels
|
ViewModel 一覧、Widget に紐づく ViewModel 一覧 |
AddViewModelToWidget |
WidgetBlueprint に ViewModel を追加 |
ListWidgetViewBindings / RemoveWidgetViewBinding
|
バインディングの一覧・削除 |
CreateViewBinding |
ソースからデスティネーションへのバインディングを作成(型不一致時は既存の ConversionFunction を自動選択) |
ListConversionFunctions |
利用可能な ConversionFunction の一覧取得 |
CreateViewBinding が型不一致時に ConversionFunction を自動で選んでくれるあたり、手作業だと面倒なところを巻き取ってくれていて好印象でした。
ConfigSettingsToolset
エディタの「Project Settings」「Editor Preferences」を AI から読み書きするための Toolset で、8 個の AICallable があります。
Container("Project" / "Editor")→ Category → Section という UE の設定階層に沿ってアクセスします。
| ツール | 概要 |
|---|---|
ListContainers / ListCategories / ListSections
|
設定階層を探索 |
GetSectionSchema |
設定セクションの JSON Schema を取得 |
GetSectionPropertyValues |
プロパティ値を JSON で取得 |
SetSectionProperties |
プロパティを JSON で一括更新 |
SaveSection |
設定を保存 |
ResetSectionToDefaults |
デフォルトへリセット |
プレビュー版では「エディタ設定の読み書き」は手段がありませんでしたが、正式版でこの Toolset により可能になりました。
DataRegistryToolset
Data Registry の内容を AI から照会するための 読み取り専用 Toolset で、7 個の AICallable があります。
| ツール | 概要 |
|---|---|
ListRegistries |
登録済みレジストリ一覧(StructFilter 対応) |
GetRegistryInfo |
レジストリの詳細情報(アイテム数・利用可能状態など) |
GetSchema |
アイテム構造体の JSON スキーマ |
ListItems |
レジストリ内の全アイテム名 |
ListDataSources / ListRuntimeSources
|
データソース一覧(定義済み・ランタイム展開後) |
GetItems |
キャッシュ済みアイテムデータを取得 |
書き込みはなく、あくまで「中身を AI に把握させる」用途に振った設計です。
C++ は空でも油断できない(Python 実装の Toolset、正式版で拡大)
前編で「C++ ヘッダがほぼ空でも Python 側で実装されている Toolset がある」(AnimationAssistantToolset / AIModuleToolset)という落とし穴を書きました。ToolsetRegistry は C++ だけでなく Python で書いたツールも登録できるためです。
正式版を調べ直したところ、この「C++ スタブ + Python 実装」パターンを Epic 自身がさらに広く採用している ことが分かりました。新たに MetaHumanGenerator と SequencerAnimMixerToolset もこのパターンでした。
| Toolset | C++ | 実体 |
|---|---|---|
| AnimationAssistantToolset | ほぼ空 | Python で実装(sequencer.py ほか) |
| AIModuleToolset | ほぼ空 | Python で実装(behavior_tree.py 等) |
| SequencerAnimMixerToolset | ほぼ空 | Python で実装(Sequencer Anim Mixer のレイヤー / ブレンド設定) |
| MetaHumanGenerator | ほぼ空 | Python で実装(Body / Face / Eye / Skin パラメータ編集) |
| DataflowAgent | 17 UFUNCTION | C++ で完成 |
SequencerAnimMixerToolset と MetaHumanGenerator は、ヘッダーだけ見ると AICallable がほぼなく用途不明に見えますが、いずれも Content/Python/ 配下に実処理が置かれています。ヘッダの行数だけで「未実装」と判断しない のが、正式版でも変わらず Toolset を読むときのコツです。
SemanticSearch:正式版でバックエンドが一新された
UE5.8 の SemanticSearch(自然言語クエリでアセットを検索する機能)は、前編から正式版にかけて最も大きく変わった部分 です。
「キャラクターが走るモーション」「赤みがかった岩のマテリアル」のような自然言語でアセットを意味検索できる機能で、内部は 意味検索(埋め込み + FAISS)と全文検索(BM25)を RRF で統合するハイブリッド検索 です。この検索・ランキングの仕組み自体は正式版でも変わっていないので、詳細(FAISS / BM25 / RRF の役割)は前編に譲ります。
変わったのは 埋め込み生成のバックエンド です。
プレビュー版:Epic 社内 ML バックエンド(実質使えなかった)
プレビュー版では、埋め込み生成を Epic 社内の ML バックエンドが担っていました。
接続先 URL が公開ビルドには同梱されない非公開 Config からしか読み込まれない作りで、ライセンシーが使う通常のエンジンでは URL が未設定のまま起動し、実質的に動かない 状態でした。前編ではこの点を「公開ビルドでは事実上使えない」と書いていました。
正式版:OpenAI 互換 API に全面置き換え
正式版ではこの実装が全面的に置き換えられ、FOpenAIEmbeddingProvider、つまり OpenAI 互換 API を呼ぶ方式になりました。
Editor Preferences から API キーと接続先を設定するだけで使えます。
設定手順は次のとおりです。
-
Edit → Editor Preferences → Plugins → Semantic Searchを開く -
Captioning Api Key/Embedding Api Keyに API キーを入力(どちらもマスク表示のパスワードフィールド) - 必要に応じて BaseUrl / Model を変更する
| 設定項目 | デフォルト値 | 備考 |
|---|---|---|
| Provider | OpenAI 互換 API | 現状 OpenAI 方式のみ |
| CaptioningBaseUrl | https://api.openai.com/v1 |
/chat/completions が追加される |
| CaptioningModel | gpt-5.4-mini |
Vision 対応モデルが必要 |
| EmbeddingBaseUrl | https://api.openai.com/v1 |
/embeddings が追加される |
| EmbeddingModel | text-embedding-3-small |
|
| EmbeddingDimension | 512 |
1〜3072 で変更可 |
設定値は Saved/Config/Windows/EditorPerProjectUserSettings.ini の [/Script/SemanticSearch.SemanticSearchSettings] セクションに保存されます(config = EditorPerProjectUserSettings / GetContainerName() が "Editor" を返すことをソースで確認)。
注意: API キーがこの
.iniに平文で書き込まれるため、リポジトリに含めないよう.gitignoreへの追加を推奨します。
キャプション生成は /chat/completions を使い、{tags, caption} の構造化 JSON 出力を要求します。アセットのサムネイル画像を読み取るため、CaptioningModel には Vision 対応モデル が必要な点に注意してください。
ポイントは、これが OpenAI 互換サーバ(Ollama・LiteLLM など)でも動く ことです。
キャプション用と埋め込み用で URL・API キーを別々に設定できるので、例えば「キャプションはローカルの Ollama、埋め込みは OpenAI API」といった組み合わせも可能です。
補足: 前編では「クエリやキャプションが Epic の ML バックエンドへ送られる」点を懸念事項として書いていましたが、正式版では 送信先が自分で設定した OpenAI 互換エンドポイント になりました。
つまりプライバシーやデータの取り扱いは「設定したエンドポイント次第」になり、ローカル LLM を指定すれば外部送信ゼロの運用も選べます。プレビュー時点の「社外秘アセットの外部送信が避けられない」という懸念は、運用の自由度という形で解消されています。
Toolset 化された(SemanticSearchToolset)
正式版では、この SemanticSearch を ToolsetRegistry 経由で AI から直接呼べる SemanticSearchToolset(2 個の AICallable)も追加されました。
| ツール | 概要 |
|---|---|
Search |
自然言語クエリでアセットを検索(クラスフィルタ・パス Regex フィルタ対応) |
FindSimilar |
指定アセットと意味的に類似したアセットを検索(ベクトル検索のみ) |
これにより、人間がエディタ上で検索するだけでなく、AI エージェントが「走るモーションを探して」と頼まれてアセットを引き当てる といった使い方ができるようになりました。
前編から変わっていない部分(MCPClient / AIAssistant / セキュリティ)
ここは正式版でも前編から実装が変わっていないので、要点だけ触れて詳細は前編に譲ります。
- MCPClientToolset(UE を MCP クライアントにする):外部 MCP サーバのツール群をローカルの ToolsetRegistry に取り込みます。認証は None / Bearer Token / OAuth 2.0(Authorization Code + PKCE)の3段階で、トークンは平文保存のままです。
-
AIAssistant(エディタ内の Epic Developer Assistant):CEF 組み込みブラウザと
window.edaの JavaScript ブリッジで UE と双方向通信します。実装は前編と同じですが、正式版では Toolset が増えたぶん、EDA から扱えるツールも自動で増えています。 - セキュリティ前提:公式 MCP サーバの認証は今も Origin ヘッダーによる DNS rebinding 対策のみ で、Bearer Token 認証や機能別の権限制御はありません。ただし正式版では PIE 制御・プラグイン作成・設定変更まで AI から触れるようになったぶん、「信頼できるローカル環境前提」という制約の重みは増しています。外部に露出する運用は引き続き要注意です。
OAuth フロー、window.eda ブリッジの仕組み、Origin チェックの詳細はいずれも前編にまとめています。
おわりに
正式版になってから「自分が作っている領域、公式に飲み込まれていないか?」を確認するのが、ここ最近の恒例行事になっています。今回もドキドキしながら差分を追いました。
結論としては、正式版で公式の射程は確かに広がりました。PIE の開始・停止、エディタ設定の読み書き、プラグイン作成、PCG / Niagara / UMG / MVVM のグラフ・アセット編集まで、「Editor を触る」範囲は一気に充実しています。SemanticSearch が OpenAI 互換 API でようやく実際に動くようになったのも大きい変化でした。
一方で、PIE 実行中のアクター観測・Artifact の体系的な管理・複数コマンドのシナリオ実行(オーケストレーション) といった「起動後の Runtime に踏み込んで検証する」部分は、正式版でも公式 Toolset には入っていません。ここは UAIP が重点的にカバーしている領域なので、棲み分けは当面ありそうです。とはいえエンジン側の機能は強力なので、UAIP 側も追従と差別化、それからフットワークの軽さで勝負していく必要があるな、と気を引き締めています。
それでも、独自ツールを AICallable 1行で公開でき、MCP サーバ → ToolsetRegistry → 各 Toolset の綺麗な3層でそれが成り立っているのを見ると、各社・各個人が作り込んでいた領域がエンジン標準に降りてきたのを改めて実感します。
公式プラグインまわりはまだ日本語情報が少ないので、この前後編が UE5.8 の AI まわりを触る方の入り口になればうれしいです!