Find nodes in the active scene tree by path, type, or name.
pathstringtypestringnamestring
Nodes & scenes, resources, C# / GDScript files, and the editor run-and-play lifecycle — driven through EditorInterface.
Inspect & edit the active scene tree
Find nodes in the active scene tree by path, type, or name.
pathstringtypestringnamestringRead a node's stored properties (what the scene saves for it); each entry can be sent back to node-modify unchanged.
nodeRef*NodeRefMove an existing node to a different position among its siblings (negative index counts from the end).
nodeRef*NodeRefindex*intCreate a new node under a parent, optionally instancing a .tscn sub-scene.
parent*NodePathtypestringinstanceScenePathstringnamestringSet fields and properties on one or more nodes.
node*NodePathpatch*objectReparent nodes within the scene tree.
node*NodePathnewParent*NodePathDuplicate nodes together with their subtrees.
node*NodePathcountintDelete nodes from the active scene.
node*NodePathOpen, save, create & inspect scenes
Open a res://*.tscn PackedScene in the editor.
path*stringSave an open scene back to its .tscn file.
pathstringCreate a new scene asset in the project.
path*stringrootTypestringList the scenes currently open in the editor.
Retrieve the root nodes and structure of a scene.
pathstringFind & mutate .tres / .res resources
Search the project for resources (.tres / .res).
querystringtypestringRead a resource's serialized fields and properties.
path*stringModify a resource's properties.
path*stringpatch*objectCreate a new resource asset.
path*stringtype*stringMove or rename a resource, keeping .import sidecars consistent.
fromPath*stringtoPath*stringDelete a resource from the project.
path*stringCRUD on C# / GDScript · attach to nodes
Read a .cs or .gd script file.
path*stringCreate a new script file.
path*stringcontentsstringUpdate an existing script file's contents.
path*stringcontents*stringDelete a script file.
path*stringAttach a script to a node.
node*NodePathscript*stringValidate GDScript (.gd) files and return structured parse/compile diagnostics. Omit the path to scan every .gd file under res://.
scriptPathstringBrowse & reimport the res:// tree
Browse the res:// tree — file types and uids — via the editor file index, without loading resources.
pathstringReimport files in the project.
pathsstring[]Run/play lifecycle · selection
Read the editor application and run state.
Start or stop the running game (Godot launches it in a separate process).
state*enum<Play|Stop>Get the current editor selection.
Set the current editor selection.
nodes*NodePath[]Viewport · camera · isolated renders
Capture the editor viewport as a PNG.
Capture from a specific camera.
camera*NodePathRender a node in isolation from a chosen angle.
node*NodePathRead & clear editor log collector
Read the plugin's collected editor logs, with filtering.
minSeverityenum<Log|Warning|Error>limitintClear the collected log cache.
Find & call C# methods via ReflectorNet
Find C# methods, including private, across every loaded assembly.
query*stringCall any C# method with input parameters and get the result.
method*stringargsobject[]Poll errors from the running game (opt-in)
Read errors captured inside the running game (GDScript runtime errors, push_error/push_warning, shader errors, unhandled C# exceptions); poll only new ones via sinceSequence. Off by default — opt in with builder.WithRuntimeErrorCapture().
sinceSequencelongmaxEntriesintClear the captured in-game runtime-error buffer (a no-op when capture is not enabled).
Lightweight readiness probe
Lightweight readiness probe — echoes a message back, or returns pong. Verifies the end-to-end MCP path.
messagestringAnimationPlayer · libraries · tracks · keys
Extension · AI Animation · godot-cli install-extension com.IvanMurzak.Godot.MCP.Animation
Return the recommended starter config (length, loop mode, suggested track types) for a new animation.
Needs the AI Animation extension installed.
Create an AnimationPlayer node in the edited scene; optional parent and name.
Needs the AI Animation extension installed.
parentNodePathnamestringAdd an AnimationLibrary to an AnimationPlayer (by library name).
Needs the AI Animation extension installed.
player*NodePathlibrary*stringCreate an Animation in a library (name, length, loop mode).
Needs the AI Animation extension installed.
player*NodePathname*stringlengthfloatloopModestringAdd a track to an animation (track type value / position-3d / rotation-3d / scale-3d; node path; sub-property for value tracks).
Needs the AI Animation extension installed.
player*NodePathanimation*stringtrackType*enum<value|position-3d|rotation-3d|scale-3d>nodePath*stringInsert a keyframe into a track (animation, track index, time, value).
Needs the AI Animation extension installed.
player*NodePathanimation*stringtrackIndex*inttime*floatvalueobjectRead an AnimationPlayer's animation list, or a single animation's config (read-only).
Needs the AI Animation extension installed.
player*NodePathanimationstringBehaviour trees · composites · leaves
Extension · AI Beehave · godot-cli install-extension com.IvanMurzak.Godot.MCP.Beehave
Return a recommended behaviour-tree skeleton description (composite/leaf taxonomy + wiring tips); needs no addon.
Needs the AI Beehave extension installed.
Instantiate a BeehaveTree node under an actor node in the edited scene and wire its actor / blackboard.
Needs the AI Beehave extension installed.
actor*NodePathnamestringAdd a SelectorComposite / SequenceComposite (chosen by arg) under a tree or composite node.
Needs the AI Beehave extension installed.
parent*NodePathcompositeType*enum<Selector|Sequence>Add an ActionLeaf / ConditionLeaf placeholder under a composite (a scaffold — you attach the behaviour script).
Needs the AI Beehave extension installed.
parent*NodePathleafType*enum<Action|Condition>Dump the structure (node types + parent/child) under a named BeehaveTree (read-only).
Needs the AI Beehave extension installed.
tree*NodePathBoolean solids — box/sphere/cylinder/combine
Extension · AI CSG · godot-cli install-extension com.IvanMurzak.Godot.MCP.CSG
Create a CSGBox3D in the edited scene; size (x, y, z); optional parent, name.
Needs the AI CSG extension installed.
size*Vector3parentNodePathnamestringCreate a CSGSphere3D; radius, radial_segments; optional parent, name.
Needs the AI CSG extension installed.
radius*floatradialSegmentsintparentNodePathCreate a CSGCylinder3D; radius, height; optional parent, name.
Needs the AI CSG extension installed.
radius*floatheight*floatparentNodePathCreate a CSGCombiner3D — the root container that boolean-combines its CSG children.
Needs the AI CSG extension installed.
parentNodePathnamestringSet a CSG node's boolean operation (Union / Intersection / Subtraction).
Needs the AI CSG extension installed.
node*NodePathoperation*enum<Union|Intersection|Subtraction>Read a CSG node's scalar config (read-only).
Needs the AI CSG extension installed.
node*NodePathCharacters, timelines & dialogue events
Extension · AI Dialogic · godot-cli install-extension com.IvanMurzak.Godot.MCP.Dialogic
Return a recommended starter timeline + character description (no addon needed).
Needs the AI Dialogic extension installed.
Create + save a DialogicCharacter resource (.dch) at a res:// path.
Needs the AI Dialogic extension installed.
path*stringnamestringCreate + save a DialogicTimeline resource (.dtl) with a few starter text events.
Needs the AI Dialogic extension installed.
path*stringAppend an event (text / character / choice) to an existing timeline resource.
Needs the AI Dialogic extension installed.
path*stringeventType*enum<text|character|choice>textstringRead back the events in a timeline resource (read-only).
Needs the AI Dialogic extension installed.
path*string3D grid · mesh library · cells
Extension · AI GridMap · godot-cli install-extension com.IvanMurzak.Godot.MCP.GridMap
Return the recommended starter config (cell size, default item id) for a new GridMap.
Needs the AI GridMap extension installed.
Create a GridMap node in the edited scene; optional parent, name, cell_size (x, y, z).
Needs the AI GridMap extension installed.
parentNodePathnamestringcellSizeVector3Assign a MeshLibrary resource (by res:// path) to a GridMap.
Needs the AI GridMap extension installed.
node*NodePathpath*stringSet a cell at (x, y, z) to a MeshLibrary item id, with optional orientation.
Needs the AI GridMap extension installed.
node*NodePathcell*Vector3Intitem*intorientationintClear a single cell at (x, y, z).
Needs the AI GridMap extension installed.
node*NodePathcell*Vector3IntClear every cell in a GridMap.
Needs the AI GridMap extension installed.
node*NodePathRead a GridMap's scalar config (read-only).
Needs the AI GridMap extension installed.
node*NodePathRegions · agents · links · nav config
Extension · AI Navigation · godot-cli install-extension com.IvanMurzak.Godot.MCP.Navigation
Create a NavigationRegion2D / NavigationRegion3D node in the edited scene; optional parent, name, dimension (2D/3D).
Needs the AI Navigation extension installed.
parentNodePathdimensionenum<2D|3D>namestringAssign a NavigationPolygon (2D) / NavigationMesh (3D) resource to a region by res:// path.
Needs the AI Navigation extension installed.
node*NodePathpath*stringCreate a NavigationAgent2D / NavigationAgent3D under a parent node.
Needs the AI Navigation extension installed.
parent*NodePathdimensionenum<2D|3D>Update an agent's scalar properties — radius, path_desired_distance, target_desired_distance, max_speed, avoidance_enabled; each clamped/validated.
Needs the AI Navigation extension installed.
node*NodePathradiusfloatmaxSpeedfloatavoidanceEnabledboolCreate a NavigationLink2D / NavigationLink3D with start/end positions.
Needs the AI Navigation extension installed.
parentNodePathstartPosition*Vector3endPosition*Vector3Read a navigation node's scalar config (read-only).
Needs the AI Navigation extension installed.
node*NodePathGPU emitters · configure · emit
Extension · AI Particles · godot-cli install-extension com.IvanMurzak.Godot.MCP.Particles
Return the recommended starter config (amount, lifetime, explosiveness, …) for a 2D/3D emitter.
Needs the AI Particles extension installed.
Create a GpuParticles2D / GpuParticles3D node in the edited scene; optional parent, name, amount, lifetime.
Needs the AI Particles extension installed.
parentNodePathdimensionenum<2D|3D>amountintlifetimefloatUpdate an emitter's scalar properties; each clamped to a valid range.
Needs the AI Particles extension installed.
node*NodePathamountintlifetimefloatexplosivenessfloatStart/stop emission, optionally restarting first.
Needs the AI Particles extension installed.
node*NodePathemitting*boolrestartboolRead an emitter's scalar config (read-only).
Needs the AI Particles extension installed.
node*NodePathVirtual cameras · follow · look-at · priority
Extension · AI PhantomCamera · godot-cli install-extension com.IvanMurzak.Godot.MCP.PhantomCamera
Return the recommended follow-mode + damping starter config (no addon needed).
Needs the AI PhantomCamera extension installed.
Ensure/create the required PhantomCameraHost on a scene Camera3D (the host is what actually drives the real camera).
Needs the AI PhantomCamera extension installed.
camera*NodePathInstantiate a PhantomCamera3D node in the edited scene; optional parent, name, priority.
Needs the AI PhantomCamera extension installed.
parentNodePathnamestringpriorityintSet a PhantomCamera's follow_mode + follow_target (node path).
Needs the AI PhantomCamera extension installed.
node*NodePathfollowMode*stringfollowTargetNodePathSet a PhantomCamera's look_at_mode + look_at_target.
Needs the AI PhantomCamera extension installed.
node*NodePathlookAtMode*stringlookAtTargetNodePathSet a PhantomCamera's priority (higher wins).
Needs the AI PhantomCamera extension installed.
node*NodePathpriority*intRead a PhantomCamera's scalar config (read-only).
Needs the AI PhantomCamera extension installed.
node*NodePathTerrain3D nodes · sculpt height · inspect
Extension · AI Terrain3D · godot-cli install-extension com.IvanMurzak.Godot.MCP.Terrain3D
Return the recommended region size / clipmap / LOD starter config (no addon needed).
Needs the AI Terrain3D extension installed.
Instantiate a Terrain3D node in the edited scene; set its data directory + region size.
Needs the AI Terrain3D extension installed.
parentNodePathdataDirectorystringregionSizeintSculpt/set terrain height at a world position via the terrain's data API.
Needs the AI Terrain3D extension installed.
node*NodePathposition*Vector3height*floatRead a Terrain3D node's region count / size / extents (read-only).
Needs the AI Terrain3D extension installed.
node*NodePath2D TileMapLayer · tileset · cells
Extension · AI Tilemap · godot-cli install-extension com.IvanMurzak.Godot.MCP.Tilemap
Create a TileMapLayer node in the edited scene; optional parent and name.
Needs the AI Tilemap extension installed.
parentNodePathnamestringAssign a TileSet resource (by res:// path) to a TileMapLayer.
Needs the AI Tilemap extension installed.
node*NodePathpath*stringSet a cell at coords (x, y) from a tileset source_id + atlas coords (x, y).
Needs the AI Tilemap extension installed.
node*NodePathcell*Vector2IntsourceId*intatlasCoords*Vector2IntErase the cell at coords (x, y).
Needs the AI Tilemap extension installed.
node*NodePathcell*Vector2IntList the coordinates of all used (non-empty) cells.
Needs the AI Tilemap extension installed.
node*NodePathClear all cells in a TileMapLayer.
Needs the AI Tilemap extension installed.
node*NodePath