SuperAPI AI Directory

beckett-godot-mcp

Godot 4 editor addon that runs without a sidecar: class reflection, validated GDScript writes, scene/script/resource authoring and a runtime play-test loop.

Open website

About this tool

Beckett is an MCP (Model Context Protocol) server embedded directly in the Godot 4 editor, implemented as a GDScript EditorPlugin, through which AI agents (such as Claude Code and Cursor) interact with the editor via HTTP, with no Node/Python bridge, no second process, and no cloud. The current repository is the free MIT-licensed Lite version, providing a complete "inspect → write → run → see" development loop (56 tools), with support for GDScript and C#. The Full version is a paid commercial product that adds autonomous playtesting capabilities.

In terms of purpose, Beckett is aimed at developers who want AI agents to assist with inspecting, writing, running, and observing games within the Godot editor. The base version already lets AI see the running game: screenshots, reading the live remote scene tree and node states, polling performance monitors, and viewing game logs. The paid Full version then makes the AI a playtester, able to drive input, click 2D/3D and UI, and assert results.

In terms of main capabilities, the Lite version includes the following tool groups: reflection/discovery (get_godot_version, find_classes, describe_class, find_methods, describe_object, set_property, call_method, get_scene_tree); scene authoring (create_node, delete_node, rename_node, reparent_node, duplicate_node, move_node, instance_scene, save_scene, open_scene, all supporting undo via EditorUndoRedoManager); GDScript development loop (validate_script, write_script, script_patch, read_script, attach_script, using validate-before-write); C#/.NET development loop (build_csharp runs dotnet build compilation checks, returning structured file:line:col and CS code diagnostics, write_script recognizes .cs, and C# [GlobalClass] types can be reflected); signals (connect_signal, disconnect_signal, list_signals); resource assets (create_resource, set_resource); file/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 (screenshot, ui_snapshot, get_remote_tree, find_nodes, wait_for_node, runtime_get_property, monitor_properties, get_performance_monitors, game_logs); rendering diagnostics (render_probe, set_debug_draw); project/authoring helpers (get_project_statistics, apply_template, batch_execute, doctor, help). It also provides MCP Resources (scene://tree, scene://selection, project://settings, assets://list, log://output, audit://recent) and MCP Prompts (inspect_node, audit_scene, setup_2d_player, fix_script_errors, build_test_fix, make_game).

The Full version adds: driving tools (simulate_input, click_button_by_text, click_control, click_node3d, click_world, scroll/drag, get_control_rect, find_ui_elements, runtime_call, runtime_set_property, record_input, replay_input); verification tools (assert_node_state, assert_screen_text, assert_scene, compare_screenshots, test_run); authoring and publishing tools (animation_manage, scatter_nodes, background export_project + job_status, find_unused_resources, detect_circular_dependencies, asset_lib_search, asset_lib_info, asset_lib_install); and 46 skill knowledge packs (loaded via list_skills / load_skill, covering gdscript, particles, animation, ui, physics, multiplayer, mobile, etc.).

Usage: Open the Asset Store tab in Godot (AssetLib before 4.7), search for "Beckett" and install (Asset Store listing, Asset Library #5296), or manually copy addons/beckett/ into the project. Enable it in Project → Project Settings → Plugins; supports Godot 4.2+ (4.4+ recommended). Once enabled, it automatically starts the server and writes .mcp.json. Automatic behavior can be disabled via beckett/autostart=false, beckett/auto_write_client_config=false; environment variables include BECKETT_PORT (default 8770), BECKETT_TOKEN, BECKETT_READONLY=1, BECKETT_ALLOWLIST, BECKETT_CONFIRM_DESTRUCTIVE=1. For Claude Code, just run claude in the project, and the automatically written .mcp.json will complete the connection (/mcp → beckett); for Cursor etc., you can point to http://127.0.0.1:8770/mcp(Streamable HTTP) or use the Connect Detected Clients button in the panel.

Use cases: developers who need to use an AI agent in a Godot 4 project for code writing, scene editing, run debugging, screenshot observation, and log diagnosis. The Lite version is free and open source, suitable for observation and diagnosis; the Full version is suitable for users who need AI automated playtesting, assertion results, and batch tasks.

Limitations and notes: This repository is the free Lite version, licensed under MIT. The Full version is a separate commercial product, a one-time purchase (15 USD) including lifetime updates; the purchase address is on the official itch.io page. Beckett is a third-party tool and is not affiliated with or endorsed by the Godot Foundation; "Godot" is a trademark of the Godot Foundation. Security aspects: localhost only, strict Host and Origin checks (to prevent DNS rebinding), per-project tokens for new projects, file reads restricted to within the project, and gates such as read-only/allowlist/confirmation of destructive operations are provided; see SECURITY.md for details. The Lite version ships with a game-side runtime (addons/beckett/runtime/mcp_runtime.gd, MIT source), and the Full version's driver tools use this runtime and understand driver commands; the Lite version's tools do not send these commands, and its bridge rejects them as well. This is a product boundary, not a sandbox. System requirements are Godot 4.2+ (4.4+ recommended), verified on 4.4.1, 4.6.2, and 4.7, with CI tests covering Windows, Linux, and macOS.