ClawLink

How to connect ElevenLabs to OpenClaw

Connect ElevenLabs to OpenClaw with ClawLink in one click — paste your ElevenLabs API key once, then 155 tools your AI agent can call from chat. No MCP server, no config files.

Get started for free
OpenClaw
OpenClaw
ClawLink
ClawLink
ElevenLabs
ElevenLabs
ElevenLabsAPI KEYMCP

Generate speech and voice cloning. Once connected, OpenClaw can read and act on ElevenLabs from chat — pairing, token refresh, and tool wiring handled for you.

155 tools

The usual route to ElevenLabs access for OpenClaw is an MCP server you configure and keep running, plus your own OAuth app or API keys. ClawLink gives OpenClaw a more practical ElevenLabs setup: install one ClawHub skill, connect ElevenLabs in the browser, and OpenClaw can call real ElevenLabs actions from any chat surface with no auth, token refresh, or tool wiring to build yourself.

Copy this prompt into OpenClaw, or open the ElevenLabs skill on ClawHub.

Prompt for OpenClaw
Before installing anything, inspect the ClawHub skill metadata and setup requirements.
If the skill asks you to install a third-party package or CLI, verify its source, maintainer, and package contents before running the install command.
Install the skill "ElevenLabs" (hith3sh/elevenlabs-audio) from ClawHub only after those checks pass.
Skill page: https://clawhub.ai/hith3sh/elevenlabs-audio
Keep the work scoped to this skill only.
After install, help me finish setup from verified skill metadata.
Use only the metadata you can verify from ClawHub; do not invent missing requirements.
Ask before making any broader environment changes.

Setup

It takes three steps to connect OpenClaw to ElevenLabs.

  1. 1

    Install the plugin

    Paste the setup prompt into OpenClaw, or install from the terminal and ask OpenClaw to pair:

    openclaw plugins install clawhub:clawlink-plugin
  2. 2

    Connect ElevenLabs

    Paste your API key in the dashboard.

  3. 3

    Use it from chat

    Ask OpenClaw: "What can you do with ElevenLabs?"

Install by command

The setup prompt above does all of this in one paste. By hand, it is one install command plus a browser approval:

openclaw plugins install clawhub:clawlink-plugin

Then ask OpenClaw to set up ClawLink. It starts browser pairing and prints an approval link — open it, approve the device, return to the chat, and say done. Finally, connect ElevenLabs in the ClawLink dashboard — paste your ElevenLabs API key once.

Verify the connection by asking OpenClaw:

Read the file, then call elevenlabs_get_voices and pick a voice_id, then call elevenlabs_text_to_speech with that voice_id and the file's text (max 10,000 characters). Return the audio.

Using a different agent?

The OpenClaw plugin is one client of ClawLink's MCP server. Claude Code, Cursor, Codex, or any agent that can run a shell command pairs with the same ClawLink account through the CLI:

npx -y @useclawlink/cli login

login opens the same browser approval and stores a credential locally. Once ElevenLabs is connected in the dashboard, that agent calls the same 155 ElevenLabs tools over MCP. Full setup for MCP clients and shell agents: connect apps to any AI agent.

ElevenLabs MCP for OpenClaw

Looking for a ElevenLabs MCP server for OpenClaw? ClawLink connects ElevenLabs to OpenClaw and exposes 155 ElevenLabs tools your agent can call over MCP, with hosted auth and nothing to run or maintain yourself. Using Hermes instead? The Hermes ElevenLabs integration works the same way.

One thing you will need either way: an ElevenLabs API key. ElevenLabs authenticates API access with keys (the xi-api-key header), not OAuth — even their own MCP server takes ELEVENLABS_API_KEY. Create one at elevenlabs.io/app/settings/api-keys (it starts with sk_ and is shown once), paste it into ClawLink, and OpenClaw calls the 155 tools on this page from any chat surface. The key stays out of your env files and out of any server you run.

What the OpenClaw ElevenLabs integration can do

155 ElevenLabs tools are ready for OpenClaw once the account is connected. The 30 below are the ones people reach for most; your agent can call all 155.

30 of 155 ElevenLabs tools for OpenClaw

ToolWhat it does
Create conversational agent elevenlabs_create_conversational_agentCreate a conversational AI agent
Download history items elevenlabs_download_history_itemsDownload audio from history
Generate a random voice elevenlabs_generate_a_random_voiceGenerate a unique random voice
Get convai agents summaries elevenlabs_get_convai_agents_summariesList conversational AI agents
Get dubbing project metadata elevenlabs_get_dubbing_project_metadataGet dubbing project metadata
Get history item by ID elevenlabs_get_history_item_by_idGet a history audio item
Get models elevenlabs_get_modelsList available models
Get project by ID elevenlabs_get_project_by_idGet a specific project
Get projects elevenlabs_get_projectsList ElevenLabs projects
Get user subscription info elevenlabs_get_user_subscription_infoGet subscription usage and limits
Get voice elevenlabs_get_voiceGet details for a specific voice
Get voices elevenlabs_get_voicesList available ElevenLabs voices
List dubs elevenlabs_list_dubsList dubbing projects
Speech to speech elevenlabs_speech_to_speechTransform audio from one voice to another
Text to speech elevenlabs_text_to_speechConvert text to speech using ElevenLabs voices
Calculate convai agent llm usage elevenlabs_calculate_convai_agent_llm_usageCalculate expected number of LLM tokens needed for a conversational AI agent
Calculate convai llm usage elevenlabs_calculate_convai_llm_usageCalculate expected LLM usage costs for conversational AI agents
Create music plan elevenlabs_create_music_planGenerate a music composition plan from a text prompt using ElevenLabs Music API
Create similar voices elevenlabs_create_similar_voicesReturns a list of shared voices similar to the provided audio sample
Get a profile page elevenlabs_get_a_profile_pageRetrieves the profile information for the authenticated ElevenLabs user (identified by API key)
Get agent details elevenlabs_get_agent_detailsRetrieve available Conversational AI agents and outbound-capable Twilio phone numbers
Get agent link elevenlabs_get_agent_linkGet the current shareable link for a Conversational AI agent
Get audio from history item elevenlabs_get_audio_from_history_itemRetrieves the audio content for a specific history item from ElevenLabs, using a
Get audio from sample elevenlabs_get_audio_from_sampleRetrieves the audio for a given sample_id that must belong to the specified voice_id
Get audio native settings elevenlabs_get_audio_native_settingsRetrieve player settings for a specific Audio Native project
Get chapter by ID elevenlabs_get_chapter_by_idFetches comprehensive details for a specific chapter within a given project, including its
Get chapter snapshots elevenlabs_get_chapter_snapshotsRetrieves all saved version snapshots for a specific chapter within a given project, enabling
Get chapters elevenlabs_get_chaptersRetrieves a list of all chapters, their details, and conversion status for a project, useful
Get convai agent elevenlabs_get_convai_agentRetrieve the complete configuration for a specific Conversational AI agent by ID
Get convai agent knowledge base size elevenlabs_get_convai_agent_knowledge_base_sizeRetrieve the number of pages in a conversational AI agent's knowledge base

Try it: find the ElevenLabs tool you need

Browse the 30 ElevenLabs tools

Click any tool to see exactly what OpenClaw can do and copy a ready-to-use prompt.

Example prompts

Read the file, then call elevenlabs_get_voices and pick a voice_id, then call elevenlabs_text_to_speech with that voice_id and the file's text (max 10,000 characters). Return the audio.

Call elevenlabs_get_user_subscription_info and tell me the current plan, character/credit usage, and the next reset date. If a paid feature like instant voice cloning is missing, say so.

Call elevenlabs_add_a_pronunciation_dictionary with the .pls lexicon file I attached, a name, and workspace access. If the key lacks the pronunciation_dictionaries_write permission, tell me exactly which permission is missing.

Create a conversational AI agent in ElevenLabs with elevenlabs_create_conversational_agent. The conversation_config argument is required — ask me for the agent's prompt and LLM choice before calling, and confirm the rest of the config before you finish.

What to tell the agent when it calls ElevenLabs

Verified against the live ElevenLabs tool schemas (2026-08-02) and real call history on the ClawLink runtime. These are the traps that actually show up in production calls:

  • elevenlabs_text_to_speech requires voice_id and text. voice_id is the 20-character id from elevenlabs_get_voices, never the voice name — passing "Rachel" fails with voice_not_found. model_id defaults to eleven_monolingual_v1; eleven_turbo_v2_5 or a v3 model is the low-latency choice. output_format defaults to mp3_44100_128. Text is capped at 10,000 characters (30,000 on Flash/Turbo v2 models). Models are gated by plan: if the default model fails with a plan or model-not-found error, call elevenlabs_get_user_subscription_info first and pick a model the account's plan actually serves.
  • Call elevenlabs_get_voices first when a speech request fails: it returns real voice_id values and confirms the key can read the voice library at all.
  • elevenlabs_add_a_pronunciation_dictionary takes a lexicon file object (.pls XML). It fails with a 400 invalid_parameters when the file is malformed, and with a permission error when the key lacks pronunciation_dictionaries_write.
  • elevenlabs_create_conversational_agent requires the conversation_config object (agent prompt, LLM, and language settings) — there is no valid call without it.
  • Tool names are literal: there is no elevenlabs_list_voices or elevenlabs_list_models — the tools are elevenlabs_get_voices and elevenlabs_get_models. Agents that guess list_* get a "tool not found" error.
  • Audio and subscription reads (elevenlabs_get_user_subscription_info, elevenlabs_get_history_item_by_id) work on any key; writes like instant voice cloning and some music tools are gated by the ElevenLabs plan, not by the key permissions.

The alternative to ClawLink is usually manual API key setup plus your own token handling, permission troubleshooting, and tool plumbing for OpenClaw. That is fine if you want to build and maintain the integration yourself. Most teams just want ElevenLabs working from chat.

ManualClawLink
Credential handlingCollect, validate, store, and rotate the ElevenLabs API key yourself, then make sure every tool call uses the right account.Users complete the hosted ClawLink setup once and the connected ElevenLabs account becomes available to the agent without you building credential management.
Ongoing maintenanceYou own refresh logic, permission debugging, environment config, and every provider-specific edge case for ElevenLabs.ClawLink handles the repetitive integration plumbing so your team can focus on the workflow instead of the infrastructure.
Agent usabilityYou still need to expose the right ElevenLabs actions to the runtime in a format your agent can reliably use.155 tools for ElevenLabs are already exposed through ClawLink, so the agent can read and act from chat immediately.

Composio also exposes ElevenLabs to AI agents. It is developer infrastructure: Python and TypeScript SDKs, an MCP server, and a catalog past 1,000 apps, aimed at teams shipping agent products. ClawLink is built for OpenClaw users instead. You install the plugin once, connect ElevenLabs in the browser, and the 155 tools above work from chat. There is no SDK and no config file, and the ElevenLabs key you paste at setup is stored server-side rather than kept in your environment. Choosing between them? Read the full Composio alternatives comparison.

Troubleshooting

OpenClaw installed the ElevenLabs skill but can't call the tools

The ClawHub skill teaches OpenClaw about ElevenLabs, but the calls run through the ClawLink plugin and your connected account. Make sure ElevenLabs is connected in the dashboard, then start a fresh chat so OpenClaw reloads the tool catalog. If OpenClaw runs as a persistent gateway, restart it so the new tools register.

Connection succeeds but no tools appear

Reconnect ElevenLabs from the dashboard, then start a fresh chat if the runtime still has the old tool catalog loaded.

"Tool schema not loaded yet" error when calling ElevenLabs tools

ElevenLabs tool schemas load on demand the first time a tool runs and are cached after that, so this error usually clears on its own: wait a few seconds and retry the same request. If every ElevenLabs call keeps failing with it in a fresh chat, reconnect from the dashboard, and contact support if it still persists — that pattern points to a configuration problem on our side, not something you can fix by reconnecting again.

ElevenLabs returns 403 or "permission denied" on one action while others work

Two usual causes. The connected account may not have access to the specific workspace, inbox, store, or project in the request — check that first. If access looks right, the agent may have sent a placeholder value (like "YOUR_ID" or an example id from documentation) instead of a real one: ask it to run a list or search tool first, then retry the action with a real id from those results. Most failures at this stage are one of these two, not ClawLink bugs.

"The API key you used is missing the permission pronunciation_dictionaries_write"

This is an ElevenLabs key-permission error, not a ClawLink failure: the connected key is valid but its scoped permissions don't include the endpoint the tool called. The permission name in the message tells you exactly which capability is missing (pronunciation_dictionaries_write, voices_read, and so on). Fix it in ElevenLabs: edit the key's permissions at elevenlabs.io/app/settings/api-keys to include the required scope, or create a key without scope restriction for the workflow. Then retry the same tool call from chat.

ElevenLabs returns "Invalid API key" after working before

Three ElevenLabs-side causes, in practice: (1) user API keys can be created with an expiry (15 minutes to 30 days) and stop authenticating with exactly this 401 once they lapse — rotate to a new key; (2) a key committed to a public GitHub repo is auto-disabled by ElevenLabs' secret scanning (disable_reason exposed_publicly) — create a new key; (3) the key was rotated or deleted in ElevenLabs. In all three cases, reconnect ElevenLabs in the ClawLink dashboard with a fresh key and retry.

"A voice with voice_id ... was not found" when the agent speaks

ElevenLabs addresses voices by a 20-character voice_id, not by name — passing "Spanda" or "Rachel" as the voice fails with voice_not_found. Ask the agent to call the get voices tool first (elevenlabs_get_voices) and use a voice_id from its results in the text-to-speech call. The voice_id is stable; the display name is not an argument.

"Unusual activity has been detected on your account, so Free Tier access has been disabled"

ElevenLabs disables Free-tier API access when it detects a proxy or VPN on the request path, or when multiple free accounts share infrastructure — the agent's calls then fail until you upgrade. Two options: run the calls from a residential IP without a VPN, or upgrade the ElevenLabs plan, which lifts the restriction.

"Your subscription does not include instant voice cloning. Please upgrade your plan."

Instant voice cloning is a paid-plan feature on ElevenLabs (Free is 10,000 credits/month and does not include it; Starter at $6/month does, per elevenlabs.io/pricing). The tool will keep failing on this error until the ElevenLabs plan includes the capability — no reconnect or key change fixes it.

"Connection 1214 needs to be reconnected before elevenlabs_text_to_speech can run"

The ElevenLabs connection in ClawLink has been invalidated — usually a rotated or deleted API key. Reconnect ElevenLabs from the dashboard with the current key, then retry the same tool call in a fresh chat. Reconnecting is a one-time paste; no OpenClaw config changes are needed.

xi-api-key: __OPENCLAW_REDACTED__ in the macOS talk-mode request to ElevenLabs

This is a self-hosted OpenClaw bug, not a ClawLink failure: OpenClaw's talk mode in the macOS app sent the literal redaction sentinel __OPENCLAW_REDACTED__ as the xi-api-key header instead of the configured key, so ElevenLabs replied with a fallback voice (openclaw/openclaw issue #14586). It is fixed upstream in openclaw/openclaw #14613; update OpenClaw. The ClawLink connection sends the stored key on every call and has no talk-mode step where a sentinel could substitute for it.

API key setup works but results look incomplete

Double-check that the API key for ElevenLabs has the right scopes or account access. A valid key can still be too limited for some reads or writes.

FAQ

Is there a OpenClaw ElevenLabs integration?

Yes. ClawLink is the fastest way to connect OpenClaw to ElevenLabs: link your ElevenLabs account once in the browser and OpenClaw can call the ElevenLabs API through 155 ready-made tools — no custom code or token handling.

How do I add ElevenLabs to OpenClaw with ClawLink?

Paste the setup prompt from this page into OpenClaw. It installs the ClawLink ElevenLabs skill from ClawHub, then you click Connect in the dashboard to authorize ElevenLabs. OpenClaw calls the tools from the next message — no config files, and the ElevenLabs key you paste is stored server-side instead of in your environment.

How long does it take to connect ElevenLabs to OpenClaw?

About two minutes. Sign in, click Connect next to ElevenLabs in the dashboard, authenticate, and OpenClaw can use it from the next chat message.

Why use ClawLink instead of wiring ElevenLabs up myself?

The alternative to ClawLink is usually manual API key setup plus your own token handling, permission troubleshooting, and tool plumbing for OpenClaw. That is fine if you want to build and maintain the integration yourself. Most teams just want ElevenLabs working from chat.

Does ElevenLabs support OAuth?

No. ElevenLabs authenticates every API request with an API key sent as the xi-api-key header; there is no OAuth flow for their API, which is why the r/openclaw thread asking about an ElevenLabs subscription over OAuth goes unanswered. Every route has the same prerequisite: a key from elevenlabs.io/app/settings/api-keys. ClawLink just removes the parts a key normally drags in — the env file, the config block, and the server you would otherwise keep running to expose the tools to OpenClaw.

Is it safe to connect ElevenLabs to OpenClaw?

The key is a secret: anyone holding it can spend your ElevenLabs credits and use your voices. ClawLink stores the key for you rather than leaving it in a config file on your machine, and you control the blast radius: create a dedicated key at elevenlabs.io/app/settings/api-keys, give it only the API permissions the agent needs (scoped keys are supported), and rotate or delete it anytime without touching OpenClaw. ElevenLabs also lets you set a credit cap on the key, so an unexpected bill is bounded.

Why does ElevenLabs fail with "missing the permission ..."?

That error means the API key is valid but its scoped permissions do not cover the endpoint the agent called — for example "The API key you used is missing the permission pronunciation_dictionaries_write". Create the key with the permissions your workflow needs, or use a key without scope restriction if the agent should have full workspace access. A free-plan key will also fail specific actions regardless of permission: instant voice cloning requires a paid plan.

OpenClaw installed the ElevenLabs skill but can't call the tools

The ClawHub skill teaches OpenClaw about ElevenLabs, but the calls run through the ClawLink plugin and your connected account. Make sure ElevenLabs is connected in the dashboard, then start a fresh chat so OpenClaw reloads the tool catalog. If OpenClaw runs as a persistent gateway, restart it so the new tools register.