prefab-sentinel

prefab-sentinel

MCP server for safely inspecting and editing Unity/VRChat prefabs, scenes, and assets. It diagnoses override collisions, broken references, and runtime exceptions, with read-only YAML analysis and write operations via an Editor Bridge.

Category
Visit Server

README

Prefab Sentinel

CI License Python

Unity / VRChat プロジェクトの Prefab / Scene / Asset を安全に検査・編集する MCP サーバー。

Variant の override 衝突、Broken PPtr / missing fileID、Udon / ClientSim ランタイム例外を構造化された応答で診断し、手作業 YAML 編集を経由せずに修復する。AI エージェント前提の設計。

read-only 経路(validate_refs / inspect_* / find_* 等)は Unity を起動せず YAML 直読みで完結する。書き込み経路(patch_apply / set_property / editor_* 等)は常駐 Editor Bridge との file-IPC で動き、confirm=True + 非空 change_reason の監査ペアを欠く呼び出しは CHANGE_REASON_REQUIRED で拒否される。

本 README は各専門ドキュメントへの入口(ドキュメントマップ 参照)。仕様の正本は専門ドキュメント群、運用ルールの正本は CLAUDE.md

やること / やらないこと

やること

  • Unity SerializedObject レベルの安全な編集基盤を提供し、Prefab Base / Variant / Scene インスタンスの実効値を追跡可能にする
  • 参照解決(GUID + fileID)と整合性検証を API 化する
  • 実行時検証(UdonSharp compile / ClientSim smoke / ログ分類)をパイプライン化する
  • 人間の判断が要る変更と、機械的に実行できる変更を明確に分離する
  • ModularAvatar / liltoon / VRCFury 等の VRChat エコシステムツールのドメイン知識を同梱し、AI エージェントの判断材料として供給する
  • Skills として運用フローを標準化する(Claude Code / Codex CLI の両ホストに対応)

やらないこと

  • YAML 文字列の直接置換を標準手段にしない
  • Unity 内部参照を推測で補完しない
  • 変更根拠のない自動最適化をしない
  • ユーザー判断が要る仕様変更を勝手に適用しない

Quickstart

プラグインとして導入する。ホスト(Claude Code / Codex CLI)に応じて 2 つの経路があり、いずれも marketplace から取得する。

Claude Code(Claude Code 内に入力するスラッシュコマンド):

/plugin marketplace add tyunta/prefab-sentinel
/plugin install prefab-sentinel@tyunta-prefab-sentinel

Codex CLI(シェルで marketplace を登録 → Codex CLI 内の /plugins TUI で有効化):

codex plugin marketplace add tyunta/prefab-sentinel

登録後、Codex CLI 内で /plugins を開き、一覧から prefab-sentinel を選んで Install する(codex plugin install というシェルコマンドは存在しない)。

導入後の使い方は guide スキル(/prefab-sentinel:guide)が入口 — MCP ツールの一覧と呼び出し方、パッチスキーマ、Editor Bridge のセットアップ、エコシステムナレッジの案内がまとまっている。MCP ツールを実際に呼ぶのは AI エージェント側なので、エージェントにこの guide を参照させれば使い始められる。

各経路の詳細は セットアップ、リポジトリから MCP サーバーを直接起動する開発者向け手順は CONTRIBUTING.md を参照。

セットアップ

前提条件

  • Python 3.11 以上
  • uv(パッケージマネージャ)— インストール手順は uv 公式ガイド 参照(Windows / macOS / Linux で異なる)
  • Unity 2022.3 + VRChat SDK 3.x(Worlds / Avatars)— Editor Bridge 経由の書き込み・実行検証経路で必要

MCP サーバーは Plugin 内部で uv / uvx 経由でローカル起動されるため、Plugin 導入経路でも Python / uv は必要。ホスト(Claude Code / Codex CLI)と本ツールは Windows / macOS / Linux で動作する。

Claude Code Plugin

Quickstart の 2 コマンドで導入する。インストールすると MCP サーバー・5 つのスキル・knowledge/ ディレクトリが一括展開され、/prefab-sentinel:guide 等のスキルを Claude Code から直接呼び出せる。各スキル内のコマンドは ${CLAUDE_PLUGIN_ROOT} テンプレート変数でローカルから実行される。

Codex CLI Plugin

Quickstart の手順で導入する(シェルで codex plugin marketplace add → Codex CLI 内の /plugins TUI で prefab-sentinel を Install)。MCP サーバーは Plugin 定義(.codex-plugin/plugin.jsonmcpServers が指す .codex-plugin/mcp.json)から登録され、skill bundle も同時に展開される。Codex の MCP サーバーは uvx が GitHub から本体を取得して起動するため、起動時にネットワーク接続が必要(Claude Code 経路はローカル導入物から起動する)。Plugin を更新したら Codex CLI セッションを再起動する。無効化・登録解除は /plugins TUI から行う。

スキル

スキル 呼び出し 説明
guide /prefab-sentinel:guide MCP ツールリファレンス・パッチスキーマ・Bridge セットアップ・エコシステムナレッジ案内
variant-safe-edit /prefab-sentinel:variant-safe-edit Prefab Variant の安全な編集ワークフロー
prefab-reference-repair /prefab-sentinel:prefab-reference-repair 壊れた参照の検出・修復ワークフロー
udon-log-triage /prefab-sentinel:udon-log-triage ランタイムログのトリアージワークフロー
knowledge-acquisition /prefab-sentinel:knowledge-acquisition VRChat エコシステムツールのナレッジ調査・蓄積

Unity Bridge

パッチ実適用・ランタイム検証など書き込み系の経路は、Unity Editor 内に常駐する Editor Bridge との file-IPC で動く。Bridge のセットアップ手順は /prefab-sentinel:guide スキルに、watch ディレクトリを指定する環境変数 UNITYTOOL_BRIDGE_WATCH_DIRCONFIGURATION.md に記載。未設定で書き込み系ツールを呼ぶと BRIDGE_WATCH_DIR_MISSING で fail-fast 停止する(read-only 検査のみなら設定不要)。

代表的な MCP ツール

全 MCP ツールの正本カタログは docs/tools.md、応答エンベロープ(success / severity / code / message / data / diagnostics)とエラーコードの正本は docs/api-reference.md。下表は代表ツールのみ。

ツール 説明
activate_project プロジェクトスコープ設定 + キャッシュ warm(セッション開始時に呼ぶ)
validate_refs 壊れた GUID / fileID 参照のスキャン
validate_structure YAML 内部構造の検証(fileID 重複・Transform 整合性)
inspect_wiring MonoBehaviour フィールド配線の分析(null 参照の分類付き)
inspect_variant Prefab Variant の override チェーン分析
find_referencing_assets GUID / パスの参照元アセット検索
patch_apply パッチ計画の検証・適用(dry-run / confirm ゲート付き)
validate_runtime UdonSharp コンパイル + ClientSim 実行検証
editor_* Editor Bridge 経由の Scene / Hierarchy / Component / BlendShape / Animation 編集

read-only 検査(validate_* / inspect_* / find_*)は Unity 不要、editor_* 系と patch_apply の confirm 適用は Editor Bridge 常駐が前提。

推奨フロー: validate_refs で参照破損を早期検出 → inspect_variant で override 衝突を実効値として可視化 → patch_apply の dry-run → confirm=True + change_reason + out_report で監査ログ付きの適用。

VRChat エコシステムナレッジ

knowledge/ ディレクトリに ModularAvatar / liltoon / VRCFury / AvatarOptimizer 等のドメイン知識を 3 レベル(L1 概念 / L2 操作パターン / L3 SerializedProperty)で蓄積し、プラグインに同梱する。guide スキルが参照を案内し、AI エージェントが作業に応じて該当ナレッジを knowledge/ から読む。ナレッジの調査・拡充は knowledge-acquisition スキルで行う。編集規約は knowledge/STYLE_GUIDE.md

ドキュメントマップ

仕様は専門ドキュメントに分かれて置かれている。目的別の入口は下表のとおり。

ドキュメント 内容
ARCHITECTURE.md 構成概観・レイヤ責務・サービス仕様・データモデル・用語集
docs/tools.md 全 MCP ツールの正本カタログ
docs/tool-conventions.md MCP ツールの住所表現・引数命名・監査ペア要否の規約
docs/api-reference.md MCP 応答エンベロープの形状とエラーコードの正本
docs/execution-reference.md MCP サーバーの実行リファレンス / smoke-batch / ベンチマーク / patch スキーマ / レポート出力フォーマット
TESTING.md ユニット / 統合 / 回帰 / mutation テストの実行手順とテスト戦略
CONFIGURATION.md UNITYTOOL_* 環境変数・ignore_guids.txt・scope config 規約
DEBUGGING.md Bridge エンベロープ / Unity Console / broken reference の調査手順
CONTRIBUTING.md 開発環境・MCP サーバーの直接起動・テスト・コミット規約・PR フロー
CLAUDE.md 運用ルールと判断基準の正本
AGENT_GUIDE.md AI エージェント向け onboarding(最初の参照点)
CHANGELOG.md 変更履歴

Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
Kagi MCP Server

Kagi MCP Server

An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

Official
Featured
Python
E2B

E2B

Using MCP to run code via e2b.

Official
Featured
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
Exa Search

Exa Search

A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.

Official
Featured
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured