ElevenLabs
公式公式のElevenLabs MCPサーバー
ElevenLabs MCPで何ができますか?
- 音声合成生成 — テキストから自然な音声をリクエスト可能。
text_to_speechを使用して、声、スタイル、言語のオプションを指定できます。 - 音声クローン作成と管理 — サンプルからカスタム音声クローンを作成し、利用可能な音声を一覧表示し、
get_voicesとcreate_voiceで音声ライブラリを管理できます。 - 音声からテキストへの文字起こし — オーディオファイルをテキストに変換し、
speech_to_textを使用して話者分離(ダイアライゼーション)により異なる話者を識別できます。 - オーディオ分離と変換 — バックグラウンドノイズからボーカルを分離したり、
isolate_audioとspeech_to_speechを使用して音声を別のキャラクターのように変換できます。 - 効果音と音楽生成 —
sound_effectsとtext_to_sound_effectsを使用して、テキストの説明からカスタムサウンドスケープや背景音楽を生成できます。
ドキュメント
公式のElevenLabs Model Context Protocol (MCP) サーバー。強力なテキスト読み上げおよび音声処理APIとの連携を可能にします。このサーバーにより、Claude Desktop、Cursor、Windsurf、OpenAI Agents などのMCPクライアントは、音声の生成、音声のクローン作成、オーディオの文字起こしなどができるようになります。
Claude Desktopでのクイックスタート
- ElevenLabs からAPIキーを取得します。月10,000クレジットの無料枠があります。
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を使用している場合、MCPサーバーを使用するにはClaude Desktopで「開発者モード」を有効にする必要があります。左上のハンバーガーメニューの「ヘルプ」をクリックし、「開発者モードを有効にする」を選択してください。
他のMCPクライアント
CursorやWindsurfなどの他のクライアントの場合、以下を実行します:
pip install elevenlabs-mcppython -m elevenlabs_mcp --api-key={{PUT_YOUR_API_KEY_HERE}} --printで設定を取得します。MCPクライアントが指定する適切な設定ディレクトリに貼り付けます。
これで完了です。MCPクライアントは、以下のツールを通じてElevenLabsとやり取りできるようになります:
使用例
⚠️ 警告:これらのツールを使用するにはElevenLabsのクレジットが必要です。
Claudeに試しに依頼してみてください:
- 「フィルム・ノワールの探偵のように話し、クラシック映画に関する質問に答えられるAIエージェントを作成して」
- 「賢明な古代のドラゴンキャラクターのための3つの音声バリエーションを生成して、その後お気に入りの音声を選んでボイスライブラリに追加します」
- 「この私の声の録音を、中世の騎士のように聞こえるように変換して」
- 「動物たちが天候に反応する密林での雷雨のサウンドスケープを作成して」
- 「このスピーチをテキストに変換し、異なる話者を特定し、その後各人に固有の声を使って音声に戻して」
オプション機能
ファイル出力設定
claude_desktop_config.json で以下の環境変数を使用して、MCPサーバーがファイル出力を処理する方法を設定できます:
ELEVENLABS_MCP_BASE_PATH: ファイル操作のベースパスを指定します(デフォルト:~/Desktop)。このディレクトリは入力ファイルのセキュリティ境界でもあります:ローカルファイルを読み取るツール(例:speech_to_text、isolate_audio、speech_to_speech、video_to_music、upload_music_for_inpainting)に渡されるパスは、絶対パスか相対パスかに関わらず、このディレクトリ内に解決される必要があります。外部のパス(絶対パスで以前は受け入れられていた場合でも)は拒否されます。読み取りまたは書き込みに必要なすべてを含むディレクトリに設定してください。ELEVENLABS_MCP_OUTPUT_MODE: 生成されたファイルの返却方法を制御します(デフォルト:files)
出力モード
ELEVENLABS_MCP_OUTPUT_MODE 環境変数は3つのモードをサポートしています:
-
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インスペクターを使用している場合、ツールが意図したタスクを完了したにもかかわらず、タイムアウトエラーが発生することがあります。
これはClaudeのようなクライアントを使用している場合は発生しないはずです。
MCP ElevenLabs: spawn uvx ENOENT
「MCP ElevenLabs: spawn uvx ENOENT」というエラーが発生した場合、ターミナルで次のコマンドを実行して絶対パスを確認してください:
which uvx
絶対パスを取得したら(例:/usr/local/bin/uvx)、そのパスを使用するように設定を更新します(例:"command": "/usr/local/bin/uvx")。これにより、正しい実行ファイルが参照されるようになります。