Skip to main content
Glama

set_return_device_parameter

Idempotent

Set a device parameter on a return track by return and device index and parameter name/index. Values can be native numbers, enum labels, or unit strings like '250 Hz'; out-of-range values are clamped.

Instructions

Set one enabled parameter on a device in a return track's chain.

Call get_return_device_parameters first and use its parameter name/index and native min/max; numeric out-of-range values are clamped. Supported display-unit strings and exact enum labels also work; unsupported mappings fail before writing. Use set_device_parameter for a regular track or set_master_device_parameter for the full-mix chain.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
valueYesNative number (clamped/quantized), exact enum label, or display text with Hz/kHz/ms/s/dB/% units, e.g. '250 Hz'. Unsupported mappings fail before writing.
parameterYesParameter name or zero-based parameter index returned by the matching get_*_device_parameters tool.
device_indexYesZero-based device position in the target track's device chain.
return_indexYesZero-based return-track index; 0 is Return A.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
resultYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed3 schema fields changedv1.8.0
    • addedInput schema / properties / value / anyOf
      Added value: +[
      +  {
      +    "type": "number"
      +  },
      +  {
      +    "type": "string"
      +  }
      +]
    • changedInput schema / properties / value / description
      Previous value: -"Value in the parameter's native range; the server clamps it to the min/max reported by the matching get_*_device_parameters tool."New value: +"Native number (clamped/quantized), exact enum label, or display text with Hz/kHz/ms/s/dB/% units, e.g. '250 Hz'. Unsupported mappings fail before writing."
    • removedInput schema / properties / value / type
      Removed value: -"number"
  2. Changed6 schema fields changedv1.7.3
    • addedInput schema / properties / device_index / description
      Added value: +"Zero-based device position in the target track's device chain."
    • addedInput schema / properties / device_index / minimum
      Added value: +0
    • addedInput schema / properties / parameter / description
      Added value: +"Parameter name or zero-based parameter index returned by the matching get_*_device_parameters tool."
    • addedInput schema / properties / return_index / description
      Added value: +"Zero-based return-track index; 0 is Return A."
    • addedInput schema / properties / return_index / minimum
      Added value: +0
    • addedInput schema / properties / value / description
      Added value: +"Value in the parameter's native range; the server clamps it to the min/max reported by the matching get_*_device_parameters tool."
  3. First observedv1.0.0

TDQS

A4.9/5.0
Behavior5/5

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

Annotations already mark the tool as idempotent and non-destructive. The description adds valuable behavioral details: numeric out-of-range values are clamped, unsupported display-unit strings or enum labels fail before writing, and value formats have defined semantics.

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?

Three focused sentences: the purpose, the prerequisite and acceptable value forms, and the routing to sibling tools. Every sentence earns its place, and the most important usage guidance is front-loaded.

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?

Given an output schema is present, return-value documentation is unnecessary. The description covers the prerequisite call, parameter/value semantics, behavior on invalid input, and sibling alternatives, making it complete for an agent selecting and invoking the tool.

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 coverage is 100%, so the baseline is 3. The description adds meaning beyond the schema by explaining native min/max clamping, exact enum label support, display-unit text examples, and that unsupported mappings fail before writing.

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: 'Set one enabled parameter on a device in a return track's chain.' It clearly distinguishes from set_device_parameter and set_master_device_parameter by targeting return tracks.

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 instructs calling get_return_device_parameters first and reusing its parameter name/index and native min/max. It also names the alternatives for regular tracks and the full-mix chain, leaving no ambiguity about when to use this tool.

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