Godot

321 tools. 198 can modify or destroy data without limits.

24 destructive tools with no built-in limits. Policy required.

Last updated:

198 can modify or destroy data
123 read-only
321 tools total

Community server · catalogue entry checked 07/07/2026 · full schemas captured for 266 of 321 tools

How to control Godot ↓

What Godot exposes to your agents

Read (123) Write / Execute (174) Destructive / Financial (24)

What Godot costs in tokens

30,024 tokens of tool definitions, loaded on every request
15% of a 200k context window
196 heaviest tool: navigate_character
Critical Risk

The most dangerous Godot tools

198 of Godot's 321 tools can modify, destroy, or commit something on every call — and an agent calls them with no built-in limits.

How to control Godot

PolicyLayer is an MCP gateway — it sits between your AI agents and Godot, and nothing reaches the server without passing your rules. These are the rules we recommend:

Deny destructive operations
{
  "clear_editor_log": {
    "deny_if": [
      {
        "conditions": [],
        "on_deny": "Blocked by default. Requires approval."
      }
    ]
  }
}

Destructive tools should never be available to autonomous agents without human approval.

Rate limit write operations
{
  "add_animation_track": {
    "limits": [
      {
        "counter": "add_animation_track_per_hour",
        "window": "hour",
        "max": 30,
        "scope": "grant"
      }
    ]
  }
}

Prevents bulk unintended modifications from agents caught in loops.

Cap read operations
{
  "analyze_scene_complexity": {
    "limits": [
      {
        "counter": "analyze_scene_complexity_per_minute",
        "window": "minute",
        "max": 60,
        "scope": "grant"
      }
    ]
  }
}

Controls API costs and prevents retry loops from exhausting upstream rate limits.

  1. Create a free account and register Godot — nothing to install.
  2. Add these rules — paste them, or build them visually. Tune the limits to your setup.
  3. Point your MCP client (Claude, Cursor, anything) at your gateway URL.
ENFORCE POLICY ON GODOT →

Instant setup, no code required.

All 321 Godot tools

DESTRUCTIVE 24 tools
Destructive clear_editor_log Clear the editor output log Destructive clear_editor_selection Clear the current editor selection Destructive clear_output Clear the editor output log Destructive delete_export_preset Delete an export preset from the project Destructive delete_node Delete a node from the scene tree Destructive delete_particles Delete a particle system node from the scene Destructive delete_resource Delete a Godot resource file (.tres, .res) from the project Destructive delete_save_file Delete a save file from a specific slot Destructive delete_scene Delete a scene file from the project Destructive delete_script Delete a GDScript file from the project Destructive delete_shader Delete a shader file from the project Destructive delete_theme Delete a theme resource file from the project Destructive remove_animation Remove an animation from an AnimationPlayer Destructive remove_audio_bus Remove an audio bus by index (cannot remove Master at index 0) Destructive remove_audio_player Remove an audio player node from the scene Destructive remove_autoload Remove an autoload singleton from the project Destructive remove_autoload_config Remove an autoload singleton from the project Destructive remove_input_action Remove an input action from the InputMap Destructive remove_navigation_agent Remove a navigation agent node from the scene Destructive remove_navigation_link Remove a navigation link node from the scene Destructive remove_navigation_region Remove a navigation region node from the scene Destructive reset_editor_layout Reset the editor layout to factory defaults Destructive tilemap_clear Clear cells in a TileMap area or the entire map Destructive uninstall_addon Uninstall an addon and remove its files
EXECUTE 39 tools
Execute bake_navigation_mesh Bake the navigation mesh for a NavigationRegion Execute capture_frames 🔴 Game must be running. Capture frames from the running game viewport as PNG files Execute click_button_by_text 🔴 Game must be running. Find and click a button by its text content Execute continue_execution Continue execution when paused at a breakpoint Execute evaluate_expression Evaluate a GDScript expression in the editor or running game context Execute execute_editor_script Execute a GDScript snippet in the editor context (EditorScript) Execute execute_game_script 🔴 Game must be running. Execute a GDScript snippet in the running game context Execute export_for_platform Export the project for a specific platform Execute export_project Export the project using a specific preset Execute force_garbage_collection Force garbage collection and report the amount of memory freed Execute initialize_git_repository Initialize a Git repository in the project directory with a proper .gitignore Execute move_to 🔴 Game must be running. Directly move a node to a target position Execute navigate_character Move a character to a target position using direct movement or pathfinding Execute navigate_to 🔴 Game must be running. Navigate a node to a target position using pathfinding Execute open_scene Open a scene file in the editor Execute play_scene Start playing the current or specified scene. Required before using any runtime tools (get_game_, capture_fram Execute record_gameplay Record gameplay for a duration, capturing input events and/or game state Execute reload_plugin Reload editor plugins (triggers plugin re-initialization) Execute reload_project Rescan the project filesystem for new or changed files Execute replay_gameplay Replay a previously recorded gameplay session Execute replay_recording 🔴 Game must be running. Replay a previously recorded game session Execute run_exported_build Run an exported build and capture its output Execute run_stress_test Run a stress test on the game (spawn entities, measure performance) Execute run_test_scenario Run a multi-step test scenario against the running game Execute select_nodes Select nodes in the editor Execute set_game_node_property 🔴 Game must be running. Set a property on a node in the running game Execute simulate_action Simulate an input action (from InputMap) being pressed/released Execute simulate_gameplay_scenario Run a sequence of gameplay actions (input, wait, check) as an automated scenario Execute simulate_key Simulate a keyboard key press/release in the running game Execute simulate_mouse_click Simulate a mouse click at a screen position Execute simulate_mouse_move Simulate mouse movement to a screen position Execute simulate_sequence Simulate a sequence of input events with timing Execute start_recording 🔴 Game must be running. Start recording game state changes Execute step_into Step into the current function call when paused at a breakpoint Execute step_over Step over the current line when paused at a breakpoint Execute stop_recording 🔴 Game must be running. Stop recording and return the recorded game state data Execute stop_scene Stop the currently playing scene Execute wait_for_game_event Wait for a specific game event (signal, node creation, property change) with timeout Execute wait_for_node 🔴 Game must be running. Wait for a node to appear in the running game tree
WRITE 135 tools
Write add_animation_track Add a track to an animation Write add_audio_bus Add a new audio bus to the audio bus layout Write add_audio_bus_config Add a new audio bus at a specific position Write add_audio_bus_effect Add an audio effect to an audio bus Write add_audio_player Add an AudioStreamPlayer, AudioStreamPlayer2D, or AudioStreamPlayer3D node Write add_autoload Add an autoload singleton to the project Write add_autoload_config Add an autoload singleton to the project Write add_gridmap Add a GridMap node for 3D tile-based level design Write add_input_action Add a new input action with optional deadzone and event mappings Write add_mesh_instance Add a MeshInstance3D with a primitive mesh type Write add_node Add a new node to the scene tree Write add_raycast Add a RayCast2D or RayCast3D node Write add_resource Add a resource (material, texture, etc.) to a node property Write add_scene_instance Add an instance of a scene as a child of a node in the current scene Write add_state_machine_state Add a state to an AnimationNodeStateMachine Write apply_particle_preset Apply a predefined particle effect preset Write assert_game_state Assert multiple game state conditions simultaneously Write assert_node_state Assert that a node property matches an expected value Write assert_screen_text Assert that specific text appears on screen (OCR or UI element check) Write assert_visual_match Assert that a screenshot matches a baseline within a threshold - pass/fail result Write assign_shader_material Create a ShaderMaterial and assign it to a node's material property Write attach_script Attach a GDScript to a node in the scene Write batch_set_property Set a property on all nodes of a given type Write configure_addon Update configuration settings for an installed addon Write configure_android Configure Android-specific project settings including package name, keystore, and permissions Write configure_ios Configure iOS-specific project settings including bundle ID, team ID, and code signing Write configure_web Configure web/HTML5 export settings including canvas resize, threading, and PWA support Write connect_signal Connect a signal from one node to another node's method Write create_animation Create a new animation on an AnimationPlayer Write create_animation_tree Create an AnimationTree node on a given path Write create_export_preset Create a new export preset Write create_particles Create a GPUParticles2D or GPUParticles3D node Write create_platform_export_preset Create a new export preset for a specific platform with optional custom settings Write create_project Create a complete Godot project from scratch with proper structure and configuration Write create_project_from_template Create a new Godot project from an existing template project Write create_project_license Create a LICENSE file for the project Write create_project_readme Generate a README.md file for the project Write create_project_with_assets Create a new Godot project and import specified assets into it Write create_resource Create a new Godot resource Write create_resource_from_template Create a new resource file from a template or with default values Write create_scene Create a new empty scene with a specified root node type Write create_script Create a new GDScript file Write create_shader Create a new Shader resource Write create_test_character Create a test character in the scene at a specified position Write create_theme Create a new Theme resource Write cross_scene_set_property Set a property on nodes of a given type across multiple scenes Write disconnect_signal Disconnect a signal connection Write duplicate_node Duplicate a node in the scene tree Write duplicate_resource Duplicate a resource file Write edit_resource Edit properties of an existing resource Write edit_script Edit an existing GDScript file by replacing a text segment Write edit_shader Edit a shader file by replacing old_text with new_text Write import_resource Import a file as a resource with optional import settings Write install_addon Install an addon from the Asset Library, git repository, or local path Write move_node Move a node to a new parent in the scene tree Write record_visual_regression Record multiple frames over time for visual regression testing Write remove_breakpoint Remove a breakpoint from a GDScript file at a specific line Write rename_node Rename a node in the scene tree Write reorder_autoloads Set the loading order of autoload singletons Write reset_project_setting Reset a project setting to its default value Write save_editor_layout Save the current editor layout under a name Write save_game_state Save the current game state to a numbered slot with optional metadata Write save_scene Save the current scene or save it to a new path Write scaffold_project_structure Create a standard folder structure for a Godot project Write set_anchor_preset Set anchor preset on a Control node Write set_animation_keyframe Set a keyframe in an animation track Write set_anti_aliasing Configure anti-aliasing settings (MSAA, FXAA, TAA) Write set_audio_bus Configure audio bus properties (volume, mute, solo, bypass) Write set_audio_bus_layout Replace the entire audio bus layout with the given bus definitions Write set_audio_bus_volume Set the volume of a specific audio bus Write set_breakpoint Set a breakpoint in a GDScript file at a specific line, optionally with a condition Write set_build_configuration Set the build configuration preset Write set_collision_layer_name Assign a human-readable name to a collision layer (1-32) Write set_custom_features Set custom feature tags for conditional compilation and export Write set_debug_options Configure debug and optimization options Write set_default_gravity Set the default gravity magnitude in project settings Write set_default_linear_damp Set the default linear damping for physics bodies Write set_editor_layout Switch the editor to a specific workspace layout Write set_editor_scale Set the editor UI scale factor Write set_editor_theme Set the editor color theme Write set_error_handling Configure how the editor handles errors and warnings during gameplay Write set_export_filter Set which resources to include in exports Write set_font_size Set the editor font size in pixels Write set_gi_quality Set global illumination quality preset Write set_gravity Set the default gravity vector for the physics world Write set_input_action Add or modify an input action and its event mappings Write set_input_map Replace the entire input map with the given actions and events Write set_main_scene Set the project's main scene Write set_material_3d Create and apply a StandardMaterial3D or ShaderMaterial to a mesh Write set_navigation_layers Set navigation layers and/or mask for pathfinding filtering Write set_node_groups Set the groups a node belongs to (replaces existing groups) Write set_node_preset Apply a configuration preset to a node (e.g. 'platformer_body', 'top_down_camera') Write set_particle_color_gradient Set a color gradient on a particle system Write set_particle_emission_shape Set the emission shape for a particle system Write set_particle_material Set or create a ParticleProcessMaterial for a particle system Write set_particle_velocity_curve Set a velocity curve for a particle system Write set_physics_engine Set which physics engine backend to use Write set_physics_fps Set the physics simulation tick rate Write set_physics_layers Set physics collision layers and masks on a node Write set_physics_material Create and set a physics material on a node Write set_profiler_settings Enable or disable built-in profilers Write set_project_setting Set a project setting value Write set_project_setting_config Set a project setting value and save project.godot Write set_remote_debug Configure remote debugging connection Write set_renderer Set the rendering method/renderer for the project Write set_rendering_quality Apply a rendering quality preset (sets multiple settings at once) Write set_resource_import_settings Update import settings for a resource file and reimport Write set_scene_group Add or remove a node from a group Write set_scene_meta Set metadata on the current scene's root node Write set_scene_unique_name Toggle the unique name flag on a node (accessible as %NodeName) Write set_scripting_backend Set the scripting backend for the project Write set_shader_param Set a shader parameter (uniform) on a ShaderMaterial Write set_shadow_quality Set shadow rendering quality preset Write set_theme_color Set a color in a theme for a specific control type Write set_theme_constant Set a constant value in a theme Write set_theme_font_size Set a font size in a theme Write set_theme_stylebox Set a StyleBox in a theme Write set_tree_parameter Set a parameter on an AnimationTree (e.g. blend amount, state) Write set_viewport_size Set the game viewport dimensions and stretch settings Write set_visual_baseline Set or update a visual baseline for future comparisons Write set_window_settings Configure the application window size, mode, and vsync Write setup_camera_3d Add and configure a Camera3D node Write setup_collision Add and configure a collision shape on a node Write setup_environment Configure the WorldEnvironment for the 3D scene Write setup_lighting Add a light node (DirectionalLight3D, OmniLight3D, SpotLight3D) Write setup_navigation_agent Add a NavigationAgent2D or NavigationAgent3D to a node Write setup_navigation_link Add a NavigationLink2D or NavigationLink3D for connecting navigation regions Write setup_navigation_region Add a NavigationRegion2D or NavigationRegion3D with optional configuration Write setup_physics_body Add and configure a physics body on a node Write setup_project_dependencies Install and configure project addons/dependencies Write tilemap_fill_rect Fill a rectangular area of a TileMap with a tile Write tilemap_set_cell Set a single cell in a TileMap Write track_object_creation Track object creation for a specific class over a duration. Records a baseline count; poll get_object_count af Write update_addon Update an installed addon to its latest version Write update_property Update a property value on a node
READ 123 tools
Read analyze_scene_complexity Analyze a scene's complexity (node count, depth, resource usage) Read analyze_signal_flow Analyze signal flow and connections in a scene Read batch_get_properties 🔴 Game must be running. Get multiple properties from multiple nodes in one call Read compare_save_states Compare two save states and return a diff of their contents Read compare_screenshots Compare two screenshots pixel-by-pixel and return a diff result with mismatch percentage Read detect_circular_dependencies Detect circular dependencies in the project (scripts, scenes, resources) Read find_memory_leaks Analyze the scene tree and object graph to find potential memory leaks (orphan nodes, leaked resources) Read find_navigation_path Find a navigation path between two points Read find_nearby_nodes 🔴 Game must be running. Find nodes within a radius of a world position Read find_node_references Find all references to a node across scenes and scripts Read find_nodes_by_script 🔴 Game must be running. Find all nodes in the game that use a specific script Read find_nodes_by_type Find all nodes of a specific type in the scene Read find_nodes_in_group Find all nodes belonging to a specific group Read find_script_references Find all scenes and nodes that use a specific script Read find_signal_connections Find all signal connections in the scene Read find_ui_elements 🔴 Game must be running. Find UI elements in the running game by type, text, or name Read find_unused_resources Find resources in the project that are not referenced by any scene or script Read get_all_project_settings Get all project settings, optionally filtered by prefix Read get_animation_info Get detailed information about an animation including tracks and keyframes Read get_animation_tree_structure Get the structure of an AnimationTree including state machines and blend trees Read get_audio_bus_effects Get all effects on a specific audio bus with their properties Read get_audio_bus_layout Get the current audio bus layout with all buses and their effects Read get_audio_info Get information about an audio node (player type, stream, playback state) Read get_audio_settings Get all audio settings including bus layout, default bus, and driver info Read get_autoload 🔴 Game must be running. Get properties of an autoload singleton from the running game Read get_autoloads Get all autoload singletons configured in the project Read get_available_node_types Get all available node types, optionally filtered by category Read get_build_command Get the CLI command to export/build the project for a specific platform Read get_build_settings Get all build configuration settings (debug/release, scripting backend, features) Read get_call_stack Get the current call stack with local variables when the game is paused at a breakpoint Read get_class_hierarchy Get the full inheritance chain for a node type Read get_collision_info Get collision information for a physics body Read get_collision_layers Get all collision layer names (1-32) Read get_debug_settings Get all debug settings (remote debug, profilers, error handling, logging) Read get_editor_errors Validate all GDScripts in the current scene tree and return compilation errors Read get_editor_log Get entries from the editor log, optionally filtered by type Read get_editor_performance Get editor performance snapshot (FPS, timing, memory usage, object counts, render stats, physics activity) Read get_editor_screenshot Take a screenshot of the Godot editor window Read get_editor_selection Get the currently selected nodes in the editor Read get_editor_settings Get all editor settings (theme, layout, font, scale, etc.) Read get_export_info Get export project information (platform, features, resources) Read get_export_templates Get available export templates for the current Godot version Read get_filesystem_tree Get the project filesystem tree structure Read get_game_node_properties 🔴 Game must be running. Get all properties of a node in the running game Read get_game_scene_tree 🔴 Game must be running. Get the scene tree of the running game (runtime state) Read get_game_screenshot Take a screenshot of the running game viewport Read get_input_actions Get all input actions defined in the InputMap Read get_input_map Get all input actions and their mapped events from the InputMap Read get_loaded_scenes Get a list of all currently loaded scenes in the editor Read get_memory_usage Get detailed memory usage breakdown by category (static, video, textures, buffers, objects) Read get_navigation_info Get navigation map information and navigation mesh data Read get_node_constants Get all constants defined on a node type Read get_node_default_properties Get the default property values for a node type Read get_node_enums Get all enumerations defined on a node type Read get_node_groups Get all groups a node belongs to Read get_node_methods Get all public methods on a node type with their signatures Read get_node_properties Get all properties of a node Read get_node_signals Get all signals defined on a node type with their argument signatures Read get_object_count Get count of live objects, optionally filtered by class name Read get_open_scripts Get list of scripts currently open in the script editor Read get_output_log Get the contents of the editor output log Read get_particle_info Get information about a particle system's configuration Read get_performance_monitors Get all performance monitor values (FPS, memory, physics, rendering, navigation) Read get_physics_layers Get physics layer and mask information for a node Read get_physics_material Get the physics material properties of a node Read get_physics_settings Get all physics engine settings (gravity, FPS, engine, layers, damping) Read get_platform_capabilities Get the available features and capabilities for a specific platform Read get_platform_export_templates Get available export templates installed for the current Godot version Read get_platform_settings Get platform-specific settings for a target platform Read get_project_info Get project metadata including name, version, engine version, and main scene Read get_project_setting Get a single project setting value by key (e.g. 'display/window/size/viewport_width') Read get_project_settings Get all project settings (project.godot values) Read get_project_statistics Get project statistics (file counts, sizes, node types, script languages, etc.) Read get_project_templates List all available project templates that can be used with create_project Read get_rendering_info Get GPU info, VRAM usage, draw calls, and rendering statistics Read get_rendering_settings Get all current rendering settings (renderer, quality, viewport, etc.) Read get_resource_dependencies Get all dependencies of a resource file Read get_resource_import_settings Get the current import settings for a resource file Read get_resource_preview Get a preview thumbnail of a resource Read get_resource_properties Get all serializable properties for a resource type with their types Read get_resource_types Get all registered resource types in the engine Read get_scene_dependencies Get all dependencies of a scene file (scripts, resources, sub-scenes) Read get_scene_file_content Read the raw .tscn/.scn file content of a scene Read get_scene_groups Get all groups used in a scene and which nodes belong to each Read get_scene_inheritance Get the scene inheritance chain (instantiated scenes, inherited scenes) Read get_scene_meta Get metadata stored on a scene's root node Read get_scene_tree Get the node tree of the specified or currently open scene Read get_shader_params Get all shader parameters (uniforms) and their current values Read get_signals Get all signals and their connections for a node Read get_test_report Get aggregated results of all test runs in this session Read get_theme_info Get information about a theme including all its overrides Read get_visual_diff_report Get the aggregated visual regression report from all assert_visual_match calls in this session Read list_addons List all installed addons/plugins with their versions and status Read list_animations List all animations on an AnimationPlayer Read list_breakpoints List all active breakpoints across all scripts Read list_export_presets List all configured export presets Read list_resources List resources of a specific type in the project Read list_save_files List all save files with their metadata Read list_scripts List all GDScript files in the project with class info Read list_shaders List all shader files in the project Read load_editor_layout Load a previously saved editor layout Read load_game_state Load a game state from a numbered save slot Read monitor_properties 🔴 Game must be running. Monitor specific properties on a game node for changes over time Read project_path_to_uid Convert a project file path to its UID Read read_resource Read a Godot resource file (.tres, .res) and get its properties Read read_script Read the contents of a GDScript file Read read_shader Read the contents of a shader file Read search_files Search for files in the project by name pattern or content Read search_in_files Search for text across project files Read take_screenshot_with_context Take a screenshot with scene context metadata (node tree, properties of specified nodes) Read tilemap_get_cell Get the tile data at a specific cell Read tilemap_get_info Get TileMap configuration and TileSet information Read tilemap_get_used_cells Get all used cell coordinates in a TileMap Read uid_to_project_path Convert a Godot UID to a project file path Read validate_build_settings Validate current build settings and return any errors or warnings Read validate_export Validate the project for export (check for missing resources, errors) Read validate_export_for_platform Validate the project for export on a specific platform with detailed checks Read validate_platform_build Validate the project for building on a specific platform, checking for issues Read validate_platform_export Validate the project for export on a specific platform, checking for issues Read validate_project_structure Validate a Godot project's folder structure and configuration for correctness Read validate_script Validate a GDScript file for syntax errors Read validate_shader Validate a shader file for compilation errors Read watch_signals 🔴 Game must be running. Watch for signal emissions from a game node

Related servers

Other MCP servers with similar tools — same risk classification, starter policies for each.

Questions about Godot

Can an AI agent delete data through the Godot MCP server? +

Yes. The Godot server exposes 24 destructive tools including clear_editor_log, clear_editor_selection, clear_output. These permanently remove resources with no undo. PolicyLayer blocks destructive tools by default so they never reach the upstream server.

How do I prevent bulk modifications through Godot? +

The Godot server has 135 write tools including add_animation_track, add_audio_bus, add_audio_bus_config. Set a rate limit in your policy -- for example, 10 calls per hour prevents an agent from making more than 10 modifications per hour. PolicyLayer enforces this at the gateway, before calls reach Godot.

How many tools does the Godot MCP server expose? +

321 tools across 4 categories: Destructive, Execute, Read, Write. 123 are read-only. 198 can modify, create, or delete data.

How do I enforce a policy on Godot? +

Register the Godot MCP server in PolicyLayer, apply the suggested rules above (adjust the limits to your use case), and point your AI client at the PolicyLayer proxy URL instead of the server directly. Your agents keep the same tools; PolicyLayer evaluates every call against policy before it executes. Nothing to install, live in minutes.

Enforce policy on every Godot tool call.

Deterministic rules across all 321 Godot tools. Per-identity grants. Full audit log. Live in minutes. Nothing to install.

Instant setup, no code required.

321 Godot tools catalogued and risk-classified — across an index of 46,500+ MCP servers.

// WHERE THIS COMES FROM

These policies come from Godot's registry record.

The record behind this page: verified identity, auth posture, risk grade, every tool classified, recommended policy — re-checked continuously.

Teams ship this data inside their own products. See what a licence covers →

// GET IN TOUCH

Have a question or want to learn more? Send us a message.

Message sent.

We'll get back to you soon.