ElevenLabs
公式公式のElevenLabs MCPサーバー
ElevenLabs MCPで何ができますか?
- テキスト読み上げ — アシスタントに、ElevenLabsの任意の音声を使用してテキストから音声を生成させます。
- 音声のクローン作成とデザイン — サンプルからのクローン作成や、新しい音声のデザインによってカスタム音声を作成します。
- 音声から音声への変換 — 既存の録音を、
speech_to_speechを使用して別の音声やスタイルに変換します。 - 音声文字起こし —
speech_to_textを使用して、音声をテキストに変換し、異なる話者を識別します。 - 効果音と音楽 — テキストの説明から、サウンドスケープ、効果音、または音楽トラックを生成します。
- 音声分離 —
isolate_audioを使用して、ボーカルを背景ノイズから分離したり、特定のオーディオ要素を分離したりします。
ドキュメント
[!WARNING] このローカルMCPサーバーは非推奨であり、ElevenLabsホスト型MCPサーバーが推奨されます。
ホスト型サーバーは
https://api.elevenlabs.io/v1/mcpで利用でき、ローカルにインストールや実行するものはありません。OAuthで認証するため、APIキーをクライアントにコピーする必要はありません。ホスト型MCPサーバーのドキュメントを参照して、Claude、Cursor、またはその他のMCPクライアントから接続してください。このリポジトリはもはや積極的にメンテナンスされていません。
公式の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 > Settings > Developer > Edit Config > claude_desktop_config.jsonに移動し、以下を含めます:
{
"mcpServers": {
"ElevenLabs": {
"command": "uvx",
"args": ["elevenlabs-mcp"],
"env": {
"ELEVENLABS_API_KEY": "<insert-your-api-key-here>"
}
}
}
}
Windowsを使用している場合、MCPサーバーを使用するにはClaude Desktopで「開発者モード」を有効にする必要があります。左上のハンバーガーメニューで「Help」をクリックし、「Enable Developer Mode」を選択してください。
その他の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")。これにより、正しい実行可能ファイルが参照されるようになります。