Skip to main content
Glama

spine_add_path_constraint

Adds a path constraint that places bones along a slot's path attachment and animates path.position to move them along the path.

Instructions

Add a path constraint: bones are placed along the path attachment shown in slot (add one first with spine_add_attachment kind="path"). Animate "path.position" to move them along it.

Args: position_mode: percent (position 0..1 of the path length) or fixed (in pixels). spacing_mode: length, fixed, percent or proportional (distance between the bones). rotate_mode: tangent, chain or chainScale. rotation: Rotation offset in degrees. position: Setup position along the path. spacing: Setup spacing between bones. mix_rotate / mix_x / mix_y: 0..1 influence (mix_y defaults to mix_x).

Input Schema

NameRequiredDescriptionDefault
nameYes
slotYes
bonesYes
mix_xNo
mix_yNo
orderNo
projectYes
spacingNo
positionNo
rotationNo
mix_rotateNo
rotate_modeNotangent
spacing_modeNolength
position_modeNopercent

Output Schema

NameRequiredDescriptionDefault
resultYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.2.0

TDQS

A3.7/5.0
Behavior3/5

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

No annotations are provided, so the description carries the full behavioral burden. It does disclose the prerequisite (slot must already hold a path attachment) and the post-creation animation hook, which is useful mutation context, but says nothing about what happens if the slot lacks a path, whether repeated calls stack constraints, or permission/error behavior.

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?

Front-loaded with the purpose and prerequisite, then a tidy Args block; every line adds information and nothing is padded. The prose-plus-args split is easy to scan.

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?

An output schema exists, so return values need not be described, and the mode parameters are well covered. But for a 14-parameter mutation tool with zero annotation and zero schema-description coverage, the unexplained identity params (project, name, order) leave gaps an agent must guess at.

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 0%, so the description must supply all parameter meaning; it does valuable work enumerating mode values (percent/fixed, length/fixed/percent/proportional, tangent/chain/chainScale) and the mix_y-defaults-to-mix_x rule. However, project, name, bones, slot, and order are undocumented, leaving a meaningful share of 14 params unexplained.

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

Purpose4/5

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

States a specific verb and resource ("Add a path constraint") and immediately explains the effect: "bones are placed along the path attachment shown in `slot`." It stands apart from the other constraint-adders (ik/transform/physics) by naming the path attachment mechanism, though it never explicitly contrasts itself with them.

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?

Gives a concrete prerequisite: "add one first with spine_add_attachment kind=\"path\"" and a follow-up usage hint ("Animate path.position to move them along it"). It lacks any explicit statement of when to prefer this over the other constraint tools, but the setup requirement is clearly actionable.

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