/ docs / README.ja.md
README.ja.md
  1  > **Language:** [English](../README.md) | 日本語 | [Português (BR)](README.pt-br.md) | [Español](README.es.md) | [Русский](README.ru.md) | [简体中文](README.zh.md) | [हिन्दी](README.hi.md)
  2  
  3  # Godot MCP Pro
  4  
  5  AI駆動のGodotゲーム開発のためのプレミアムMCP(Model Context Protocol)サーバー。ClaudeなどのAIアシスタントをGodotエディタに直接接続し、**163の強力なツール**を提供します。
  6  
  7  ## アーキテクチャ
  8  
  9  ```
 10  AI Assistant ←—stdio/MCP—→ Node.js Server ←—WebSocket:6505—→ Godot Editor Plugin
 11  ```
 12  
 13  - **リアルタイム**: WebSocket接続により即座にフィードバック、ファイルポーリング不要
 14  - **エディタ統合**: GodotのエディタAPI、UndoRedoシステム、シーンツリーへのフルアクセス
 15  - **JSON-RPC 2.0**: 適切なエラーコードとサジェスション付きの標準プロトコル
 16  
 17  ## クイックスタート
 18  
 19  ### 1. Godotプラグインのインストール
 20  
 21  `addons/godot_mcp/` フォルダをGodotプロジェクトの `addons/` ディレクトリにコピーします。
 22  
 23  プラグインを有効化: **プロジェクト → プロジェクト設定 → プラグイン → Godot MCP Pro → 有効化**
 24  
 25  ### 2. MCPサーバーのインストール
 26  
 27  > **注意**: `server/` ディレクトリは**フルパッケージ**(有料版)にのみ含まれています。
 28  > このGitHubリポジトリには**アドオン(プラグイン)のみ**が含まれています。
 29  > サーバーを入手するには [godot-mcp.abyo.net](https://godot-mcp.abyo.net/) でフルパッケージをご購入ください。
 30  
 31  ```bash
 32  cd server
 33  npm install
 34  npm run build
 35  ```
 36  
 37  ### 3. Claude Codeの設定
 38  
 39  `.mcp.json` に以下を追加:
 40  
 41  ```json
 42  {
 43    "mcpServers": {
 44      "godot-mcp-pro": {
 45        "command": "node",
 46        "args": ["D:/dev/godot-mcp-pro/server/build/index.js"],
 47        "env": {
 48          "GODOT_MCP_PORT": "6505"
 49        }
 50      }
 51    }
 52  }
 53  ```
 54  
 55  ### 4. ツール権限の自動承認(推奨)
 56  
 57  Claude Codeはツール呼び出しのたびに許可を求めます。これらのプロンプトをスキップするには、同梱の権限プリセットをClaude Codeの設定にコピーしてください:
 58  
 59  **オプションA: 保守的**(デフォルト — 破壊的なツールをブロック)
 60  
 61  ```bash
 62  cp settings.local.json ~/.claude/settings.local.json
 63  ```
 64  
 65  163ツール中152ツールを自動で許可します。以下の11ツールは毎回手動承認が必要です:
 66  
 67  | ブロックされるツール | 理由 |
 68  |---|---|
 69  | `delete_node` | シーンからノードを削除 |
 70  | `delete_scene` | ディスクからシーンファイルを削除 |
 71  | `remove_animation` | アニメーションを削除 |
 72  | `remove_autoload` | Autoloadシングルトンを削除 |
 73  | `remove_state_machine_state` | ステートマシンのステートを削除 |
 74  | `remove_state_machine_transition` | ステートマシンのトランジションを削除 |
 75  | `execute_editor_script` | エディタで任意のコードを実行 |
 76  | `execute_game_script` | 実行中のゲームで任意のコードを実行 |
 77  | `export_project` | プロジェクトのエクスポートを実行 |
 78  | `tilemap_clear` | TileMapLayerの全セルをクリア |
 79  
 80  **オプションB: 許容的**(すべて許可、危険なコマンドを拒否)
 81  
 82  ```bash
 83  cp settings.local.permissive.json ~/.claude/settings.local.json
 84  ```
 85  
 86  163ツールすべてとすべてのBashコマンドを許可します。破壊的なシェルコマンド(`rm -rf`、`git push --force`、`git reset --hard` など)と上記の破壊的MCPツールは明示的に拒否されます。
 87  
 88  > **注意**: すでに `settings.local.json` がある場合は、上書きせずに `permissions` セクションを手動でマージしてください。
 89  
 90  ### 5. Liteモード(オプション)
 91  
 92  MCPクライアントにツール数の制限がある場合(例: Windsurf: 100、Cursor: ~40)、162ツールの代わりに76のコアツールを登録するLiteモードを使用してください:
 93  
 94  ```json
 95  {
 96    "mcpServers": {
 97      "godot-mcp-pro": {
 98        "command": "node",
 99        "args": ["D:/dev/godot-mcp-pro/server/build/index.js", "--lite"]
100      }
101    }
102  }
103  ```
104  
105  Liteモードに含まれるツール: project、scene、node、script、editor、input、runtime、input_map。
106  
107  ### 6. 使い方
108  
109  プラグインを有効にした状態でGodotプロジェクトを開き、Claude Codeを使ってエディタと対話します。
110  
111  ## 全162ツール
112  
113  ### プロジェクトツール (7)
114  | ツール | 説明 |
115  |------|-------------|
116  | `get_project_info` | プロジェクトのメタデータ、バージョン、ビューポート、Autoload |
117  | `get_filesystem_tree` | フィルタリング付き再帰的ファイルツリー |
118  | `search_files` | ファジー/globファイル検索 |
119  | `get_project_settings` | project.godotの設定を読み取り |
120  | `set_project_setting` | エディタAPI経由でプロジェクト設定を変更 |
121  | `uid_to_project_path` | UID → res:// 変換 |
122  | `project_path_to_uid` | res:// → UID 変換 |
123  
124  ### シーンツール (9)
125  | ツール | 説明 |
126  |------|-------------|
127  | `get_scene_tree` | 階層付きライブシーンツリー |
128  | `get_scene_file_content` | .tscnファイルの生コンテンツ |
129  | `create_scene` | 新しいシーンファイルを作成 |
130  | `open_scene` | エディタでシーンを開く |
131  | `delete_scene` | シーンファイルを削除 |
132  | `add_scene_instance` | シーンを子ノードとしてインスタンス化 |
133  | `play_scene` | シーンを実行(メイン/現在/カスタム) |
134  | `stop_scene` | 実行中のシーンを停止 |
135  | `save_scene` | 現在のシーンをディスクに保存 |
136  
137  ### ノードツール (14)
138  | ツール | 説明 |
139  |------|-------------|
140  | `add_node` | タイプとプロパティを指定してノードを追加 |
141  | `delete_node` | ノードを削除(Undo対応) |
142  | `duplicate_node` | ノードと子ノードを複製 |
143  | `move_node` | ノードの移動/再親 |
144  | `update_property` | 任意のプロパティを設定(自動型変換) |
145  | `get_node_properties` | ノードの全プロパティを取得 |
146  | `add_resource` | Shape/Material等をノードに追加 |
147  | `set_anchor_preset` | Controlのアンカープリセットを設定 |
148  | `rename_node` | シーン内のノードをリネーム |
149  | `connect_signal` | ノード間のシグナルを接続 |
150  | `disconnect_signal` | シグナル接続を切断 |
151  | `get_node_groups` | ノードが属するグループを取得 |
152  | `set_node_groups` | ノードのグループメンバーシップを設定 |
153  | `find_nodes_in_group` | グループ内の全ノードを検索 |
154  
155  ### スクリプトツール (8)
156  | ツール | 説明 |
157  |------|-------------|
158  | `list_scripts` | クラス情報付きスクリプト一覧 |
159  | `read_script` | スクリプトの内容を読み取り |
160  | `create_script` | テンプレート付き新規スクリプト作成 |
161  | `edit_script` | 検索/置換またはフル編集 |
162  | `attach_script` | ノードにスクリプトをアタッチ |
163  | `get_open_scripts` | エディタで開いているスクリプト一覧 |
164  | `validate_script` | GDScriptの構文を検証 |
165  | `search_in_files` | プロジェクトファイル内のコンテンツを検索 |
166  
167  ### エディタツール (9)
168  | ツール | 説明 |
169  |------|-------------|
170  | `get_editor_errors` | エラーとスタックトレースを取得 |
171  | `get_editor_screenshot` | エディタビューポートをキャプチャ |
172  | `get_game_screenshot` | 実行中のゲームをキャプチャ |
173  | `execute_editor_script` | エディタで任意のGDScriptを実行 |
174  | `clear_output` | 出力パネルをクリア |
175  | `get_signals` | ノードの全シグナルと接続を取得 |
176  | `reload_plugin` | MCPプラグインを再読み込み(自動再接続) |
177  | `reload_project` | ファイルシステムを再スキャンしスクリプトを再読み込み |
178  | `get_output_log` | 出力パネルの内容を取得 |
179  
180  ### 入力ツール (7)
181  | ツール | 説明 |
182  |------|-------------|
183  | `simulate_key` | キーボードキーの押下/解放をシミュレート |
184  | `simulate_mouse_click` | 指定位置でのマウスクリックをシミュレート |
185  | `simulate_mouse_move` | マウス移動をシミュレート |
186  | `simulate_action` | Godot Input Actionをシミュレート |
187  | `simulate_sequence` | フレーム遅延付き入力イベントシーケンス |
188  | `get_input_actions` | 全入力アクション一覧 |
189  | `set_input_action` | 入力アクションの作成/変更 |
190  
191  ### ランタイムツール (19)
192  | ツール | 説明 |
193  |------|-------------|
194  | `get_game_scene_tree` | 実行中ゲームのシーンツリー |
195  | `get_game_node_properties` | 実行中ゲームのノードプロパティ |
196  | `set_game_node_property` | 実行中ゲームのノードプロパティを設定 |
197  | `execute_game_script` | ゲームコンテキストでGDScriptを実行 |
198  | `capture_frames` | マルチフレームスクリーンショットキャプチャ |
199  | `monitor_properties` | プロパティ値の時系列記録 |
200  | `start_recording` | 入力録画を開始 |
201  | `stop_recording` | 入力録画を停止 |
202  | `replay_recording` | 録画した入力を再生 |
203  | `find_nodes_by_script` | スクリプトでゲームノードを検索 |
204  | `get_autoload` | Autoloadノードのプロパティを取得 |
205  | `batch_get_properties` | 複数ノードのプロパティを一括取得 |
206  | `find_ui_elements` | ゲーム内のUI要素を検索 |
207  | `click_button_by_text` | テキストでボタンをクリック |
208  | `wait_for_node` | ノードの出現を待機 |
209  | `find_nearby_nodes` | 位置近傍のノードを検索 |
210  | `navigate_to` | ターゲット位置へナビゲート |
211  | `move_to` | キャラクターをターゲットまで歩かせる |
212  
213  ### アニメーションツール (6)
214  | ツール | 説明 |
215  |------|-------------|
216  | `list_animations` | AnimationPlayerの全アニメーション一覧 |
217  | `create_animation` | 新規アニメーション作成 |
218  | `add_animation_track` | トラック追加(value/position/rotation/method/bezier) |
219  | `set_animation_keyframe` | トラックにキーフレームを挿入 |
220  | `get_animation_info` | 全トラック/キー付き詳細アニメーション情報 |
221  | `remove_animation` | アニメーションを削除 |
222  
223  ### TileMapツール (6)
224  | ツール | 説明 |
225  |------|-------------|
226  | `tilemap_set_cell` | 単一タイルセルを設定 |
227  | `tilemap_fill_rect` | 矩形領域をタイルで塗りつぶし |
228  | `tilemap_get_cell` | セルのタイルデータを取得 |
229  | `tilemap_clear` | 全セルをクリア |
230  | `tilemap_get_info` | TileMapLayerの情報とタイルセットソース |
231  | `tilemap_get_used_cells` | 使用中セルの一覧 |
232  
233  ### テーマ & UIツール (6)
234  | ツール | 説明 |
235  |------|-------------|
236  | `create_theme` | Themeリソースファイルを作成 |
237  | `set_theme_color` | テーマカラーオーバーライドを設定 |
238  | `set_theme_constant` | テーマ定数オーバーライドを設定 |
239  | `set_theme_font_size` | テーマフォントサイズオーバーライドを設定 |
240  | `set_theme_stylebox` | StyleBoxFlatオーバーライドを設定 |
241  | `get_theme_info` | テーマオーバーライド情報を取得 |
242  
243  ### プロファイリングツール (2)
244  | ツール | 説明 |
245  |------|-------------|
246  | `get_performance_monitors` | 全パフォーマンスモニター(FPS、メモリ、物理等) |
247  | `get_editor_performance` | パフォーマンス概要 |
248  
249  ### バッチ & リファクタリングツール (8)
250  | ツール | 説明 |
251  |------|-------------|
252  | `find_nodes_by_type` | タイプで全ノードを検索 |
253  | `find_signal_connections` | シーン内の全シグナル接続を検索 |
254  | `batch_set_property` | タイプの全ノードにプロパティを設定 |
255  | `find_node_references` | プロジェクトファイル内のパターン検索 |
256  | `get_scene_dependencies` | リソース依存関係を取得 |
257  | `cross_scene_set_property` | 全シーン横断でプロパティを設定 |
258  | `find_script_references` | スクリプト/リソースの使用箇所を検索 |
259  | `detect_circular_dependencies` | シーンの循環依存を検出 |
260  
261  ### シェーダーツール (6)
262  | ツール | 説明 |
263  |------|-------------|
264  | `create_shader` | テンプレート付きシェーダー作成 |
265  | `read_shader` | シェーダーファイルを読み取り |
266  | `edit_shader` | シェーダーを編集(置換/検索置換) |
267  | `assign_shader_material` | ShaderMaterialをノードに割り当て |
268  | `set_shader_param` | シェーダーパラメータを設定 |
269  | `get_shader_params` | 全シェーダーパラメータを取得 |
270  
271  ### エクスポートツール (3)
272  | ツール | 説明 |
273  |------|-------------|
274  | `list_export_presets` | エクスポートプリセット一覧 |
275  | `export_project` | プリセットのエクスポートコマンドを取得 |
276  | `get_export_info` | エクスポート関連のプロジェクト情報 |
277  
278  ### リソースツール (6)
279  | ツール | 説明 |
280  |------|-------------|
281  | `read_resource` | .tresリソースのプロパティを読み取り |
282  | `edit_resource` | リソースプロパティを編集 |
283  | `create_resource` | 新規.tresリソースを作成 |
284  | `get_resource_preview` | リソースのサムネイルを取得 |
285  | `add_autoload` | Autoloadシングルトンを登録 |
286  | `remove_autoload` | Autoloadシングルトンを削除 |
287  
288  ### 物理ツール (6)
289  | ツール | 説明 |
290  |------|-------------|
291  | `setup_physics_body` | 物理ボディのプロパティを設定 |
292  | `setup_collision` | ノードにコリジョンシェイプを追加 |
293  | `set_physics_layers` | コリジョンレイヤー/マスクを設定 |
294  | `get_physics_layers` | コリジョンレイヤー/マスク情報を取得 |
295  | `get_collision_info` | コリジョンシェイプの詳細を取得 |
296  | `add_raycast` | RayCast2D/3Dノードを追加 |
297  
298  ### 3Dシーンツール (6)
299  | ツール | 説明 |
300  |------|-------------|
301  | `add_mesh_instance` | プリミティブメッシュ付きMeshInstance3Dを追加 |
302  | `setup_camera_3d` | Camera3Dのプロパティを設定 |
303  | `setup_lighting` | ライトノードの追加/設定 |
304  | `setup_environment` | WorldEnvironmentを設定 |
305  | `add_gridmap` | GridMapノードをセットアップ |
306  | `set_material_3d` | StandardMaterial3Dのプロパティを設定 |
307  
308  ### パーティクルツール (5)
309  | ツール | 説明 |
310  |------|-------------|
311  | `create_particles` | GPUParticles2D/3Dを作成 |
312  | `set_particle_material` | ParticleProcessMaterialを設定 |
313  | `set_particle_color_gradient` | パーティクルのカラーグラデーションを設定 |
314  | `apply_particle_preset` | プリセットを適用(fire、smoke、sparks等) |
315  | `get_particle_info` | パーティクルシステムの詳細を取得 |
316  
317  ### ナビゲーションツール (6)
318  | ツール | 説明 |
319  |------|-------------|
320  | `setup_navigation_region` | NavigationRegionを設定 |
321  | `setup_navigation_agent` | NavigationAgentを設定 |
322  | `bake_navigation_mesh` | ナビゲーションメッシュをベイク |
323  | `set_navigation_layers` | ナビゲーションレイヤーを設定 |
324  | `get_navigation_info` | ナビゲーション設定情報を取得 |
325  
326  ### オーディオツール (6)
327  | ツール | 説明 |
328  |------|-------------|
329  | `add_audio_player` | AudioStreamPlayerノードを追加 |
330  | `add_audio_bus` | オーディオバスを追加 |
331  | `add_audio_bus_effect` | オーディオバスにエフェクトを追加 |
332  | `set_audio_bus` | オーディオバスのプロパティを設定 |
333  | `get_audio_bus_layout` | オーディオバスレイアウト情報を取得 |
334  | `get_audio_info` | オーディオ関連ノード情報を取得 |
335  
336  ### AnimationTreeツール (4)
337  | ツール | 説明 |
338  |------|-------------|
339  | `create_animation_tree` | AnimationTreeを作成 |
340  | `get_animation_tree_structure` | ツリー構造を取得 |
341  | `set_tree_parameter` | AnimationTreeパラメータを設定 |
342  | `add_state_machine_state` | ステートマシンにステートを追加 |
343  
344  ### ステートマシンツール (3)
345  | ツール | 説明 |
346  |------|-------------|
347  | `remove_state_machine_state` | ステートマシンからステートを削除 |
348  | `add_state_machine_transition` | ステート間のトランジションを追加 |
349  | `remove_state_machine_transition` | ステートのトランジションを削除 |
350  
351  ### ブレンドツリーツール (1)
352  | ツール | 説明 |
353  |------|-------------|
354  | `set_blend_tree_node` | ブレンドツリーノードを設定 |
355  
356  ### 分析 & 検索ツール (4)
357  | ツール | 説明 |
358  |------|-------------|
359  | `analyze_scene_complexity` | シーンのパフォーマンスを分析 |
360  | `analyze_signal_flow` | シグナル接続をマッピング |
361  | `find_unused_resources` | 未参照リソースを検索 |
362  | `get_project_statistics` | プロジェクト全体の統計を取得 |
363  
364  ### テスト & QAツール (6)
365  | ツール | 説明 |
366  |------|-------------|
367  | `run_test_scenario` | 自動テストシナリオを実行 |
368  | `assert_node_state` | ノードプロパティ値をアサート |
369  | `assert_screen_text` | 画面上のテキストを確認 |
370  | `compare_screenshots` | 2つのスクリーンショットを比較 |
371  | `run_stress_test` | パフォーマンスストレステストを実行 |
372  | `get_test_report` | テスト結果レポートを取得 |
373  
374  ## 主な特徴
375  
376  - **UndoRedo統合**: すべてのノード/プロパティ操作がCtrl+Zに対応
377  - **スマート型変換**: `"Vector2(100, 200)"`、`"#ff0000"`、`"Color(1,0,0)"` を自動変換
378  - **自動再接続**: 指数バックオフによる再接続(1秒 → 2秒 → 4秒 ... → 最大60秒)
379  - **ハートビート**: 10秒間隔のping/pongで接続を維持
380  - **親切なエラー**: エラーレスポンスに次のステップのサジェスションを含む
381  
382  ## 競合比較
383  
384  ### ツール数
385  
386  | カテゴリ | Godot MCP Pro | GDAI MCP ($19) | tomyud1 (free) | Dokujaa (free) | Coding-Solo (free) | ee0pdt (free) | bradypp (free) |
387  |----------|:---:|:---:|:---:|:---:|:---:|:---:|:---:|
388  | Project | 7 | 5 | 4 | 0 | 2 | 2 | 2 |
389  | Scene | 9 | 8 | 11 | 9 | 3 | 4 | 5 |
390  | Node | **14** | 8 | 0 | 8 | 2 | 3 | 0 |
391  | Script | **8** | 5 | 6 | 4 | 0 | 5 | 0 |
392  | Editor | **9** | 5 | 1 | 5 | 1 | 3 | 2 |
393  | Input | **7** | 2 | 0 | 0 | 0 | 0 | 0 |
394  | Runtime | **19** | 0 | 0 | 0 | 0 | 0 | 0 |
395  | Animation | **6** | 0 | 0 | 0 | 0 | 0 | 0 |
396  | TileMap | **6** | 0 | 0 | 0 | 0 | 0 | 0 |
397  | Theme/UI | **6** | 0 | 0 | 0 | 0 | 0 | 0 |
398  | Profiling | **2** | 0 | 0 | 0 | 0 | 0 | 0 |
399  | Batch/Refactor | **8** | 0 | 0 | 0 | 0 | 0 | 0 |
400  | Shader | **6** | 0 | 0 | 0 | 0 | 0 | 0 |
401  | Export | **3** | 0 | 0 | 0 | 0 | 0 | 0 |
402  | Resource | **6** | 0 | 0 | 0 | 0 | 0 | 0 |
403  | Physics | **6** | 0 | 0 | 0 | 0 | 0 | 0 |
404  | 3D Scene | **6** | 0 | 0 | 0 | 0 | 0 | 0 |
405  | Particle | **5** | 0 | 0 | 0 | 0 | 0 | 0 |
406  | Navigation | **6** | 0 | 0 | 0 | 0 | 0 | 0 |
407  | Audio | **6** | 0 | 0 | 0 | 0 | 0 | 0 |
408  | AnimationTree | **4** | 0 | 0 | 0 | 0 | 0 | 0 |
409  | State Machine | **3** | 0 | 0 | 0 | 0 | 0 | 0 |
410  | Blend Tree | **1** | 0 | 0 | 0 | 0 | 0 | 0 |
411  | Analysis | **4** | 0 | 0 | 0 | 0 | 0 | 0 |
412  | Testing/QA | **6** | 0 | 0 | 0 | 0 | 0 | 0 |
413  | Asset/AI | 0 | 0 | 1 | 6 | 0 | 0 | 0 |
414  | Material | 0 | 0 | 0 | 2 | 0 | 0 | 0 |
415  | Other | 0 | 0 | 9 | 5 | 5 | 2 | 1 |
416  | **合計** | **162** | ~30 | **32** | **39** | **13** | **19** | **10** |
417  
418  ### 機能マトリクス
419  
420  | 機能 | Godot MCP Pro | GDAI MCP ($19) | tomyud1 (free) | Dokujaa (free) | Coding-Solo (free) |
421  |---------|:---:|:---:|:---:|:---:|:---:|
422  | **接続方式** | WebSocket (リアルタイム) | stdio (Python) | WebSocket | TCP Socket | Headless CLI |
423  | **Undo/Redo** | 対応 | 対応 | 非対応 | 非対応 | 非対応 |
424  | **JSON-RPC 2.0** | 対応 | カスタム | カスタム | カスタム | N/A |
425  | **自動再接続** | 対応(指数バックオフ) | N/A | 非対応 | 非対応 | N/A |
426  | **ハートビート** | 対応(10秒ping/pong) | 非対応 | 非対応 | 非対応 | 非対応 |
427  | **エラーサジェスション** | 対応(コンテキスト依存ヒント) | 非対応 | 非対応 | 非対応 | 非対応 |
428  | **スクリーンショット** | 対応(エディタ + ゲーム) | 対応 | 非対応 | 非対応 | 非対応 |
429  | **ゲーム入力シミュレーション** | 対応(キー/マウス/アクション/シーケンス) | 対応(基本) | 非対応 | 非対応 | 非対応 |
430  | **ランタイムインスペクション** | 対応(シーンツリー + プロパティ + モニター) | 非対応 | 非対応 | 非対応 | 非対応 |
431  | **シグナル管理** | 対応(接続/切断/検査) | 非対応 | 非対応 | 非対応 | 非対応 |
432  | **ブラウザビジュアライザー** | 非対応 | 非対応 | 対応 | 非対応 | 非対応 |
433  | **AI 3Dメッシュ生成** | 非対応 | 非対応 | 非対応 | 対応(Meshy API) | 非対応 |
434  
435  ### 独占カテゴリ(競合にはないもの)
436  
437  | カテゴリ | ツール数 | 重要な理由 |
438  |----------|-------|----------------|
439  | **Animation** | 6ツール | アニメーション作成、トラック追加、キーフレーム設定 — すべてプログラム的に |
440  | **TileMap** | 6ツール | セル設定、矩形塗りつぶし、タイルデータ取得 — 2Dレベルデザインに必須 |
441  | **Theme/UI** | 6ツール | StyleBox、カラー、フォント — 手動エディタ作業なしでUIテーマを構築 |
442  | **Profiling** | 2ツール | FPS、メモリ、描画コール、物理 — パフォーマンス監視 |
443  | **Batch/Refactor** | 8ツール | タイプ検索、一括プロパティ変更、シーン横断更新、依存関係分析 |
444  | **Shader** | 6ツール | シェーダーの作成/編集、マテリアル割り当て、パラメータ設定 |
445  | **Export** | 3ツール | プリセット一覧、エクスポートコマンド取得、テンプレート確認 |
446  | **Physics** | 6ツール | コリジョンシェイプ、ボディ、レイキャスト、レイヤー管理のセットアップ |
447  | **3D Scene** | 6ツール | メッシュ、カメラ、ライト、環境、GridMapサポートの追加 |
448  | **Particle** | 5ツール | カスタムマテリアル、プリセット、グラデーション付きパーティクル作成 |
449  | **Navigation** | 6ツール | ナビゲーションリージョン、エージェント、パスファインディング、ベイクの設定 |
450  | **Audio** | 6ツール | 完全なオーディオバスシステム、エフェクト、プレイヤー、ライブ管理 |
451  | **AnimationTree** | 4ツール | トランジションとブレンドツリー付きステートマシンを構築 |
452  | **State Machine** | 3ツール | 複雑なアニメーション向け高度なステートマシン管理 |
453  | **Testing/QA** | 6ツール | 自動テスト、アサーション、ストレステスト、スクリーンショット比較 |
454  | **Runtime** | 19ツール | 実行時のゲームを検査・制御: インスペクト、録画、再生、ナビゲート |
455  
456  ### アーキテクチャの優位性
457  
458  | 観点 | Godot MCP Pro | 一般的な競合 |
459  |--------|--------------|-------------------|
460  | **プロトコル** | JSON-RPC 2.0(標準、拡張可能) | カスタムJSONまたはCLIベース |
461  | **接続** | ハートビート付き永続WebSocket | コマンドごとのサブプロセスまたは生TCP |
462  | **信頼性** | 指数バックオフ付き自動再接続(1秒→60秒) | 手動再接続が必要 |
463  | **型安全性** | スマート型変換(Vector2、Color、Rect2、16進カラー) | 文字列のみまたは限定的な型 |
464  | **エラーハンドリング** | コード + サジェスション付き構造化エラー | 汎用エラーメッセージ |
465  | **Undoサポート** | すべての変更がUndoRedoシステムを経由 | 直接変更(Undo不可) |
466  | **ポート管理** | ポート6505-6509の自動スキャン | 固定ポート、競合の可能性 |
467  
468  ## ライセンス
469  
470  プロプライエタリ — 詳細は[LICENSE](../LICENSE)を参照。購入にはv1.xの生涯アップデートが含まれます。