Skip to main content
Glama

Musicboxmelodies

Validate a melody for a music box

validate_melody
Read-only

Checks whether a melody can be played on a music box: notes outside the box, same note repeated too fast, off-grid notes, tempo and length. Every issue names the note and how to fix it. Saves nothing. Call it before offering a melody to the person.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
boxYesMusic box type: "15", "20", "30" (notes) or "freestyle" (digital only). See list_music_boxes.
bpmYesTempo in beats per minute (30-300).
notesYesNotes in any order, at most 2000. Only onsets matter: music boxes have no note durations.
snap_beatsNoOptional grid in beats (e.g. 0.5) to warn about notes off that grid.
illegal_threshold_ticksNoMinimum gap between two identical notes, in ticks (default 384 = 2 beats).

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
okYes
statsYes
issuesYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.1/5.0
Behavior4/5

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

The annotations already declare readOnlyHint=true and openWorldHint=false, so the description does not need to establish that this is a safe, local read operation. It adds useful behavior beyond that: 'Saves nothing' reinforces no side effects, and 'Every issue names the note and how to fix it' describes the actionable output. It does not cover auth or rate limits, but for this tool the added context is meaningful.

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?

The description is four short sentences, front-loaded with the core purpose and then progressively adding output behavior, side-effect clarity, and usage timing. Every sentence carries a distinct piece of information, and nothing is redundant or buried.

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?

Given the presence of an output schema, annotations, and complete parameter documentation, the description is complete enough: it states the checks performed, the actionable nature of each issue, the absence of side effects, and the workflow timing. An agent has everything needed to select and invoke it correctly without requiring return-value details in the description.

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 description coverage is 100%, so the input schema already documents all five parameters thoroughly. The description mentions validation categories that map conceptually to box, bpm, notes, snap_beats, and illegal_threshold_ticks, but it adds no syntax or format meaning beyond what the schema provides. A baseline 3 is appropriate when the schema does the heavy lifting.

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 clearly states a specific verb (checks) and resource (a melody on a music box), and goes on to enumerate the exact validation categories (notes outside the box, repeated notes, off-grid notes, tempo, length). However, it does not explicitly name or contrast with sibling tools like fit_melody_to_box, so it stops short of the highest sibling-differentiation bar.

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 a clear when-to-use signal: 'Call it before offering a melody to the person.' This tells the agent the appropriate moment in the workflow. It does not, however, state when not to use it or point to an alternative like fit_melody_to_box for repairing invalid melodies, so it falls short of explicit alternatives or exclusions.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources