Skip to main content
Glama

get_parameters

Batch-read Houdini parameter values by name or label substring across a node or network, including live values, defaults, and non-default changes.

Instructions

Read many parameter values at once, matched by name or label substring.

The batch counterpart of set_parameters. Several unrelated groups of settings ("flame", "wind", "buoy") come back in one call instead of one call each, and unlike get_node_card these are the live values on this node rather than the defaults for its type.

Pass inside instead of node_path to read the same patterns across a whole network in one call: "every file parm of this material library, unexpanded" comes back as rows of {node, parm, value, raw_value}, up to 2000 rows. raw_value is the unexpanded text ($JOB/...), shown when it differs from the value, exactly as for a single node.

Args: node_path: Node to read. patterns: Substrings matched against parameter name and label. Omit for everything, up to the cap. Required with inside, unless non_default_only. include_defaults: Also report whether each value is still the default, and, where it differs, the default (default, default_expression). inside: Network to read instead of a single node. recursive: With inside, include every descendant, not only children. Nodes inside locked HDAs (a solver's own internals) are skipped and counted in skipped_inside_locked_assets. node_type: With inside, only nodes of this type (e.g. "mtlximage"). include_locked_assets: With recursive, read inside locked HDAs too. non_default_only: Only parameters changed from their defaults, each with its default: "what was changed on every node of this network" in one call (with inside, no patterns needed).

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
insideNo
patternsNo
node_pathNo
node_typeNo
recursiveNo
include_defaultsNo
non_default_onlyNo
include_locked_assetsNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changedv2.25.0
    • addedInput schema / properties / non_default_only
      Added value: +{
      +  "default": false,
      +  "title": "Non Default Only",
      +  "type": "boolean"
      +}
  2. Changed2 schema fields changedv2.24.1
    • addedInput schema / additionalProperties
      Added value: +false
    • addedInput schema / properties / include_locked_assets
      Added value: +{
      +  "default": false,
      +  "title": "Include Locked Assets",
      +  "type": "boolean"
      +}
  3. Changed7 schema fields changedv2.21.0
    • addedInput schema / properties / inside
      Added value: +{
      +  "anyOf": [
      +    {
      +      "type": "string"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null,
      +  "title": "Inside"
      +}
    • addedInput schema / properties / node_path / anyOf
      Added value: +[
      +  {
      +    "type": "string"
      +  },
      +  {
      +    "type": "null"
      +  }
      +]
    • addedInput schema / properties / node_path / default
      Added value: +null
    • removedInput schema / properties / node_path / type
      Removed value: -"string"
    • addedInput schema / properties / node_type
      Added value: +{
      +  "anyOf": [
      +    {
      +      "type": "string"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null,
      +  "title": "Node Type"
      +}
    • addedInput schema / properties / recursive
      Added value: +{
      +  "default": false,
      +  "title": "Recursive",
      +  "type": "boolean"
      +}
    • removedInput schema / required
      Removed value: -[
      -  "node_path"
      -]
  4. First observedv0.1.0

TDQS

A4.7/5.0
Behavior4/5

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

No annotations exist, so the description carries the full burden and does well: it discloses the 2000-row cap, that locked-HDA internals are skipped and reported in `skipped_inside_locked_assets`, that `raw_value` is the unexpanded text shown only when it differs, and the return shape (`rows` of {node, parm, value, raw_value}). It does not state read-only status explicitly or how invalid/missing `node_path` behaves, so it falls just short of full disclosure.

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 core purpose and the `inside` batch mode are front-loaded, and the prose is largely non-redundant. There is mild padding ('exactly as for a single node') and the Args block restates much of the prose above it, but with zero schema coverage that recounting is the only documentation available.

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?

For an 8-parameter read tool with no annotations and no output schema, this covers what an agent needs: which arg combinations are legal, what the capped result set looks like, and what the skipped-locked-assets counter means. The absence of an output schema is compensated by the inline description of the `rows` structure.

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

Parameters5/5

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

Schema description coverage is 0%, yet the Args block documents all 8 parameters — including the `patterns` omission default, the `inside` vs `node_path` mutual exclusion, the `patterns`-free exemption when `non_default_only` is set, and the interaction of `recursive`/`include_locked_assets`/`node_type`. This more than compensates for the empty schema.

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 and resource ('Read many parameter values at once') plus the matching semantics ('matched by name or label substring'). It explicitly positions itself as 'the batch counterpart of set_parameters' and distinguishes itself from get_node_card (live node values vs. type defaults), so an agent can route among the three param-read siblings without opening a schema.

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

Usage Guidelines5/5

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

Explicitly names when to use each mode: pass `inside` instead of `node_path` to sweep a whole network, `non_default_only` for 'what was changed on every node', `recursive` to descend, `include_locked_assets` to enter locked HDAs. Alternatives (get_parameter, set_parameters, get_node_card) are named with the condition that selects this tool over them.

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