このページは英語から機械翻訳されています。英語の原文を読む。

ツール

GodotエディタでAIエージェントが使用するGodot MCPツール。ノード、シーン、リソース、C#/GDScriptスクリプト、スクリーンショット、ゲーム内ツール向けのRQLクエリを扱います。

2026年11月4日に更新 Markdownで表示

Godot MCPには9つのファミリーに24個の組み込みツールがあります。エディタでの作業のほとんどは3つのRQLツールを通じて行われるため、エージェントはノード、シーン、リソース、ファイル、エディタ状態に対して数十個の個別ツールではなく1つのクエリ言語を使います。このページでは各ファミリーと、エージェントがそれをいつ使うかを説明します。パラメータとプロンプト例を含む検索可能な一覧はGodotツールカタログです。

ツールファミリー

ファミリーツール用途
rqlrql-query, rql-mutate, rql-schemaライブエディタの読み取りと変更: ノード、Godotプロパティ、シーン、リソース、ファイル、プロジェクト設定、入力マップ、オートロード、グループ、シグナル、エディタ状態。
scriptscript-read, script-create, script-update, script-delete, script-attach-to-node, script-validate, script-build, script-executeC#およびGDScriptファイル、スクリプトのアタッチ、GDScriptの検証、C#プロジェクトのビルド、エディタ内でのC#実行。
screenshotscreenshot-viewport, screenshot-camera, screenshot-isolatedエディタビューポート、カメラ、または単体でレンダリングされたノードのPNG画像。
consoleconsole-get-logs, console-clear-logs実行中のゲームのログ。エディタ内ではRQLのconsoleソース。
reflectionreflection-method-find, reflection-method-call実行中のゲーム内のC#メソッドを検索して呼び出します。エディタ内ではRQL call。
runtime-errorsruntime-errors-get, runtime-errors-clear実行中のゲーム内で発生したエラー。デフォルトではオフ。
pingpingレディネスプローブ。システムツールのため、エージェントには表示されません。
skillsgodot-skill-create, godot-skill-generate新しいツールファイルの作成、スキルファイルの再生成。システムツール。
sessionsession-closegodot-cliが起動したエディタを保存して終了します。システムツール。

システムツールはサーバーの/api/system-tools/ルート経由でアクセスし(例えばgodot-cli run-system-tool ping)、AIエージェントには一覧表示されません。console、reflection、runtime-errorsファミリーは、自分で接続した実行中のゲームに対応します。詳しくはカスタムツールを参照してください。

RQL: エディタ向けの単一クエリ言語

RQL(Reflection Query Language)はエディタツールのデータレイヤーです。クエリはソースから始まり、|で区切られたステージでフィルタと整形を行い、rql-mutateではsetまたはcallで終わります。エージェントが送る可能性のある例をいくつか示します:

nodes | where class == "OmniLight3D" | select name props["light_energy"]
nodes | where name starts-with "Enemy" | set Visible = false
root | call AddChild("Node3D", "Props")
project | call AddInputAction("jump", ["Key:Space"])
files | sort size desc | first 5 | select path size importedSize
editor | call SaveScene()
  • rql-queryは読み取り専用で、コンパクトな行を返します。
  • rql-mutateは変更を行います。すべてのターゲットと値が最初に検証されるため、失敗したクエリは何も変更しません。dry_runで変更をプレビューできます。各呼び出しは1つのアンドゥステップです(エディタではCtrl+Z)。
  • rql-schemaは編集対象シーン内のソース、関数、ノードクラス、または1つの型のメンバー、メソッド、Godotプロパティを一覧表示します。拡張機能名を指定すると、その拡張機能のガイドを出力します。

ソースにはnodes、root、selection、scenes、files、folders、classes、console、editor、project、settings、inputActions、autoloads、groups、layers、toolsがあります。GodotプロパティにはC#メンバー(Position、Visible)として、またはprops["snake_name"]内のGodot名(GDScript変数を含む)でアクセスできます。RQLはシグナル、グループ、TileSet、Theme、ShaderMaterialパラメータ、MeshLibraryも扱います。

エディタ呼び出しはシーンとファイルの作業をカバーします: NewScene、OpenScene、SaveScene、SaveAllScenes、ReloadScene、CreateResource、MoveResource、DeleteResource、CreateFolder、DeleteFolder、Reimport、Undo、Redo、PlayScene、StopScene。gameLogソースは、エディタから起動したゲームが出力した内容を読み取ります。

シーンの編集は、自分自身の編集と同様にシーンを未保存としてマークします。編集されたリソースファイルとproject.godotは即座に保存されます。

スクリプト: C#とGDScript

  • script-read、script-create、script-update、script-deleteは.csおよび.gdファイルを操作します。
  • script-attach-to-nodeはスクリプトをノードにアタッチします。
  • script-validateはGDScriptファイルのパースおよびコンパイル診断を返します。パスを指定しない場合はres://以下のすべての.gdファイルをチェックします。
  • script-buildは新しいC#スクリプトを読み込めるようにdotnet build(Debug)を実行します。その後GodotはC#アセンブリをリロードし、アドオンが再接続します。ビルド結果(警告またはエラー)はリロード後に届きます。
  • script-execute は Roslyn を使ってエディター内で C# をコンパイルして実行します。普通のステートメントを書いてください。最後の式が結果になります。戻り値と、コードが出力した内容を返します。スニペットはデフォルトで 30 秒でタイムアウトし(最大 4 分)、無限ループはエディターをフリーズさせる代わりにタイムアウトエラーを返します。

ターミナルから script-execute を呼び出すこともできます:

godot-cli exec 'EditorInterface.Singleton.GetEditedSceneRoot()?.Name' --path ./MyGodotProject

スクリーンショット

スクリーンショットツールは、モデルが検査できる PNG 画像を返します。screenshot-viewport はエディターのビューポートをキャプチャし、screenshot-camera はカメラノードからレンダリングし、screenshot-isolated は選択した角度から 1 つのノードを単独でレンダリングします。見た目の変更後はスクリーンショットを要求して、エージェントが自分の作業を確認できるようにしましょう。

ゲーム内ツール

console-*、reflection-*、runtime-errors-* はエディター内ではなく、ゲーム内で動作します。コードがオプトインして接続するまで、ゲームは何も公開しません。runtime-errors-get はさらに WithRuntimeErrorCapture() が必要です。GDScript のランタイムエラー、push_error と push_warning、シェーダーエラー(Godot 4.5 以降)、未処理の C# 例外をキャプチャするので、エージェントはゲームを実行して実際に何が壊れたのかを確認できます。セットアップ: カスタムツール。

エージェントが参照するツールの選択

すべてのツールには、ドック内(MCP features、Tools、Open)と godot-cli configure に Visible スイッチがあります。ツールを非表示にするとエージェントのツールリストから削除され、コンテキストを節約できますが、そのツールをブロックするわけではありません。設定 を参照してください。

その他のツール

  • 拡張機能 は、AnimationPlayer、CSG、GridMap、ナビゲーション、パーティクル、TileMapLayer、そして Beehave、Dialogic、Phantom Camera、Terrain3D アドオンについて RQL に教えます。
  • カスタムツール では、C# で独自のツールを書く方法を説明します。
  • Godot のベストプラクティス には、これらのツールをうまく活用するプロンプトパターンがあります。