Skip to main content
Glama

Live Track

live_track

Create or change a live track in a music project: set its instrument, effect chain, sends, pan, volume, or deck assignment, schedule the change, or delete the track.

Instructions

Create or change a live track. instrument: a dict (instrument_help), 'preset:' (presets_list), {'type': 'code', 'voice': ''} (voices_list) or 'track:' (copy from the folder's project.json). fx: the track's whole effect chain, a list of effect dicts (fx_help), or 'track:' to copy a project track's chain; [] removes all. Sidechain/duck/vocoder sources must be live tracks. sends: {bus: dB} replaces the track's sends (post-fader; live_bus creates buses). A new instrument or chain on a playing track takes over at at (live_queue values, or 'now'); a replaced chain's tail rings out. New instruments warm up off the air first (live_status shows WARMING). volume_db <= +6. remove=True silences and deletes the track now. To move one effect param (a sweep, a fade), use live_fx instead of resending the chain. deck='B' puts a new track on deck B (created if needed): it then plays through that deck's strip and cue.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
atNonext_bar
fxNo
panNo
deckNo
sendsNo
trackYes
removeNo
projectYes
volume_dbNo
instrumentNo

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
resultYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.3.0

TDQS

A4.4/5.0
Behavior5/5

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

With no annotations, the description carries the full burden and does so richly: volume_db <= +6 ceiling, chain tail rings out on replacement, new instruments warm up off-air (WARMING), remove=True silences and deletes immediately, sends are post-fader and replace wholesale, and sidechain/duck/vocoder sources must be live tracks. These are exactly the side-effect and constraint disclosures an agent needs for a mutation tool.

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?

Purpose is front-loaded and nearly every sentence adds a distinct operational fact. It is dense and reads as a run-on with many parenthetical cross-references, which costs some scannability, but there is little true filler.

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?

For a 10-param mutation tool with nested objects, the description covers timing, side effects, format variants, and limits thoroughly, and an output schema exists so return values need not be described. The omission of pan semantics is the main gap; otherwise an agent has what it needs to call this 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?

Schema description coverage is 0% with 10 params, so the description must compensate and largely does: instrument formats ('preset:<name>', code/voice dict, 'track:<name>') with pointers to instrument_help/presets_list/voices_list, fx as a list of effect dicts or track copy with [] meaning remove-all, sends as {bus: dB} replacing, at accepting live_queue values or 'now', volume_db, remove, and deck='B' behavior. Only pan and the project/track identifiers go unexplained.

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?

Opens with a specific verb+resource: 'Create or change a live track,' which is unambiguous about the operation. It explicitly carves out its niche versus live_fx ('To move one effect param... use live_fx instead'), but doesn't distinguish itself from the non-live siblings track_add/track_set, leaving some ambiguity about the 'live' vs studio-track split.

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?

Gives a clear when-to-use rule for the closest alternative (live_fx for single-param sweeps/fades rather than resending the whole chain) and references live_bus, live_queue, and live_status for related operations. It lacks explicit when-not-to-use guidance against track_add/track_set, but the routing to live_fx is genuinely actionable.

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