npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

@mseep/better-godot-mcp

v1.19.0-beta.2

Published

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

Downloads

165

Readme

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

| Project | Tagline | Tag | |---|---|---| | better-code-review-graph | Knowledge graph for token-efficient code reviews -- semantic search and call-... | MCP | | better-email-mcp | IMAP/SMTP email for AI agents -- read, send, organize folders, and manage att... | MCP | | better-godot-mcp | Composite MCP server for Godot Engine -- 17 composite tools for AI-assisted g... | MCP | | better-notion-mcp | Markdown-first Notion for AI agents -- pages, databases, blocks, and comments... | MCP | | better-telegram-mcp | Telegram for AI agents -- messages, chats, media, and contacts across both bo... | MCP | | claude-plugins | Claude Code plugin marketplace for the n24q02m MCP servers -- install web sea... | Marketplace | | imagine-mcp | Image and video understanding + generation for AI agents -- across Gemini, Op... | MCP | | jules-task-archiver | Chrome Extension for bulk operations on Jules tasks via batchexecute API -- a... | Tooling | | mcp-core | Shared foundation for building MCP servers -- Streamable HTTP transport, OAut... | MCP | | mnemo-mcp | Persistent AI memory with hybrid search and embedded sync. Open, free, unlimi... | MCP | | qwen3-embed | Lightweight Qwen3 text embedding and reranking via ONNX Runtime and GGUF | Library | | skret | Secrets without the server. | CLI | | tacet | TACET: a self-distilling neuro-symbolic cascade that amortises LLM cost in kn... | Tooling | | web-core | Shared web infrastructure package for search, scraping, HTTP security, and st... | Library | | wet-mcp | Open-source MCP server for AI agents: web search, content extraction, and lib... | MCP |

Table of contents

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.

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

| Tool | Actions | Description | |:-----|:--------|:------------| | project | info, version, run, stop, settings_get, settings_set, export | Project metadata, run/stop, and settings | | scenes | create, list, info, delete, duplicate, set_main | Scene file management | | nodes | add, remove, rename, list, set_property, get_property | Scene tree node manipulation | | scripts | create, read, write, attach, list, delete | GDScript file CRUD | | editor | launch, status | Launch Godot editor and check status | | config | status, set, detect_godot, check | Server configuration and environment detection | | resources | list, info, delete, import_config | Resource file management | | input_map | list, add_action, remove_action, add_event | Input action and event mapping | | signals | list, connect, disconnect | Signal connections | | animation | create_player, add_animation, add_track, add_keyframe, list | Animation players and tracks | | tilemap | create_tileset, add_source, set_tile, paint, list | TileMap and TileSet management | | shader | create, read, write, get_params, list | Shader file CRUD with Godot 4 syntax | | physics | layers, collision_setup, body_config, set_layer_name | Collision layers and physics bodies | | audio | list_buses, add_bus, add_effect, create_stream | Audio bus and effect management | | navigation | create_region, add_agent, add_obstacle | Navigation regions, agents, and obstacles | | ui | create_control, set_theme, layout, list_controls | UI control creation and theming | | help | - | Get full documentation for any tool |

Comparison

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

| Capability | better-godot-mcp | Coding-Solo/godot-mcp | bradypp/godot-mcp | tugcantopaloglu/godot-mcp | |---|---|---|---|---| | Scene file management | Yes (scenes: create/list/info/delete/duplicate/set_main) | Yes (create/save) | Yes (create/save) | Yes (create/read/modify) | | Node tree manipulation | Yes (nodes: add/remove/rename/list/get+set_property) | Partial (add only) | Yes (add/edit/remove) | Yes (add/remove/reparent) | | GDScript file CRUD | Yes (scripts: create/read/write/attach/list/delete) | No | No | Partial (create from template + runtime eval) | | Shader file CRUD | Yes (shader: create/read/write/get_params/list) | No | No | Partial (create/read .gdshader) | | Animation authoring | Yes (animation: player/track/keyframe) | No | No | Yes (player/tween/state machine) | | TileMap / TileSet | Yes (tilemap: tileset/source/set_tile/paint) | No | No | Yes (TileMapLayer cells) | | Physics layers / bodies | Yes (physics: layers/collision/body_config) | No | No | Yes (collision/joints/raycast) | | Audio bus management | Yes (audio: buses/effects/streams) | No | No | Yes (buses/routing/effects) | | Navigation setup | Yes (navigation: region/agent/obstacle) | No | No | Yes (navigation) | | UI control authoring | Yes (ui: control/theme/layout) | No | Partial (via add node) | Yes (controls/themes/menus) | | Input map editing | Yes (input_map: action/event) | No | No | Yes (actions/key bindings) | | Signal connections | Yes (signals: connect/disconnect/list) | No | No | Yes (connect/emit/await) | | Launch editor / run project | Yes (editor, project run/stop) | Yes | Yes | Yes | | Works without running editor | Yes (text-based .tscn parsing) | Yes (headless GDScript bridge) | Yes (headless GDScript bridge) | Partial (CLI headless or live TCP socket) | | No credentials stored (TC-Local) | Yes | Yes | Yes | Yes | | stdio + HTTP transports | Yes (stdio default + --http) | No (stdio only) | No (stdio only) | No (stdio only) | | Docker image (amd64 + arm64) | Yes | No | No | No | | Token-tiered tool descriptions | Yes (compact + on-demand help) | No | No | No |

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.

| Variable | Required | Default | Description | |:---------|:---------|:--------|:------------| | GODOT_PROJECT_PATH | No | - | Default project path (tools also accept a project_path param) | | GODOT_PATH | No | Auto-detected | Path 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.

| Variable | Required | Default | Description | |:---------|:---------|:--------|:------------| | MCP_TRANSPORT | No | stdio | Set to http for Streamable HTTP transport | | PORT | No | 0 (auto-assign) | HTTP port (HTTP mode only) | | HOST | No | Server default | HTTP 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)

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.

| Mode | Storage | Encryption | Who can read your data? | |---|---|---|---| | stdio (default) | N/A (no credentials) | N/A | N/A | | HTTP self-host | N/A (no credentials) | N/A | N/A |

License

MIT -- See LICENSE.