Local safety-first MCP bridge for Midas M32/X32-family OSC control
31 tools with mixed quality. Naming is consistent (m32_* prefix, verb-noun pattern) and descriptions are present for all tools. However, input schemas are severely incomplete: most tools lack explicit parameter type definitions, descriptions for parameters are minimal or missing, and output schemas are undocumented. Many tools accept complex object parameters (store, controller, client, audit_writer) that are never described, LLMs cannot reason about these. Error handling is absent from tool definitions. The server prioritizes domain-specific safety (proposals, emergency modes) over LLM usability patterns.
Analyze gain staging configuration
Analyze signal processing configuration
Analyze console routing configuration
Analyze real-time analyzer data with optional scanning
Capture a snapshot of critical console state
Compare two console state snapshots
Establish connection to configured M32/X32 console
Get current console connection status and diagnostics
Object parameters (store, controller, client, audit_writer, connection) lack any description or schema. LLMs cannot reason about what these objects contain or how to construct them. These appear to be internal state objects that should not be exposed as tool parameters.
Most read-only tools (m32_get_routing, m32_get_clock_sync, m32_get_meters, m32_get_rta, m32_capture_snapshot, m32_compare_snapshots, m32_get_changes, m32_trace_signal) accept no parameters but have no documented output schema. LLMs cannot plan downstream tool calls without knowing what fields are returned.
Inferred effective spec: <=2025-11-25.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | F | 48 | <=2025-11-25 | v2 |
Disconnect from M32/X32 console
Enter emergency mode to handle critical situations
Run preflight checks for event setup
Execute an approved proposal to apply changes to the console
Exit emergency mode and return to observe mode
Get information about a specific bus
Get list of recent changes to console state
Get detailed information about a specific channel
Get clock synchronization status
Get current meter readings
Get overview of console configuration and status
Get current routing configuration
Get real-time analyzer data
List all available channels on the console
Lock write operations to prevent accidental changes
Create a proposal for console changes with risk assessment
Get recommendations for event setup based on preflight analysis
Reconcile local state with console state
Rollback a previously executed proposal
Get runtime diagnostics for the M32 bridge
Trace signal path through console routing
Unlock write operations after safety checks
Verify the integrity and status of a proposal
No error handling guidance in tool definitions. Tools like m32_execute_proposal (IRREVERSIBLE risk) and m32_enter_emergency lack recovery instructions. LLMs cannot self-correct on failure.
Parameter descriptions are minimal (10-20 chars). E.g., 'scope' in m32_reconcile_state is described as 'Reconciliation scope' with default 'critical' but no explanation of valid values or what each scope does. LLMs must guess.
No pagination or result-limiting documented for list tools (m32_list_channels). No indication of max results, whether results are paginated, or how to fetch more. Large result sets risk context window exhaustion.