Skip to main content
Glama
gma3-mcp

gma3-mcp

by nf-s

Configure a sequence's playback settings

gma3_configure_sequence

Configure a grandMA3 sequence's playback settings, lock, and tempo links, with preview and read-back verification; batch multiple sequences and see shared executor references.

Instructions

Set a sequence's playback settings by writing its properties: wrap_around (a chase loops only with Wrap Around on and a trigger on its first cue), priority, restart_mode, release_first_cue, auto_start, auto_stop, master_go_mode, auto_fix, auto_stomp, tracking, soft_ltp, off_when_overridden, kill_protect, swap_protect (protection from the Kill/Swap playback actions, not from editing), use_executor_time, include_link_last_go, xfade_mode, xfade_reload. lock: true/false sets the sequence's own Lock. Tempo links (SB-06): rate_master (a speed master 1-16 or "none": the cue timing (fades, delays, trigger times) runs at its effective BPM / 60, so 60 BPM is 1:1), speed_master (the phasers in the cues follow it), rate_scale and speed_scale (One, Mul2..Mul256, Div2..Div256), speed_from_rate. Masters are linked by name; a master without a unique name is refused. While a rate master is linked, moving the sequence's rate fader moves the shared master. Settings belong to the sequence, so they apply to EVERY executor that references it: the tool scans all pages and lists them (references) and warns when other executors share the sequence. Cue triggers and timing are set with gma3_set_cue_trigger / gma3_set_cue_timing. Never sends Go, On, Off, Toggle, Flash or any other playback keyword and does not touch the selection, the programmer or fader levels; playback state is read before and after (playback.activeBefore/activeAfter) and configuration alone does not start playback. A locked target is refused before anything is sent (the console silently ignores writes to it) unless unlock: true, which unlocks the owning object, applies the changes and locks it again (relocking is attempted even after a failed change). preview: true performs only the reads and returns the planned changes (from -> to); values already set are reported as unchanged and never sent. Each value is written with one 'set' request whose reply must read back the requested value, because the console silently keeps the previous value for anything it does not accept; the first failure stops the remaining changes. A value that could not be read is unknown, never a default: the call is refused when a value the plan depends on (requested property, Lock, page Lock) is missing, and a set reply without a value is an unknown step. verify (default true) reads every changed property and the lock back. Mutations from this server are serialised, but not isolated from other operators or clients. Batch form (sequences): the same settings on a list of sequences and ranges ("1 Thru 17"), each configured, checked and read back on its own; the result has one line per sequence (detail: true for every step).

Input Schema

NameRequiredDescriptionDefault
lockNoFinal state of the sequence's Lock; lock: false on a locked sequence removes the lock (explicit unlock).
detailNoReturn every item's full result with its steps (default false: one line per item).
unlockNoAllow unlocking a locked sequence for this call; the lock is restored afterwards (default false: refuse).
verifyNoRead the changed settings back and compare (default true).
previewNoOnly read and report the planned changes and sharing executors (default false).
auto_fixNoAutoFix (Yes/No).
priorityNoPriority: super, swap, htp, highest, high, ltp, low, lowest.
sequenceNoSequence number (must exist). Required unless sequences is given.
soft_ltpNoSoftLTP (Yes/No).
trackingNoTracking (Yes/No).
auto_stopNoAutoStop (Yes/No).
data_poolNoData pool number (DataPool n). Default: the current data pool, as without this parameter.
sequencesNoBatch form: the same settings on several sequences: numbers and "a Thru b" ranges, e.g. [1, "3 Thru 17", 20]; each sequence is configured and read back on its own.
auto_startNoAutoStart (Yes/No).
auto_stompNoAutoStomp (Yes/No).
rate_scaleNoRateScale: div256, div128, div64, div32, div16, div8, div4, div2, one, mul2, mul4, mul8, mul16, mul32, mul64, mul128, mul256.
xfade_modeNoXFadeMode: ab, split.
rate_masterNoRateMaster: a speed master 1-16 or "none".
speed_scaleNoSpeedScale: div256, div128, div64, div32, div16, div8, div4, div2, one, mul2, mul4, mul8, mul16, mul32, mul64, mul128, mul256.
wrap_aroundNoWrapAround (Yes/No).
kill_protectNoKillProtect (Yes/No).
restart_modeNoRestartMode: first_cue, current_cue, next_cue.
speed_masterNoSpeedMaster: a speed master 1-16 or "none".
swap_protectNoSwapProtect (Yes/No).
xfade_reloadNoXFadeReload (Yes/No).
master_go_modeNoMasterGoMode: none, go, on, top.
speed_from_rateNoSpeedFromRate (Yes/No).
stop_on_failureNoBatch form: stop at the first item that does not succeed (default false: independent items go on; an item on an object an earlier item failed on is skipped either way).
release_first_cueNoReleaseFirstCue (Yes/No).
use_executor_timeNoUseExecutorTime (Yes/No).
off_when_overriddenNoOffWhenOverridden (Yes/No).
include_link_last_goNoIncludeLinkLastGo (Yes/No).

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A4.5/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 thoroughly: it states the tool never sends playback keywords, does not touch selection/programmer/fader levels, refuses locked targets unless unlock is set (with relock attempted even on failure), warns when other executors share the sequence since settings apply to every referencing executor, and describes serialisation without isolation from other operators. Failure semantics (first failed write stops remaining changes, unknown values refuse the call rather than defaulting) are unusually well disclosed 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.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The purpose and the safety constraints are front-loaded, and most sentences carry real information, but the property enumeration is a long run-on list and the block of failure/verify/preview semantics is dense with no structural breaks. It is information-rich but overstuffed for a single paragraph, hurting scannability.

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?

For a 32-parameter mutation tool with no annotations and no output schema, the description covers what an agent needs: what each group of settings does, that changes are read back and compared, what preview returns (from -> to), what the batch result shape looks like (one line per sequence, detail for full steps), and how failures and locks are handled. Nothing critical to correct invocation is missing.

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, but the description genuinely adds meaning: wrap_around is explained as only looping a chase when a trigger sits on the first cue, kill_protect/swap_protect are clarified as protection from Kill/Swap playback actions rather than editing, and rate_master is explained as cue timing running at BPM/60 with 60 BPM as 1:1, plus the rule that masters are linked by unique name. These are semantics the schema does not convey.

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 opens with a specific verb+resource ('Set a sequence's playback settings by writing its properties') and immediately delineates the boundary against siblings by naming gma3_set_cue_trigger and gma3_set_cue_timing for cue-level work. An agent can tell this is the sequence-property writer, not the cue editor or executor config tool.

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?

It gives clear conditions for preview (read-only plan), verify (default true), unlock (required for locked targets), and batch form via 'sequences', and it redirects cue triggers/timing to the correct sibling tools. It does not, however, position itself against gma3_set_property or gma3_configure_executor, so an agent must infer those boundaries.

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