Skip to main content
Glama

par_set_expression

Set any TouchDesigner parameter into expression mode using a Python expression, enabling dynamic value control during live rendering.

Instructions

Put a parameter into expression mode.

path (<class 'str'>): Operator path.

name (<class 'str'>): Parameter name.

expression (<class 'str'>): Python expression string.

detail (str | None): full (default) | summary (long lists cut to 25 + count) | minimal (top-level scalars only).

response_format (str | None): yaml (default, token-cheap) | json.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
nameYes
pathYes
detailNo
expressionYes
response_formatNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed2 schema fields changedv0.4.0
    • addedInput schema / properties / detail
      Added value: +{
      +  "anyOf": [
      +    {
      +      "type": "string"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null,
      +  "title": "Detail"
      +}
    • addedInput schema / properties / response_format
      Added value: +{
      +  "anyOf": [
      +    {
      +      "type": "string"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null,
      +  "title": "Response Format"
      +}
  2. First observedv0.2.0

TDQS

C2.8/5.0
Behavior2/5

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

With no annotations, the description must carry behavioral disclosure. It states the operation but not whether it overwrites an existing value, whether it is reversible, whether it triggers evaluation, or what the response contains. The detail/response_format parameters hint at output behavior but are never explained.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is brief and the parameter list is compact, but the parameter list largely duplicates the schema properties and is presented as raw text rather than structured documentation. It is not bloated, but the brevity reflects under-specification, not efficiency.

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?

This is a mutation tool with five parameters, no annotations, and no output schema. The description fails to convey the effect on the parameter, required expression semantics, or response format semantics, leaving an agent with significant gaps for correct invocation.

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?

The description adds minimal semantics for all five parameters: path is 'Operator path', name is 'Parameter name', expression is 'Python expression string', and it defines detail and response_format options. However, it does not explain the expression evaluation context, path syntax, or interaction between path and name, so it only partially compensates for 0% schema coverage.

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?

The description names a specific action ('Put a parameter into expression mode') and identifies the resource (parameter) plus the required inputs (path, name, expression). It is not a tautology, but it leaves 'expression mode' undefined for unfamiliar agents and does not explicitly contrast with par_set, so it is clear but not perfectly differentiated.

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

Usage Guidelines2/5

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

No guidance is provided for when to use this tool versus par_set or par_get. The description does not mention alternatives, prerequisites, or conditions, so an agent cannot determine the right choice from the description alone.

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