Skip to main content
Glama

set_device_routing

Set a device's input routing in Ableton, like selecting a sidechain source track. Specify track, device, and routing channel to configure audio inputs.

Instructions

Set a device's input routing (e.g., select a sidechain audio source).

For sidechain on Compressor/Gate: typical usage is to set the routing channel to another track's name (e.g., "5-Kick"). Names are matched case-insensitively via substring.

Call get_device_routings first to discover the exact type/channel names available.

Parameters:

  • track_index: Track containing the device

  • device_index: Position in the chain

  • routing_type_name: Routing TYPE name to match (e.g., "External Input"). Empty to skip.

  • routing_channel_name: Routing CHANNEL name to match (e.g., "5-Kick"). Empty to skip.

  • track_kind: 'regular' (default), 'return', or 'master'

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
track_kindNoregular
track_indexYes
device_indexYes
routing_type_nameNo
routing_channel_nameNo
Behavior4/5

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

With no annotations, the description carries the full burden of disclosure. It reveals key behavioral details: case-insensitive substring matching for names, the ability to skip routing type/channel by leaving them empty, and the default/possible values for track_kind. These details go beyond a simple 'set' and help the agent anticipate behavior.

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 description is well-structured: it opens with the core purpose, then adds a usage note, prerequisite instruction, and a parameter list. While not overly long, it is slightly more verbose than necessary because the parameter explanations duplicate what would normally appear in the schema. However, given the missing schema descriptions, this structure is justified.

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

Completeness4/5

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

The description covers the tool's purpose, usage workflow, parameter details, and behavioral matching rules, making it quite complete for a mutation tool with no output schema. It lacks explicit error/return information, but the instruction to call get_device_routings first mitigates common errors. Overall, it provides enough context for an agent to select and invoke the tool correctly.

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?

The description includes a dedicated 'Parameters' section that explains each of the 5 parameters in plain language with concrete examples (e.g., '5-Kick' for routing_channel_name). Since schema description coverage is 0%, this section is essential and fully compensates for the schema's lack of descriptive text.

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 clearly states the tool's purpose with a specific verb and resource: 'Set a device's input routing,' and gives a concrete sidechain example. It distinguishes itself from sibling tools like set_device_parameter by focusing specifically on routing. The scope and action are unambiguous.

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

Usage Guidelines4/5

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

The description explicitly instructs users to 'Call get_device_routings first' to discover available names, establishing a clear prerequisite and workflow. It also provides a typical usage scenario (sidechain on Compressor/Gate) and notes the substring matching behavior. It does not explicitly state when not to use the tool, but the prerequisite implies a proper usage pattern.

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

Install Server

Other Tools

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/farmhutsoftwareteam/ableton-mcp-extended'

If you have feedback or need assistance with the MCP directory API, please join our Discord server