An MCP (Model Context Protocol) server for AI voice synthesis with an inline audio player. Give your AI assistant a custom cloned voice!
- 🎤 Custom Voice Cloning — Use MiniMax TTS API with your own cloned voice
- 🎵 Inline Audio Player — Beautiful WeChat-style player with waveform visualization
- 📝 Transcript Toggle — Show/hide the spoken text
- 🌙 Dark Mode Support — Automatic theme adaptation
- ⚡ Cloudflare Workers — Fast, serverless deployment
When you call the speak tool, you get:
- A sleek audio player with play/pause button
- Animated waveform that follows playback progress
- Duration display
- Expandable transcript
git clone https://github.com/garan0613/voice-mcp.git
cd voice-mcpnpm installYou'll need a MiniMax account with voice cloning enabled.
Add your secrets to Cloudflare:
npx wrangler secret put MINIMAX_API_KEY
npx wrangler secret put VOICE_ID
npx wrangler secret put BOT_NAME # Optional, defaults to "AI"Current MiniMax T2A authentication uses the API key only. GroupId is no longer required.
npx wrangler deploy- Go to Settings → Connectors → Add Connector
- Enter your Worker URL:
https://your-worker.workers.dev/mcp - Done! The
speaktool is now available.
| Variable | Required | Description |
|---|---|---|
MINIMAX_API_KEY |
✅ | Your MiniMax API key |
VOICE_ID |
✅ | The cloned voice ID |
BOT_NAME |
❌ | Display name (default: "AI") |
| Endpoint | Description |
|---|---|
GET /mcp |
MCP server (SSE protocol) |
GET /speak?text=Hello |
Direct audio file |
GET /status |
Health check |
- Go to MiniMax Console
- Navigate to Voice Cloning
- Upload 10-30 seconds of clear audio
- Wait for processing (usually a few minutes)
- Copy the Voice ID
- Add your domain to Cloudflare
- Create a DNS record pointing to your Worker
- Update
wrangler.jsonc:
{
"routes": [
{ "pattern": "voice.yourdomain.com/*", "zone_name": "yourdomain.com" }
]
}The core MCP logic can be adapted for other platforms. You'll need to:
- Replace
createMcpHandlerwith a standard HTTP/SSE handler - Use
@modelcontextprotocol/sdkdirectly - Handle the SSE transport yourself
- Cloudflare Workers — Serverless runtime
- MCP SDK — Model Context Protocol
- MiniMax TTS — Voice synthesis
- ext-apps — Inline UI rendering
MIT © 2026
Inspired by the need to give AI assistants a voice. Built with ❤️