Skip to main content

A Model Context Protocol server providing ElevenLabs text-to-speech integration

Project description

ElevenLabs MCP Server

A Model Context Protocol (MCP) server that integrates with ElevenLabs text-to-speech API, featuring both a server component and a sample web-based MCP Client (SvelteKit) for managing voice generation tasks.

Features

  • Generate audio from text using ElevenLabs API
  • Support for multiple voices and script parts
  • SQLite database for persistent history storage
  • Sample SvelteKit MCP Client for:
    • Simple text-to-speech conversion
    • Multi-part script management
    • Voice history tracking and playback
    • Audio file downloads

Installation

Using uvx (recommended)

When using uvx, no specific installation is needed.

Add the following configuration to your MCP settings file (e.g., cline_mcp_settings.json for Claude Desktop):

{
  "mcpServers": {
    "elevenlabs": {
      "command": "uvx",
      "args": ["elevenlabs-mcp-server"],
      "env": {
        "ELEVENLABS_API_KEY": "your-api-key",
        "ELEVENLABS_VOICE_ID": "your-voice-id",
        "ELEVENLABS_MODEL_ID": "eleven_flash_v2",
        "ELEVENLABS_STABILITY": "0.5",
        "ELEVENLABS_SIMILARITY_BOOST": "0.75",
        "ELEVENLABS_STYLE": "0.1",
        "ELEVENLABS_OUTPUT_DIR": "output"
      }
    }
  }
}

### Development Installation

1. Clone this repository
2. Install dependencies:
   ```bash
   uv venv
  1. Copy .env.example to .env and fill in your ElevenLabs credentials
{
  "mcpServers": {
    "elevenlabs": {
      "command": "uv",
      "args": [
        "--directory",
        "path/to/elevenlabs-mcp-server",
        "run",
        "elevenlabs-mcp-server"
      ],
      "env": {
        "ELEVENLABS_API_KEY": "your-api-key",
        "ELEVENLABS_VOICE_ID": "your-voice-id",
        "ELEVENLABS_MODEL_ID": "eleven_flash_v2",
        "ELEVENLABS_STABILITY": "0.5",
        "ELEVENLABS_SIMILARITY_BOOST": "0.75",
        "ELEVENLABS_STYLE": "0.1",
        "ELEVENLABS_OUTPUT_DIR": "output"
      }
    }
  }
}

## Using the Sample SvelteKit MCP Client

1. Navigate to the web UI directory:
   ```bash
   cd clients/web-ui
  1. Install dependencies:
    pnpm install
    
  2. Copy .env.example to .env and configure as needed
  3. Run the web UI:
    pnpm dev
    
  4. Open http://localhost:5174 in your browser

Available Tools

  • generate_audio_simple: Generate audio from plain text using default voice settings
  • generate_audio_script: Generate audio from a structured script with multiple voices and actors
  • delete_job: Delete a job by its ID
  • get_audio_file: Get the audio file by its ID
  • list_voices: List all available voices
  • get_voiceover_history: Get voiceover job history. Optionally specify a job ID for a specific job.

Available Resources

  • voiceover://history/{job_id}: Get the audio file by its ID
  • voiceover://voices: List all available voices

License

This project is licensed under the MIT License - see the LICENSE file for details.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

elevenlabs_mcp_server-0.1.1.tar.gz (108.8 kB view details)

Uploaded Source

Built Distribution

elevenlabs_mcp_server-0.1.1-py3-none-any.whl (16.1 kB view details)

Uploaded Python 3

File details

Details for the file elevenlabs_mcp_server-0.1.1.tar.gz.

File metadata

  • Download URL: elevenlabs_mcp_server-0.1.1.tar.gz
  • Upload date:
  • Size: 108.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.0.1 CPython/3.11.11

File hashes

Hashes for elevenlabs_mcp_server-0.1.1.tar.gz
Algorithm Hash digest
SHA256 38515164097d5bcde71ccb28ef2b895a11afcfa3ed1d0ec9dcb47cad22a644b5
MD5 d193195b7d5298900dfd98b19f287c4f
BLAKE2b-256 42777d7f198f9d6c9a74d8fd56bcf1251c466cf8c8bf9c72d2a967a13ef6866e

See more details on using hashes here.

File details

Details for the file elevenlabs_mcp_server-0.1.1-py3-none-any.whl.

File metadata

File hashes

Hashes for elevenlabs_mcp_server-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 5f0a04d1c8b5cb02e41c6f2b556a58fc2db17a3e6190a53eb955f2ee73d71308
MD5 ea95e7faf39e754cb30d28c301dd8cdb
BLAKE2b-256 b4e438c9fe43cc066bba816f1fee5e4e17f40d451fe4dc18f5571e684679fdc3

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page