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の生涯アップデートが含まれます。