Godot MCP
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| GODOT_PATH | Yes | Path to the Godot executable | |
| GODOT_PROJECT_PATH | Yes | Path to the Godot project directory |
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 | {
"listChanged": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| godot_get_versionB | Get current Godot Engine version, build info, mode, and project path. |
| godot_get_project_settingsB | Query settings from project.godot (application name, display, physics, etc). |
| godot_set_project_settingA | Write or update a configuration setting in project.godot. |
| godot_list_project_filesA | List files in the Godot project tree matching patterns and extensions. |
| godot_list_nodesA | List all nodes in the active scene tree with hierarchy, types, and properties. |
| godot_get_nodeA | Inspect a specific node's type, script, groups, signals, and properties. |
| godot_create_nodeB | Create and add a new node of any Godot class to the active scene. |
| godot_modify_nodeA | Update properties on an existing node in the active scene. |
| godot_delete_nodeA | Remove a node from the active scene tree. |
| godot_connect_signalC | Connect a signal from a source node to a target node method. |
| godot_instantiate_sceneA | Instantiate a packed scene (.tscn / .scn) as a child node. |
| godot_save_sceneA | Save the currently edited scene to disk. |
| godot_open_sceneC | Open a scene file (.tscn) in the Godot Editor workspace. |
| godot_create_sceneC | Create a brand new scene file with root node and save to disk. |
| godot_reparent_nodeB | Move a node to a new parent in the active scene tree. |
| godot_duplicate_nodeB | Deep duplicate a node with signal and script flags. |
| godot_set_node_ownerB | Set or synchronize the owner property of a node. |
| godot_diff_sceneB | Compare two scene files (.tscn) and generate structural diffs. |
| godot_validate_scriptB | Parse and validate GDScript code for syntax and type errors. |
| godot_create_scriptA | Create a new GDScript file with template code and class extends. |
| godot_attach_scriptA | Attach or detach a GDScript to/from an active node. |
| godot_reload_scriptsB | Force reload modified GDScript resources in memory. |
| godot_get_node_script_infoB | Inspect exported properties, methods, constants, and signals. |
| godot_lsp_queryC | Query symbols, definitions, references, or hover documentation. |
| godot_lsp_renameA | Perform cross-file semantic symbol rename. |
| godot_get_class_infoB | Query class inheritance, properties, methods, and signals from ClassDB. |
| godot_get_documentationA | Fetch built-in documentation for classes, methods, and properties. |
| godot_evaluate_expressionC | Evaluate arbitrary GDScript expression safely at runtime. |
| godot_run_projectB | Launch project or scene in debug mode via CLI. |
| godot_run_testsC | Execute test scenes or unit test runners headlessly. |
| godot_take_screenshotB | Capture full screenshot of active game or editor viewport. |
| godot_generate_gut_testB | Scaffold GUT test script for a target class or script. |
| godot_run_gut_testsC | Execute GUT test suites and capture test results. |
| godot_validate_shaderA | Compile and check Godot Shader Language code for errors. |
| godot_create_materialC | Create StandardMaterial3D, ORMMaterial3D, ShaderMaterial, or CanvasItemMaterial. |
| godot_create_shaderB | Create custom Godot shader (.gdshader) with matching material. |
| godot_set_shader_paramB | Set shader parameter uniform values on a ShaderMaterial. |
| godot_configure_particlesC | Configure GPUParticles2D/3D or CPUParticles2D/3D node emission. |
| godot_configure_environmentB | Adjust WorldEnvironment background, glow, tonemap, and ambient light. |
| godot_configure_cameraC | Create and configure Camera2D or Camera3D viewports and FOV. |
| godot_configure_render_settingsA | Tune anti-aliasing, shadow quality, V-Sync, and upscaling. |
| godot_capture_viewportA | Capture high-resolution viewport frame for AI Vision inspection. |
| godot_configure_lightmap_giC | Configure 3D GI pipelines (LightmapGI, VoxelGI, ReflectionProbe). |
| godot_bake_lightmapsC | Trigger lightmap or voxel GI baking for the active scene. |
| godot_setup_xr_rigB | Scaffold XROrigin3D, XRCamera3D, and XRController3D tracking rig. |
| godot_configure_xr_passthroughC | Configure OpenXR passthrough mode and foveated rendering. |
| godot_dispatch_compute_shaderB | Execute compute shader on GPU via low-level RenderingDevice API. |
| godot_inspect_rendering_deviceA | Query GPU RenderingDevice device name, vendor, limits, and capabilities. |
| godot_scatter_multimeshB | High-performance GPU instanced scattering across a 3D bounding area. |
| godot_configure_lod_managerC | Configure visibility ranges, LOD distance thresholds, and cross-fade modes. |
| godot_reimport_assetC | Trigger reimport of asset files with custom import parameters. |
| godot_create_collision_polygonC | Generate CollisionPolygon2D/3D shapes from sprite alpha or mesh. |
| godot_configure_gltf_importA | Configure GLTF/GLB 3D model import presets. |
| godot_instantiate_modelC | Instantiate a 3D model asset into the active scene. |
| godot_audit_assetsB | Scan project for unused assets, missing dependencies, or broken paths. |
| godot_clean_orphansB | Remove or quarantine unreferenced and orphaned asset files. |
| godot_get_texture_infoB | Query dimensions, format, VRAM compression, and mipmaps. |
| godot_create_animationC | Create or modify tracks and keyframes in an AnimationPlayer. |
| godot_configure_animation_treeC | Setup state machines, blend spaces, and transitions in AnimationTree. |
| godot_configure_audio_busC | Add, rename, mute, solo, or route AudioServer buses. |
| godot_set_bus_effectB | Add or adjust real-time audio effects on an audio bus. |
| godot_get_audio_layoutA | Query complete AudioServer bus hierarchy and effect chains. |
| godot_create_tilemap_layerC | Add a TileMapLayer node with TileSet binding. |
| godot_set_tilemap_cellsB | Place or clear tiles on a TileMapLayer coordinate grid. |
| godot_get_tilemap_cellsA | Read placed cell coordinates and atlas coords from TileMapLayer. |
| godot_configure_tileset_terrainC | Configure TileSet terrain sets, terrain modes, and auto-tiling. |
| godot_create_navigation_regionB | Create NavigationRegion2D or NavigationRegion3D with NavigationMesh. |
| godot_bake_navmeshC | Trigger navigation mesh baking on a NavigationRegion. |
| godot_configure_navigation_obstacleC | Configure NavigationObstacle2D or NavigationObstacle3D dynamic avoidance. |
| godot_configure_gridmapA | Assign MeshLibrary, set cell sizes, and place 3D grid tiles. |
| godot_create_curve_pathB | Construct Path2D or Path3D curves with control points. |
| godot_cast_ray_3dA | Perform 3D raycast query against PhysicsDirectSpaceState3D. |
| godot_cast_shape_3dC | Perform 3D shapecast (sweep test) in physics space. |
| godot_get_body_physics_state_3dB | Inspect transform, linear/angular velocity, and contacts. |
| godot_set_physics_debug_modeB | Enable/disable visual physics collision shape debugging. |
| godot_inspect_skeletonA | Query bone hierarchies, rest poses, transforms, and socket names. |
| godot_configure_bone_attachmentC | Attach props, weapons, or collision nodes to named Skeleton3D bones. |
| godot_setup_inverse_kinematicsC | Configure SkeletonIK3D chains with target nodes and magnet vectors. |
| godot_configure_physics_jointC | Create and configure 3D physics joints (Pin, Hinge, Slider, ConeTwist, 6DOF). |
| godot_generate_ragdollB | Automatically construct PhysicalBone3D hierarchies from Skeleton3D. |
| godot_find_elementsB | Locate UI elements by text, name, class, group, or role. |
| godot_interact_nodeC | Perform click, type_text, drag_to, or scroll on a located node. |
| godot_wait_for_conditionB | Auto-wait for node appearance, property thresholds, or signals. |
| godot_assert_node_stateB | Assert properties, visibility, disabled state, or bounds. |
| godot_simulate_inputC | Inject simulated mouse, keyboard, or joypad events. |
| godot_draw_debug_shapesB | Render temporary 2D/3D debug shapes with colors and durations. |
| godot_clear_debug_shapesB | Remove all active runtime debug drawing shapes. |
| godot_configure_multiplayer_spawnerD | Setup automated network node spawning paths. |
| godot_configure_multiplayer_synchronizerB | Configure synced properties and replication intervals. |
| godot_simulate_network_conditionsC | Inject simulated latency, jitter, and packet loss. |
| godot_scaffold_state_machineC | Construct modular hierarchical finite state machine nodes. |
| godot_create_dialogue_resourceA | Generate branching dialogue JSON / Resource files. |
| godot_create_csg_shapeB | Construct Constructive Solid Geometry (CSGBox, CSGSphere, etc). |
| godot_generate_procedural_meshA | Generate custom procedural 3D meshes using SurfaceTool. |
| godot_get_performance_metricsA | Query FPS, memory, draw calls, and physics monitors. |
| godot_audit_orphan_nodesB | Detect memory leaks from unparented orphan nodes in SceneTree. |
| godot_inspect_vram_usageB | Query VRAM texture, buffer, and render target allocations. |
| godot_capture_profiler_traceA | Record engine frame timeline trace slices for performance bottleneck analysis. |
| godot_create_themeC | Create Theme resource with color, font, and stylebox overrides. |
| godot_apply_theme_overrideB | Apply theme override directly to a Control node in active scene. |
| godot_get_input_actionsB | Query all configured project input actions and key bindings. |
| godot_configure_input_actionC | Add, remove, or modify input actions and event bindings. |
| godot_get_autoloadsA | Query all registered Autoload singletons. |
| godot_set_autoloadB | Add, remove, or reorder Autoload singletons in project.godot. |
| godot_get_pluginsA | Discover installed editor plugins in res://addons/. |
| godot_set_plugin_statusA | Enable or disable an editor plugin. |
| godot_get_translationsA | Query registered localization files (.translation / .csv). |
| godot_add_translationB | Register a localization translation file in project.godot. |
| godot_get_uidB | Convert resource path to native Godot uid:// identifier. |
| godot_resolve_uidA | Resolve uid:// identifier back into its file path. |
| godot_get_dependenciesB | Query dependency list for a scene, resource, or script. |
| godot_get_export_presetsA | Query export presets defined in export_presets.cfg. |
| godot_export_projectC | Export project binary for target preset via CLI. |
| godot_focus_nodeA | Select node in scene tree and focus in Inspector dock. |
| godot_set_editor_selectionC | Set selected nodes in the 2D/3D editor viewport. |
| godot_get_selected_nodesA | Query paths of all nodes currently selected in Editor. |
| godot_set_selected_nodesA | Replace current editor node selection. |
| godot_undoC | Trigger undo on the active Godot Editor undo/redo manager. |
| godot_redoB | Trigger redo on the active Godot Editor undo/redo manager. |
| godot_get_editor_layoutA | Query active editor dock positions and open main screens. |
| godot_set_editor_layoutB | Switch editor main screen or dock arrangements. |
| godot_get_node_signalsA | Query all signals declared or inherited on a live node. |
| godot_get_signal_connectionsB | Query all incoming and outgoing signal connections. |
| godot_search_asset_libraryA | Search the official Godot Asset Library for plugins, shaders, templates, and tools. |
| godot_get_asset_detailsA | Retrieve full details, previews, description, and download metadata for an asset from the Godot Asset Library. |
| godot_install_asset_packageA | Download and install a community asset or plugin package into the active project, with auto-plugin registration. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
| fix_scene_warnings | Guided workflow for inspecting active nodes and automatically clearing configuration warnings. |
| create_rich_ui | Guided workflow for constructing responsive, themed Godot 4 GUI layouts. |
| scaffold_character | Guided workflow for setting up a 2D or 3D character controller. |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
| resource_audio_layout | Dynamic MCP resource providing current AudioServer bus hierarchy and effect chains JSON. |
| resource_performance_metrics | Dynamic MCP resource providing real-time Godot performance telemetry JSON. |
| resource_project_settings | Dynamic MCP resource providing complete project.godot configuration key-value JSON. |
| resource_project_autoloads | Dynamic MCP resource providing all active Autoload singletons in the project. |
| resource_project_plugins | Dynamic MCP resource providing installed editor plugins in res://addons/. |
| resource_scene_tree | Dynamic MCP resource providing live scene tree hierarchy graph JSON. |
| resource_editor_selection | Dynamic MCP resource providing currently selected nodes in the Godot Editor. |
| resource_editor_layout | Dynamic MCP resource providing active editor docks and main screen configuration. |
| resource_vram_usage | Dynamic MCP resource providing VRAM texture and buffer allocation breakdown. |
| resource_input_map | Dynamic MCP resource providing all configured input actions and key bindings. |
| resource_export_presets | Dynamic MCP resource providing export presets defined in export_presets.cfg. |
| resource_active_scene_tree | Dynamic MCP resource providing live node hierarchy of the active scene. |
| resource_editor_log | Dynamic MCP resource providing recent Godot engine/editor log output. |
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/mcintalmo/godot-engine-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server