Open Godot MCP
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||
Capabilities
Features and capabilities supported by this server
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
| logging | {} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| extensions | {
"io.modelcontextprotocol/ui": {}
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| godot_editor_readB | Read-only editor state. Actions: state,selection,open_scenes,viewport,performance. |
| godot_editor_editA | Write to editor (gated, Undo/Redo). Actions: open_scene,save_scene,save_all,set_selection,focus_node,quit. |
| godot_sceneC | Scene file ops (.tscn). Actions: create,read,save,save_as,hierarchy,instantiate. path=res://. |
| godot_node_readB | Read editor scene tree nodes. Actions: inspect,tree,find,children,properties,get_signals,get_groups,find_in_group. node_path=/root/.... |
| godot_node_editB | Edit editor nodes (gated, Undo/Redo). Actions: create,create_batch,delete,reparent,rename,duplicate,set_property,set_properties,set_groups,add_to_group,remove_from_group,connect_signal,disconnect_signal. |
| godot_scriptC | GDScript file ops. Actions: read,create,edit(diff-based),write,validate,attach,detach. path=res://. |
| godot_projectC | Project settings & autoloads. Actions: info,get_setting,set_setting,list_settings,autoload_list,autoload_add,autoload_remove,rescan. |
| godot_input_mapC | InputMap management. Actions: list,add,remove,bind,ensure,get. |
| godot_resourceC | Read-only resource inspection. Actions: inspect,list,find,info. path=res://. |
| godot_filesystemC | File ops. Actions: list,read,search,create,delete,rename. path=res:// or absolute. |
| godot_docsA | Godot official docs (version-matched). Actions: fetch(class_name,method?),search(query). |
| godot_logC | Log access. Actions: get(source?,count?,offset?,since_ms?),errors(max?,include_warnings?),clear. |
| godot_healthB | Connection health. Actions: check,diagnostics. Call first to verify connectivity. |
| godot_gameC | Game lifecycle. Actions: play(scene?,frozen?),stop,pause,resume,status. |
| godot_game_timeC | Deterministic clock control (gated). Actions: freeze,unfreeze,step(ms,inputs?),step_until(condition,timeout_ms?,interval_ms?). |
| godot_inputC | Inject input into running game (gated). Actions: action,key,mouse_button,mouse_motion,joypad,text,record_start,record_stop,replay,sequence. |
| godot_runtime_stateD | Observe running game state (auto-allow). Actions: digest(groups?),inspect(node_path,properties?),watch(node_path,property,duration_ms?),signals(node_path?,since_ms?). |
| godot_execA | Execute GDScript in running game (gated). Actions: eval(code,await?),call(node_path,method,args?),assert(condition,description?,await?). Disabled if --no-eval. |
| godot_screenshotA | Screenshots saved to disk (auto-allow). Actions: game(max_width?,format?,quality?),editor(viewport?,max_width?),region(rect,max_width?,source?),burst(count?,duration_ms?,interval_ms?),cleanup(max_count?,max_age_hours?). Auto-rotation keeps last 50 (configurable via open_godot_mcp/screenshot_max_count) and deletes files older than 24h (configurable via open_godot_mcp/screenshot_max_age_hours); cleanup action forces immediate prune. |
| godot_networkC | Multiplayer game testing. Actions: launch_instance(role,scene?,args?),list_instances,switch,terminate,simulate_peer,network_condition,sync_state,rpc_call. |
| godot_instanceA | Manage Godot EDITOR instances. Actions: launch_editor(project_path),list,switch,terminate,adopt(project_path). |
| godot_debuggerC | DAP debugger. Actions: set_breakpoint,remove_breakpoint,resume,continue,step_over,step_into,step_out,stack_trace,variables,evaluate,list_breakpoints,sessions. |
| godot_lspC | GDScript LSP (auto-allow). Actions: diagnostics(path?),complete,definition,hover,symbols. path=res://. |
| godot_profilerB | Performance profiling (auto-allow, game must run). Actions: snapshot,series(duration_ms?,metrics?),spikes(threshold_ms?). |
| godot_testC | Built-in test framework. Actions: list,run(suite?,test_name?,exclude?),results(verbose?),create(path,test_name). |
| godot_animationC | AnimationPlayer ops. Actions: list,get,create,add_track,delete,play,stop,preset. player_path=/root/.../AnimationPlayer. |
| godot_tilemapC | TileMapLayer/GridMap cell ops. Actions: read_cells(node_path,region?),set_cell,set_cells,clear. node_path=/root/.... |
| godot_assetC | Asset generation & management. Actions: generate_2d(svg,filename,save_path,width?,height?),list,info,import. |
| godot_exportC | Game export. Actions: presets,export(preset,dest_path),add_preset(name,platform,settings). |
| godot_batchB | Batch-execute multiple tool calls in one round-trip (gated). Action: execute(operations:[{tool,action,params}]). No nesting. |
| godot_csharp_checkC | C# compile/syntax check. Actions: info,build(project?),syntax(source?/path?). |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
| playtest | Complete deterministic playtest workflow. |
| debug_breakpoint | Breakpoint debugging workflow. |
| network_test | Multiplayer network testing workflow. |
| build_scene | Build a scene from a natural-language description. |
| fix_bug | Bug fixing workflow: reproduce, diagnose, fix, verify. |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
| editor_state | Current editor state as JSON text. |
| scene_tree | Current scene tree (depth=2 summary) as JSON text. |
| editor_logs | Recent editor logs (last 50 lines) as JSON text. |
| screenshot | Latest game screenshot path (saved to disk). |
| instances | Running editor instances as JSON text. |
| project_info | Project info as JSON text. |
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/masteryee-labs/Open-Godot-MCP'
If you have feedback or need assistance with the MCP directory API, please join our Discord server