elevenlabs-mcp
An MCP (Model Context Protocol) server that bridges AI assistants with ElevenLabs text-to-speech capabilities.
This server is not affiliated with, nor associated with ElevenLabs in any way.
Purpose
This MCP server enables AI assistants to generate speech from text using the ElevenLabs API. It provides a seamless interface for converting text to high-quality speech, managing voice selection, and handling audio playback within MCP-compatible environments.
As a prerequisite, you must already have an account with ElevenLabs. After creating your account, you can get your API key from here.
Installation
go build -o elevenlabs-mcp
Configuration
Set your ElevenLabs API key:
export XI_API_KEY=your_api_key_here
Usage
The server communicates via stdio using the MCP protocol:
./elevenlabs-mcp
Generated audio files are automatically saved to .xi/<timestamp>-<hex5>.mp3 with corresponding .txt files containing the original text for reference.
MCP Tools
The server provides the following tools to MCP clients:
- say - Convert text to speech and save as MP3
- read - Read a text file and convert it to speech
- play - Play audio files using system audio
- set_voice - Change the voice used for generation
- get_voices - List available voices and show current selection
- history - List previously generated audio files with text summaries
Dependencies
- ElevenLabs API for text-to-speech generation
- Beep library for audio playback
- MCP-Go for MCP server functionality
License
This project is licensed under the 0BSD License, written by Rob Landley. As such, you may use this library without restriction or attribution, but please don't pass it off as your own. Attribution, though not required, is appreciated.
By contributing, you agree all code submitted also falls under the License.