Godot MCP Server

Local setup required. This server has to be cloned and prepared on your machine before you register it in Claude Code.
1

Set the server up locally

Run this once to clone and prepare the server before adding it to Claude Code.

Run in terminal
npm install
npm run build
2

Register it in Claude Code

After the local setup is done, run this command to point Claude Code at the built server.

Run in terminal
claude mcp add godot-mcp-server -- node "<FULL_PATH_TO_GODOT_MCP_SERVER>/dist/index.js"

Replace <FULL_PATH_TO_GODOT_MCP_SERVER>/dist/index.js with the actual folder you prepared in step 1.

README.md

Connect Claude to your Godot 4 project to manipulate scenes and assets.

Godot MCP Server

Connect Claude to your Godot 4 project. Claude can read and manipulate scenes, nodes, scripts, and assets directly in your editor.


Architecture

Claude (claude.ai)
    │  MCP (stdio)
    ▼
godot-mcp-server  (Node.js, runs locally)
    │  HTTP  localhost:9080
    ▼
MCP Bridge Plugin  (GDScript, runs inside Godot editor)
    │
    ▼
Godot Editor

Setup

1. Install the MCP Server

cd godot-mcp-server
npm install
npm run build

2. Install the Godot Plugin

Copy the godot-plugin/addons/mcp_bridge folder into your Godot project's addons/ directory:

your-godot-project/
└── addons/
    └── mcp_bridge/
        ├── plugin.cfg
        ├── mcp_bridge.gd
        └── mcp_http_server.gd

Then in Godot: Project → Project Settings → Plugins → enable MCP Bridge.

You should see: [MCP Bridge] Listening on http://127.0.0.1:9080 in the Output panel.

3. Configure Claude

Add to your Claude MCP config (claude_desktop_config.json or equivalent):

{
  "mcpServers": {
    "godot": {
      "command": "node",
      "args": ["/absolute/path/to/godot-mcp-server/dist/index.js"],
      "env": {
        "GODOT_PORT": "9080"
      }
    }
  }
}

Environment Variables

Variable Default Description
GODOT_HOST 127.0.0.1 Host where Godot is running
GODOT_PORT 9080 Port the MCP Bridge plugin listens on

Available Tools

Scene Tools

Tool Description
godot_list_scenes List all open scenes
godot_get_scene_tree Get full node hierarchy
godot_get_node Get all properties of a specific node
godot_add_node Add a new node to a scene
godot_remove_node Remove a node and its children
godot_set_node_property Set one or more properties on a node
godot_reparent_node Move a node to a new parent
godot_instantiate_scene Add a .tscn as an instance in a scene
godot_save_scene Save the current scene to disk

Script Tools

Tool Description
godot_read_script Read a .gd file
godot_write_script Write/create a .gd file
godot_run_script Execute a GDScript expression in the editor

Asset / Filesystem Tools

Tool Description
godot_list_files List files in the project
godot_get_resource Get metadata about a resource
godot_assign_resource Assign a resource to a node property
godot_create_scene Create a new empty .tscn file

Example Prompts

Once connected, you can ask Claude things like:

  • "Show me the scene tree of the current scene"
  • "Add a Sprite2D called PlayerSprite as a child of /root/Main/Player"
  • "Set the position of the Enemy node to (400, 300)"
  • "Instantiate res://enemies/goblin.tscn under /root/Level at position (200, 150)"
  • "List all .tscn files in the project"
  • "Read the player.gd script"
  • "Create a new scene at res://levels/level2.tscn with a Node2D root"

Notes

  • The MCP Bridge plugin must be active and Godot must be open for any tools to work.
  • godot_run_script executes arbitrary GDScript — use with care.
  • Scene edits are live in the editor but not saved automatically. Use godot_save_scene to persist changes.
  • The plugin binds to 127.0.0.1 only (no external access).

Tools (16)

godot_list_scenesList all open scenes
godot_get_scene_treeGet full node hierarchy
godot_get_nodeGet all properties of a specific node
godot_add_nodeAdd a new node to a scene
godot_remove_nodeRemove a node and its children
godot_set_node_propertySet one or more properties on a node
godot_reparent_nodeMove a node to a new parent
godot_instantiate_sceneAdd a .tscn as an instance in a scene
godot_save_sceneSave the current scene to disk
godot_read_scriptRead a .gd file
godot_write_scriptWrite/create a .gd file
godot_run_scriptExecute a GDScript expression in the editor
godot_list_filesList files in the project
godot_get_resourceGet metadata about a resource
godot_assign_resourceAssign a resource to a node property
godot_create_sceneCreate a new empty .tscn file

Environment Variables

GODOT_HOSTHost where Godot is running
GODOT_PORTPort the MCP Bridge plugin listens on

Configuration

claude_desktop_config.json
{"mcpServers": {"godot": {"command": "node", "args": ["/absolute/path/to/godot-mcp-server/dist/index.js"], "env": {"GODOT_PORT": "9080"}}}}

Try it

Show me the scene tree of the current scene
Add a Sprite2D called PlayerSprite as a child of /root/Main/Player
Set the position of the Enemy node to (400, 300)
Instantiate res://enemies/goblin.tscn under /root/Level at position (200, 150)
Read the player.gd script

Frequently Asked Questions

What are the key features of Godot MCP Server?

Real-time scene tree management and node manipulation. Direct script reading and writing within the Godot editor. Asset and resource configuration via MCP tools. Live scene editing with manual save persistence.

What can I use Godot MCP Server for?

Automating repetitive scene setup tasks in Godot 4. Querying node hierarchies to debug complex scene structures. Programmatically modifying node properties or positions during development. Quickly creating or updating GDScript files via AI assistance.

How do I install Godot MCP Server?

Install Godot MCP Server by running: npm install && npm run build

What MCP clients work with Godot MCP Server?

Godot MCP Server works with any MCP-compatible client including Claude Desktop, Claude Code, Cursor, and other editors with MCP support.

Turn this server into reusable context

Keep Godot MCP Server docs, env vars, and workflow notes in Conare so your agent carries them across sessions.

Need the old visual installer? Open Conare IDE.
Open Conare