Skip to main content
Glama

Инспекция и управление рантаймом

godot_runtime
Destructive

Control a running Godot game: inspect node trees, read or set properties, call methods, emit signals, and connect signals to methods.

Instructions

Работа с живой игрой. mode=tree — дерево узлов, mode=inspect — свойства узла, mode=find — поиск по имени/типу/группе/скрипту, mode=get / set — чтение и запись свойств (в том числе вложенных вида "theme/colors/font_color"), mode=call — вызов метода узла, mode=emit — отправка сигнала, mode=connect — соединение сигнала с методом. Сначала запустите игру через godot_run { mode: "start" }. Значения свойств: примитивы (число/строка/bool), вложенные пути вида "theme/colors/font_color", строки вида "Vector2(10, 20)" или объекты {"$":"Vector2","x":10,"y":20}, {"$":"Color","hex":"#ff8800"}, ссылки на ресурсы {"path":"res://icon.svg"} или {"$":"ClassRef","class":"PointLight2D"}.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
toNoЦелевой узел для mode=connect
argsNoАргументы вызова
fromNoИсходный узел для mode=connect
modeNotree
nameNoПодстрока имени узла для mode=find
nodeNoПуть к узлу, например Player/Sprite2D
rootNoПоддерево для mode=tree (по умолчанию корень сцены)
typeNoТип узла для mode=find (с учётом наследования)
groupNoГруппа для mode=find
itemsNo
limitNo
propsNo
valueNo
methodNoМетод для mode=call
scriptNoПуть к скрипту для mode=find
signalNo
propertyNoИмя свойства для mode=get
max_depthNo
max_nodesNo
disconnectNo
has_scriptNo
prop_limitNo
prop_namesNo
method_filterNo
property_modeNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.0.1

TDQS

A4/5.0
Behavior4/5

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

Annotations already declare destructiveHint=true, readOnlyHint=false, and idempotentHint=false, so the safety profile is covered. The description adds real value beyond that: it requires a live game to be started first and details how values are serialized for set, which an agent would otherwise have to discover by trial. It does not explicitly warn that get/set writes mutate running state, but the annotations carry that signal.

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

Conciseness4/5

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

It is dense but front-loaded: the tool's purpose comes first, then mode semantics, then the startup prerequisite, then value formats. The mode and value-format sentences each earn their place, though the compact run-on enumeration of value encodings is heavy and would read better split up.

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

Completeness3/5

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

With 25 parameters, 8 modes, and no output schema, the description covers mode semantics and value formats well but never describes what the read operations (tree/inspect/get) return, nor the undocumented parameters. For a high-complexity, mutation-capable tool with no output schema, this leaves gaps an agent must fill by guessing.

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

Parameters3/5

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

Schema description coverage is only 44%, so the description must compensate. It explains the mode enum thoroughly and gives rich guidance on the value encoding (nested paths, "Vector2(10, 20)", {"$":"Vector2",...}, resource refs), which is the hardest parameter. However, roughly half the parameters (props vs property_mode, prop_names, prop_limit, method_filter, has_script, disconnect, items, args, from/to) get no explanation in the description, leaving meaningful ambiguity.

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 states a specific verb+resource (inspecting and manipulating a live running game) and enumerates all eight modes with their meanings: tree, inspect, find, get/set, call, emit, connect. It clearly distinguishes the tool from siblings by deferring game startup to godot_run, so an agent knows this operates on an already-running game.

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?

It gives a concrete prerequisite ("Сначала запустите игру через godot_run { mode: 'start' }") and maps each mode to its use case, which is strong context. It stops short of stating when to prefer this over editor-time tools like godot_scene or godot_scene_edit, so there is no explicit exclusion guidance.

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