集成ElevenLabs的文本转语音API。
speech-processing
303 查看 · 2026-07-07 更新
简介
集成ElevenLabs的文本转语音API。
简介
集成ElevenLabs的文本转语音API。
ElevenLabs MCP 服务器
一个与 ElevenLabs 文本转语音 API 集成的 Model Context Protocol (MCP) 服务器,包含服务器组件和一个示例基于 Web 的 MCP 客户端(SvelteKit),用于管理语音生成任务。
特性
- 使用 ElevenLabs API 从文本生成音频
- 支持多种声音和脚本部分
- SQLite 数据库用于持久化历史存储
- 示例 SvelteKit MCP 客户端:
- 简单的文本转语音转换
- 多部分脚本管理
- 语音历史记录跟踪和播放
- 音频文件下载
安装
通过 Smithery 安装
要通过 Smithery 自动为 Claude Desktop 安装 ElevenLabs MCP 服务器:
npx -y @smithery/cli install elevenlabs-mcp-server --client claude
使用 uvx(推荐)
使用 uvx 时,无需特定安装。
将以下配置添加到您的 MCP 设置文件中(例如,Claude Desktop 的 cline_mcp_settings.json):
{ "mcpServers": { "elevenlabs": { "command": "uvx", "args": ["elevenlabs-mcp-server"], "env": { "ELEVENLABS_API_KEY": "your-api-key", "ELEVENLABS_VOICE_ID": "your-voice-id", "ELEVENLABS_MODEL_ID": "eleven_flash_v2", "ELEVENLABS_STABILITY": "0.5", "ELEVENLABS_SIMILARITY_BOOST": "0.75", "ELEVENLABS_STYLE": "0.1", "ELEVENLABS_OUTPUT_DIR": "output" } } } }
开发安装
- 克隆此仓库
- 安装依赖项:
uv venv - 将
.env.example复制为.env并填写您的 ElevenLabs 凭证
{ "mcpServers": { "elevenlabs": { "command": "uv", "args": [ "--directory", "path/to/elevenlabs-mcp-server", "run", "elevenlabs-mcp-server" ], "env": { "ELEVENLABS_API_KEY": "your-api-key", "ELEVENLABS_VOICE_ID": "your-voice-id", "ELEVENLABS_MODEL_ID": "eleven_flash_v2", "ELEVENLABS_STABILITY": "0.5", "ELEVENLABS_SIMILARITY_BOOST": "0.75", "ELEVENLABS_STYLE": "0.1", "ELEVENLABS_OUTPUT_DIR": "output" } } } }
使用示例 SvelteKit MCP 客户端
- 导航到 Web UI 目录:
cd clients/web-ui - 安装依赖项:
pnpm install - 将
.env.example复制为.env并按需配置 - 运行 Web UI:
pnpm dev - 在浏览器中打开 http://localhost:5174
可用工具
generate_audio_simple: 使用默认的声音设置从纯文本生成音频generate_audio_script: 从具有多个声音和演员的结构化脚本生成音频delete_job: 按 ID 删除作业get_audio_file: 按 ID 获取音频文件list_voices: 列出所有可用的声音get_voiceover_history: 获取配音作业历史。可选地指定作业 ID 以获取特定作业的历史记录。
可用资源
voiceover://history/{job_id}: 按 ID 获取音频文件voiceover://voices: 列出所有可用的声音
许可证
该项目根据 MIT 许可证授权 - 有关详细信息,请参阅 LICENSE 文件。
服务配置
[{'mcpServers': {'elevenlabs': {'args': ['elevenlabs-mcp-server'], 'command': 'uvx', 'env': {'ELEVENLABS_API_KEY': 'your-api-key', 'ELEVENLABS_MODEL_ID': 'eleven_flash_v2', 'ELEVENLABS_OUTPUT_DIR': 'output', 'ELEVENLABS_SIMILARITY_BOOST': '0.75', 'ELEVENLABS_STABILITY': '0.5', 'ELEVENLABS_STYLE': '0.1', 'ELEVENLABS_VOICE_ID': 'your-voice-id'}}}}, {'mcpServers': {'elevenlabs': {'args': ['--directory', 'path/to/elevenlabs-mcp-server', 'run', 'elevenlabs-mcp-server'], 'command': 'uv', 'env': {'ELEVENLABS_API_KEY': 'your-api-key', 'ELEVENLABS_MODEL_ID': 'eleven_flash_v2', 'ELEVENLABS_OUTPUT_DIR': 'output', 'ELEVENLABS_SIMILARITY_BOOST': '0.75', 'ELEVENLABS_STABILITY': '0.5', 'ELEVENLABS_STYLE': '0.1', 'ELEVENLABS_VOICE_ID': 'your-voice-id'}}}}]