Voice Multi-Provider TTS System
Overview
Voice MCP Server v5.0 implements flexible TTS provider switching between ElevenLabs and Inworld AI.
Cost Comparison
- ElevenLabs: $100/month subscription
- Inworld AI: FREE until Dec 2025, then $5/1M characters (95% savings)
Configuration
File: /opt/mcp-servers/voice/mcp_voice_server.py
VOICE_CONFIG = {
"default": {
"provider": "inworld", # or "elevenlabs"
"inworld_voice_id": "default-r3uenniwomhoqljb1p7ysg__lena",
"elevenlabs_voice_id": "cgSgspJ2msm6clMCkdW9",
},
"lars": {
"provider": "inworld",
"inworld_voice_id": "Edward",
"elevenlabs_voice_id": "UgBBYS2sOqTuMpoF3BR0",
},
}
Quick Switch
To switch a voice back to ElevenLabs:
1. Open /opt/mcp-servers/voice/mcp_voice_server.py
2. Change "provider": "inworld" to "provider": "elevenlabs"
3. Gateway auto-reloads on next call
Voice IDs
Inworld
- Lena (cloned):
default-r3uenniwomhoqljb1p7ysg__lena - Lars (Edward):
Edward(built-in) - Other built-in voices: Ashley, etc.
ElevenLabs (fallback)
- Lena:
cgSgspJ2msm6clMCkdW9 - Lars:
UgBBYS2sOqTuMpoF3BR0
Inworld API
- Endpoint:
https://api.inworld.ai/tts/v1/voice - Auth: Basic (base64 API key)
- Model:
inworld-tts-1 - Credentials: Locker l_684a
Pronunciation Tips
- Use proper case for names: 'Lars' not 'LARS'
- ALL CAPS interpreted as acronyms and spelled out
Related
- KB: b4e6ab28 (Inworld research)
- Locker: l_684a (Inworld credentials)