better-godot-mcp

Integración de Godot Engine: 17 herramientas para desarrollo de juegos

Documentación

Better Godot MCP

mcp-name: io.github.n24q02m/better-godot-mcp

Composite MCP server for Godot Engine -- 17 composite tools for AI-assisted game development.

CI codecov npm Docker License: MIT

TypeScript Node.js Godot Engine semantic-release Renovate

Sister projects from n24q02m (click to expand)
ProjectTaglineTag
better-code-review-graphKnowledge graph for token-efficient code reviews -- semantic search and call-...MCP
better-email-mcpIMAP/SMTP email for AI agents -- read, send, organize folders, and manage att...MCP
better-godot-mcpComposite MCP server for Godot Engine -- 17 composite tools for AI-assisted g...MCP
better-notion-mcpMarkdown-first Notion for AI agents -- pages, databases, blocks, and comments...MCP
better-telegram-mcpTelegram for AI agents -- messages, chats, media, and contacts across both bo...MCP
claude-pluginsClaude Code plugin marketplace for the n24q02m MCP servers -- install web sea...Marketplace
imagine-mcpImage and video understanding + generation for AI agents -- across Gemini, Op...MCP
jules-task-archiverChrome Extension for bulk operations on Jules tasks via batchexecute API -- a...Tooling
mcp-coreShared foundation for building MCP servers -- Streamable HTTP transport, OAut...MCP
mnemo-mcpPersistent AI memory with hybrid search and embedded sync. Open, free, unlimi...MCP
qwen3-embedLightweight Qwen3 text embedding and reranking via ONNX Runtime and GGUFLibrary
skretSecrets without the server.CLI
tacetTACET: a self-distilling neuro-symbolic cascade that amortises LLM cost in kn...Tooling
web-coreShared web infrastructure package for search, scraping, HTTP security, and st...Library
wet-mcpOpen-source MCP server for AI agents: web search, content extraction, and lib...MCP

Table of contents

Better Godot MCP server

Features

  • 17 composite mega-tools -- scene, node, script, shader, animation, tilemap, physics, audio, navigation, UI, and more
  • Full scene control -- create, parse, and modify .tscn files directly without Godot running
  • GDScript CRUD -- create, read, write, and attach scripts in a single call
  • Tiered token optimization -- compressed descriptions + on-demand help tool

Install

Runs over stdio by default. No credentials, no account, no relay -- the server reads and writes your local Godot project files directly. Godot 4.x is optional (only run/stop/export and editor actions need the binary).

Via npx (recommended)

npx -y @n24q02m/better-godot-mcp@latest

MCP client config

Add to your client's MCP config (Claude Code, Cursor, Windsurf, Codex, mcp.json):

{
  "mcpServers": {
    "better-godot-mcp": {
      "command": "npx",
      "args": ["-y", "@n24q02m/better-godot-mcp"],
      "env": {
        "GODOT_PROJECT_PATH": "/path/to/your/godot/project"
      }
    }
  }
}

GODOT_PROJECT_PATH is optional -- every tool also accepts a project_path argument per call.

Via Docker

docker run -i --rm -v /path/to/your/godot/project:/project n24q02m/better-godot-mcp

The image is published for amd64 and arm64. Mount your project directory so the server can read and write scene, script, and resource files.

Smithery

better-godot-mcp ships a smithery.yaml so it can be discovered and deployed through Smithery. Smithery launches the server over stdio via npx -y @n24q02m/better-godot-mcp, and no configuration is required to start -- the server has no credentials and reads your local Godot project files directly.

Documentation

Full setup guide at mcp.n24q02m.com/servers/better-godot-mcp/setup/ -- install steps for Claude Code, Codex, Gemini CLI, Cursor, Windsurf, and mcp.json.

Install with AI agent -- paste this to your AI coding agent:

Install MCP server better-godot-mcp following the steps at https://raw.githubusercontent.com/n24q02m/claude-plugins/main/plugins/better-godot-mcp/setup-with-agent.md

Tools

ToolActionsDescription
projectinfo, version, run, stop, settings_get, settings_set, exportProject metadata, run/stop, and settings
scenescreate, list, info, delete, duplicate, set_mainScene file management
nodesadd, remove, rename, list, set_property, get_propertyScene tree node manipulation
scriptscreate, read, write, attach, list, deleteGDScript file CRUD
editorlaunch, statusLaunch Godot editor and check status
configstatus, set, detect_godot, checkServer configuration and environment detection
resourceslist, info, delete, import_configResource file management
input_maplist, add_action, remove_action, add_eventInput action and event mapping
signalslist, connect, disconnectSignal connections
animationcreate_player, add_animation, add_track, add_keyframe, listAnimation players and tracks
tilemapcreate_tileset, add_source, set_tile, paint, listTileMap and TileSet management
shadercreate, read, write, get_params, listShader file CRUD with Godot 4 syntax
physicslayers, collision_setup, body_config, set_layer_nameCollision layers and physics bodies
audiolist_buses, add_bus, add_effect, create_streamAudio bus and effect management
navigationcreate_region, add_agent, add_obstacleNavigation regions, agents, and obstacles
uicreate_control, set_theme, layout, list_controlsUI control creation and theming
help-Get full documentation for any tool

Comparison

How better-godot-mcp stacks up against direct competitors in each pillar:

Capabilitybetter-godot-mcpCoding-Solo/godot-mcpbradypp/godot-mcptugcantopaloglu/godot-mcp
Scene file managementYes (scenes: create/list/info/delete/duplicate/set_main)Yes (create/save)Yes (create/save)Yes (create/read/modify)
Node tree manipulationYes (nodes: add/remove/rename/list/get+set_property)Partial (add only)Yes (add/edit/remove)Yes (add/remove/reparent)
GDScript file CRUDYes (scripts: create/read/write/attach/list/delete)NoNoPartial (create from template + runtime eval)
Shader file CRUDYes (shader: create/read/write/get_params/list)NoNoPartial (create/read .gdshader)
Animation authoringYes (animation: player/track/keyframe)NoNoYes (player/tween/state machine)
TileMap / TileSetYes (tilemap: tileset/source/set_tile/paint)NoNoYes (TileMapLayer cells)
Physics layers / bodiesYes (physics: layers/collision/body_config)NoNoYes (collision/joints/raycast)
Audio bus managementYes (audio: buses/effects/streams)NoNoYes (buses/routing/effects)
Navigation setupYes (navigation: region/agent/obstacle)NoNoYes (navigation)
UI control authoringYes (ui: control/theme/layout)NoPartial (via add node)Yes (controls/themes/menus)
Input map editingYes (input_map: action/event)NoNoYes (actions/key bindings)
Signal connectionsYes (signals: connect/disconnect/list)NoNoYes (connect/emit/await)
Launch editor / run projectYes (editor, project run/stop)YesYesYes
Works without running editorYes (text-based .tscn parsing)Yes (headless GDScript bridge)Yes (headless GDScript bridge)Partial (CLI headless or live TCP socket)
No credentials stored (TC-Local)YesYesYesYes
stdio + HTTP transportsYes (stdio default + --http)No (stdio only)No (stdio only)No (stdio only)
Docker image (amd64 + arm64)YesNoNoNo
Token-tiered tool descriptionsYes (compact + on-demand help)NoNoNo

Configuration

The Godot binary is auto-detected from common install locations and PATH. No environment variables are required for basic usage. Optionally set GODOT_PROJECT_PATH and GODOT_PATH to override the defaults.

VariableRequiredDefaultDescription
GODOT_PROJECT_PATHNo-Default project path (tools also accept a project_path param)
GODOT_PATHNoAuto-detectedPath to the Godot binary

HTTP transport

The server runs over stdio by default. To serve over Streamable HTTP instead, pass --http or set MCP_TRANSPORT=http (TRANSPORT_MODE=http is also accepted). HTTP mode exposes an unauthenticated /mcp endpoint -- there are no credentials to protect, so it is meant for trusted local or self-hosted use.

VariableRequiredDefaultDescription
MCP_TRANSPORTNostdioSet to http for Streamable HTTP transport
PORTNo0 (auto-assign)HTTP port (HTTP mode only)
HOSTNoServer defaultHTTP host (HTTP mode only)

Limitations

  • Requires Godot 4.x project structure
  • Scene files (.tscn) are parsed/modified via text manipulation, not Godot's internal API
  • run/stop/export actions require Godot binary to be installed
  • Docker mode has limited filesystem access (mount your project directory)

CLI

The better-godot-mcp binary runs the MCP server by default (stdio; add --http for Streamable HTTP). It also exposes two diagnostic subcommands for checking your Godot environment before wiring up an MCP client.

CommandDescription
better-godot-mcpStart the MCP server (stdio default; --http for Streamable HTTP)
better-godot-mcp detectPrint the detected Godot binary as JSON (path, version, source); exits non-zero when none is found
better-godot-mcp doctorHealth-check the Godot binary and the current project (GODOT_PROJECT_PATH, else the working directory)
# Detect the Godot binary (JSON output)
npx -y @n24q02m/better-godot-mcp detect
{
  "found": true,
  "path": "/path/to/godot",
  "version": {
    "major": 4,
    "minor": 6,
    "patch": 3,
    "label": "stable.official",
    "raw": "4.6.3.stable.official"
  },
  "source": "system"
}
# Health-check the Godot binary and project
npx -y @n24q02m/better-godot-mcp doctor
[ok] godot binary: /path/to/godot (source: system)
[ok] godot version: 4.6.3.stable.official
[warn] project: no project.godot found at /path/to/cwd (set GODOT_PROJECT_PATH)

detect exits 1 when no Godot binary is found; doctor exits 1 when the binary is missing (a missing project.godot is only a warning).

Security

  • Binary detection -- Multi-path Godot detection (env, PATH, common locations)
  • Project validation -- Verifies project.godot exists before operations
  • Cross-platform -- Windows, macOS, Linux path handling

Build from source

git clone https://github.com/n24q02m/better-godot-mcp.git
cd better-godot-mcp
bun install
bun run dev          # stdio mode (default)
bun run dev:http     # Streamable HTTP mode

Trust model

This plugin implements TC-Local (no auth required -- no credentials stored). See the trust model reference for full classification.

ModeStorageEncryptionWho can read your data?
stdio (default)N/A (no credentials)N/AN/A
HTTP self-hostN/A (no credentials)N/AN/A

License

MIT -- See LICENSE.