Skip to main content
Glama
js713-lab

io.github.js713-lab/sonicmatch-mcp

by js713-lab

generate_bed

Generates a background music bed when the catalog lacks a match. Requires acknowledging it is not commercially cleared; generated tracks are excluded from recommendation catalogs.

Instructions

Generate a bed when the catalog misses. Always marked source=generated.

Refuses unless i_understand_not_commercially_cleared=true. Local fallback is a sine-tremolo demo. NOT cleared for ads. Check Suno/Stable Audio/Lyria terms before swapping in a real generator. Generated tracks are excluded from recommend_bgm auto catalogs.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
bpmNo
energyNo
promptYes
asset_idNo
duration_secNo
i_understand_not_commercially_clearedNo

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.2.0

TDQS

A4.4/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 behavioral disclosure burden, and it delivers: it reveals refusal behavior, a 'sine-tremolo demo' fallback, the source=generated tagging, and catalog-exclusion side effects. These are exactly the non-obvious behaviors an agent needs to know before calling.

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 first line states purpose and the primary side effect, and every subsequent sentence adds a distinct constraint or context. The structure is dense but scannable, with no 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?

The description covers invocation conditions, legal caveats, fallback behavior, and integration with recommend_bgm, which is strong given no annotations. It falls just short of full completeness because optional parameters like asset_id are left unexplained and 'bed' is assumed domain knowledge.

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?

Only the i_understand_not_commercially_cleared parameter is meaningfully tied to behavior ('Refuses unless...true'). Since schema description coverage is 0%, the description does not compensate by explaining prompt, bpm, energy, asset_id, or duration_sec beyond their names and defaults.

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 states a specific action ('Generate a bed') and the exact trigger condition ('when the catalog misses'), clearly distinguishing this generation tool from sibling search/recommendation tools. It also adds the key invariant 'Always marked source=generated', which pins down the tool's role.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It explicitly defines the precondition ('Refuses unless i_understand_not_commercially_cleared=true'), the exclusion ('NOT cleared for ads'), and the downstream consequence ('excluded from recommend_bgm auto catalogs'). This gives an agent clear routing and when-not-to-use instructions, including mentioning external alternatives (Suno/Stable Audio/Lyria).

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