Skip to main content
Glama
gma3-mcp

gma3-mcp

by nf-s

Play, stop, rewind or seek a timecode show and observe it

gma3_timecode_transport

Control grandMA3 timecode playback with play, stop, rewind, and seek, then observe cursor and sequence cue changes to compare dispatched actions with observed behavior.

Instructions

PLAYS when asked and OBSERVES OVER TIME on the server side (no Lua loop needed): play sends Go Timecode N (from the cursor, internal time; with a timecode slot the time comes from the slot), stop sends Off (playbacks it started keep running unless switch_off is off), rewind sends Top, seek writes the cursor (to: a time as in gma3_build_timecode). Recording is not offered. Then samples the cursor and the target sequences for observe_seconds (play: default 5) and, for play, checks every event the cursor crossed against the sequences' observed cue changes in order (goto -> that cue, go -> the next cue, off -> off, presses -> running; others are listed as not predictable). The result separates dispatched from observed.

Input Schema

NameRequiredDescriptionDefault
toNo
fpsNo
actionYes
timecodeYes
interval_msNo
observe_secondsNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

B3.3/5.0
Behavior4/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 substantial work: it names the underlying commands sent (Go Timecode N, Off, Top), discloses that stop leaves playbacks it started running, discloses the sampling window and default of 5 seconds, and explains that results separate dispatched from observed. The remaining gap is that it references a 'switch_off' setting that does not appear in the input schema, leaving the stop semantics unverifiable.

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?

Nearly all content earns its place, but it is delivered as one dense run-on with deeply nested parentheses, which makes it hard to parse on first read. The parenthetical 'no Lua loop needed' and the phrase 'PLAYS when asked' are filler that could be cut or moved into a clearer per-action list.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a 6-parameter, annotation-free, output-schema-free mutation-plus-observation tool, the description covers a lot: per-action dispatch, the observation model, and how events are matched against cue changes. But it never explains the required `timecode` identifier, leaves three parameters undocumented, and does not describe the shape of the returned dispatched-vs-observed result, which matters since there is no output schema.

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%, so the description must carry all parameter meaning, and it only partially does. It explains the four action values, the `to` target (as in gma3_build_timecode) and observe_seconds' default, but `timecode` (a required numeric identifier) is never clarified, and `fps` and `interval_ms` are completely unaddressed — `fps` is especially ambiguous since it also appears inside the `to` object variant.

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 description gives a specific verb set (play/stop/rewind/seek) on a specific resource (a timecode show) plus a server-side observation behavior, which maps cleanly onto the four enum values in the schema. It also implicitly distinguishes itself from gma3_build_timecode by referencing it for time syntax and by stating 'Recording is not offered'. It falls short of 5 because the opening clause 'PLAYS when asked' is odd phrasing and the true scope (dispatch + observe) is buried mid-sentence.

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 through action semantics: play starts from the cursor, seek writes the cursor, stop leaves started playbacks running unless switch_off is off, and recording is explicitly out of scope. There is no statement of when an agent should reach for this instead of gma3_command, gma3_playback, or gma3_timecodes, nor any precondition such as requiring an existing timecode object.

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