elevenlabs
Compare original and translation side by side
🇺🇸
Original
English🇨🇳
Translation
ChineseElevenlabs
Elevenlabs
<!-- BEGIN:skill-intro -->
Tools for the ElevenLabs AI-audio API: convert text to spoken audio in any of the account's voices, generate sound effects and multi-speaker dialogue, re-voice or denoise existing audio, transcribe audio and video by URL, design brand-new synthetic voices from a text description, and manage the account's voices, generation history, and credit quota. Audio-producing tools write the audio to a local file and return its path by default; pass to get the bytes inline instead (for consumers without filesystem access).
<!-- legal:disclaimer -->
return_base64: trueIndependent, unofficial connector for Elevenlabs. Not affiliated with, endorsed by, or sponsored by Elevenlabs. "Elevenlabs" is a trademark of its owner, used only to identify the service this connector works with.
<!-- /legal:disclaimer -->
<!-- END:skill-intro --><!-- BEGIN:skill-intro -->
适用于ElevenLabs AI音频API的工具:将文本转换为账户中任意语音的语音音频、生成音效和多角色对话、对现有音频重新配音或降噪、通过URL转录音频和视频、根据文本描述设计全新的合成语音,以及管理账户的语音、生成历史和信用配额。默认情况下,生成音频的工具会将音频写入本地文件并返回其路径;若传入,则会直接返回字节数据(适用于无文件系统访问权限的使用者)。
<!-- legal:disclaimer -->
return_base64: true这是Elevenlabs的独立非官方连接器。与Elevenlabs无关联、未获其认可或赞助。“Elevenlabs”是其所有者的商标,仅用于标识本连接器所适配的服务。
<!-- /legal:disclaimer -->
<!-- END:skill-intro -->When to use this
适用场景
<!-- BEGIN:skill-use-cases -->
- Turn text into audio: narration, a spoken reply, a podcast-style dialogue, or a sound effect described in words.
- Transform existing audio: transcribe it, isolate the speech from background noise, or re-voice it in a different voice.
- Manage voices: find one in the account or the community library, add it, design a new one from a description, or free up voice slots.
- Check the account before big generations: remaining character credits, tier gates, and voice-slot usage via .
getUserSubscription
<!-- BEGIN:skill-use-cases -->
- 将文本转换为音频:旁白、语音回复、播客风格对话,或根据文字描述生成音效。
- 处理现有音频:转录音频、分离语音与背景噪音,或用其他语音重新配音。
- 管理语音:在账户或社区库中查找语音、添加语音、根据描述设计新语音,或释放语音插槽。
- 大规模生成前检查账户信息:通过查看剩余字符额度、层级限制和语音插槽使用情况。
getUserSubscription
Setup
安装配置
This is an agentskills.io skill.
If the connector has not been installed as a skill yet, install it first with (or your harness's own skill-install mechanism), then continue here. Installing the skill copies these files, not dependencies. Before running the CLI, a local MCP server, or auth commands, run here once. Importing the published package as a dependency in your own project instead? That already resolves everything — see .
npx skills add zapier/connectors --skill elevenlabszapier-sdknpm install --omit=devnpm installreferences/use-as-sdk.mdThe connector runs on Node.js 22.18+. Pick the reference that matches how you're running it, and load it before doing anything else:
| You have... | Load |
|---|---|
An MCP-aware client — tools may already be loaded (e.g. | |
Terminal / subprocess access (you can run | |
| Only your own code, importing this package as a dependency | |
| No tool access, no terminal, no ability to import this package — you write your own code that calls the Elevenlabs API directly (e.g. a code-execution sandbox) | |
这是一款agentskills.io技能工具。
如果尚未将该连接器作为技能安装,请先使用(或你的工具链自带的技能安装机制)进行安装,然后继续后续操作。安装技能只会复制这些文件,不会安装依赖项。运行CLI、本地MCP服务器或认证命令前,请先在此处执行一次。如果是在你自己的项目中导入已发布的包作为依赖?此时已经解决了所有依赖问题——详见。
npx skills add zapier/connectors --skill elevenlabszapier-sdknpm install --omit=devnpm installreferences/use-as-sdk.md该连接器运行在**Node.js 22.18+**环境下。请根据你的运行方式选择对应的参考文档,并在操作前加载它:
| 你的环境... | 加载文档 |
|---|---|
支持MCP的客户端——工具可能已加载(例如 | |
有终端/子进程访问权限(可运行 | |
| 仅使用自有代码,将此包作为依赖导入 | |
| 无工具访问权限、无终端、无法导入此包——需自行编写代码直接调用Elevenlabs API(例如代码执行沙箱) | |
Scripts
脚本说明
<!-- BEGIN:skill-connections-note? -->
<!-- END:skill-scripts-table -->
<!-- BEGIN:disambiguation-and-refusals? -->
All scripts share the single connection. Audio-producing scripts accept (default false: audio is written to a temp file and returned as ).
<!-- END:skill-connections-note -->
<!-- BEGIN:skill-scripts-table -->
elevenlabsreturn_base64audio_path| Script | Script name | Connections | Description |
|---|---|---|---|
| | elevenlabs | Convert text to spoken audio in a chosen voice (resolve |
| | elevenlabs | Generate a sound effect (not speech) from a text description. |
| | elevenlabs | Generate a multi-speaker conversation from a list of |
| | elevenlabs | Re-voice existing speech in a different voice; source is an HTTPS URL or local path. |
| | elevenlabs | Remove background noise/music from a recording; source is an HTTPS URL or local path. |
| | elevenlabs | Transcribe audio/video from an HTTPS URL, with timestamps and speaker labels. |
| | elevenlabs | Design a new synthetic voice from a text description; returns candidate previews. |
| | elevenlabs | Save a designed voice (by |
| | elevenlabs | List the account's voices — the |
| | elevenlabs | Get one voice's full metadata by id. |
| | elevenlabs | Search the community voice library by name, language, gender, age, accent. |
| | elevenlabs | Add a community library voice to the account (uses a voice slot). |
| | elevenlabs | Remove a voice from the account; frees a voice slot. Irreversible for designed/cloned voices. |
| | elevenlabs | List models with capabilities and per-request character limits. |
| | elevenlabs | List previously generated audio items; filter by voice, model, date, or text. |
| | elevenlabs | Get one generation's metadata (voice, text, cost) by |
| | elevenlabs | Re-fetch the audio of a previous generation — free, no new credits. |
| | elevenlabs | Permanently delete one generated item from history. Irreversible. |
| | elevenlabs | Check tier, character credits used/limit, reset time, and voice-slot usage. |
<!-- BEGIN:skill-connections-note? -->
<!-- END:skill-scripts-table -->
<!-- BEGIN:disambiguation-and-refusals? -->
所有脚本共享同一个连接。生成音频的脚本支持传入参数(默认值为false:音频会写入临时文件并以形式返回)。
<!-- END:skill-connections-note -->
<!-- BEGIN:skill-scripts-table -->
elevenlabsreturn_base64audio_path| 脚本文件 | 脚本名称 | 连接配置 | 描述 |
|---|---|---|---|
| | elevenlabs | 将文本转换为指定语音的语音音频(通过 |
| | elevenlabs | 根据文本描述生成音效(非语音)。 |
| | elevenlabs | 根据 |
| | elevenlabs | 将现有语音替换为其他语音;源音频可为HTTPS URL或本地路径。 |
| | elevenlabs | 移除录音中的背景噪音/音乐;源音频可为HTTPS URL或本地路径。 |
| | elevenlabs | 通过HTTPS URL转录音频/视频,返回带时间戳和说话人标签的结果。 |
| | elevenlabs | 根据文本描述设计新的合成语音;返回候选语音预览。 |
| | elevenlabs | 将设计好的语音(通过 |
| | elevenlabs | 列出账户中的语音——用于获取 |
| | elevenlabs | 通过ID获取某一语音的完整元数据。 |
| | elevenlabs | 根据名称、语言、性别、年龄、口音搜索社区语音库。 |
| | elevenlabs | 将社区语音库中的语音添加到账户(占用一个语音插槽)。 |
| | elevenlabs | 从账户中移除语音;释放语音插槽。对于设计/克隆的语音,此操作不可撤销。 |
| | elevenlabs | 列出所有模型及其功能和单次请求字符限制。 |
| | elevenlabs | 列出已生成的音频项目;可按语音、模型、日期或文本过滤。 |
| | elevenlabs | 通过 |
| | elevenlabs | 重新获取已生成项目的音频——免费,不消耗新额度。 |
| | elevenlabs | 永久删除某一已生成项目。此操作不可撤销。 |
| | elevenlabs | 查看账户层级、已使用/剩余字符额度、重置时间和语音插槽使用情况。 |
Disambiguation & refusals
歧义处理与拒绝规则
Name-matched voices. Voices are looked up by human-friendly names ( search, ), and names collide — several account or library voices can share "George" or "Rachel". Before generating with, deleting, or adding a voice matched by name: count exact (case-insensitive) name matches. Exactly one → act on it without asking. Two or more → stop, list the candidates with a distinguishing field (category, description, or accent), and ask which one. Never silently pick. The same rule applies to history items matched by their source text via search before .
listVoicessearchVoiceLibrarylistHistorydeleteHistoryItemUnsupported operations. This connector does not clone voices from sample recordings (instant or professional voice cloning) and does not generate music. If asked, say the operation isn't supported here and stop — don't substitute (which invents a voice from a description, not from someone's recording) or (which makes sound effects, not music) and report success for an action you didn't perform.
<!-- END:disambiguation-and-refusals -->designVoicecreateSoundEffect名称匹配的语音:语音通过易读的名称进行查找(搜索、),但名称可能重复——多个账户或库中的语音可能共用“George”或“Rachel”这类名称。在使用名称匹配的语音进行生成、删除或添加操作前:统计完全匹配(不区分大小写)的名称数量。若仅有一个→直接操作无需询问。若有两个或更多→停止操作,列出候选语音并附上区分字段(类别、描述或口音),询问用户选择哪一个。绝不能静默选择。此规则同样适用于通过搜索源文本匹配的历史项目,在执行前也需遵循。
listVoicessearchVoiceLibrarylistHistorydeleteHistoryItem不支持的操作:此连接器不支持通过样本录音克隆语音(即时或专业语音克隆),也不支持生成音乐。若用户请求此类操作,请告知该操作不被支持并停止——切勿用(根据描述生成语音,而非基于他人录音)或(生成音效,而非音乐)替代,并误报操作成功。
<!-- END:disambiguation-and-refusals -->designVoicecreateSoundEffectAuth
认证方式
Every shape passes auth as one connection selector, not the secret — a string. Every connector accepts (Zapier-managed auth — routes through Zapier's auth, retries, and governance layer); some also accept one or more direct-token resolvers (naming and count vary per connector) — check this connector's own resolvers rather than assuming. The prefix is optional; a bare value goes to the first resolver that claims it — a UUID-shaped bare value always claims . Each script declares the connections it needs and the resolvers each accepts. The exact syntax for passing a connection (and how to see this connector's resolver list) differs by shape — see the reference you loaded above.
[<resolver>:]<value>zapier:<connection-id><resolver>:zapier:Checking what's already configured first? Don't dump environment values to do it — or prints the value along with the name, leaking a live credential into the transcript if one is set. Check names only () or test a known name directly ().
<!-- BEGIN:skill-auth-notes? operational behavior that differs by WHICH resolver is used — a safety gate only one path enforces, scopes/permissions that differ between resolvers, a billing/plan difference tied to the auth path, or a feature only available (or unavailable) on one resolver. Not for describing how to obtain or pass a credential — that's references/use-without-zapier.md's job. Leave this region empty (unfilled) if every resolver behaves identically. -->
<!-- END:skill-auth-notes -->
envenv | grep <name>env | cut -d= -f1 | grep -i <name>[ -n "$VAR_NAME" ]No connection yet? Pick one — and follow the reference's own flow to obtain it; never just ask the user for a connection id or token as if they already have one memorized:
| Load | |
|---|---|
| Pass the credential directly | |
| Route it through a Zapier connection | |
所有操作通过一个连接选择器传递认证信息,而非密钥——格式为的字符串。每个连接器都接受(由Zapier管理的认证——通过Zapier的认证、重试和治理层路由);部分连接器还支持一种或多种直接令牌解析器(名称和数量因连接器而异)——请查看此连接器自身的解析器列表,不要假设通用规则。前缀是可选的;无前缀的值会被第一个匹配的解析器处理——UUID格式的无前缀值默认使用解析器。每个脚本都会声明所需的连接及支持的解析器。传递连接的具体语法(以及查看此连接器解析器列表的方式)因运行环境而异——请查看你之前加载的参考文档。
[<resolver>:]<value>zapier:<connection-id><resolver>:zapier:想先检查已配置的内容?不要直接打印环境变量——或会同时打印变量名和值,若设置了有效凭证,会导致凭证泄露。仅检查变量名()或直接测试已知变量()。
<!-- BEGIN:skill-auth-notes? operational behavior that differs by WHICH resolver is used — a safety gate only one path enforces, scopes/permissions that differ between resolvers, a billing/plan difference tied to the auth path, or a feature only available (or unavailable) on one resolver. Not for describing how to obtain or pass a credential — that's references/use-without-zapier.md's job. Leave this region empty (unfilled) if every resolver behaves identically. -->
<!-- END:skill-auth-notes -->
envenv | grep <name>env | cut -d= -f1 | grep -i <name>[ -n "$VAR_NAME" ]还没有连接?请选择一种方式——并按照对应参考文档的流程获取连接;切勿直接向用户索要连接ID或令牌,假设他们已经记住这些信息:
| 加载文档 | |
|---|---|
| 直接传递凭证 | |
| 通过Zapier连接路由凭证 | |
Output format
输出格式
Every script returns a envelope:
{ data, meta }- — the script's result (the shape its
datadeclares; see the reference you loaded above for how to inspect a script's exact schema in your shape).outputSchema - — what validating
meta.outputDataValidationdid:data- — validated, nothing removed.
{ skipped: false, droppedPaths: null } - — validated, but those paths were stripped from
{ skipped: false, droppedPaths: [...], instruction }: fields the script returned from the API that thedatadoesn't declare. If you need them, re-run with output validation skipped.outputSchema - — validation was bypassed;
{ skipped: true }is the raw, unchecked script output.data
Reading dropped fields / . To receive the raw, unvalidated result, opt out of output validation (the exact syntax differs by shape — see the reference you loaded above). Input validation is never skipped.
skipOutputDataValidationTrimming the result / . To shrink a large result down to the fields you need, pass a jq expression that post-processes (again, exact syntax per shape). The jq runs against only, NOT the envelope, so write it rooted at (run the script's — or your shape's equivalent — to see its output schema). The transformed value replaces , is preserved, and the result is NOT re-validated against the output schema.
<!-- BEGIN:skill-references-table -->filterOutputDatadatadata{ data, meta }data--helpdatameta每个脚本都会返回格式的结果包:
{ data, meta }- ——脚本的执行结果(符合其
data定义的格式;请查看你加载的参考文档,了解如何在你的环境中查看脚本的精确输出 Schema)。outputSchema - ——对
meta.outputDataValidation的验证情况:data- ——已验证,无内容被移除。
{ skipped: false, droppedPaths: null } - ——已验证,但部分路径从
{ skipped: false, droppedPaths: [...], instruction }中被移除:脚本从API返回的字段未在data中声明。若需要这些字段,请跳过输出验证重新运行。outputSchema - ——已跳过验证;
{ skipped: true }为原始的、未经过检查的脚本输出。data
读取被移除的字段 / :若要接收原始的未验证结果,请选择跳过输出验证(具体语法因环境而异——请查看你加载的参考文档)。输入验证永远不会被跳过。
skipOutputDataValidation精简结果 / :若要将大结果精简为你需要的字段,请传入一个jq表达式对进行后处理(同样,具体语法因环境而异)。jq仅针对运行,而非结果包,因此表达式需以为根(运行脚本的命令——或你的环境中的等效命令——查看其输出 Schema)。转换后的值会替换,会被保留,且结果不会重新与输出 Schema 验证。
<!-- BEGIN:skill-references-table -->filterOutputDatadatadata{ data, meta }data--helpdatametaReferences
参考文档
Load the matching reference file before working in that area:
| Reference | Covers | Load it when |
|---|---|---|
| ElevenLabs API gotchas | Authentication, errors, model and voice resolution, generation limits, transcription, pagination, and history | Choosing IDs or models, preparing audio inputs, paginating results, or recovering from API errors |
在对应场景下工作前,请加载匹配的参考文档:
| 参考文档 | 涵盖内容 | 加载时机 |
|---|---|---|
| ElevenLabs API注意事项 | 认证、错误处理、模型与语音解析、生成限制、转录、分页和历史记录 | 选择ID或模型、准备音频输入、分页处理结果或从API错误中恢复时 |