Skip to main content
Glama

add_break_struct_node

Creates a Break Struct node with one output pin per struct member, returning all pins so each field can be read without extra lookups. Inverse of add_make_struct_node; does not compile.

Instructions

Create a Break Struct node with ONE OUTPUT PIN PER MEMBER of the struct (Blueprint-defined structs included) and return them all, so each field can be read out with connect_pins without a follow-up read. Same node as add_graph_node node_type="break_struct", but reconstructed after creation so the per-member pins are refreshed from the struct. Inverse: add_make_struct_node. Does NOT compile.

Returns: { node_id, pins:[...the struct input + one output pin per struct member...], blueprint_name, graph_name, struct_type }

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
graph_nameNoTarget graph name; defaults to the Blueprint's event graph when omitted.
position_xNoNode X position (ignored when node_position is set).
position_yNoNode Y position (ignored when node_position is set).
struct_typeNoUScriptStruct path (/Game/.../S_Foo.S_Foo), bare name, or engine alias (Vector/Rotator/Transform...).
node_positionNoNode canvas position as [x, y]; takes precedence over position_x/position_y.
blueprint_nameNoBlueprint name or path.
blueprint_pathNoAlias of `blueprint_name` (same value, same meaning). Accepted because sibling tools spell this parameter differently; prefer `blueprint_name`.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv1.1.0

TDQS

A4.1/5.0
Behavior4/5

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

Annotations already cover the safety profile (readOnly=false, destructive=false), so the bar is lower. The description nevertheless adds non-obvious behavior: 'Does NOT compile' (the graph is left in a non-compiled state) and the fact that the node is reconstructed after creation to refresh pins. It omits any note on graph/blueprint prerequisites or error behavior, but the added context is meaningful.

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?

Front-loads the core capability and the distinguishing detail, then handles the sibling comparison, inverse, and compile note compactly. The Returns line is a useful structural addition. Slightly dense but every sentence earns its place, with no filler.

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

Completeness4/5

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

There is no output schema, so the description carries the return burden and does so with an explicit return shape (node_id, pins, blueprint_name, graph_name, struct_type). Combined with the non-compiling behavior note and sibling routing, an agent has what it needs; only prerequisite/error handling is left unstated.

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 100%, so the schema already documents all seven parameters (including the blueprint_path alias note and node_position precedence). The description only echoes struct_type in the return payload and notes Blueprint-defined structs are supported; it adds little beyond the schema. Baseline 3 is appropriate.

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?

States a specific verb (Create) and resource (Break Struct node) and immediately names the distinguishing capability: one output pin per member, including Blueprint-defined structs. It further disambiguates from the sibling add_graph_node node_type="break_struct" and names the inverse add_make_struct_node, so an agent can place it precisely among the graph-node tools.

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?

Explains the condition that selects this tool: use it when each field must be readable via connect_pins without a follow-up read. It also contrasts with the near-identical add_graph_node path (same node, but reconstructed so pins are refreshed) and points at its inverse. It stops short of an explicit 'prefer add_graph_node when you don't need per-member pins' rule, so it isn't fully exhaustive.

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

Deploy Server

Other Tools