Production-ready MCP server providing emotion-based text-to-speech capabilities for AI agents
Three tools with clear verb-noun naming (speak, list_voices, get_voice_emotions) and basic descriptions. All tools have input schemas with type definitions. However, descriptions are minimal (10-50 chars), parameter descriptions lack detail about constraints and valid values, and output schemas are not documented. No error handling guidance, no parameter validation rules, and no documentation of emotion enum constraints. Naming is acceptable but descriptions fall short of the 50-200 char LLM-optimized baseline.
Get available emotions and their associated voices for the current platform
List available voices and their emotion categories
Speak text with emotion using the configured TTS engine
Parameter descriptions lack constraint details. 'emotion' parameter lists values in description ('cheerful, dramatic, friendly...') but should use enum constraint in schema. 'voice' parameter has no description of valid values or format.
Tool descriptions are too brief (10-50 chars). 'Speak text with emotion using the configured TTS engine' lacks context on WHEN to use this tool, what it returns, and whether it has side effects (audio playback). Should be 50-200 chars with actionable guidance.
Output schemas not documented. No specification of what 'speak' returns (success boolean? audio file path? duration?). 'list_voices' and 'get_voice_emotions' return structures are inferred from code but not formally declared in tool definitions.
Inferred effective spec: <=2025-11-25.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | F | 48 | <=2025-11-25 | v2 |
No error handling guidance. If TTS engine fails, audio playback fails, or voice is unavailable, tool provides no recovery hints. Error responses should guide LLM: 'Voice not found. Call list_voices() to see available options.'
'voice' parameter is optional but lacks description of default behavior. Does it use system default? First available voice? Should document fallback strategy and valid voice names per platform.