beckett-godot-mcp
Zero-sidecar MCP server inside the Godot editor. AI agents (Claude Code, Cursor) inspect, author, run and SEE your game. GDScript + C#, validate-before-write, no Node.js. Godot 4.2+. Free Lite; Full adds autonomous playtesting.
Install / Use
claude mcp add beckettlab -- npx -y github:beckettlab/beckett-godot-mcpIf the server publishes to npm under a different name, use that package instead — check the repo README.
MCP Server
Model Context Protocol server
Quality Score
Category
OtherSupported Platforms
Our assessment of beckett-godot-mcp
beckett-godot-mcp scores 80/100 on our quality scale, 216th of 248 Other skills we index.
Its MCP Server is 15 KB long, well organised into 10 sections and no code examples: a thorough specification that gives an agent plenty to work with.
It has 43 GitHub stars, so there is little community track record yet; judge it on its content.
Maintenance, license and trust
- The repository was last updated 5 days ago, so beckett-godot-mcp is actively maintained.
- Our last check on 2026-08-27 found the source still online.
- It is released under the MIT license, a permissive license that allows use, modification and commercial use with attribution.
- Its trust signals score 97/100, with no cautions. These come from repository metadata, not a code audit — read the skill file before letting an agent act on it.
Safety scan
No issues foundOur scan of the whole file found no instruction hijacking, hidden characters, credential access, data exfiltration or destructive commands. An AI review of the same text found nothing harmful.
AI review by kimi-k2.7-code on 2026-10-13. Automated pattern scan on 2026-10-13. It catches known dangerous patterns, not every risk — read a skill before letting an agent act on it.
beckett-godot-mcp compared with similar skills
All 4 of these similar skills score higher than beckett-godot-mcp; compare them before choosing.
| Skill | Score | Stars | Updated | Format |
|---|---|---|---|---|
| beckett-godot-mcp (this skill)by beckettlab | 80 | 43 | 5d ago | MCP Server |
| Agent-Reachby Panniantong | 100 | 96.7k | 4d ago | CLAUDE.md |
| headroomby headroomlabs-ai | 100 | 75.2k | today | CLAUDE.md |
| CowAgentby zhayujie | 100 | 47.4k | today | CLAUDE.md |
| Scraplingby D4Vinci | 100 | 87.0k | today | MCP Server |
Frequently asked questions
- How do I install beckett-godot-mcp?
- Run
claude mcp add beckettlab -- npx -y github:beckettlab/beckett-godot-mcp. The install tabs above show the steps for each supported agent. - Which AI agents does beckett-godot-mcp work with?
- It is written for Claude Code, Claude Desktop and Cursor, as a MCP Server file. Other agents that read the same format can often use it too.
- Is beckett-godot-mcp safe to use?
- Our scan of the whole file found no instruction hijacking, hidden characters, credential access, data exfiltration or destructive commands. An AI review of the same text found nothing harmful. It is MIT-licensed and scores 97/100 on trust signals. Skills are instructions an agent will follow, so read the file before installing it and do not approve commands you do not understand.
- Is beckett-godot-mcp still maintained?
- The repository was last updated 5 days ago, so beckett-godot-mcp is actively maintained.
Skill content
View source on GitHubBeckett — MCP for Godot
Stop waiting for Godot.
Beckett is a zero-sidecar Model Context Protocol (MCP) server embedded directly in the Godot 4 editor as a GDScript EditorPlugin. AI agents (Claude and others) drive the editor over HTTP — no Node/Python bridge, no second process, no cloud.
This repository is the free, MIT-licensed Lite edition: the complete inspect → author → run → SEE dev loop (56 tools), for GDScript and C#. The AI can now watch your running game on the free tier: screenshot it, read the live remote scene tree and node state, poll performance monitors, and tail the game's logs. The paid Full edition makes the AI the playtester (it drives input, clicks 2D/3D and UI, and asserts the results), plus a test runner, animation tools, scatter_nodes, background exports, project-wide analysis, and 46 knowledge packs. See What Full adds.
Lite: the AI sees your game. Full: the AI playtests it.
Demo
Why
Existing Godot MCP servers either shell out to the CLI (can't play the game, screenshot, or inspect runtime) or run a Node/Python sidecar that relays to a thin in-editor addon. This one makes the addon itself the MCP server, and exposes reflection-generic tools that work on any class via ClassDB — instead of hundreds of hand-coded per-domain wrappers (an anti-pattern: LLMs degrade past ~40 tools).
Highlights
- Zero-sidecar —
TCPServerHTTP/JSON-RPC server polled on the editor main thread. No marshalling, nothing extra to install beyond the addon. - The AI sees your game (free) —
screenshotthe running game, read the live remote scene tree (get_remote_tree/find_nodes/wait_for_node), read live node state (runtime_get_property/monitor_properties), pollget_performance_monitors, and tailgame_logswith stack traces. The free tier can watch and diagnose the running game; Full closes the loop by driving input and asserting the result. - GDScript and C#, one addon, zero sidecar — the C#/.NET dev loop is free too:
build_csharpruns adotnet buildcompile-check that returns structuredfile:line:col+ CS-code diagnostics (safe while the editor is open, no new dependency beyond the .NET SDK a C# project already needs),write_scriptis.cs-aware, and reflection surfaces your C#[GlobalClass]types just like GDScriptclass_name. - Reflection-first + discovery —
find_classes/describe_class/find_methodsmake the whole engine surface searchable;describe_object/set_property/call_methodthen drive anyNode/Resource/Object. Reaches TileMap, GPUParticles, AnimationTree, NavMesh, shaders… with no per-domain code. - GDScript dev-loop with validate-before-write —
write_script/script_patchparse the code first and refuse to write what doesn't compile (closing the #1 AI-on-Godot failure: hallucinated GDScript). Godot's edge over UE: reload needs no compile step. - Undoable authoring — every scene/node mutation goes through
EditorUndoRedoManager(atomic + undoable);batch_executerolls a whole batch back on failure. - One-step install — enabling the plugin auto-starts the server and writes
.mcp.json, soclaude/Cursor connects with zero hand-editing (no Node.js to install — the competitor needs it just to try). - Security: localhost-only, with exact Host and Origin checks (anti DNS-rebind), a per-project token for new projects, file reads confined to the project, and read-only / allowlist / confirm-destructive gates; auto-start is opt-out (
beckett/autostart=false). SECURITY.md says what is protected, what is not, and how to report a problem. - Run → see loop —
play_scene→wait_until→logs_read→screenshot/get_remote_tree→ fix: launch the game, tail its output and errors, then look at the running frame and live scene tree to diagnose. (Full closes the loop autonomously: the AI drives the game and asserts.) Plus MCP Resources + Prompts. - Dock panel — status, one-click Start/Stop, copy-client-config, and an AI-effort slider (1–4 in Lite; L4 = See) that caps how many tools are advertised: cheaper model context when you only need a slice. Applies live, no reconnect — the server pushes
notifications/tools/list_changedover its SSE stream and list-changed-aware clients (Claude Code, Cursor, …) re-fetch on the spot. - Responsive even unfocused — while MCP traffic is active the server clamps the editor's low-processor sleep, so calls stay fast when you're focused on the terminal instead of the editor (the usual agent setup).
- Spec-current MCP — protocol version negotiation, tool annotations (
readOnlyHint/destructiveHint/openWorldHint) on every tool, andstructuredContent(2025-06-18) alongside text results. An audit ring (audit://recent) records the last 200 tool calls — see everything the AI did.
Tools (56) · Resources (6) · Prompts (6)
Fewer tools, on purpose — that's the moat, not a limitation. Most Godot MCPs hand-code one tool per task (
create_sprite,add_collision,make_timer…) — hundreds that still miss classes and flood the model's context (LLMs measurably degrade past ~40 tools). Beckett's are reflection-generic:describe_class/set_property/call_methoddrive any of Godot's 1000+ classes throughClassDB— TileMap, GPUParticles, AnimationTree, shaders, your ownclass_nameor C#[GlobalClass]— with no per-domain code. Don't count tools, count coverage: a smaller, sharper toolset that reaches the whole engine beats a hundred narrow wrappers that don't.
The free Lite edition — the complete inspect → author → run → see loop, for GDScript and C#:
- Reflection / discovery:
get_godot_version,find_classes,describe_class,find_methods,describe_object,set_property,call_method,get_scene_tree - Scene authoring (undoable):
create_node,delete_node,rename_node,reparent_node,duplicate_node,move_node,instance_scene,save_scene,open_scene - GDScript dev-loop:
validate_script,write_script,script_patch,read_script,attach_script - C#/.NET dev-loop:
build_csharp(adotnet buildcompile-check returning structuredfile:line:col+ CS-code diagnostics, safe while the editor is open, zero new dependency;write_scriptis.cs-aware and C#[GlobalClass]types show up in reflection) - Signals:
connect_signal,disconnect_signal,list_signals - Resource assets:
create_resource,set_resource - Files / project:
read_file,write_file,list_dir,search_files,rescan_filesystem,get_project_setting,set_project_setting - Run loop:
play_scene,stop_scene,get_play_state,wait_until,logs_read - Runtime observation (the AI sees your game):
screenshot,ui_snapshot(every visible Control as structured state in one call),get_remote_tree,find_nodes,wait_for_node,runtime_get_property,monitor_properties,get_performance_monitors,game_logs - Render diagnosis:
render_probe(why a 3D node is or is not on screen, as data: visibility chain, frustum, cull mask, material cull mode, triangle winding) andset_debug_draw(switch the running game's debug draw mode, thenscreenshotone render stage) - Project / authoring helpers:
get_project_statistics,apply_template,batch_execute,doctor(one-call self-diagnosis: edition, effort cap, server and auth state, client configs, and what the tool list costs your context per tier),help(any tool's full argument catalogue, on demand) - MCP Resources:
scene://tree,scene://selection,project://settings,assets://list,log://output,audit://recent - MCP Prompts:
inspect_node,audit_scene,setup_2d_player,fix_script_errors,build_test_fix,make_game
What Full adds
The Full edition is the same core plus a premium layer that makes the AI the playtester: it sees the screen, presses the buttons, and verifies the result. 92 tools, 46 skill packs total:
- The AI drives:
simulate_input, UI clicks in 2D + 3D (click_button_by_text/click_control/click_node3d/click_world),scroll/drag,get_control_rect/find_ui_elements, liveruntime_call/runtime_set_property, andrecord_input/replay_input. - The AI verifies:
assert_node_state,assert_screen_text,assert_scene,compare_screenshots, plus the in-editor test runner (test_run). - Author + ship:
animation_manage(keys / tracks / presets),scatter_nodes(Scene-Paint mass placement), backgroundexport_project+job_status, project-wide analysis (find_unused_resources,detect_circular_dependencies), and the Godot Asset Store / Library browser-installer (asset_lib_search/asset_lib_info/asset_lib_install). - 46 skill knowledge packs (
list_skills/load_skill): gdscript, particles, animation, ui, physics, multiplayer, mobile, and more, so reflection reaches each domain with no per-domain tools.
Lite ships the game-side runtime (addons/beckett/runtime/mcp_runtime.gd, MIT source) that Full's drive tools use, and that runtime understands the drive commands. Lite's tools never send them and Lite's bridge refuses them, so Lite sees the running game without driving it. This is a product boundary, not a sandbox; SECURITY.md has the details.
Full is a one-time purchase ($15) with lifetime updates: https://beckettlabs.itch.io/beckett-godot-mcp
How it compares
Beckett is one of only a few embedded (zero-sidecar) servers in the field, and its free tier includes seeing the running game, as Native's does. The other players have real strengths (raw tool count, mindshare, breadth), so here's an honest side-by-side. (Competitor figures are their own published numbers; they ship far more hand-coded per-domain tools, which is a different design choice, not strictly "more capability": see Why.)
| | Beckett Lite (free, MIT) | Beckett Full ($15) | CLI shell-out (e.g. Coding-Solo, free) | Sidecar (godot-mcp-pro, $15, Node 18+) | Native (free, embedded, 4.6+ only) | |---|:---:|:---:|:---:|:---:|:---:| | Zero sidecar (no Node/Python) | ✅ | ✅ | ❌ (Node CLI shell-out) | ❌ (Node 18+ + TS server) | ✅ (embedded) | | The AI sees the running game (screenshot, live tree, live state) | ✅ free | ✅ | ⚠️ CLI debug output only | ✅ (paid) | ✅ (free) | | The AI drives + asserts (playtest: input, clicks, asserts) | ❌ | ✅ | ❌ | ✅ (input record/replay) | ⚠️ partial | | Validate-before-write (refuses non-compiling GDScript) | ✅ | ✅ | ❌ | ❌ | ❌ | | C# + GDScript | ✅ | ✅ | ❌ (GDScript) | ❌ (GDScript) | ❌ (GDScript) | | Godot 4
Truncated for display — read the full file on GitHub.
Related Skills
Agent-Reach
96.7kGive your AI agent eyes to see the entire internet. Read & search Twitter, Reddit, YouTube, GitHub, Bilibili, XiaoHongShu — one CLI, zero API fees.
headroom
75.2kCompress tool outputs, logs, files, and RAG chunks before they reach the LLM. 20% fewer tokens for coding agents, 60-95% fewer tokens for JSON, same answers. Library, proxy, MCP server.
CowAgent
47.4kOpen-source personal AI assistant & Agent Harness. Plans tasks, runs tools and skills, self-evolves with memory and knowledge. Multi-agent, multi-model, multi-channel. Lightweight, extensible, one-line install.
Scrapling
87.0k🕷️ An adaptive Web Scraping framework that handles everything from a single request to a full-scale crawl! Don't be shy, join here: https://discord.gg/EMgGbDceNQ and follow here for daily tips and tricks: https://x.com/Scrapling_dev
Languages
Trust signals
From repository metadata: license, adoption, age and documentation. Not a code audit — see the Safety scan above for what the skill file itself contains.

