ElevenLabs

官方

官方 ElevenLabs MCP 伺服器

你可以用 ElevenLabs MCP 做什麼?

  • 文字轉語音生成 — 透過 text_to_speech 從文字生成自然語音,可選擇聲音、風格和語言。
  • 語音克隆與管理 — 從樣本建立自訂語音克隆,列出可用語音,並使用 get_voicescreate_voice 管理您的語音庫。
  • 語音轉文字轉錄 — 使用 speech_to_text 將音訊檔案轉換為文字,並透過說話人分離來識別不同的說話者。
  • 音訊隔離與轉換 — 使用 isolate_audiospeech_to_speech 將人聲與背景噪音分離,或將語音轉換為不同角色的聲音。
  • 音效與音樂生成 — 使用 sound_effectstext_to_sound_effects 從文字描述生成自訂音景或背景音樂。

文件

export

Discord Community Twitter PyPI Tests

官方的 ElevenLabs Model Context Protocol (MCP) 伺服器,可與強大的文字轉語音和音訊處理 API 互動。此伺服器允許如 Claude DesktopCursorWindsurfOpenAI Agents 等 MCP 用戶端產生語音、複製聲音、轉錄音訊等功能。

使用 Claude Desktop 快速開始

  1. ElevenLabs 取得您的 API 金鑰。免費方案每月提供 10,000 點額度。
  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)。此目錄也是輸入檔案的安全性邊界:任何傳給讀取本機檔案工具(例如 speech_to_textisolate_audiospeech_to_speechvideo_to_musicupload_music_for_inpainting)的路徑,無論是絕對路徑還是相對路徑,都必須解析到此目錄內。目錄外的路徑——即使是絕對路徑且先前曾被接受——都會被拒絕。請將此設定為包含您需要讀取或寫入之所有內容的目錄。
  • 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")。這可確保參考到正確的可執行檔。