ElevenLabs
官方官方 ElevenLabs MCP 伺服器
你可以用 Eleven Labs MCP 做什麼?
- 從文字生成語音 — 使用 ElevenLabs 語音,透過
text_to_speech將任何文字轉換為口語音頻。 - 設計自訂語音 — 使用
design_voice創建具有特定角色特質、口音或風格的新合成語音。 - 從音頻克隆語音 — 上傳範例錄音,並使用
clone_voice創建模仿該錄音的語音。 - 將音頻轉錄為文字 — 使用
transcribe_speech將語音錄音轉換為書面逐字稿,並包含說話者辨識。 - 應用語音轉換 — 使用
voice_conversion將一個語音錄音轉換為聽起來像不同的說話者或角色。 - 生成音效 — 透過
generate_sound_effects從文字描述(例如天氣或環境場景)產生音頻音景。
文件
官方的 ElevenLabs 模型上下文協定 (MCP) 伺服器,可與強大的文字轉語音和音訊處理 API 互動。此伺服器允許像 Claude Desktop、Cursor、Windsurf、OpenAI Agents 等 MCP 用戶端生成語音、複製聲音、轉錄音訊等。
Claude Desktop 快速入門
- 從 ElevenLabs 取得您的 API 金鑰。提供免費層級,每月 10k 點數。
- 安裝
uv(Python 套件管理器),使用curl -LsSf https://astral.sh/uv/install.sh | sh安裝,或參閱uv儲存庫 以了解其他安裝方法。 - 前往 Claude > 設定 > 開發者 > 編輯設定 > claude_desktop_config.json,加入以下內容:
{
"mcpServers": {
"ElevenLabs": {
"command": "uvx",
"args": ["elevenlabs-mcp"],
"env": {
"ELEVENLABS_API_KEY": "<insert-your-api-key-here>"
}
}
}
}
如果您使用 Windows,必須在 Claude Desktop 中啟用「開發者模式」才能使用 MCP 伺服器。點擊左上角漢堡選單中的「說明」,然後選取「啟用開發者模式」。
其他 MCP 用戶端
對於 Cursor 和 Windsurf 等其他用戶端,請執行:
pip install elevenlabs-mcppython -m elevenlabs_mcp --api-key={{PUT_YOUR_API_KEY_HERE}} --print以取得設定。將其貼到 MCP 用戶端指定的適當設定目錄中。
這樣就完成了。您的 MCP 用戶端現在可以透過以下工具與 ElevenLabs 互動:
使用範例
⚠️ 警告:使用這些工具需要 ElevenLabs 點數。
嘗試詢問 Claude:
- 「建立一個說話像黑色電影偵探的 AI 代理,並能回答關於經典電影的問題」
- 「為一個睿智的古代龍角色生成三種聲音變體,然後我會選擇我最喜歡的聲音加入我的聲音庫」
- 「將我的這段錄音轉換成聽起來像中世紀騎士的聲音」
- 「創建一個叢林深處雷暴的音景,包含動物對天氣的反應」
- 「將這段語音轉成文字,識別不同的說話者,然後用每個人的獨特聲音將其轉換回來」
可選功能
檔案輸出設定
您可以在 claude_desktop_config.json 中使用以下環境變數來設定 MCP 伺服器如何處理檔案輸出:
ELEVENLABS_MCP_BASE_PATH:指定使用相對路徑進行檔案操作的基礎路徑(預設:~/Desktop)ELEVENLABS_MCP_OUTPUT_MODE:控制生成檔案的傳回方式(預設:files)
輸出模式
ELEVENLABS_MCP_OUTPUT_MODE 環境變數支援三種模式:
-
files(預設):將檔案儲存到磁碟並傳回檔案路徑"env": { "ELEVENLABS_API_KEY": "your-api-key", "ELEVENLABS_MCP_OUTPUT_MODE": "files" } -
resources:將檔案作為 MCP 資源傳回;二進位資料以 base64 編碼,文字以 UTF-8 文字傳回"env": { "ELEVENLABS_API_KEY": "your-api-key", "ELEVENLABS_MCP_OUTPUT_MODE": "resources" } -
both:將檔案儲存到磁碟並作為 MCP 資源傳回"env": { "ELEVENLABS_API_KEY": "your-api-key", "ELEVENLABS_MCP_OUTPUT_MODE": "both" }
資源模式優點:
- 檔案以 base64 編碼資料直接在 MCP 回應中傳回
- 無需磁碟 I/O - 適用於容器化或無伺服器環境
- MCP 用戶端無需檔案系統存取權即可立即存取檔案內容
- 在
both模式下,稍後可以使用elevenlabs://filenameURI 模式擷取資源
使用案例:
files:傳統的基於檔案的工作流程、本地開發resources:雲端環境、沒有檔案系統存取權的 MCP 用戶端both:最大的靈活性、快取和資源共享場景
資料駐留金鑰
您可以使用 ELEVENLABS_API_RESIDENCY 環境變數指定資料駐留區域。預設為 "us"。
注意: 資料駐留僅為企業版功能。詳情請參閱文件。
貢獻
如果您想貢獻或從原始碼執行:
- 複製儲存庫:
git clone https://github.com/elevenlabs/elevenlabs-mcp
cd elevenlabs-mcp
- 建立虛擬環境並使用 uv 安裝相依性:
uv venv
source .venv/bin/activate
uv pip install -e ".[dev]"
- 將
.env.example複製到.env並加入您的 ElevenLabs API 金鑰:
cp .env.example .env
# Edit .env and add your API key
- 執行測試以確保一切正常:
./scripts/test.sh
# Or with options
./scripts/test.sh --verbose --fail-fast
-
在 Claude Desktop 中安裝伺服器:
mcp install elevenlabs_mcp/server.py -
使用 MCP Inspector 在本機進行除錯和測試:
mcp dev elevenlabs_mcp/server.py
疑難排解
使用 Claude Desktop 執行時的記錄檔位於:
- Windows:
%APPDATA%\Claude\logs\mcp-server-elevenlabs.log - macOS:
~/Library/Logs/Claude/mcp-server-elevenlabs.log
使用特定工具時發生逾時
某些 ElevenLabs API 操作(例如聲音設計和音訊隔離)可能需要很長時間才能完成。在開發模式下使用 MCP inspector 時,即使工具已完成其預期任務,您仍可能會收到逾時錯誤。
使用像 Claude 這樣的用戶端時,不應發生此情況。
MCP ElevenLabs: spawn uvx ENOENT
如果您遇到「MCP ElevenLabs: spawn uvx ENOENT」錯誤,請在終端機中執行以下命令來確認其絕對路徑:
which uvx
取得絕對路徑後(例如 /usr/local/bin/uvx),請更新您的設定以使用該路徑(例如 "command": "/usr/local/bin/uvx")。這可確保參照到正確的可執行檔。