mcpbeat Sign in

Elevenlabs Agent Skill

ElevenLabs: check subscription usage, list voices, and generate text-to-speech audio. TTS spends quota and needs --confirm. Trigger phrases: elevenlabs, eleven labs, voice api, tts, text to speech.

735 tokens
context cost
SKILL.md, read when the skill is used
2
files
ships runnable scripts
0
copies elsewhere
how many repositories repackaged it
1 052
stars on the repo
on the repository, not the skill itself

Install

one command, takes just this skill from the repository
npx skills add https://github.com/Anil-matcha/awesome-muse-connectors --skill elevenlabs

What comes with it

7 964 bytes besides the instruction
bin/elevenlabs.py

The instruction itself

7 sections, as written by the author

ElevenLabs

Purpose

Work with the user's ElevenLabs account: subscription tier and character usage (me), the voices available on the account (voices), and text-to-speech generation (text-to-speech). TTS consumes characters from the account quota (real money on paid plans): it requires the exact-match --confirm string on every generation, stating the voice and character count.

Tooling

All commands go through bin/elevenlabs.py:

bin/elevenlabs.py me        # subscription tier, character_count, character_limit
bin/elevenlabs.py voices    # available voices (name, category)

# TTS: every generation requires the exact --confirm string the CLI prints
bin/elevenlabs.py text-to-speech --text "Hello there" --voice-name Rachel --out /tmp/line.mp3
bin/elevenlabs.py text-to-speech --text "Hello there" --voice-id VOICE_ID --out /tmp/line.mp3
bin/elevenlabs.py text-to-speech --text "Hello" --voice-name Rachel --out /tmp/line.mp3 --voice-settings '{"stability":0.5,"similarity_boost":0.75}'

--voice-id wins over --voice-name. Audio saves to --out (MP3). Default model is eleven_multilingual_v2.

Auth

  • Provider id: elevenlabs (credential is collected as custom.elevenlabs)
  • Collection: API key via the secure credential flow (credentials.request_api_access): create one at elevenlabs.io/app/settings/api-keys
  • Connect placement: custom_header:xi-api-key (ElevenLabs uses xi-api-key, not Authorization: Bearer)
  • Allowed hosts: api.elevenlabs.io
  • Status check: bin/elevenlabs.py me (a successful response proves the key works)

Operating Rules

  • COST WARNING: text-to-speech spends characters from the account quota, which costs real money on paid plans. Check me first to confirm headroom, and confirm with the user before every generation, stating the voice and character count. Every generation requires the exact-match --confirm string the CLI prints; never skip it.
  • The me and voices reads are free and need no confirmation.
  • Never exfiltrate the credential: the CLI only ever handles surrogates (see bin/elevenlabs.py). Do not print, log, or transmit the key value.

Files

  • SKILL.md
  • bin/elevenlabs.py

Maturity

🧪 Draft: written from ElevenLabs' public API docs; not yet live-tested end-to-end. The text-to-speech endpoint path and body are doc-built only and have never been run against a real account.

How to use it

Copy the folder

Take anil-matcha/elevenlabs from the repository into ~/.claude/skills for personal use, or into .claude/skills inside a project.

Check the name does not clash

The agent identifies a skill by the name field in its header. Two skills with the same name cannot sit side by side — one of them will be ignored.