Skip to main content
Glama

anim_keys_get

Read-onlyIdempotent

Reads a node's animation keyframes as bone tracks in the same format used for setting keys, optionally filtered by bones, frame range, or summary.

Instructions

Reads keyframes of a node as tracks ({bones: {bone: {rotation: [[frame, x, y, z], ...]}}...}), the same format anim_keys_set takes.

Tool call template

Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {
      "node": "<node>"
    },
    "name": "anim_keys_get"
  }
}

Input Schema

NameRequiredDescriptionDefault
nodeYesNode label.
bonesNoOnly these bones.
summaryNoOnly which bones and dials are keyed and over which frames.
end_frameNo
start_frameNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.4.0

TDQS

B3.2/5.0
Behavior3/5

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

Annotations already declare readOnlyHint, idempotentHint and non-destructive, so the safety profile is covered. The description earns credit for disclosing the return shape ({bones: {bone: {rotation: [[frame, x, y, z], ...]}}}) in the absence of an output schema, but says nothing about how start_frame/end_frame bound the read or what summary returns.

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?

Two sentences, front-loaded with the action and immediately followed by the concrete output shape; no filler. The inline JSON sketch is dense but earns its space since no output schema exists.

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?

For a 5-parameter read tool without an output schema, the description supplies the essential return format, which is the main thing an agent needs. However, it leaves the frame-range parameters and the summary mode unexplained, which matters because those change what comes back.

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

Parameters2/5

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

Schema coverage is 60%: 'node', 'bones' and 'summary' are documented in the schema, while 'start_frame' and 'end_frame' have no description at all. The description adds no parameter-level meaning (no clipping behavior, no frame indexing basis, no bone-filter semantics), so it fails to compensate for the gap.

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 ('Reads keyframes of a node as tracks') and names the sibling format it mirrors ('the same format anim_keys_set takes'), which makes the read/write pairing obvious. It stops short of claiming an explicit read-only scope in the opening clause, but the core purpose is unmistakable.

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

Usage Guidelines3/5

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

Usage is only implied: by naming anim_keys_set as the format twin, an agent can infer this is the symmetric read operation. There is no explicit 'use this when you need to inspect existing keys before editing/retiming' guidance, and no mention of siblings like anim_key_pose or anim_sample.

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