Skip to main content
Glama

Node Get Properties

node_get_properties

Retrieve properties of a Godot scene node by path. Optionally filter to specific fields to reduce response size; returns null values and reports unknown field names.

Instructions

Get properties of a node.

Resource form: godot://node/{path}/properties — prefer for active-session reads (returns the full property set).

The default returns every editor-visible property, which can be 50-150 entries. Pass fields to return only the properties you need — a large response-size cut on this hot read. The response always carries total_count (all editor-visible properties) alongside count (returned): an unfiltered call returns the full set, so count == total_count; only the fields filter can make count smaller. Requested names that match no editor-visible property are listed in unknown_fields, so a nonexistent name is distinguishable from a property that exists with a null value.

Null-valued properties are included: an unset object/resource slot (script on an unscripted node, an empty mesh or material, …) returns "value": null with its declared type. An attached script serializes to its res:// path; built-in scripts (no resource path) fall back to their string representation.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
pathYesScene path relative to the edited scene root (e.g. "/Main/Camera3D"), NOT runtime "/root/..." paths. Derive from prior tool responses or scene_get_hierarchy.
fieldsNoWhen non-empty, return only these property names.
session_idNoOptional Godot session to target. Empty = active session.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. Addedv3.1.4
  2. Removedv3.0.7
  3. Changed1 schema field changedv3.0.3
    • addedInput schema / properties / fields
      Added value: +{
      +  "anyOf": [
      +    {
      +      "items": {
      +        "type": "string"
      +      },
      +      "type": "array"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null,
      +  "description": "When non-empty, return only these property names."
      +}
  4. First observedv2.9.1

TDQS

A4.4/5.0
Behavior5/5

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

Despite no annotations, the description thoroughly discloses behavior: it details response size, the total_count vs count difference, unknown_fields handling, null-value inclusion, and script serialization. This exceeds minimal requirements.

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?

The description is detailed but well-structured, with the main purpose first, followed by usage tips and behavior specifics. Some redundancy exists, but it remains organized and readable.

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's complexity and the absence of annotations, the description covers all necessary aspects: usage context, parameter behavior, response semantics, and edge cases. With an output schema present, it is effectively complete.

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 coverage is 100%, so parameters are well-documented in the schema. The description adds contextual notes about 'fields' (response size cut) and 'path' (not runtime paths), but these are enhancements rather than necessities.

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 clearly states it retrieves node properties, identifies the resource form, and differentiates from siblings like node_set_property. It provides specific details about the returned data structure.

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 explains when to use this tool (active-session reads) and advises using the 'fields' parameter for large response cuts, but does not explicitly name alternative tools for similar operations.

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