MCP server for audio stem processing: generation, splitting, and loop creation
Server has 7 tools with complete input schemas and descriptions. Naming follows verb_noun convention (generate_stems, split_stems, create_loop, analyze_audio, extract_vocal, isolate_instrument, separate_vocal_ranges). Descriptions are present and substantive (100-200 chars typical). However, output schemas are NOT documented, critical gap for LLM planning. Parameters have types and descriptions, but lack actionable error guidance. No tool annotations (readOnlyHint/destructiveHint). Missing idempotency guarantees and recovery guidance. Baseline: 549 production tools average 18-char names (these are 12-22 chars, good); 194-char descriptions (these are 80-180 chars, acceptable); 100% of A+ tools document return types (this server does not).
Analyze audio file for musical features including tempo, key, dynamics, and spectral characteristics.
Create seamless loops from audio segments with crossfading and tempo matching.
Extract the vocal track from a mixed audio file.
Generate stems from an audio file using AI source separation. Supports multiple models including Demucs for high-quality stem separation.
Isolate a specific instrument from a mixed audio file.
Separate vocal track into different vocal ranges: Soprano (C4-C6), Alto (G3-G5), Tenor (C3-C5), and Bass (E2-E4). Uses advanced frequency filtering and harmonic analysis.
Output schemas not documented. LLMs cannot plan downstream calls or extract required fields (e.g., stem file paths, analysis results). Baseline: 100% of A+ tools document return types.
No tool annotations (readOnlyHint, destructiveHint, idempotentHint). LLMs cannot distinguish safe reads from destructive writes. All 6 write tools (generate_stems, split_stems, create_loop, extract_vocal, isolate_instrument, separate_vocal_ranges) should be marked destructiveHint=true.
No error recovery guidance. Tools lack actionable error messages (e.g., 'File not found. Check audio_path is valid WAV/MP3/FLAC'). Baseline: error responses must tell LLM what to do next.
Inferred effective spec: <=2025-11-25.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | D | 56 | <=2025-11-25 | v2 |
Split existing stems into smaller segments for easier handling or loop creation.
Parameter descriptions lack format/constraint details. E.g., 'audio_path' should state 'Path to input audio file (WAV, MP3, FLAC, OGG; must exist and be readable)'. Current descriptions are generic.
No idempotency guarantees documented. Tools that write files (generate_stems, extract_vocal, isolate_instrument) should declare idempotent behavior or support overwrite/skip modes to prevent duplicate side effects on retry.