PlugWiki
gdharness logo

gdharness Godot MCP Server: Setup for Claude, Cursor and Other Apps

CommunityLocal
Getnpmgdharnessaureliolo/gdharness

Lets Claude, Cursor and other assistants play your Godot 4 game, read what is on screen, click buttons and edit scenes and scripts.

gdharness is an independent project that pairs an MCP server with four Godot addons. The addons let your assistant ask the open editor and the running game what the screen says, what a property holds and what the console printed. It runs on your computer and needs Godot 4.7 or newer and Node 22 or newer. Setup installs the addons into your project, so run it in a project under version control.

Good for

  • Godot 4.7+ developers who want an assistant to run the game and check what happens
  • Anyone debugging with breakpoints and variable values through an assistant
  • Teams that want errors and warnings from each run read back with line numbers
  • Developers who want scenes, scripts and settings edited from chat

Works in

12 should work

Tap an app to see how to set it up and any known problems.

Install gdharness MCP

Claude Code

  1. 1

    Copy this prompt.

    Add the gdharness MCP server to Claude Code. Run this command:
    
    cd /path/to/your/godot/project && npx -y gdharness setup --claude-code
    
    Then check that it loaded and tell me if I need to sign in or restart.
  2. 2

    Paste it into Claude Code. It shows the change and asks before running it.

Requires Godot 4.7+, Node.js 22+.

Read-only mode: There is no read-only mode. The server can edit project files and run game code.

Run the setup command from your Godot project folder. It installs the addons into the project and writes the server entry for the app you name. Add GODOT_PATH only if Godot is not in a usual place. The generated config below only registers the server, so it does nothing useful until setup has run once. Then restart the app and confirm the tools are listed.

Built from the package data we hold. Not yet tested by us.

Tools

  • Checks whether the Godot editor and your running game are connected

    Reports whether the editor addon is connected, which Godot answers, whether the editor is playing something, and which running games it can reach. It is the first thing to call when nothing seems to answer.

    Try: “Is the Godot editor connected to the assistant?”

    Read · editor_status

  • Summarizes the project: name, main scene, counts and health

    Returns the project's name and main scene, the Godot version, and counts of scenes, scripts and assets. Extra sections add autoloads, script classes, input actions, a health report and export validation.

    Try: “What is in this project and is it healthy?”

    Read · project_info

  • Searches text across all project files

    Finds a word or regular expression in project files and returns the file and line of each match. It skips hidden folders, node_modules, folders with a .gdignore and the addons gdharness installed.

    Try: “Find everywhere the player_died signal is mentioned”

    Read · project_search

  • Shows what a resource uses, or what uses it

    Lists the resources a file depends on, or the files that depend on it, which helps before moving or changing something.

    Try: “What scenes use the coin.png texture?”

    Read · project_dependencies

  • Reads and changes project settings, autoloads, inputs, plugins and audio (16 ops)

    Reads one setting or a whole group, and writes settings in project.godot and the audio bus layout. Its 16 ops include unset, set_main_scene, add and remove autoload, add and remove input action, enable and disable plugin, and several audio bus changes.

    Try: “Add an input action called dash bound to the shift key”

    Delete · project_settings

  • Checks and re-runs Godot's asset import (7 ops)

    Lists resources that are outdated or failed to import, shows or changes a resource's import options, reads UIDs, and reimports. Ops are status, options, set_options, reimport, uid, refresh_uids and refresh_classes.

    Try: “Which textures failed to import and why?”

    Runs code · project_import

  • Lists, edits and runs export presets (5 ops)

    Reads the presets in export_presets.cfg, adds, changes or removes them, and runs an export with a preset. Ops are list, run, add_preset, set_preset and remove_preset.

    Try: “Export the Windows build with the release preset”

    Delete · project_export

  • Runs the project's gdUnit4 tests and reports failures

    Runs the project's gdUnit4 suites in one engine and returns only the cases that did not pass, with where each is and what the assertion said. gdUnit4 must already be installed in the project.

    Try: “Run the tests for the inventory scripts”

    Runs code · project_test

  • Creates or saves a scene file (3 ops)

    Makes a new scene with one root node, saves a scene, or saves a copy under a new path. Ops are create, save and save_as.

    Try: “Create a scene called shop.tscn with a Control root”

    Write · scene_create

  • Shows the nodes in a scene file

    Lists a scene's node names, classes and hierarchy, with properties when asked, and notes which nodes are instances of other scenes.

    Try: “Show the node tree of the main menu scene”

    Read · scene_tree

  • Adds, edits, moves and deletes nodes in a scene (8 ops)

    Works on one node in a scene file. Ops are add, get, set, duplicate, reparent, delete, set_tilemap_cells and bake_navigation, so it can also paint tiles and bake navigation regions.

    Try: “Add a Timer node named SpawnTimer under the root of level1.tscn”

    Delete · scene_node

  • Lists, connects and removes signal connections in a scene (3 ops)

    Shows every signal connection in a scene, connects a signal to a method, or removes a connection. Ops are list, connect and disconnect.

    Try: “Connect the button's pressed signal to _on_buy_pressed”

    Delete · scene_signal

Read from the source code

Permissions

high risk · 7 things to watch

High risk

The assistant can run your game, call code inside it and edit or move project files, and there is no read-only mode. Use it only on projects you trust, with version control, and review changes after each session.

What it can do

  • Read your data
  • Create and change things
  • Delete things
  • Read-only mode

Watch out for

  • It runs your game and can call code inside it

    runtime_invoke calls methods and sets properties in the running game, debug_state can evaluate expressions, and editor_run starts the project or an exported build in it with arguments. Only open projects you trust. npmjs.com

  • It edits and moves your project files

    Scene, script, resource and settings tools write to your project, and resource_edit move moves files and rewrites references. Our advice: commit before a session so you can review and revert. npmjs.com

  • Setup writes addons and config into your project

    The setup command installs four addons, enables two editor plugins, adds a GdharnessRuntime autoload in project.godot, rebuilds the class list, writes a skill into .agents/skills (with copies for Claude Code, Kiro and Cline) and registers the server in the assistant configs the project already uses. Use the no-connect, no-skill or no-runtime flags to skip parts. aureliolo.github.io

  • Machine-wide configs are written only when you ask

    Claude Desktop, Codex, Cline and Windsurf have no project config, so setup writes them only with their flag or a typed yes. That changes every project you open with that app. aureliolo.github.io

  • Local ports are open while it runs

    The editor bridge listens on 127.0.0.1:6505 by default. The runtime addon in your game also listens on 127.0.0.1 in debug builds only, and its code says its commands are not authenticated. Do not change the bind address to a public one. github.com

  • Screenshot tools can save a PNG outside the project

    editor_capture and runtime_capture can write a new PNG to an absolute path outside the project, and refuse to overwrite an existing file. npmjs.com

  • It checks the npm registry for updates

    Tool answers can carry an update notice with an upgrade command, and the upgrade replaces the addons in your project. The install guide tells the assistant to run it only with your agreement. aureliolo.github.io

Security advisories

No published security advisories as of Nov 1, 2026.

Technical details
Turning on read-onlyNo read-only mode is documented. Tools that only read exist, but the same server also edits project files and runs game code.
Talks toThe npm registry, to check for a newer gdharness release (set GDHARNESS_NO_UPDATE_CHECK to turn it off)
Sign-in and keysNo account or API key. It talks to the Godot editor and your running game on this computer.

Questions

Is it official?

No. It is an independent project by Aurelio Amoroso, and the README says it is not affiliated with the Godot Foundation. It is a fork of GoPeak, which builds on the godot-mcp server by Solomon Elias.

Is it free?

Yes. gdharness is MIT licensed and runs on your computer with no account or API key.

Which Godot version do I need?

Godot 4.7 or newer. The README says versions before 4.7 are not tested. You also need Node 22 or newer, or Bun 1.4 or newer.

What does the setup command change in my project?

It installs four addons, enables the editor plugins, registers a runtime autoload in project.godot, rebuilds the class list and writes a skill into .agents/skills. It also registers the server in the assistant configs your project already uses.

Can I run it read-only?

No. There is no read-only mode. Some tools only read, such as those that inspect the screen or list nodes, but the same server can edit files and run game code.

Does it need the editor open?

Not for everything. Some tools work through the open editor, and with none open they fall back to a short headless Godot run. Tools that act on a running game need the game running with the runtime addon.

How do I run the game tests?

Install gdUnit4 in the project, then ask the assistant to run the tests. The test tool runs your gdUnit4 suites and reports only the failing cases.

Does it work with Godot 3 or other engines?

No. It is built for Godot 4 and tested against 4.7.2 on Windows, Linux and macOS.

Does it send my project anywhere?

Not by design. It talks to the editor and game on your computer, and its only outside request noted in the code is the check for a newer release on the npm registry.

How do I add it to Claude Code or Cursor?

Use the install box above. Run the setup command in your Godot project folder with the flag for your app, then restart the app and check that the tools are listed.

Information

updated Nov 2, 2026

Publisher
Community
Package
gdharness
Registry
npm
Transport
stdio
Auth
None
Version
1.3.56
License
MIT
Last commit
Oct 31, 2026
Open issues
1
Listed in
Official MCP registry

WebsiteGitHubnpmOfficial MCP RegistryChangelogIssues

Sources

Docs, issue trackers and discussions this page is built from. Issues, quotes and findings above link to their own source.

Show all 3
  1. github.com · github.com
  2. aureliolo.github.io · aureliolo.github.io
  3. www.npmjs.com · npmjs.com

Facts from the official MCP registry, GitHub, npm, PyPI and the Docker catalog. Updated Nov 2, 2026.