FastMCP server exposing S.O.N.I.C. VoIP analysis as tools for AI assistants. Analyzes VoIP packet captures for call quality issues, provides MOS scoring, quality grading, and LLM-powered diagnostics.
S.O.N.I.C. has well-structured tool names (all verb-noun format) and comprehensive parameter schemas with types and descriptions. However, tool descriptions lack LLM-optimization guidance (e.g., when to use analyze_pcap vs quick_quality_check), parameter descriptions are generic, and output schemas are not documented. Error handling returns structured errors but lacks recovery guidance. No tool annotations (readOnlyHint, destructiveHint) despite all tools being read-only. Average tool description ~150 chars (within baseline), but parameter descriptions average ~60 chars and lack actionable constraints.
Batch analyze multiple pcaps in a directory. Supports sequential (one at a time) or parallel (multiple at once) processing.
Analyze a VoIP packet capture file for call quality issues.
Partial streaming: returns quality/MOS immediately, streams LLM after. Best for: Getting quick quality insight while LLM analysis runs in background. Returns timing metrics showing how fast quality results were available.
List available LLM providers and their model options.
Fast quality-only analysis without AI model inference. Provides MOS scores, quality grades, and network metrics. No LLM required - analyzes RTP streams directly.
Output schemas not documented. Tools return Dict[str, Any] with no schema specification for LLM planning. Agents cannot predict response structure for chaining.
Tool descriptions lack selection guidance. No explanation of when to use analyze_pcap (full analysis) vs quick_quality_check (quality-only) vs analyze_pcap_partial_streaming (streaming). LLMs must guess.
Parameter descriptions are generic. 'LLM provider' and 'Analysis mode' lack actionable constraints. No guidance on provider availability, model performance tradeoffs, or when 'fast' vs 'detailed' is appropriate.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | C | 69 | 2026-07-28+ | v2 |
No tool annotations. All tools are read-only (file_path validation, no mutations), but readOnlyHint is absent. Agents cannot distinguish safe tools from destructive ones.
Error handling returns status/error but lacks recovery guidance. 'File not found' does not suggest next steps (e.g., 'Call list_available_files() to find valid paths').