
ElevenLabs TTS
FreeGenerate text-to-speech audio with local voice profiles.
Free · Opens the source repo
What ElevenLabs TTS does
The ElevenLabs TTS skill allows developers and designers to generate high-quality text-to-speech audio using ElevenLabs' API, leveraging local voice profiles for customization. This skill is designed to be reusable and non-personal, ensuring that sensitive information such as API keys and voice profiles are not stored within the skill itself. Instead, it reads necessary configurations from environment variables or local JSON files, making it straightforward to integrate into existing projects.
Users can specify various parameters for audio generation, including voice settings, output formats, and profile selections. The skill supports multiple input methods, allowing users to provide text directly, from a file, or even through standard input. This flexibility makes it suitable for a range of applications, from automated narration to voiceover work in multimedia projects.
The workflow for using this skill is clear and efficient. Users can select profiles, generate audio files, and manage output locations with ease. The bundled helper script simplifies the process, allowing for quick adjustments and testing without the need for extensive setup. Furthermore, the skill ensures that any changes made during audio generation do not affect saved settings unless explicitly requested, maintaining a clean operational environment.
This skill is ideal for developers looking to implement text-to-speech functionality in their applications or for designers needing to create voiceovers for multimedia content. Its reliance on local profiles enhances security and customization, making it a valuable tool for projects that require personalized voice generation without compromising on privacy or data integrity.
When to use it
Use this skill when you need to generate audio from text using ElevenLabs' TTS service, especially when working with local voice profiles.
When not to use it
This skill may not be suitable if you require a cloud-based solution that stores voice profiles or if you need features beyond basic TTS generation.
What you can build with it
Automated Narration for Videos
Integrate ElevenLabs TTS into your video production workflow to automatically generate narration from scripts.
Voiceover for Presentations
Use this skill to create professional voiceovers for slideshows and presentations, enhancing audience engagement.
Interactive Voice Applications
Develop interactive applications that respond with natural-sounding speech using the ElevenLabs TTS capabilities.
How to install ElevenLabs TTS
View source1. Install with the skills CLI
npx skills add mengto/skills/elevenlabs-tts --agent claude-code2. Or install it manually
Download the skill folder and drop it into ~/.claude/skills/ for all projects, or .claude/skills/ to scope it to one repo. Restart Claude Code so it picks up the new skill.
Anthropic's agentic coding CLI, and the reference implementation of Agent Skills. Drop a skill folder into ~/.claude/skills and Claude Code loads it automatically whenever a task matches the skill's description. Claude Code docs
Inside SKILL.md
Written by mengtoElevenLabs TTS
Use this skill for ElevenLabs text-to-speech generation. Keep the skill reusable and non-personal:
- Do not store API keys, voice names, voice ids, emails, account names, customer names, or personal defaults in the skill.
- Read
ELEVENLABS_API_KEYfrom the process environment or the nearest.env. - Read account-specific voice profiles from local JSON config outside this skill.
- Generate audio with request-level settings. Do not mutate saved ElevenLabs account or voice settings unless the user explicitly asks.
Local Profiles
Prefer one of these config sources, in order:
--config /path/to/profiles.jsonELEVENLABS_TTS_CONFIG=/path/to/profiles.jsonlocal/elevenlabs/profiles.json
Project-local profile files are also fine when they are gitignored, for example config/local/elevenlabs-tts.json.
The helper script expects this shape:
{
"default_profile": "default",
"profiles": {
"default": {
"voice_name": "Voice name from the local account",
"voice_id": "optional-direct-voice-id",
"voice_id_env": "OPTIONAL_ENV_VAR_WITH_VOICE_ID",
"model_id": "eleven_multilingual_v2",
"output_format": "mp3_44100_128",
"voice_settings": {
"stability": 0.5,
"similarity_boost": 1.0,
"style": 0.0,
"speed": 1.0,
"use_speaker_boost": true
},
"output_dir": "outputs/voiceovers",
"emails": []
}
}
}
Fields like emails, owners, aliases, and notes are for local routing/context only. The script ignores unknown metadata fields.
Workflow
- Choose the profile from
--profile,ELEVENLABS_TTS_PROFILE, ordefault_profile. - Prefer the helper script:
python3 <skill-root>/scripts/generate_voice.py --text-file script.txt --profile default --output output.mp3 - If the profile has
voice_id, use it. If it hasvoice_id_env, read that env var. Otherwise search ElevenLabs byvoice_name. - Use profile
model_id,output_format, andvoice_settingsunless the user overrides them for this generation. - Put generated audio in the requested destination. If no destination is given, use the profile
output_dir, thenoutputs/voiceovers/. - Report the output path and any important warnings. Do not print secrets.
Helper Script
The bundled script supports:
--text "..."for inline text--text-file path.txtfor script files- stdin when neither
--textnor--text-fileis provided --profile nameto select a local profile--config path.jsonto select a local profile file--voice-id,--voice-name,--model-id,--output-format, and--settings-jsonfor one-off overrides--output path.mp3to choose the output file--dry-runto print the resolved request payload without calling the text-to-speech endpoint--list-voicesto list matching ElevenLabs voices without generating audio
API Notes
Use the current ElevenLabs endpoints:
- Voice search:
GET https://api.elevenlabs.io/v2/voices - Speech generation:
POST https://api.elevenlabs.io/v1/text-to-speech/:voice_id?output_format=...
Send the API key as xi-api-key.
Frequently asked questions about ElevenLabs TTS
Similar skills
WinMD API Search
Easily find and explore Windows desktop APIs.
WebMCPify
Transform any web app into an agent-ready platform.
Phoenix Tracing
Instrument LLM applications with OpenInference tracing.
Foundry Hosted Agent CopilotKit
Guidance for developing agentic web apps on Azure.
Power Automate Foundation
Connect AI agents to Power Automate seamlessly.
Power Automate Flow Builder
Efficiently build and deploy Power Automate flows programmatically.
