Austrian precision digital audio workstation automation via Reaper DAW. FastMCP 3.1 server for Reaper DAW automation with portmanteau tools for transport, tracks, project, and system operations.
Four tools with consolidated operations (transport, tracks, project, system). All have descriptions (10-20 words each), but they are generic and lack actionable detail. Input schemas present but severely underdeveloped: parameters use free-form strings where enums are required (e.g., 'operation' accepts any string, not a constrained set). No output schemas documented. Parameters lack descriptions entirely in the schema definition. Tools violate single-responsibility principle by bundling 6-7 operations per tool (e.g., reaper_transport handles play, stop, pause, record, position, status). No error handling guidance. No security considerations visible. Naming is verb_noun but ambiguous due to operation overloading.
Consolidated project management tool supporting info, save, marker, render, and stats operations
Consolidated system tool supporting status, help, and capabilities operations
Consolidated track management tool supporting list, info, mute, solo, arm, count, and bulk operations
Consolidated transport control tool supporting play, stop, pause, record, position, and status operations
All four tools bundle multiple unrelated operations into a single 'operation' parameter (e.g., reaper_transport: play, stop, pause, record, position, status). Violates single-responsibility principle. LLMs cannot infer which operation to invoke without trial-and-error.
'operation' parameter accepts free-form strings with no enum constraint. No validation prevents hallucinated values like 'rewind', 'fastforward', 'jump'. Should declare enums: {"enum": ["play", "stop", "pause", "record", "position", "status"]}.
No output schemas documented. LLMs cannot plan downstream tool calls or extract required fields (e.g., does reaper_transport return current_position, is_playing, duration?). Breaks tool chaining.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | F | 38 | 2025-06-18+ | v2 |
Tool descriptions are 10-20 words, generic, and lack actionable context. E.g., 'Consolidated transport control tool supporting play, stop, pause, record, position, and status operations' does not explain WHEN to use it, WHAT it returns, or prerequisites. Baseline: 50-200 chars with clear intent.
Parameters 'position', 'track_index', 'marker_name', 'render_format', 'action' lack descriptions in the schema. LLMs cannot infer expected format, range, or valid values. E.g., is 'position' in seconds, milliseconds, or beats? Is 'track_index' 0-based or 1-based?