Skip to main content
Glama
gma3-mcp

gma3-mcp

by nf-s

Measure how fast running sequences advance

gma3_observe_tempo

Sample cue step intervals of running sequences over time and compare observed timing with the configured or predicted step interval. Read-only; start sequences before observing.

Instructions

OBSERVES OVER TIME on the server side (use it instead of a Lua waiting loop). Read-only. Samples the current cue of 1-8 running sequences for seconds (1-30, default 6) every interval_ms (default 40) and reports the observed step interval next to the configured one: the rate (rate master's effective BPM / 60 x RateScale, or the sequence's own rate fader) and, for chases whose cues are all Time-triggered with one trigger time, the predicted step interval. It starts nothing: run the sequences first. The phaser tempo (speed master) is reported as configured only; phaser output is not observable over the bridge.

Input Schema

NameRequiredDescriptionDefault
secondsNo
sequencesYes
interval_msNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A4.4/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 well: it declares read-only behavior, server-side sampling, that it starts nothing, and the observability limit that phaser output is not visible over the bridge. The main omission is that the call blocks for `seconds` before returning, which matters for a tool that can hold for 30 seconds.

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?

The operating mode and read-only status are front-loaded, and every clause carries information about scope, timing, or limits. The middle sentence is long and packs several clauses, but none are 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?

There is no output schema, and the description does describe what is reported (observed step interval beside the configured one, the rate formula, predicted step interval for Time-triggered chases). It does not describe the response shape or what happens with non-running or invalid sequence IDs, leaving a modest gap for a measurement tool.

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 coverage is 0%, yet the description documents all three parameters: `seconds` (1-30, default 6), `interval_ms` (default 40), and `sequences` as 1-8 running sequence identifiers. Ranges and defaults are exactly what the schema lacks.

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?

States a specific verb and resource: samples the current cue of 1-8 running sequences over time and reports observed vs configured step interval. It explicitly differentiates itself from a Lua waiting loop and from pure configuration reads, so an agent can place it against siblings like gma3_tempo_sync_status or gma3_lua.

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 alternative and the reason to prefer it ('use it instead of a Lua waiting loop') plus a hard prerequisite ('It starts nothing: run the sequences first'). It does not name the other observation sibling (gma3_observe_values) or state when not to use it, so it stops short of full routing guidance.

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