Skip to main content
Glama

capture_device_chain_snapshot

Read-onlyIdempotent

Save a track, return, or master device chain as persistable JSON, including ordered devices, nested rack topology, exposed parameters, and mixer/routing details.

Instructions

Capture ordered devices, nested rack topology, exposed parameters, Return or master mixer, available master output channel, chain mixer, Drum Rack note routing and populated pad mute/solo as persistable JSON. Not a native rack or preset; excludes hidden plugin state, samples, automation, and mappings.

Input Schema

NameRequiredDescriptionDefault
trackIdYestrack-N from list_tracks, return-N from get_set_mixer, or master.

Output Schema

NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed2 schema fields changedv0.3.1
    • removedOutput schema / additionalProperties
      Removed value: -true
    • addedOutput schema / anyOf
      Added value: +[
      +  {
      +    "properties": {
      +      "limitation": {
      +        "type": "string"
      +      },
      +      "snapshot": {
      +        "type": "object"
      +      },
      +      "stateVersion": {
      +        "minimum": 1,
      +        "type": "integer"
      +      },
      +      "trackId": {
      +        "type": "string"
      +      }
      +    },
      +    "required": [
      +      "stateVersion",
      +      "trackId",
      +      "snapshot",
      +      "limitation"
      +    ],
      +    "type": "object"
      +  },
      +  {
      +    "properties": {
      +      "error": {
      +        "properties": {
      +          "message": {
      +            "type": "string"
      +          },
      +          "outcome": {
      +            "enum": [
      +              "unknown",
      +              "not_executed"
      +            ]
      +          }
      +        },
      +        "required": [
      +          "message",
      +          "outcome"
      +        ],
      +        "type": "object"
      +      }
      +    },
      +    "required": [
      +      "error"
      +    ],
      +    "type": "object"
      +  }
      +]
  2. Changed2 schema fields changedv0.3.0
    • changedInput schema / properties / trackId / description
      Previous value: -"Stable device-owner ID: track-N from list_tracks, return-N from get_set_mixer, or master."New value: +"track-N from list_tracks, return-N from get_set_mixer, or master."
    • changedOutput schema / (root)
      Previous value: -nullNew value: +{
      +  "additionalProperties": true,
      +  "type": "object"
      +}
  3. First observedv0.1.0

TDQS

A3.7/5.0
Behavior4/5

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

Annotations already declare readOnly/idempotent/non-destructive, so the safety profile is covered. The description adds genuine value beyond that: the output is 'persistable JSON' and it explicitly enumerates what is NOT captured (hidden plugin state, samples, automation, mappings), which prevents false expectations about completeness. It stops short of describing failure modes or size limits.

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?

Two sentences, verb-front-loaded, with the capability list first and the exclusion note second. The enumeration of captured fields is long but each item is informative; no filler sentences. Slightly dense but structurally sound.

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?

An output schema exists, so return shape need not be restated, and the one parameter is fully covered by the schema. Annotations carry the safety profile and the description supplies scope and exclusions. What remains missing is the relationship to the save/load/recall siblings, which is the main open question for this tool.

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?

There is a single parameter with 100% schema coverage, and the schema itself documents the accepted forms (track-N from list_tracks, return-N from get_set_mixer, master). The description adds no parameter-specific meaning, so the baseline of 3 applies when the schema does all the work.

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 verb 'Capture' plus a detailed enumeration of the resource (ordered devices, nested rack topology, exposed parameters, mixer state) makes the purpose unambiguous. It also clarifies what it is not ('Not a native rack or preset'), but it never distinguishes itself from the close siblings capture_device_parameter_snapshot or capture_track_state_snapshot, so an agent must infer the boundary.

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

Usage Guidelines3/5

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

Usage is only implied: capture a device chain into persistable JSON. The negative scoping ('Not a native rack or preset; excludes hidden plugin state, samples, automation, and mappings') hints at boundaries but is framed as content scope, not as a when-to-use rule. It gives no guidance on the capture → save → load → recall lifecycle it sits inside, so an agent has no explicit routing to alternatives.

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