Public leaderboard

Public assessment

n24q02m/better-godot-mcp (@n24q02m/better-godot-mcp)

n24q02m-better-godot-mcp · v1.21.0 · scanned

What changed in the harness

Selection accuracy 100→100, token cost up 3%, 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

29.0 / 30

29.0 out of 30
03Economics

17.3 / 20

17.3 out of 20
04Discoverability

12.4 / 20

12.4 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.

3 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
help
no_return_description
Full documentation for a tool. Returns the complete documentation for the named tool as structured content, including all supported actions, parameter descriptions, defaults, and usage notes. Use when the compressed description is insufficient.
input_map
params_unexplained
Input action management. Actions (required params -> optional): - list (-> project_path): list all input actions - add_action (action_name -> deadzone=0.5, project_path): create a named input action - remove_action (action_name -> project_path): delete an input action - add_event (action_name, event_type, event_value -> project_path): bind a key/mouse/joypad event to an input action event_type: key | mouse | joypad. event_value: e.g., KEY_SPACE. action_name is the name that identifies the action (e.g., "jump"); actions are referenced by this name in GDScript via Input.is_action_pressed("jump").
signals
params_unexplained
Signal connection management. Actions (required params -> optional): - list (scene_path -> project_path): list all signal connections in a scene - connect (scene_path, signal, from, to, method -> flags, project_path): connect a signal emitted by the node at the from path to the method at the to path - disconnect (scene_path, signal, from, to, method -> project_path): remove a signal connection signal is the signal name emitted by the source node (e.g., "pressed" on a Button); the emitted signal triggers the target method (e.g., "_on_button_pressed") on the to node. flags are optional connection flags passed to the connection.

Selection evidence

Confusable tool pairs.

1 pair where similar names or overlapping descriptions may send an agent toward the wrong tool.

Tool A Tool B Confidence Why they collide
scenes scripts medium Both are file-CRUD tools over the same Godot project with overlapping actions (create/list/delete), so tasks that don't name a file extension are ambiguous. E.g., 'create a new player character', 'make an enemy', or 'list project files' could resolve to either: scenes requires a .tscn, scripts a .gd, but the descriptions only clarify the distinction when reading closely, and a natural-language task often omits the extension.

Compare the field

One score is useful.
The evidence makes it actionable.

Back to the leaderboard