ElevenLabs

官方

官方 ElevenLabs MCP 伺服器

你可以用 Eleven Labs MCP 做什麼?

  • 從文字生成語音 — 使用 ElevenLabs 語音,透過 text_to_speech 將任何文字轉換為口語音頻。
  • 設計自訂語音 — 使用 design_voice 創建具有特定角色特質、口音或風格的新合成語音。
  • 從音頻克隆語音 — 上傳範例錄音,並使用 clone_voice 創建模仿該錄音的語音。
  • 將音頻轉錄為文字 — 使用 transcribe_speech 將語音錄音轉換為書面逐字稿,並包含說話者辨識。
  • 應用語音轉換 — 使用 voice_conversion 將一個語音錄音轉換為聽起來像不同的說話者或角色。
  • 生成音效 — 透過 generate_sound_effects 從文字描述(例如天氣或環境場景)產生音頻音景。

文件

export

Discord Community Twitter PyPI Tests

官方的 ElevenLabs 模型上下文協定 (MCP) 伺服器,可與強大的文字轉語音和音訊處理 API 互動。此伺服器允許像 Claude DesktopCursorWindsurfOpenAI Agents 等 MCP 用戶端生成語音、複製聲音、轉錄音訊等。

Claude Desktop 快速入門

  1. ElevenLabs 取得您的 API 金鑰。提供免費層級,每月 10k 點數。
  2. 安裝 uv(Python 套件管理器),使用 curl -LsSf https://astral.sh/uv/install.sh | sh 安裝,或參閱 uv 儲存庫 以了解其他安裝方法。
  3. 前往 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 等其他用戶端,請執行:

  1. pip install elevenlabs-mcp
  2. python -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 環境變數支援三種模式:

  1. files(預設):將檔案儲存到磁碟並傳回檔案路徑

    "env": {
      "ELEVENLABS_API_KEY": "your-api-key",
      "ELEVENLABS_MCP_OUTPUT_MODE": "files"
    }
    
  2. resources:將檔案作為 MCP 資源傳回;二進位資料以 base64 編碼,文字以 UTF-8 文字傳回

    "env": {
      "ELEVENLABS_API_KEY": "your-api-key",
      "ELEVENLABS_MCP_OUTPUT_MODE": "resources"
    }
    
  3. both:將檔案儲存到磁碟並作為 MCP 資源傳回

    "env": {
      "ELEVENLABS_API_KEY": "your-api-key",
      "ELEVENLABS_MCP_OUTPUT_MODE": "both"
    }
    

資源模式優點:

  • 檔案以 base64 編碼資料直接在 MCP 回應中傳回
  • 無需磁碟 I/O - 適用於容器化或無伺服器環境
  • MCP 用戶端無需檔案系統存取權即可立即存取檔案內容
  • both 模式下,稍後可以使用 elevenlabs://filename URI 模式擷取資源

使用案例:

  • files:傳統的基於檔案的工作流程、本地開發
  • resources:雲端環境、沒有檔案系統存取權的 MCP 用戶端
  • both:最大的靈活性、快取和資源共享場景

資料駐留金鑰

您可以使用 ELEVENLABS_API_RESIDENCY 環境變數指定資料駐留區域。預設為 "us"

注意: 資料駐留僅為企業版功能。詳情請參閱文件

貢獻

如果您想貢獻或從原始碼執行:

  1. 複製儲存庫:
git clone https://github.com/elevenlabs/elevenlabs-mcp
cd elevenlabs-mcp
  1. 建立虛擬環境並使用 uv 安裝相依性:
uv venv
source .venv/bin/activate
uv pip install -e ".[dev]"
  1. .env.example 複製到 .env 並加入您的 ElevenLabs API 金鑰:
cp .env.example .env
# Edit .env and add your API key
  1. 執行測試以確保一切正常:
./scripts/test.sh
# Or with options
./scripts/test.sh --verbose --fail-fast
  1. 在 Claude Desktop 中安裝伺服器:mcp install elevenlabs_mcp/server.py

  2. 使用 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")。這可確保參照到正確的可執行檔。