Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| GODOT_HOST | No | Host where Godot is running | 127.0.0.1 |
| GODOT_PORT | No | Port the MCP Bridge plugin listens on | 9080 |
Capabilities
Features and capabilities supported by this server
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| godot_list_scenes | Returns all scenes currently open in the Godot editor, including the active scene. Returns: Array of scene objects: { path: string, root_node: string, root_type: string, node_count: number } Examples:
|
| godot_get_scene_tree | Returns the full node hierarchy of the specified scene (or the currently active scene if no path given). Args:
Returns: Nested node tree: { name, type, path, children[], properties? } Examples:
|
| godot_get_node | Returns all properties of a specific node by its scene path. Args:
Returns: { name, type, path, properties: Record<string, unknown> } Examples:
|
| godot_add_node | Adds a new node of the specified type as a child of the given parent node. Args:
Returns: { name, type, path } of the created node. Examples:
|
| godot_remove_node | Removes a node (and all its children) from the scene. This is destructive and cannot be undone via MCP. Args:
Returns: Confirmation message. |
| godot_set_node_property | Sets one or more properties on an existing node. Args:
Returns: Updated property values. Examples:
|
| godot_reparent_node | Moves a node to a new parent within the same scene, preserving its world transform. Args:
Returns: New node path after reparenting. |
| godot_instantiate_scene | Instantiates an existing .tscn file as a child node inside another scene. Args:
Returns: { name, type, path } of the instantiated node. Examples:
|
| godot_save_scene | Saves the specified scene (or active scene) to disk. Args:
Returns: Confirmation with the saved path. |
| godot_read_script | Reads the content of a GDScript (.gd) or other text-based resource file. Args:
Returns: { path: string, content: string } |
| godot_write_script | Writes (creates or overwrites) a GDScript file at the given path. Args:
Returns: Confirmation with the file path. Examples:
|
| godot_run_script | Executes a GDScript expression or block in the Godot editor context (via EditorScript). Useful for querying engine state or performing quick operations. Args:
Returns: { success: boolean, output: string, error?: string } Examples:
Warning: This runs arbitrary code in the editor. Use with care. |
| godot_list_files | Lists files in the Godot project filesystem under a given directory. Args:
Returns: { total, count, offset, has_more, items: [{ path, type, name }] } |
| godot_get_resource | Returns metadata about a specific resource file (texture, audio, mesh, etc.). Args:
Returns: { path, type, name, metadata: object } |
| godot_assign_resource | Loads a resource and assigns it to a property of a node. Useful for setting textures, materials, audio streams, etc. Args:
Returns: Confirmation of the assignment. Examples:
|
| godot_create_scene | Creates a new empty scene file (.tscn) with a specified root node type. Args:
Returns: { path, root_node, root_type } of the created scene. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |