语音合成服务器

一个生产就绪的语音合成服务器,支持通用API密钥、V3音频功能和多种输出模式。

  • by bmorphism
  • Python
  • 本地部署
  • 1 星标
  • 更新于
在 GitHub 查看 bmorphism/elevenlabs-mcp-enhanced

使用说明

ElevenLabs MCP增强型服务器

用于ElevenLabs的可生产的模型上下文协议(MCP)服务器,具有通用的API密钥支持、V3功能和干净的输出模式。

✨ 特性

  • 通用API密钥支持:适用于两者 xi- 和 sk- 格式化API密钥
  • V3音频功能:完全支持音频标签、多人对话和情感合成
  • 清洁输出模式:专业,默认情况下输出最小(调试模式可用)
  • 综合测试:涵盖所有功能的69个测试用例
  • 生产就绪:企业级错误处理和可靠性

🚀 快速开始

安装

# Clone the repository
git clone https://github.com/bmorphism/elevenlabs-mcp-enhanced.git
cd elevenlabs-mcp-enhanced

# Install dependencies
pip install elevenlabs mcp fastmcp httpx python-dotenv

配置

  1. 设置API密钥:
export ELEVENLABS_API_KEY="your-api-key-here"
  1. 添加到Claude MCP:
claude mcp add-json elevenlabs '{"type": "stdio", "command": "python3", "args": ["path/to/server.py"], "env": {"ELEVENLABS_API_KEY": "your-key"}}' --scope user

📝 用法

基本文本转语音

from server import text_to_speech

result = text_to_speech("Hello world")
# Output: Audio saved: /path/to/file.mp3 (12345 bytes)

V3音频标签

result = text_to_speech("[excited] Amazing! [whispers] Secret message [normal] Back to normal")

多人对话

dialogue = """
[alice] Hello there!
[bob:excited] Hi Alice, great to see you!
[alice:whispers] I have something to tell you...
"""
result = create_dialogue(dialogue)

🎭 V3功能

支持的音频标签

  • [excited] -令人兴奋的交付
  • [whispers] -窃窃私语
  • [angry] -愤怒的语气
  • [sad] -悲惨的交货
  • [laughs] -笑声
  • [sarcastic] -讽刺的语气
  • [confident] -自信交付
  • [normal] -恢复正常

多扬声器支持

  • 指定发言人: [alice], [bob], [narrator]
  • 有感情的演讲者: [alice:excited], [bob:sad]
  • 字符变化: [character_1], [character_2]

⚙️ 配置选项

环境变量

  • ELEVENLABS_API_KEY -您的ElevenLabs API密钥(必需)
  • ELEVENLABS_DEBUG -设置为“true”以获得带有表情符号的详细输出
  • ELEVENLABS_MCP_BASE_PATH -输出文件的自定义基本路径
  • ELEVENLABS_DEFAULT_VOICE_ID -要使用的默认语音ID

输出模式

正常模式(默认):

Audio saved: /path/to/file.mp3 (37661 bytes)

调试模式:

✅ PATCHED TTS Success!
📁 File: /path/to/file.mp3
📊 Size: 37,661 bytes
🔑 API Key: sk_58fe7... (validated)
🎭 Model: eleven_multilingual_v2

🧪 测试

运行综合测试套件:

python3 tests.py

测试结果:

  • 7个类别共69项测试
  • 100%通过率验证
  • 平均响应时间:~1.4秒

📊 API兼容性

此增强型服务器修复了官方ElevenLabs MCP服务器中的硬编码API密钥格式限制。它接受:

  • xi- 格式键(原始格式)
  • sk- 格式键(新格式)
  • 自定义格式键(长度/图案验证)

🔧 可用型号

  • eleven_multilingual_v2 -高质量,29种语言(默认)
  • eleven_turbo_v2_5 -快速生成
  • eleven_flash_v2_5 -超高速发电

📁 项目结构

elevenlabs-mcp-enhanced/
├── server.py                    # Main patched server with authentication fix
├── unified_elevenlabs_mcp_server.py  # Unified server with V3 enhancements
├── tests.py                     # Comprehensive test suite (69 tests)
├── requirements.txt             # Python dependencies
└── README.md                    # This file

🤝 贡献

欢迎投稿!请随时提交拉取请求。

📄 许可证

MIT许可证-有关详细信息,请参阅许可证文件

🙏 致谢

  • 基于ElevenLabs官方MCP服务器构建
  • 增强了V3功能和通用API密钥支持
  • 经过69个测试用例的全面测试

🐛 故障排除

API关键问题

服务器接受两者 xi- 和 sk- 格式键。如果您遇到身份验证错误:

  1. 在验证您的API密钥https://elevenlabs.io/app/settings/api-keys
  2. 确保环境变量设置正确
  3. 尝试设置 ELEVENLABS_DEBUG=true 有关详细的错误消息

MCP连接问题

# Check server status
claude mcp list

# View configuration
claude mcp get elevenlabs

# Remove and re-add if needed
claude mcp remove elevenlabs -s user

输出问题

  • 对于更清洁的输出:离开 ELEVENLABS_DEBUG 未设置或设置为“false”
  • 对于详细输出:Set ELEVENLABS_DEBUG=true

版本: 1.0.0
作者:@b形态
API密钥兼容性: xi- 和 sk- 格式
测试覆盖率:100%(69/69次测试通过)