Local Kokoro-82M text-to-speech MCP server that speaks through your machine's audio
- ✓Actively maintained (<30d)
- ✓Clear description
- ✓Documented (README)
- !Licence file present but not machine-readable
claude mcp add mcp-kokoro-tts -- uvx mcp-kokoro-tts-provision{
"mcpServers": {
"mcp-kokoro-tts": {
"command": "uvx",
"args": ["mcp-kokoro-tts-provision"]
}
}
}MCP Servers overview
# mcp-kokoro-tts
<!-- mcp-name: io.github.mrfqcentic/mcp-kokoro-tts -->
Local Kokoro-82M text-to-speech MCP server. When your agent calls `speak`, it synthesizes speech and plays it on your machine so you can hear the harness talk.
Works with any MCP client: Claude Desktop, Claude Code, Cursor, VS Code, opencode, Cline, and more. One short config block, no API keys — synthesis runs locally with [Kokoro-82M](https://huggingface.co/hexgrad/Kokoro-82M).
On first start, the server provisions two things that are not on PyPI: the Kokoro-82M weights (~312 MB) into a local cache, and spaCy's English model (`en_core_web_sm`) into the same Python environment the server is running in. That second install is required because Kokoro's G2P pipeline loads spaCy, and a `uvx` / `uv tool` environment will not have the model unless this package puts it there.
## Install
Add to your client's MCP config:
```json
{
"mcpServers": {
"mcp-kokoro-tts": {
"command": "uvx",
"args": ["mcp-kokoro-tts"]
}
}
}
```
Requires Python 3.12 and [uv](https://docs.astral.sh/uv/). The first server start provisions Kokoro weights and the spaCy English model automatically.
To pre-download both without starting the MCP server:
```bash
uvx mcp-kokoro-tts-provision
```
## Make the agent call it
Add one line to your `AGENTS.md` / `CLAUDE.md` / system prompt:
```
When the user wants to hear something spoken aloud, call the `speak` tool with clear, natural text.
```
## Tools
### `speak`
Synthesizes speech, writes a WAV file, and plays it locally.
| Param | Required | Description |
|---|---|---|
| `text` | yes | Text to speak (max 500 chars) |
| `voice` | no | Voice id (e.g. `af_heart`) or absolute path to a `.pt` voice file |
| `speed` | no | Playback speed multiplier (default `1.0`) |
### `list_voices`
Lists available Kokoro voices and the currently selected default.
## Choosing your voice
Resolution order:
1. `TTS_VOICE` env var — voice id or absolute `.pt` path
2. A file in the package `voices/` folder whose name starts with `default`
3. First `.pt` file in `voices/` (alphabetical)
4. The model's bundled `af_heart` voice
```json
{
"mcpServers": {
"mcp-kokoro-tts": {
"command": "uvx",
"args": ["mcp-kokoro-tts"],
"env": {
"TTS_VOICE": "af_heart"
}
}
}
}
```
## Environment variables
| Variable | Description |
|---|---|
| `TTS_VOICE` | Default voice id or absolute `.pt` path |
| `TTS_MODEL_DIR` | Override model cache directory |
| `TTS_HF_CACHE_DIR` | Override Hugging Face hub cache directory |
| `TTS_OUTPUT_DIR` | Directory for generated WAV files |
| `TTS_PLAY` | Set to `0` to synthesize without local playback |
| `HF_TOKEN` | Optional Hugging Face token for faster downloads |
## Platforms
| OS | Synthesis | Playback |
|---|---|---|
| macOS | yes | `afplay` |
| Linux | yes | `ffplay`, `paplay`, or `aplay` |
| Windows | yes | PowerShell `MediaPlayer` |
`espeak-ng` is optional. English works without it; install it for better out-of-vocabulary coverage and some non-English languages.
## Publishing
Tagging a version runs GitHub Actions `publish.yml`, which uploads to **PyPI** then the **MCP Registry**.
Publishing to PyPI uses the repo secret `PYPI_TOKEN` (a PyPI API token). GitHub trusted publishing can also be configured on the PyPI project; this workflow authenticates with the token so a first release does not depend on pending-publisher matching.
### Release
1. Bump `version` in `pyproject.toml` (and `server.json` if you are not tagging yet)
2. Commit and tag: `git tag v0.1.2 && git push origin v0.1.2`
3. GitHub Actions runs `publish.yml`:
- `release` — typecheck, test, build wheel/sdist
- `pypi-publish` — upload to PyPI with `PYPI_TOKEN`
- `mcp-registry` — OIDC → MCP Registry (after PyPI succeeds)
## Development
```bash
cd mcps-tts
python3.12 -m venv .venv
source .venv/bin/activate
pip install -e ".[dev]"
pyright
pytest
python -m mcp_kokoro_tts
```
## License
Apache-2.0. See [LICENSE](LICENSE) and [NOTICE](NOTICE). Kokoro-82M model weights are downloaded separately under their Apache-2.0 license.
What people ask about mcp-kokoro-tts
What is mrfqcentic/mcp-kokoro-tts?
+
mrfqcentic/mcp-kokoro-tts is mcp servers for the Claude AI ecosystem. Local Kokoro-82M text-to-speech MCP server that speaks through your machine's audio It has 0 GitHub stars and its last recorded update is dated 2026-08-22.
How do I install mcp-kokoro-tts?
+
You can install mcp-kokoro-tts by cloning the repository (https://github.com/mrfqcentic/mcp-kokoro-tts) or following the README instructions on GitHub. ClaudeWave also provides quick install blocks on this page.
Is mrfqcentic/mcp-kokoro-tts safe to use?
+
Our security agent has analyzed mrfqcentic/mcp-kokoro-tts and assigned a Trust Score of 72/100 (tier: OK). See the full breakdown of passed checks and flags on this page.
Who maintains mrfqcentic/mcp-kokoro-tts?
+
mrfqcentic/mcp-kokoro-tts is maintained by mrfqcentic. The last recorded GitHub activity is dated 2026-08-22, with 0 open issues.
Are there alternatives to mcp-kokoro-tts?
+
Yes. On ClaudeWave you can browse similar mcp servers at /categories/mcp, sorted by popularity or recent activity.
Deploy mcp-kokoro-tts to your cloud
Ship this repo to production in minutes. Each platform spins up its own environment with editable env vars.
Maintain this repo? Add a badge to your README
Drop the badge into your GitHub README to show it's tracked on ClaudeWave. Each badge links back to this page and reflects the live Trust Score.
[](https://claudewave.com/repo/mrfqcentic-mcp-kokoro-tts)<a href="https://claudewave.com/repo/mrfqcentic-mcp-kokoro-tts"><img src="https://claudewave.com/api/badge/mrfqcentic-mcp-kokoro-tts" alt="Featured on ClaudeWave: mrfqcentic/mcp-kokoro-tts" width="320" height="64" /></a>More MCP Servers
Fair-code workflow automation platform with native AI capabilities. Combine visual building with custom code, self-host or cloud, 400+ integrations.
User-friendly AI Interface (Supports Ollama, OpenAI API, ...)
An open-source AI agent that brings the power of Gemini directly into your terminal.
Real-time global intelligence dashboard. AI-powered news aggregation, geopolitical monitoring, and infrastructure tracking in a unified situational awareness interface
The fastest path to AI-powered full stack observability, even for lean teams.
🕷️ An adaptive Web Scraping framework that handles everything from a single request to a full-scale crawl!