Public leaderboard

Public assessment

Coding-Solo/godot-mcp (godot-mcp)

godot-mcp · v0.1.0 · scanned

What changed in the harness

Selection accuracy 100→100, token cost up 11%, unconfirmed writes 0%→0%.

Category breakdown

Where the score comes from.

Earned points across the four signals Gradable measures. Safety and Legibility are scored out of 30; Economics and Discoverability are scored out of 20.

01Safety

0.0 / 30

0.0 out of 30
02Legibility

23.9 / 30

23.9 out of 30
03Economics

19.8 / 20

19.8 out of 20
04Discoverability

13.7 / 20

13.7 out of 20

Highest-impact fix

Estimated gain +30 points

Add explicit identity and permission preflight tools

Expose machine-readable principal/tenant confirmation and a non-mutating permission check so agents can verify both before destructive actions.

Description evidence

Defects and rewrites.

13 defects found across the exposed tool descriptions. Suggested rewrites make purpose, inputs, boundaries, and returns easier for an agent to understand.

Tool Defect types Suggested rewrite
launch_editor
name_restates_behavior no_return_description
Opens the Godot editor GUI as a separate process for the project at projectPath. Returns whether the editor process launched successfully.
get_debug_output
name_restates_behavior
Returns the stdout/stderr output and error messages captured from the most recent run_project execution.
stop_project
name_restates_behavior no_return_description
Terminates the Godot process previously started by run_project. Returns whether a running process was found and stopped.
get_godot_version
name_restates_behavior no_return_description
Runs the local Godot executable with a version flag and returns the installed Godot version string.
list_projects
name_restates_behavior no_return_description
Scans directory, optionally recursively, for folders containing a project.godot file. Returns a list of discovered Godot project paths.
get_project_info
no_return_description
Reads project.godot at projectPath and returns metadata such as the project name, Godot engine version, and configured main scene.
create_scene
name_restates_behavior no_return_description
Creates a new .tscn scene file at scenePath within the project, with a root node of type rootNodeType (default Node2D). Returns the path of the created scene file.
add_node
name_restates_behavior no_return_description
Inserts a node of nodeType named nodeName under parentNodePath (default 'root') in the given scene, optionally applying initial properties. Returns confirmation that the node was added and the scene saved.
load_sprite
name_restates_behavior no_return_description
Sets the texture of the Sprite2D node at nodePath in the given scene to the image file at texturePath. Returns confirmation that the texture was assigned and the scene saved.
export_mesh_library
name_restates_behavior no_return_description
Converts meshes in the scene at scenePath (optionally limited to meshItemNames) into a Godot MeshLibrary resource saved to outputPath. Returns the path of the generated .res file.
save_scene
name_restates_behavior no_return_description
Writes in-memory changes to the scene at scenePath back to disk, or to newPath if given to save a separate variant. Returns the path the scene was saved to.
get_uid
no_return_description
Looks up the UID assigned to filePath for Godot 4.4+ resource references and returns the UID string.
update_project_uids
no_return_description
Resaves project resources so their UID references stay in sync with project.godot (Godot 4.4+). Returns confirmation of completion, including which files were resaved.

Selection evidence

Confusable tool pairs.

4 pairs where similar names or overlapping descriptions may send an agent toward the wrong tool.

Tool A Tool B Confidence Why they collide
create_scene save_scene medium A task like 'create a variant of this scene at a new path' or ambiguous phrasing like 'make a scene file at X' could lead an agent to pick create_scene when save_scene (with newPath) was intended for variants, or vice versa for a truly new empty scene.
run_project stop_project low These are opposite actions (start vs stop) with clearly distinct verbs, so confusion is unlikely except in a vague 'toggle running' instruction, but their required params differ enough (projectPath vs none) to disambiguate easily.
get_project_info get_uid low A request like 'get info about this file in the project' could momentarily be confused with get_project_info, but get_uid is clearly scoped to a specific file's UID while get_project_info is project-level metadata, keeping confusion low.
list_projects update_project_uids low Both mention 'project' and 'uid'-adjacent Godot 4.4 context, but their purposes (listing directories vs resaving resources) are distinct enough that only a very vague prompt would cause mixing.

Compare the field

One score is useful.
The evidence makes it actionable.

Back to the leaderboard