An open API service indexing awesome lists of open source software.

https://github.com/phialsbasement/zonos-tts-mcp

MCP server that allows Claude to have a voice.
https://github.com/phialsbasement/zonos-tts-mcp

Last synced: 3 months ago
JSON representation

MCP server that allows Claude to have a voice.

Awesome Lists containing this project

README

          

[![MseeP.ai Security Assessment Badge](https://mseep.net/pr/phialsbasement-zonos-tts-mcp-badge.png)](https://mseep.ai/app/phialsbasement-zonos-tts-mcp)

# Zonos MCP Integration
[![smithery badge](https://smithery.ai/badge/@PhialsBasement/zonos-tts-mcp)](https://smithery.ai/server/@PhialsBasement/zonos-tts-mcp)

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

## Setup

### Installing via Smithery

To install Zonos TTS Integration for Claude Desktop automatically via [Smithery](https://smithery.ai/server/@PhialsBasement/zonos-tts-mcp):

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

### Manual installation

1. Make sure you have Zonos running with our API implementation ([PhialsBasement/zonos-api](https://github.com/PhialsBasement/Zonos-API))

2. Install dependencies:
```bash
npm install @modelcontextprotocol/sdk axios
```

3. Configure PulseAudio access:
```bash
# Your pulse audio should be properly configured for audio playback
# The MCP server will automatically try to connect to your pulse server
```

4. Build the MCP server:
```bash
npm run build
# This will create the dist folder with the compiled server
```

5. Add to Claude's config file:
Edit your Claude config file (usually in `~/.config/claude/config.json`) and add this to the `mcpServers` section:

```json
"zonos-tts": {
"command": "node",
"args": [
"/path/to/your/zonos-mcp/dist/server.js"
]
}
```

Replace `/path/to/your/zonos-mcp` with the actual path where you installed the MCP server.

## Using with Claude

Once configured, Claude automatically knows how to use the `speak_response` tool:

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

## Features

- Text-to-speech through Claude
- Multiple emotions support
- Multi-language support
- Proper audio playback through PulseAudio

## Requirements

- Node.js
- PulseAudio setup
- Running instance of Zonos API (PhialsBasement/zonos-api)
- Working audio output device

## Notes

- Make sure both the Zonos API server and this MCP server are running
- Audio playback requires proper PulseAudio configuration