# Tools — Godot · AI Game Developer Wiki

Die Godot-MCP-Tools für KI-Agenten im Godot-Editor: RQL für Nodes, Szenen und Ressourcen, C#- und GDScript-Skripte, Screenshots, In-Game-Tools.

Diese Seite wurde maschinell aus dem Englischen übersetzt. [Englisches Original lesen](https://ai-game.dev/docs/wiki/godot/tools).

Godot MCP enthält 24 integrierte Tools in 9 Familien. Die meiste Editor-Arbeit läuft über drei RQL-Tools, sodass der Agent eine einzige Abfragesprache für Nodes, Szenen, Ressourcen, Dateien und Editor-Zustand nutzt statt Dutzender einzelner Tools. Diese Seite erklärt jede Familie und wann der Agent sie verwendet. Die durchsuchbare Liste mit Parametern und Beispiel-Prompts ist der [Godot-Tools-Katalog](https://ai-game.dev/docs/tools/godot).

## Tool-Familien

| Familie | Tools | Wofür es gedacht ist |
| --- | --- | --- |
| rql | `rql-query`, `rql-mutate`, `rql-schema` | Den laufenden Editor lesen und ändern: Nodes, Godot-Properties, Szenen, Ressourcen, Dateien, Projekteinstellungen, Input Map, Autoloads, Gruppen, Signale und Editor-Zustand. |
| script | `script-read`, `script-create`, `script-update`, `script-delete`, `script-attach-to-node`, `script-validate`, `script-build`, `script-execute` | C#- und GDScript-Dateien, Skripte anhängen, GDScript validieren, das C#-Projekt bauen und C# im Editor ausführen. |
| screenshot | `screenshot-viewport`, `screenshot-camera`, `screenshot-isolated` | PNG-Bilder des Editor-Viewports, einer Kamera oder eines einzeln gerenderten Nodes. |
| console | `console-get-logs`, `console-clear-logs` | Logs eines laufenden Spiels. Im Editor die RQL-Quelle `console`. |
| reflection | `reflection-method-find`, `reflection-method-call` | C#-Methoden in einem laufenden Spiel finden und aufrufen. Im Editor RQL `call`. |
| runtime-errors | `runtime-errors-get`, `runtime-errors-clear` | Fehler, die in einem laufenden Spiel auftreten. Standardmäßig deaktiviert. |
| ping | `ping` | Bereitschaftsprüfung. Ein System-Tool, das Agenten nicht angezeigt wird. |
| skills | `godot-skill-create`, `godot-skill-generate` | Eine neue Tool-Datei schreiben, Skill-Dateien neu generieren. System-Tools. |
| session | `session-close` | Einen Editor speichern und beenden, den `godot-cli` gestartet hat. System-Tool. |

System-Tools werden über die Route `/api/system-tools/` des Servers erreicht (zum Beispiel mit `godot-cli run-system-tool ping`) und werden KI-Agenten nicht aufgelistet. Die Familien console, reflection und runtime-errors bedienen ein laufendes Spiel, das du selbst verbunden hast; siehe [Eigene Tools](https://ai-game.dev/de/docs/wiki/godot/custom-tools#runtime).

## RQL: eine Abfragesprache für den Editor

RQL (Reflection Query Language) ist die Datenschicht der Editor-Tools. Eine Abfrage startet bei einer Quelle, filtert und formt sie mit durch `|` getrennten Stufen und endet in `rql-mutate` mit `set` oder `call`. Einige Beispiele, die der Agent senden könnte:

```text
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` ist schreibgeschützt und liefert kompakte Zeilen.
- `rql-mutate` ändert Dinge. Jedes Ziel und jeder Wert wird zuerst geprüft, sodass eine fehlschlagende Abfrage nichts ändert. `dry_run` zeigt die Änderung als Vorschau. Jeder Aufruf ist ein Undo-Schritt (Strg+Z im Editor).
- `rql-schema` listet die Quellen, Funktionen und Node-Klassen in der bearbeiteten Szene auf oder die Member, Methoden und Godot-Properties eines Typs. Mit einem Extension-Namen gibt es die Anleitung dieser Extension aus.

Zu den Quellen gehören `nodes`, `root`, `selection`, `scenes`, `files`, `folders`, `classes`, `console`, `editor`, `project`, `settings`, `inputActions`, `autoloads`, `groups`, `layers` und `tools`. Godot-Properties sind als C#-Member (`Position`, `Visible`) oder über ihren Godot-Namen in `props["snake_name"]` erreichbar, was auch GDScript-Variablen einschließt. RQL behandelt außerdem Signale, Gruppen, TileSets, Themes, ShaderMaterial-Parameter und MeshLibraries.

Editor-Aufrufe decken Szenen- und Dateiarbeit ab: `NewScene`, `OpenScene`, `SaveScene`, `SaveAllScenes`, `ReloadScene`, `CreateResource`, `MoveResource`, `DeleteResource`, `CreateFolder`, `DeleteFolder`, `Reimport`, `Undo`, `Redo`, `PlayScene` und `StopScene`. Die Quelle `gameLog` liest, was ein im Editor gestartetes Spiel ausgegeben hat.

Szenenänderungen markieren die Szene als ungespeichert, genau wie deine eigenen Änderungen. Bearbeitete Ressourcendateien und `project.godot` werden sofort gespeichert.

## Skripte: C# und GDScript

- `script-read`, `script-create`, `script-update`, `script-delete` arbeiten mit `.cs`- und `.gd`-Dateien.
- `script-attach-to-node` hängt ein Skript an einen Node an.
- `script-validate` liefert Parse- und Kompilierdiagnosen für GDScript-Dateien; ohne Pfad prüft es jede `.gd`-Datei unter `res://`.
- `script-build` führt `dotnet build` (Debug) aus, damit neue C#-Skripte geladen werden. Godot lädt dann die C#-Assembly neu und das Addon verbindet sich erneut; das Buildergebnis (Warnungen oder Fehler) kommt nach dem Neuladen an.
- `script-execute` kompiliert und führt C# im Editor mit Roslyn aus. Schreibe einfache Anweisungen; der letzte Ausdruck ist das Ergebnis. Es gibt den Wert und die Ausgabe des Codes zurück. Snippets laufen standardmäßig nach 30 Sekunden in einen Timeout (höchstens 4 Minuten), und eine Endlosschleife liefert einen Timeout-Fehler, statt den Editor einzufrieren.

Du kannst `script-execute` auch von einem Terminal aus aufrufen:

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

## Screenshots

Die Screenshot-Tools liefern PNG-Bilder, die das Modell auswerten kann: `screenshot-viewport` erfasst den Editor-Viewport, `screenshot-camera` rendert aus einem Kamera-Node, und `screenshot-isolated` rendert einen einzelnen Node aus einem gewählten Winkel. Fordere nach visuellen Änderungen einen Screenshot an, damit der Agent seine eigene Arbeit prüfen kann.

## In-Game-Tools

`console-*`, `reflection-*` und `runtime-errors-*` laufen in deinem Spiel, nicht im Editor. Ein Spiel stellt nichts bereit, bis dein Code sich aktiv anmeldet und verbindet; `runtime-errors-get` benötigt zusätzlich `WithRuntimeErrorCapture()`. Es erfasst GDScript-Laufzeitfehler, `push_error` und `push_warning`, Shader-Fehler (Godot 4.5 und neuer) sowie nicht behandelte C#-Ausnahmen, sodass ein Agent das Spiel ausführen und sehen kann, was tatsächlich kaputtgegangen ist. Einrichtung: [Custom tools](https://ai-game.dev/de/docs/wiki/godot/custom-tools#runtime).

## Auswählen, welche Tools der Agent sieht

Jedes Tool hat einen **Visible**-Schalter im Dock (MCP features, Tools, Open) und in `godot-cli configure`. Wenn du ein Tool ausblendest, wird es aus der Tool-Liste des Agenten entfernt, was Kontext spart, es aber nicht blockiert. Siehe [Configuration](https://ai-game.dev/de/docs/wiki/godot/configuration#mcp-features).

## Weitere Tools

- [Extensions](https://ai-game.dev/de/docs/wiki/godot/extensions) bringen RQL AnimationPlayer, CSG, GridMap, Navigation, Particles, TileMapLayer sowie die Addons Beehave, Dialogic, Phantom Camera und Terrain3D bei.
- [Custom tools](https://ai-game.dev/de/docs/wiki/godot/custom-tools) zeigt, wie du deine eigenen Tools in C# schreibst.
- [Best practices for Godot](https://ai-game.dev/docs/best-practices/godot) enthält Prompt-Muster, die diese Tools gut nutzen.

---

Source (HTML): https://ai-game.dev/de/docs/wiki/godot/tools

Machine-translated (de) from the English page: https://ai-game.dev/docs/wiki/godot/tools
