A feature-rich MCP server for Microsoft Edge Text-to-Speech, supporting voice listing, speech synthesis with subtitles, parameter tuning, and batch processing.
Project description
better-tts-mcp
A feature-rich MCP (Model Context Protocol) server for Microsoft Edge Text-to-Speech. No API key required. 300+ voices in 50+ languages. Zero configuration.
Features
- List Voices — Browse 300+ voices in 50+ languages, filter by language and gender
- Text-to-Speech — Convert text to MP3 with customizable rate, volume, and pitch
- Subtitles — Generate SRT subtitle files alongside audio
- Batch Processing — Synthesize multiple texts in one call
Quick Start
Installation
# Using uvx (recommended)
uvx better-tts-mcp
# Or install via pip
pip install better-tts-mcp
Claude Code
claude mcp add edge-tts -- uvx better-tts-mcp
Claude Desktop
Add to your claude_desktop_config.json:
{
"mcpServers": {
"edge-tts": {
"command": "uvx",
"args": ["better-tts-mcp"]
}
}
}
Available Tools
list_voices
List available Edge TTS voices with optional filtering.
| Parameter | Type | Required | Description |
|---|---|---|---|
language |
string | No | Filter by language code, e.g. "zh", "en" |
gender |
string | No | Filter by gender: "Male" or "Female" |
text_to_speech
Convert text to speech and save as MP3.
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
text |
string | Yes | — | Text to convert |
voice |
string | No | zh-CN-XiaoxiaoNeural |
Voice name |
rate |
string | No | — | Speed, e.g. "+50%", "-30%" |
volume |
string | No | — | Volume, e.g. "+20%", "-50%" |
pitch |
string | No | — | Pitch, e.g. "+10Hz", "-5Hz" |
output_dir |
string | No | . (current directory) |
Output directory |
text_to_speech_with_subtitles
Same parameters as text_to_speech. Generates both MP3 and SRT files.
batch_text_to_speech
Convert multiple texts to speech, each saved as a separate MP3 file.
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
texts |
string[] | Yes | — | List of texts to convert |
voice |
string | No | zh-CN-XiaoxiaoNeural |
Voice name (shared for all texts) |
rate |
string | No | — | Speed (shared) |
volume |
string | No | — | Volume (shared) |
pitch |
string | No | — | Pitch (shared) |
output_dir |
string | No | . (current directory) |
Output directory |
Requirements
- Python >= 3.10
- Internet connection (for accessing Microsoft Edge TTS service)
License
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file better_tts_mcp-0.1.0.tar.gz.
File metadata
- Download URL: better_tts_mcp-0.1.0.tar.gz
- Upload date:
- Size: 110.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.9.21 {"installer":{"name":"uv","version":"0.9.21","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
6861a8f401a44938f50ca2e24a4ad8291d45a2548ad8ad646dbb0f77462dfbd3
|
|
| MD5 |
ce0fc392dcacacddeba1a152b442d5b6
|
|
| BLAKE2b-256 |
2b276f3489e999992d7191c35d42dd9c0a9cf2fd152fc9b38be92b83747e326c
|
File details
Details for the file better_tts_mcp-0.1.0-py3-none-any.whl.
File metadata
- Download URL: better_tts_mcp-0.1.0-py3-none-any.whl
- Upload date:
- Size: 6.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.9.21 {"installer":{"name":"uv","version":"0.9.21","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
aaeb864e4b4901c2207366c2d9e21b31c7b02170a1b4b0616308f07af5d7034e
|
|
| MD5 |
c154660c26bba1448009a0ed254e1299
|
|
| BLAKE2b-256 |
6bbc570e9801fd7c2bbdba25e7599e4b2cdcfbb2b2ae8f9aacfbcfe3dd5c12dc
|