Skip to main content
Glama
LiveSession MCP
by Uri-Rosen

set_device_on

Turn a specific device on or off (bypass) in Ableton Live by index or fuzzy name to control signal flow.

Instructions

Turn a device on or off (bypass), by index or (fuzzy) name.

Tool call template

Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {
      "track_index": "<track_index>",
      "on": "<on>"
    },
    "name": "set_device_on"
  }
}

Input Schema

NameRequiredDescriptionDefault
onYes
track_typeNotrack
device_nameNo
track_indexYes
device_indexNo

Output Schema

NameRequiredDescriptionDefault
resultYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv2.0.0

TDQS

C2.9/5.0
Behavior3/5

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

The parenthetical '(bypass)' is genuinely useful: it tells the agent that setting `on` false disables signal flow rather than deleting or muting the device, consistent with destructiveHint=false and readOnlyHint=false. Beyond that it is silent on failure behavior (missing device, ambiguous fuzzy match) and on whether the operation is idempotent.

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?

One front-loaded sentence with no filler, and the bypass clarification is placed immediately after the core action. It is arguably too compressed for a five-parameter tool, but nothing in it is wasted.

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?

An output schema and annotations exist, so return values and safety are covered elsewhere, but the description leaves the required track_index and the track_type selector undocumented. For a device-targeting tool with nested addressing (track → device), that is a meaningful omission.

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

Parameters2/5

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

Schema description coverage is 0% across 5 parameters, and the description only explains the index-vs-fuzzy-name resolution and implies fuzzy matching semantics. It never mentions the required `track_index` or the `track_type` default that selects which track container is addressed — the two things an agent must get right to call this successfully.

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?

States a specific verb (turn on/off) and resource (device), and clarifies that 'off' means bypass rather than removal, which separates it from delete_device or set_device_param. It does not explicitly name a sibling or state its niche among the several device tools, but the purpose itself is unambiguous.

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?

Contains no when-to-use or when-not-to-use guidance and no alternatives. It does not say what to do if both device_index and device_name are supplied, what happens when the fuzzy name matches multiple devices, or when to prefer set_device_param/delete_device instead.

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