Setup API Key
引導使用者完成設定 ElevenLabs API 金鑰的流程,以便搭配 ElevenLabs MCP 工具使用。當使用者需要設定 ElevenLabs API 金鑰、因缺少 API 金鑰導致 ElevenLabs 工具無法運作,或使用者提到需要存取 ElevenLabs 時使用。
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 does, use that value for this initial check. - Only if it is not in the environment, check
.envforELEVENLABS_API_KEY=<value>. - Do not print, quote, or repeat the key. If you mention it, redact it.
- 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!
Do not paste the key into this chat. Instead, copy/paste it into your local
.envfile:ELEVENLABS_API_KEY=your-api-keyIf
.envalready has anELEVENLABS_API_KEY=...line, replace that line. Tell me when you've saved it, without sharing the key.
Then wait for the user to confirm that the key is saved locally.
Step 2: Validate and configure
After the user says the key is saved:
- Re-check both
.envand the current environment forELEVENLABS_API_KEY, but treat.envas the source of truth for this step. - If
.envcontains a value, validate that value even when the current environment also has a differentELEVENLABS_API_KEY. - If
.envdoes not contain the key:- Tell the user
.envdoes not appear to containELEVENLABS_API_KEY. - Show the expected line again.
- If the current environment does contain a key, note that this step still requires saving the key in
.env. - Remind them not to paste the key into chat.
- Tell the user
- If a
.envkey is found, validate it:GET https://api.elevenlabs.io/v1/user Header: xi-api-key: <local-api-key> - If validation fails:
- Tell the user the local key appears invalid or expired.
- Remind them of the API keys page.
- Ask them to replace the
.envvalue and tell you when it is saved.
- If validation succeeds, confirm:
Done. ElevenLabs is configured and the key in
.envworks.
Safety Rules
- Never ask the user to paste an API key, token, or secret into chat.
- Never print or echo API key values from environment variables or
.env. - Prefer
.envor managed secrets over shell history for persistent local configuration. - For browser or client-side apps, keep
ELEVENLABS_API_KEYon the server and issue short-lived tokens where applicable.