Godot MCP
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| GODOT_PATH | No | Path to Godot executable (optional, auto-detected) |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| add_animation_libraryC | Add animation library to player. |
| add_animation_trackC | Add track to animation. |
| add_audio_busC | Add audio bus to layout. |
| add_autoloadC | Add an autoload entry. |
| add_bus_effectC | Add effect to audio bus. |
| add_input_bindingA | Add key/mouse/joypad binding to action. |
| add_nodeC | Add a node to a scene. |
| add_script_exportB | Add @export variable to GDScript. |
| add_script_functionC | Append a function to GDScript. |
| add_script_signalB | Add a signal declaration to GDScript. |
| add_shader_graph_nodeB | Add a node to a VisualShader graph. 40+ node types available (constants, math, textures, effects). |
| add_theme_typeC | Add a control type (font size/color) to a Theme. |
| add_tileset_sourceB | Add an atlas source (texture) to a TileSet. |
| add_translation_keyA | Append a translation key/row to an existing CSV. |
| attach_scriptC | Attach a script to a node. |
| capture_screenshotC | Capture screenshot of running game. |
| clone_nodeC | Deep-clone a node in a scene. |
| compile_shaderA | Compile (reimport) a .gdshader via Godot editor or local validation. |
| connect_shader_graph_nodesB | Connect two node ports in a VisualShader graph. |
| connect_signalC | Connect a signal between nodes. |
| create_animationB | Create Animation .tres resource. |
| create_atlas_textureC | Create AtlasTexture .tres. |
| create_audio_bus_layoutD | Create AudioBusLayout. |
| create_camera_attributesB | Create CameraAttributes (Practical or Physical) for 3D camera DOF and auto-exposure. |
| create_collision_polygonC | Create CollisionPolygon2D. |
| create_curveC | Create Curve .tres. |
| create_directoryC | Create a directory in project. |
| create_environmentC | Create Environment from preset. |
| create_gdextensionB | Create a .gdextension config file. |
| create_gradientC | Create Gradient .tres. |
| create_grid_mapC | Create a GridMap node for 3D tile-based level design. |
| create_image_textureA | Create an ImageTexture .tres pointing at an image file. |
| create_jointB | Create a physics joint. |
| create_mesh_primitiveA | Create 3D mesh resource: Box, Capsule, Cylinder, Plane, Sphere, Torus, etc. (11 types). |
| create_multimeshB | Create a MultiMesh .tres resource. |
| create_nav_linkB | Create a NavigationLink3D between two points. |
| create_nav_meshC | Create NavigationMesh .tres. |
| create_noise_textureC | Create NoiseTexture2D. |
| create_physics_materialC | Create PhysicsMaterial. |
| create_resourceC | Create a resource from template. |
| create_sceneC | Create a new scene from template. |
| create_scriptC | Create a new script from template. |
| create_shaderB | Create a new .gdshader from template. |
| create_shader_includeB | Create a .gdshaderinc file. |
| create_skyB | Create a Sky .tres with a procedural or panorama sky material. |
| create_spring_armA | Create a SpringArm3D for smooth camera follow. |
| create_sprite_framesC | Create a SpriteFrames .tres resource with named animations. |
| create_themeB | Create a Theme .tres resource. |
| create_tilesetB | Create a TileSet .tres resource. |
| create_translationC | Create translation CSV. |
| create_vehicle_bodyC | Create a VehicleBody3D with VehicleWheel nodes for car physics. |
| create_visual_shaderB | Create a new VisualShader .tres graph file. |
| create_worldC | Create World3D .tres. |
| create_world_environmentC | Create a .tscn with a WorldEnvironment node referencing an Environment. |
| delete_fileA | Delete a file with .bak backup. |
| diff_animationB | Compare two Animation .tres files. |
| diff_project_configA | Compare two config files (project.godot, .cfg, .import) ignoring whitespace and comments. |
| diff_resourceC | Compare two resource files. |
| diff_sceneC | Compare two scene files. |
| diff_scriptA | Compare two GDScript files line-by-line. |
| disconnect_shader_graph_nodesB | Disconnect two node ports in a VisualShader graph. |
| disconnect_signalD | Disconnect a signal. |
| duplicate_resourceB | Duplicate a .tres resource. |
| duplicate_sceneC | Duplicate a scene file. |
| edit_sceneC | Apply batch operations to a scene. |
| editor_add_autoloadC | Add an autoload singleton via editor API. |
| editor_add_input_actionC | Add an input action via editor API. |
| editor_add_nodeC | Add a node to the currently open scene in editor. |
| editor_attach_scriptB | Attach a script to a node in the editor. |
| editor_bake_lightmapsB | Trigger lightmap baking. |
| editor_bake_navigationA | Bake navigation meshes for all NavigationRegion nodes in current scene. |
| editor_clear_errorsA | Clear the editor error list. |
| editor_connect_signalB | Connect a signal between nodes in the editor. |
| editor_copyA | Copy selected nodes to the editor clipboard. |
| editor_create_cameraA | Create a Camera3D node in the open scene. |
| editor_create_csg_boxA | Create a CSGBox3D node in the open scene. |
| editor_create_csg_cylinderB | Create a CSGCylinder3D node in the open scene. |
| editor_create_csg_mergeA | Create a CSGCombiner3D node in the open scene. |
| editor_create_csg_polygonB | Create a CSGPolygon3D node in the open scene. |
| editor_create_csg_sphereA | Create a CSGSphere3D node in the open scene. |
| editor_create_folderB | Create a directory in the project via editor filesystem. |
| editor_create_gpu_particlesA | Create a GPUParticles3D node in the open scene. |
| editor_create_mesh_instanceB | Create a MeshInstance3D node in the open scene. |
| editor_create_multiplayer_spawnerA | Create a MultiplayerSpawner3D node in the open scene. |
| editor_create_multiplayer_synchronizerB | Create a MultiplayerSynchronizer3D node in the open scene. |
| editor_create_sceneB | Create and open a new scene in the editor. |
| editor_create_scriptB | Create and open a new GDScript in the editor. |
| editor_cutA | Cut selected nodes to the editor clipboard (with undo). |
| editor_debug_breakB | Stop execution (break) in debugger. |
| editor_debug_continueB | Resume execution in debugger. |
| editor_debug_stepB | Step into next line in debugger. |
| editor_debug_step_overA | Step over current line in debugger. |
| editor_delete_assetC | Delete a file or folder via editor. |
| editor_delete_selectedA | Delete currently selected nodes. |
| editor_disable_pluginB | Disable a named editor plugin. |
| editor_disconnect_signalC | Disconnect a signal between nodes. |
| editor_duplicate_assetC | Duplicate a file via editor filesystem. |
| editor_duplicate_nodeB | Duplicate a node with children, scripts, and signals. |
| editor_enable_pluginB | Enable a named editor plugin. |
| editor_evaluate_expressionA | Evaluate a GDScript expression in debugger/editor context. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/yanhuifair/Godot-MCP'
If you have feedback or need assistance with the MCP directory API, please join our Discord server