Editor's Note
setup-api-key
Guides users through setting up an ElevenLabs API key for ElevenLabs MCP tools. Use when the user needs to configure an ElevenLabs API key, when ElevenLabs tools fail due to missing API key, or when the user mentions needing access to ElevenLabs. First checks whether ELEVENLABS_API_KEY is already configured and valid, and only runs full setup when needed.
Install
npx skills add https://github.com/elevenlabs/skills --skill setup-api-keyElevenLabs API Key Setup
Guide the user through obtaining and configuring an ElevenLabs API key.
Workflow
Step 0: Check for an existing API key first
Before asking the user for a key, check for an existing ELEVENLABS_API_KEY:
- Check whether
ELEVENLABS_API_KEYexists in the current environment. - If it's not in the environment, check
.envforELEVENLABS_API_KEY=<value>. - If an existing key is found, validate it:
GET https://api.elevenlabs.io/v1/user Header: xi-api-key: <existing-api-key> - If existing key validation succeeds:
- Tell the user ElevenLabs is already configured and working
- Skip the setup flow
- Ask whether they want to replace/rotate the key; if not, stop
- If existing key validation fails:
- Tell the user the existing key appears invalid or expired
- Continue to Step 1
Step 1: Request the API key
Tell the user:
To set up ElevenLabs, open the API keys page: https://elevenlabs.io/app/settings/api-keys
(Need an account? Create one at https://elevenlabs.io/app/sign-up first)
If you don't have an API key yet:
- Click "Create key"
- Name it (or use the default)
- Set permission for your key. If you provide a key with "User" permission set to "Read" this skill will automatically verify if your key works
- Click "Create key" to confirm
- Copy the key immediately - it's only shown once!
Paste your API key here when ready.
For service account keys, optionally restrict usage to trusted IP addresses or CIDR ranges with
allowed_ips. Omitting it or setting it to null allows all IPs; when editing a service account
key, use clear to remove the allowlist or omit the field to leave it unchanged.
Then wait for the user's next message which should contain the API key.
Step 2: Validate and configure
Once the user provides the API key:
-
Validate the key by making a request:
GET https://api.elevenlabs.io/v1/user Header: xi-api-key: <the-api-key> -
If validation fails:
- Tell the user the API key appears to be invalid
- Ask them to try again
- Remind them of the URL: https://elevenlabs.io/app/settings/api-keys
- If it fails a second time, display an error and exit
-
If validation succeeds, save the API key in a
.envfile:ELEVENLABS_API_KEY=<the-api-key>- If
.envalready hasELEVENLABS_API_KEY=..., replace that line - Otherwise add a new line for
ELEVENLABS_API_KEY
- If
-
Confirm success:
Done! Your key is stored as an environment variable in .env Keep the key safe! Don't share it with anyone!
Categories
Related Backend & APIs Skills
View allfind-skills
vercel-labs/skills
vercel-react-best-practices
vercel-labs/agent-skills
frontend-design
anthropics/skills
web-design-guidelines
vercel-labs/agent-skills
remotion-best-practices
remotion-dev/skills
agent-browser
vercel-labs/agent-browser