Skip to main content
Glama
leo-elevenlabs-mcp

leo-elevenlabs-mcp

leo-elevenlabs-mcp

ElevenLabs 文本转语音,作为一个 Leo provider 包,通过 MCP 提供。

Leo 的语音管线本身并不做这件事——它会解析出一个 provider,然后向它请求。这个服务器就是这样一个 provider,可以作为 hub 在运行时安装的包来访问,而不是需要 hub 为它重新构建的那种包。

它响应什么

leo_mcp::providers 中的 tts 角色:

synthesize({ text, voice? }) -> { audio_base64 }
voices({})                   -> { voices: [{ id, name, detail? }] }

结果以 JSON 形式放在文本内容块中返回,这是 hub 的桥接器读取时所遵循的约定。

Related MCP server: ElevenLabs MCP Server

配置

Leo 通过环境变量将这些配置传递给此进程,环境变量使用其设置键,原样且小写——只有描述符在 entitlements.settings_read 中声明且所有者同意的键,绝不会是整个设置表。

环境变量

来源

elevenlabs_api_key

设置 → 包 → ElevenLabs

elevenlabs_voice_id

用于发声的音色

elevenlabs_model

可选;默认为 eleven_multilingual_v2

未配置任何内容时,工具会返回 isError 并指明该设置。这是有意为之:空答案会作为真实结果到达 Leo。

运行它

npm install
node index.js   # speaks MCP over stdio
npm test        # checks the response mapping, no network needed

为什么使用纯 JavaScript

本项目以 git tarball 形式发布,并固定到某个 commit SHA;npm 对 tarball URL 并不能可靠地执行构建步骤。如果是 TypeScript 源码树,安装后会在别人的机器上启动失败,而这种情况最难诊断。

注册表条目必须指定一个完整的 40 字符 commit SHA。标签看起来同样具体,但实际上并非如此——标签在条目被审核后是可以移动的。

许可证

MIT

Related MCP Connectors

Related MCP Servers