mcpField
V
voicegen-port

voicegen-port

ローカル
github.com/CloudCorpRecordsメディア・デザイン02 週間前に更新

voicegen-port について

voicegen-portは、ElevenLabsの音声機能を利用するCLI兼MCPサーバーです。音声生成、文字起こし、音声の分離、効果音生成、ボイスライブラリ管理に対応し、生成音声はアーティファクトの概要として返します。

主な機能

  1. 01テキスト読み上げ生成
  2. 02効果音の生成
  3. 03音声の文字起こし
  4. 04音声トラックの分離
  5. 05ボイスの検索と管理
  6. 06音声アーティファクトの概要

活用シーン

  1. 01テキストから音声を生成
  2. 02録音音声を文字起こし
  3. 03ノイズの多い音声から声を分離
  4. 04ボイスを設計して保存

MCP 対応

`mcp`サブコマンドでstdio MCPサーバーを起動し、音声やボイス操作のためのElevenLabsツールを14種類公開します。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

mcp.json · 共通設定
{
"mcpServers": {
"cloudcorprecords-voicegen-port": {
"command": "npx",
"args": [
"-y",
"@reneturcios/voicegen-port"
]
}
}
}
起動コマンドnpx -y @reneturcios/voicegen-port

ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。

パッケージ
npm@reneturcios/voicegen-port0.1.0
ocighcr.io/cloudcorprecords/voicegen-port:0.1.0

ツール

14

掲載時のツール一覧 · 2 週間前に更新

パラメーター型必須説明
textstringはい音声に変換するテキスト。
model_idstringいいえ使用するテキスト読み上げモデルの ID。省略した場合のデフォルトは eleven_multilingual_v2 です。
voice_idstringいいえ音声生成に使用する音声 ID。省略した場合は、ドキュメントに記載されたデフォルトの音声が適用されます。
output_formatstringいいえ生成音声の出力形式。mp3_44100_128 や pcm_44100 など。

詳細

voicegen-port

voicegen-port は ElevenLabs API を通じて、テキストを音声に変換したり、音声をテキストに変換したりします。選択した音声で段落を読み上げたり、説明から効果音を作成したり、録音を文字起こししたり、ノイズの多いクリップから音声を抽出したり、音声ライブラリ自体を管理したりできます。音声ライブラリでは、文章による説明から新しい音声をデザインし、保存する価値のあるものを保存できます。コマンドラインから、またはエージェント向けの MCP サーバーとして実行できます。

ElevenLabs API キーが必要です。ELEVENLABS_API_KEY 環境変数に設定してください。このキーは xi-api-key ヘッダーとして API に送信され、出力には表示されません。環境変数が設定されていない場合、すべての呼び出しはその名前を示すエラーで失敗します。

音声はバイナリデータであり、このツールはその性質を正しく扱います。生成の呼び出しでは、音声データそのものをテキスト出力にダンプするのではなく、アーティファクトの概要(バイト数、base64 の長さ、コンテンツタイプ)を報告します。

インストール

npx @reneturcios/voicegen-port voices

または、コンテナイメージを実行します。

docker run -i -e ELEVENLABS_API_KEY ghcr.io/cloudcorprecords/voicegen-port

コンテナはデフォルトで MCP サーバーとして起動します(以下を参照)。CLI として使用するには、CLI 引数を渡します。

CLI

export ELEVENLABS_API_KEY="your ElevenLabs API key"

voicegen-port tts "Welcome to the show" --voice v_george
voicegen-port sfx "rain on a tin roof" --duration 4
voicegen-port stt interview.mp3 --language en
voicegen-port isolate noisy-call.mp3
voicegen-port voices
voicegen-port voice v_rachel
voicegen-port search-voices "narrator" --page-size 5
voicegen-port design "A calm British narrator" --text "Sample line"
voicegen-port create-from-preview gen_1 "Calm Narrator"
voicegen-port add-voice "Studio Voice" --description "Warm and close"
voicegen-port delete-voice v_old
voicegen-port models
voicegen-port subscription
voicegen-port user

voicegen-port --version

終了コード:成功時は 0、呼び出し失敗時(ELEVENLABS_API_KEY の未設定や API エラーを含む)は 1、使用方法のエラー時は 2 です。

MCP サーバー

1 つのバイナリで、どちらの使い方にも対応します。mcp サブコマンドで stdio MCP サーバーを起動します。

npx -y @reneturcios/voicegen-port mcp

MCP クライアントの設定:

{
  "mcpServers": {
    "voicegen-port": {
      "command": "npx",
      "args": ["-y", "@reneturcios/voicegen-port", "mcp"],
      "env": { "ELEVENLABS_API_KEY": "your ElevenLabs API key" }
    }
  }
}
ツール

これは、公式 ElevenLabs MCP サーバーのうち、ドキュメント化されている主要なツール(14 個)です。会話型 AI およびテレフォニーのツール(create_agent、list_agents、get_agent、delete_agent、add_knowledge_base_to_agent、make_outbound_call、list_phone_numbers)に加えて、voice_clone、speech_to_speech、play_audio は実装されていません。ビルドレポートを参照してください。

ツール入力返される内容
text_to_speechtext(必須)、voice_id、model_id、output_format(省略可)音声アーティファクトの概要:バイト数、base64 の長さ、コンテンツタイプ。
text_to_sound_effectstext(必須)、duration_seconds、prompt_influence(省略可)生成された効果音の音声アーティファクトの概要。
speech_to_textfile_path(必須)、language_code、model_id(省略可)テキストを含む文字起こしのペイロード。
isolate_audiofile_path(必須)抽出された音声トラックの音声アーティファクトの概要。
list_voices—すべての音声:各音声の ID、名前、カテゴリ。
get_voicevoice_id(必須)音声の完全なレコード。
search_voicessearch(必須)、category、page_size(省略可)一致する音声。同じ概要形式で返されます。
text_to_voiceprompt(必須)、text(省略可)生成された音声 ID を含む、音声デザインのプレビュー。
create_voice_from_previewgenerated_voice_id、voice_name(必須)、voice_description(省略可)保存された音声のレコード。
add_voicename(必須)、description(省略可)追加された音声のレコード。
delete_voicevoice_id(必須)API からの削除応答。
list_models—すべてのモデル:各モデルの ID、名前、説明。
check_subscription—アカウントのサブスクリプションレコード。
get_user_info—API キー所有者のユーザーレコード。

呼び出しは JSON ボディを使用して https://api.elevenlabs.io/v1 に送信されます。speech_to_text と add_voice は上流ではマルチパート形式でファイルをアップロードしますが、この再構築ではビルドレポートに記録されているとおり、ファイル名や音声を指定する JSON ボディとして扱う簡略化を行っています。

開発

npm install
npm run build   # tsc -> dist/
npm test        # node test runner over test/*.test.ts, no network (fake fetch fixtures)
npm run dev     # run the CLI from source via tsx

ライセンス

MIT — LICENSE を参照してください。

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。