Skip to main content
Glama

set_keyframes

Apply multiple keyframes to a Houdini node parameter by providing frame and value pairs. Use this to build animation curves in batch.

Instructions

Batch-set multiple keyframes on a parameter.

Args: node_path: Node path. parm_name: Parameter name. keyframes: List of dicts with "frame", "value", and optionally "slope"/"accel".

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
keyframesYes
node_pathYes
parm_nameYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changedv2.24.1
    • addedInput schema / additionalProperties
      Added value: +false
  2. First observedv0.1.0

TDQS

A3.6/5.0
Behavior2/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 says 'batch-set' (implying mutation) but does not disclose whether existing keyframes are overwritten, what permissions are required, whether the operation is reversible, or what the return looks like. For a mutation tool with zero annotation coverage, this is a notable gap.

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?

The description is short and front-loaded: the purpose appears first, followed by a concise args section. Every sentence contributes directly to understanding the tool; there is no filler.

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

Completeness2/5

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

Given a mutation tool with no annotations, no output schema, and 0% schema description coverage, the description is incomplete. It covers purpose and parameter format but omits essential behavioral details such as overwrite behavior, error conditions, and return values, which an agent needs to call it correctly.

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

Parameters4/5

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

Schema description coverage is 0%, so the description must compensate. It does so well for the keyframes parameter by specifying that it is a list of dicts with 'frame', 'value', and optional 'slope'/'accel'. The other two parameters are only briefly labeled, but the critical nested format is documented.

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 and resource: 'Batch-set multiple keyframes on a parameter.' The word 'batch' and 'multiple' clearly distinguish it from the sibling set_keyframe, so an agent can tell which tool handles single vs multiple keyframes without opening schemas.

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 implied: use it when setting multiple keyframes at once. However, the description does not explicitly name alternatives (e.g., set_keyframe for a single keyframe) or state when not to use it, so guidance is present but incomplete.

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