文本转语音生成服务

ElevenLabs MCP Server 是一个全面的模型上下文协议(MCP)服务器,用于集成 ElevenLabs API,直接从 Claude Desktop 或任何 MCP 兼容客户端生成专业的文本转语音、音乐和音效。

  • by Schwarz-Mike
  • TypeScript
  • 本地部署
  • 1 星标
  • 更新于
在 GitHub 查看 Schwarz-Mike/mcp-elevenlabs-api

使用说明

ElevenLabs MCP服务器

用于ElevenLabs API集成的综合模型上下文协议(MCP)服务器。直接从Claude Desktop或任何兼容MCP的客户端生成专业的文本到语音、音乐和音效。

目标受众: 治疗师、教练和内容创作者,用于制作冥想、治疗性音频和专业配音。

特性

  • 文本转语音(TTS) -使用多种模型和语音设置生成自然语音
  • V3对话 -带有情感音频标签的多语音对话
  • 音乐发生器 -根据文本提示创建背景音乐
  • 音效 -生成电影音效
  • 语音管理 -浏览和过滤可用语音
  • 治疗预设 -冥想、催眠等的预配置设置

可用工具

工具 说明
elevenlabs_list_voices 列出所有可用的声音并进行过滤(语言、性别、类别)
elevenlabs_get_voice 获取特定语音的详细信息
elevenlabs_tts 通过全语音控制从文本生成语音
elevenlabs_tts_stream 通过流媒体生成语音(延迟更低)
elevenlabs_dialogue 生成具有多个语音和音频标签的对话(V3)
elevenlabs_music 从文本提示生成音乐
elevenlabs_stream_music 通过流媒体生成音乐
elevenlabs_sound_effect 根据描述生成音效

安装

先决条件

设置

  1. 克隆存储库:
git clone https://github.com/yourusername/mcp-elevenlabs-api.git
cd mcp-elevenlabs-api
  1. 安装依赖项:
npm install
  1. 构建项目:
npm run build

MCP配置

克劳德桌面(Windows)

添加到您的Claude Desktop配置文件: %APPDATA%\Claude\claude_desktop_config.json

{
  "mcpServers": {
    "elevenlabs": {
      "command": "node",
      "args": ["C:\\path\\to\\mcp-elevenlabs-api\\build\\index.js"],
      "env": {
        "ELEVENLABS_API_KEY": "sk_your_api_key_here",
        "OUTPUT_DIR": "C:\\Users\\YourName\\ElevenLabs\\Output"
      }
    }
  }
}

克劳德桌面(macOS)

添加到您的Claude Desktop配置文件: ~/Library/Application Support/Claude/claude_desktop_config.json

{
  "mcpServers": {
    "elevenlabs": {
      "command": "node",
      "args": ["/path/to/mcp-elevenlabs-api/build/index.js"],
      "env": {
        "ELEVENLABS_API_KEY": "sk_your_api_key_here",
        "OUTPUT_DIR": "/Users/yourname/ElevenLabs/Output"
      }
    }
  }
}

环境变量

变量 必填 默认 描述
ELEVENLABS_API_KEY 是 - 您的ElevenLabs API密钥
OUTPUT_DIR 没有 . 生成的音频文件目录
MAX_RETRIES 没有 3 最大API重试次数
RETRY_DELAY_MS 没有 1000 指数退避的基本延迟
LOG_LEVEL 没有 info 日志记录级别(调试、信息、警告、错误)

使用示例

生成TTS

Use elevenlabs_tts to say "Welcome to this meditation session" with the meditation_calm preset

列出德语声音

Use elevenlabs_list_voices to find German female voices

生成背景音乐

Use elevenlabs_music to generate peaceful ambient meditation music, 2 minutes, instrumental only

生成音效

Use elevenlabs_sound_effect to create a Tibetan singing bowl sound, 10 seconds

V3带音频标签的对话

Use elevenlabs_dialogue with this text:
[softly, warmly] Welcome to this moment of peace.
[whispers] Close your eyes and relax.
[calmly] Take a deep breath in... and slowly release.

治疗预设

语音预设

预设 描述
meditation_calm 高稳定性,平稳一致的交付
meditation_warm 温暖、滋养的色调
hypnosis_deep 非常稳定、深刻和权威
energetic_motivation 动态、激励性交付
children_storytelling 富有表现力,引人入胜的故事

音乐预设

预设 描述 持续时间
meditation_ambient 软合成器垫,60 BPM 5分钟
sleep_therapy 超慢环境无人机 5分钟
yoga_flow 印度乐器,80 BPM 4分钟
nature_sounds 森林氛围,无乐器 5分钟
therapeutic_background 轻柔的弦乐钢琴 3分钟

V3音频标签

在文本中使用这些标签来表达情感(V3模型):

情绪: 快乐、悲伤、愤怒、冷静、兴奋、自信、担心

说话风格: 窃窃私语、大喊大叫、大笑、叹气、哭泣

色调修改器: 温柔、大声、热情、冷酷、缓慢、迅速

特别: 呼吸、停顿、强调

例子:

[softly, warmly] Welcome to this meditation.
[whispers] Let go of all tension.
[sighs] Feel the peace within.

TTS模型

型号 ID 最适合
11 V3 eleven_v3 音频标签、情感表达
多语言V2 eleven_multilingual_v2 高品质,多种语言
Turbo V2.5 eleven_turbo_v2_5 生产速度快,质量好
Flash V2.5 eleven_flash_v2_5 最快、实时的应用程序

输出格式

  • mp3_44100_128 (默认)-高品质MP3
  • mp3_44100_192 -最高质量的MP3
  • mp3_44100_96 -优质MP3
  • mp3_44100_64 -标准质量MP3
  • pcm_44100 -未压缩PCM(用于进一步处理)

发展

以开发模式运行

npm run dev

使用MCP检查员进行测试

npm run inspect

项目结构

mcp-elevenlabs-api/
├── src/
│   ├── index.ts          # Main entry point
│   ├── api/
│   │   └── client.ts     # ElevenLabs API client
│   ├── config/
│   │   └── constants.ts  # API constants and presets
│   ├── tools/
│   │   ├── voices.ts     # Voice management tools
│   │   ├── tts.ts        # Text-to-speech tools
│   │   ├── dialogue.ts   # V3 dialogue tool
│   │   ├── music.ts      # Music generation tools
│   │   └── sound-effects.ts # Sound effects tool
│   └── types/
│       └── index.ts      # TypeScript types
├── build/                # Compiled JavaScript
├── package.json
└── tsconfig.json

故障排除

“ELEVENLABS_API_KEY环境变量是必需的”

确保您的API密钥已设置在MCP配置中 env 部分。

“未经授权-API密钥无效”

请验证您的API密钥是否正确并且尚未过期。

“价格有限”

服务器会自动以指数回退方式重试。如果您经常遇到费率限制,请考虑升级ElevenLabs计划。

文件未保存

确保 OUTPUT_DIR 存在并具有写入权限。如果它不存在,服务器将自动创建它。

许可证

GPL-3.0

链接