Zonos TTS MCP for Linux

by angrysky56

276 downloads
Not rated
GitHub

About

Zonos MCP server modified for Linux and GPU optimizations.

Details

Author
angrysky56
Downloads
276
Categories
Other

- Text-to-speech generation directly through Claude.
- Supports four emotions: neutral, happy, sad, angry.
- Multi‑language speech output.
- Audio playback via PulseAudio or PipeWire.
- Optimized for Linux with reduced GPU load.

Setting up with Highlight

This MCP is not yet compatible with Highlight’s one-click setup. However, you can still use it with Highlight by following these steps:

  1. Download and install Highlight from highlightai.com/download
  2. Navigate to the plugins tab and select "Add Custom Plugin"
  3. Configure the plugin with the settings below
    Plugin Name Zonos TTS MCP for Linux
    Command (node, npx, python, etc.)

    Please refer to the README for specific instructions on how to obtain API keys or other required environment variables.

  4. Enable "Start Automatically" if you want the plugin to start when Highlight launches

From the repository

Install via Smithery (npx -y @smithery/cli install @PhialsBasement/zonos-tts-mcp --client claude) or manually: clone the repo, install dependencies (npm install @modelcontextprotocol/sdk axios zod), build (npm run build), then add the server to Claude’s config under mcpServers. Once configured, Claude can call the speak_response tool with parameters text, language (e.g., "en-us"), and emotion ("neutral", "happy", "sad", "angry").

Claude Desktop / Cursor

Paste into your MCP client config file to install this server.

{
    "mcpServers": {
        "zonos tts mcp for linux": {
            "Zonos-TTS-MCP-Linux": {
                "command": "npx",
                "args": [
                    "-y",
                    "@smithery/cli",
                    "install",
                    "@PhialsBasement/zonos-tts-mcp",
                    "--client",
                    "claude"
                ]
            }
        }
    }
}

McpServers

{
    "Zonos-TTS-MCP-Linux": {
        "command": "npx",
        "args": [
            "-y",
            "@smithery/cli",
            "install",
            "@PhialsBasement/zonos-tts-mcp",
            "--client",
            "claude"
        ]
    }
}

Zonos TTS MCP for Linux

smithery badge

A Model Context Protocol integration for Zonos TTS, allowing Claude to generate speech directly on Linux systems.

Overview

This project enables text-to-speech capabilities for Claude AI using the Zonos TTS system. The integration uses the Model Context Protocol (MCP) to allow Claude to generate natural-sounding speech in multiple languages and emotions.

Key Features

- Text-to-speech through Claude
- Multiple emotions support (neutral, happy, sad, angry)
- Multi-language support
- Proper audio playback through PulseAudio/PipeWire
- Compatible with Linux environments

Requirements

- Node.js
- PulseAudio or PipeWire with PulseAudio compatibility layer
- Running instance of Zonos API (PhialsBasement/zonos-api)
- Working audio output device
- Claude Desktop app

Setup

Installing via Smithery

To install the original UNMODIFIED version of Zonos TTS Integration for Claude Desktop automatically via Smithery:

npx -y @smithery/cli install @PhialsBasement/zonos-tts-mcp --client claude

Manual installation for Linux with GPU optimizations

1. Make sure you have Zonos API running with the API implementation (PhialsBasement/zonos-api)

2. Clone this repository:

git clone https://github.com/angrysky56/Zonos-TTS-MCP-Linux.git
cd Zonos-TTS-MCP-Linux

3. Install dependencies:

npm install @modelcontextprotocol/sdk axios zod

4. Build the MCP server:

npm run build

5. Add to Claude's config file:
Edit your Claude config file (search for files containing "mcpServers" in your home directory) and add this to the mcpServers section:

"zonos-tts-mcp": {
  "command": "node",
  "args": [
    "/path/to/your/Zonos-TTS-MCP-Linux/dist/server.js"
  ]
}

Replace /path/to/your/Zonos-TTS-MCP-Linux with the actual path where you installed this project.

Troubleshooting

Error Messages in Console

If you encounter error messages like:

Unexpected token 'P', 'Playing au'... is not valid JSON

This project includes fixes for these common issues:

1. Console output has been redirected to a log file (/tmp/zonos-tts-mcp.log) instead of standard output to prevent JSON parsing errors.
2. The TTS parameters have been optimized for better performance.

Performance Optimization

This fork includes performance optimizations to reduce GPU load:
- Using more efficient sampling parameters (top_p and min_p)
- Improved log handling to prevent interference with MCP communication

Using with Claude

Once configured, Claude can use the speak_response tool:

speak_response(
    text="Your text here",
    language="en-us",  # optional, defaults to en-us
    emotion="happy"    # optional: "neutral", "happy", "sad", "angry"
)

Credit

This project is a modified version of PhialsBasement/zonos-tts-mcp, adapted for improved Linux compatibility and performance.

The Zonos TTS system is developed by Zyphra and is available through their Zonos API.

License

See the original project for license information.

Notes

- Make sure both the Zonos API server and this MCP server are running
- Audio playback requires proper PulseAudio/PipeWire configuration
- If you experience high GPU usage, you may want to adjust the TTS parameters in the server code

No reviews yet — be the first

Sign in to leave a review

Use Google, GitHub, or an email account so ratings stay tied to real people.

Email sign in

No reviews posted yet.