Skip to main content
Glama
gma3-mcp

gma3-mcp

by nf-s

Set cue trigger

gma3_set_cue_trigger

Configure how an existing grandMA3 cue fires by setting its trigger type (Go, Time, Follow, Sound, BPM) and trigger time, with readback verification and no selection or programmer changes.

Instructions

Set how an existing cue is triggered: trigger "go" (manual), "time" (after time seconds; time required), "follow" (when the previous cue completes; optional time as extra delay), "sound" or "bpm" (no time). Sets the cue's TrigType and then TrigTime via Set(); no command-line command is sent, selection and programmer are untouched. Refuses (nothing sent) when the cue does not exist. Reads TrigType and TrigTime back. The mutation lock orders only this server's own mutations; it does not isolate the operation from another console operator or another client.

Input Schema

NameRequiredDescriptionDefault
cueYesOne cue number, fractional allowed (2, 2.5, "10.001"; max three decimals). Ranges (Thru, +) are rejected.
timeNoTrigger time in seconds (TrigTime). Required for "time", optional for "follow", not allowed for "go", "sound", "bpm". 0 is a value.
verifyNoRead the result back after the mutation (default true). Verification is reported separately from the mutation steps.
triggerYesTrigger type (console TrigType: Go, Time, Follow, Sound, BPM).
sequenceNoSequence number (1..99999). Required unless use_selected_sequence is true; exactly one of the two.
data_poolNoData pool number (DataPool n). Default: the current data pool, as without this parameter.
use_selected_sequenceNoAct on the console's currently selected sequence. It is resolved to its sequence number first, and the command is sent with that explicit number.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A4.3/5.0
Behavior5/5

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

With no annotations supplied, the description carries the full behavioral burden and does so: it discloses the internal write order (TrigType then TrigTime via Set()), that no command-line command is sent and selection/programmer are untouched, the refusal path when the cue does not exist, and the read-back. It even scopes the mutation lock, noting it does not isolate against other console operators or clients.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

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

Front-loads the purpose, then packs the trigger-value semantics into one dense sentence, followed by mechanics, failure behavior, and the lock caveat. No filler or restated title; every clause carries operational information.

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 seven-parameter mutation tool with no annotations and no output schema, the definition covers what changes, in what order, what is left untouched, when it refuses, and what is verified afterward. Nothing an agent needs in order to call it safely is missing.

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?

Schema coverage is 100%, so the schema already documents all seven parameters including the trigger enum and the time cross-constraints. The description restates the time/trigger dependency rather than adding new semantics, and says nothing about `sequence` versus `use_selected_sequence` or `data_pool`. Baseline 3 applies.

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 and resource: "Set how an existing cue is triggered", and enumerates the exact trigger values with their meanings. It never names the nearest sibling (gma3_set_cue_timing, which handles cue timing rather than trigger type), so the agent must infer the boundary between the two, which keeps it out of the top band.

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 per-value applicability rules that function as usage guidance: "time" requires `time`, "follow" accepts an optional extra delay, "go"/"sound"/"bpm" take no time, and the tool operates only on an existing cue. It stops short of explicitly naming alternatives or stating when not to use this tool in favor of a sibling.

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