The zero-footprint design is the deciding feature: most Godot servers with runtime control ship as an addon you install into the project and commit, while this one injects a transient bridge over npx, so there is nothing to manage in version control. And the runtime control is genuinely full — take_screenshot, simulate_input, get_scene_tree and run_script let an agent see and act on the running game, not just launch it and read logs.
A Godot server with full runtime control: 36 tools spanning launching and attaching to a running project, live inspection (screenshots, scene tree, UI elements), input simulation and GDScript execution, plus scene-file editing, autoloads, project discovery and validation. It injects a transient bridge, so nothing is committed to your project.
- Run and observe a live game: run_project spawns it with stdout/stderr captured, attach_project injects the bridge into a process you launched yourself, get_debug_output reads the logs, and stop_project / detach_project tear it down
- See what is happening: take_screenshot captures the running viewport as a PNG, get_scene_tree and get_ui_elements walk the live scene, simulate_input drives sequential input actions, and run_script executes custom GDScript in the running project with full scene access
- Scene files edited without running: create_scene, add_node (saves automatically), set_node_properties, get_node_properties, delete_nodes, duplicate_node, attach_script, load_sprite and save_scene, with batch_scene_operations to do a set in one Godot process instead of chaining calls
- Signals wired up: get_node_signals lists a node's signals and connections, and connect_signal / disconnect_signal persist changes to the scene
- Project understanding: list_projects finds projects by their project.godot, get_project_info and get_project_settings parse metadata and config, get_project_files returns the file tree, search_project does substring search, and get_scene_dependencies parses a .tscn for its ext_resource references
- Autoloads managed — list_autoloads, add_autoload, update_autoload and remove_autoload — export_mesh_library builds a MeshLibrary from MeshInstance3D nodes, and validate checks GDScript syntax or scene integrity headlessly
- launch_editor opens the Godot editor GUI for the human when a task needs it
Godot 4.x installed, with GODOT_PATH pointing at the executable. Node, run as npx godot-mcp-runtime — no Godot addon, no project modifications, nothing committed to version control. No account.
One command — npx -y godot-mcp-runtime
