Skip to main content
Glama

editor_manage

Manage a live Godot editor: retrieve editor state and performance data, control node selection, clear logs, quit, and evaluate GDScript in the running game.

Instructions

Editor selection, performance monitors, quit, log clearing, game eval.

Resource forms (prefer for active-session reads): godot://editor/state, godot://selection/current, godot://performance

Ops: • state() Editor version, project name, current scene, readiness, play state. • selection_get() Currently selected node paths in the editor. • selection_set(paths) Replace the selection with the given list of scene paths. • monitors_get(monitors=None) Performance singleton values (FPS, memory, draw calls, etc.). Pass a list of monitor names to filter; None returns everything. • quit() Gracefully quit the Godot editor on next frame. • logs_clear(clear_debugger_errors=False) Clear the MCP log buffer. Returns cleared_count. Pass clear_debugger_errors=True to also clear the Debugger dock's visible Errors-tab rows (user-facing UI, so opt-in only); the response then includes debugger_errors_cleared. • game_eval(code) Execute GDScript in the running game with return values. Uses 'await' so user code can await internally. Errors return fast and actionable: EVAL_COMPILE_ERROR for a syntax/parse error, EVAL_RUNTIME_ERROR (with the real message + line) for a runtime error; EVAL_GAME_NOT_READY if the game can't service evals — still launching (retry once it's up), the _mcp_game_helper autoload is missing/disabled, or the game is parked in a debugger break (stop and relaunch); EVAL_HUNG for a genuine infinite loop / never-firing await; EVAL_RESULT_TOO_LARGE if the returned value serializes past the debugger channel's capacity (return a smaller slice). 'await' only progresses while the game window is focused.

Canonical call shape: {"op": "<verb>", "params": {...}}. Flat op parameters are accepted as a compatibility alias when the client transmits them; op and session_id remain top-level.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
opYes
paramsNo
session_idNo

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault

No arguments

Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the full burden and excels. It discloses behavior such as 'quit() gracefully quit the Godot editor on next frame', logs_clear returning cleared_count, the opt-in nature of clearing debugger errors, and the subtle 'await only progresses while the game window is focused'. It also explains all game_eval error codes in detail. No contradictions with annotations exist (none provided).

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is long but elegantly structured: a summary line, resource-form note, bulleted operation list with details, and call-shape explanation. Every sentence earns its place; the length is justified by the multiple operations and error cases covered. It front-loads the core purpose and follows with specifics.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool has six operations, no annotations, no parameter descriptions in schema, and only a sparse input schema, the description is impressively complete. It covers return values for logs_clear, all game_eval error conditions, and operational nuances. The presence of an output schema covers basic return structures, so the description need not repeat those; no critical gaps remain.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, so the description fully compensates by documenting each operation's parameters inline (selection_set(paths), monitors_get(monitors=None), logs_clear(clear_debugger_errors=False), game_eval(code)). It also clarifies the canonical call shape ({'op': '<verb>', 'params': {...}}) and the flat-parameter alias, which adds meaning beyond the raw schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description opens with 'Editor selection, performance monitors, quit, log clearing, game eval' and then enumerates specific operations with verbs (state(), selection_get(), selection_set(), etc.), making the tool's purpose crystal clear. It distinguishes from siblings like editor_state (which likely reads state only) and logs_read (separate tool) by covering management actions beyond simple reads.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explicitly recommends 'Resource forms (prefer for active-session reads)' for state/selection/performance, guiding when to use the alternative resource-based access. For game_eval, it details when to retry (EVAL_GAME_NOT_READY) and when not to (EVAL_HUNG). However, it does not explicitly compare to each sibling tool, so it lacks full exclusionary guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Install Server

Other Tools

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/hi-godot/godot-ai'

If you have feedback or need assistance with the MCP directory API, please join our Discord server