mcpField
E
elevenlabs-tts

elevenlabs-tts

github.com/glebisCreative & media402307 installsUpdated 2d ago
Repository

About elevenlabs-tts

elevenlabs-tts is a skill for generating audio through the ElevenLabs text-to-speech API. It is for developers and creators producing spoken content, with voice presets, adjustable parameters, and a script usable from Python or the command line.

Key features

  1. 01Convert text to speech through the ElevenLabs API
  2. 02Choose from seven voice presets
  3. 03Set a voice ID and adjust voice parameters
  4. 04Import from Python or run from the command line
  5. 05Set output paths with automatic directory creation

Use cases

  1. 01Generate narration audio from text
  2. 02Create speech with different voice presets
  3. 03Generate audio files in a Python program
  4. 04Choose a voice and output location from the command line

Install

Copy the command and run it in a terminal.

$npx skills add https://github.com/glebis/claude-skills --skill elevenlabs-tts

After installing, type/elevenlabs-ttsin Claude Code to confirm it loaded.

Bundled files

References and scripts installed along with SKILL.md.

.env.example
.gitignore
requirements.txt
.claude-plugin/
plugin.json
references/
api_reference.md
scripts/
elevenlabs_tts.py

Details

From the project README

ElevenLabs Text-to-Speech

Overview

Generate professional audio files from text using ElevenLabs' advanced text-to-speech API. The skill provides pre-configured voice presets with sensible defaults, voice parameter customization, and direct access to the scripts/elevenlabs_tts.py script for programmatic control.

Quick Start

To generate audio from text:

  1. Ensure the .env file contains a valid ELEVENLABS_API_KEY
  2. Execute the script with text: python scripts/elevenlabs_tts.py "Your text here"
  3. Specify voice and output: python scripts/elevenlabs_tts.py "Text" --voice adam --output audio/output.mp3

Voice Presets

Seven pre-configured voices are available. See references/api_reference.md for complete voice descriptions:

  • rachel (default) - Clear, professional female
  • adam - Deep, authoritative male
  • bella - Warm, friendly female
  • elli - Young, enthusiastic female
  • josh - Friendly, conversational male
  • arnold - Deep, powerful male
  • ava - Expressive, dynamic female

Parameters

Text

The text to convert to speech. Any length is supported.

Voice Selection

Specify voice using preset name (e.g., rachel, adam) or direct ElevenLabs voice ID.

Voice Parameters
  • stability (0.0-1.0, default 0.5): Lower values create expressive variation; higher values ensure consistency
  • similarity_boost (0.0-1.0, default 0.75): Higher values maintain closer adherence to voice characteristics
Output

Specify the output file path. Default is output.mp3. Directories are created automatically.

Usage Examples

Basic Python Usage
from scripts.elevenlabs_tts import generate_speech

path = generate_speech(
    text="Hello, this is a test message",
    voice_id="rachel"
)
Command Line
# With default voice
python scripts/elevenlabs_tts.py "Generate this text"

# With custom voice and stability
python scripts/elevenlabs_tts.py "Different voice" --voice adam --stability 0.7

# To custom output path
python scripts/elevenlabs_tts.py "Save here" --output audio/narration.mp3

# List available voices
python scripts/elevenlabs_tts.py "" --list-voices

Implementation Notes

  • The script handles API communication with error reporting
  • Output directories are created automatically if they don't exist
  • Returns absolute path to generated audio file
  • Uses eleven_monolingual_v1 model by default (can be overridden)

Resources

  • scripts/elevenlabs_tts.py - Main Python script for text-to-speech generation. Can be imported as a module or executed from command line.
  • references/api_reference.md - Detailed API documentation including voice descriptions, parameter explanations, and usage examples.
  • .env and .env.example - Environment configuration for storing API credentials securely.

Comments

Markdown supported