Skip to main content
Glama
TheBananaStand

leo-elevenlabs-mcp

leo-elevenlabs-mcp

ElevenLabs のテキスト読み上げを、MCP 上の Leo プロバイダーパッケージ として提供します。

Leo の音声パイプラインはこれを自ら行うのではなく、プロバイダーを解決してそちらに問い合わせます。このサーバーはそのプロバイダーの 1 つで、ハブが再ビルドを必要とするパッケージではなく、実行時にインストールするパッケージとして利用できます。

回答する内容

leo_mcp::providers の tts ロール:

synthesize({ text, voice? }) -> { audio_base64 }
voices({})                   -> { voices: [{ id, name, detail? }] }

結果はテキストコンテンツブロック内の JSON として返されます。これはハブのブリッジが読み取る規約です。

Related MCP server: ElevenLabs MCP Server

設定

Leo からこのプロセスに環境変数として渡されます。設定キーと同一の名前で、そのまま小文字です。渡されるのは、記述子が entitlements.settings_read で宣言し、所有者が同意したキーのみで、設定テーブル全体は決して渡されません。

env

取得元

elevenlabs_api_key

設定 → パッケージ → ElevenLabs

elevenlabs_voice_id

読み上げに使用する音声

elevenlabs_model

オプション。デフォルトは eleven_multilingual_v2

何も設定されていない場合、ツールは設定名を挙げて isError を返します。これは意図的なものです。空の回答は実際の結果として Leo に届いてしまうからです。

実行方法

npm install
node index.js   # speaks MCP over stdio
npm test        # checks the response mapping, no network needed

なぜプレーンな JavaScript なのか

これはコミット SHA に固定された git ターボールとして配布され、npm はターボール URL に対してビルドステップを確実に実行しません。TypeScript のソースツリーは、インストールはできても、診断が最も困難な他人のマシンでは起動に失敗します。

レジストリエントリには 完全な 40 文字のコミット SHA を指定する必要があります。タグは同じくらい具体的に見えますが、実際はそうではありません。エントリのレビュー後に移動され得るからです。

ライセンス

MIT

Related MCP Connectors

Related MCP Servers