Voicevox MCP Server について
Voicevox MCP Serverは、VOICEVOX互換の音声合成エンジンをMCPクライアントから利用できるサーバーです。エージェントのワークフローでの音声生成を想定し、API URLと話者IDを設定できます。対応エンジンとしてAivisSpeech、VOICEVOX、COEIROINKが記載されています。
主な機能
- 01VOICEVOX互換エンジンに接続
- 02AivisSpeech、VOICEVOX、COEIROINKに対応
- 03環境変数でAPI URLを設定
- 04話者IDで音声を選択
活用シーン
- 01エージェントのワークフローで音声を合成
- 02VOICEVOXエンジンの話者を切り替え
- 03ローカルで稼働する音声合成エンジンを利用
MCP 対応
MCPサーバーとして、VOICEVOX互換エンジンによる音声合成をMCPクライアントに提供します。READMEではCursorなどのエージェントモードでの利用に触れています。
設定
リモートサーバーはインストール不要です。クライアントを選んで設定をコピーするか、ワンクリックで導入できます。
http://localhost:10100/sseclaude mcp add --transport http voicevox http://localhost:10100/sse{"mcpServers":{"voicevox":{"type":"http","url":"http://localhost:10100/sse"}}}Cursor で開く{"servers":{"voicevox":{"type":"http","url":"http://localhost:10100/sse"}}}VS Code で開く{"mcpServers":{"voicevox":{"type":"http","url":"http://localhost:10100/sse"}}}{"mcpServers":{"voicevox":{"serverUrl":"http://localhost:10100/sse"}}}コマンドはターミナルで実行し、JSON は各クライアントの MCP 設定に貼り付けて再起動します。認可が必要なサーバーは初回接続時にログインを求めます。
ツール
詳細
プロジェクトの README よりVoicevox MCP Server
VOICEVOX互換の音声合成サーバー(AivisSpeech / VOICEVOX / COEIROINK) を MCP (Model Context Protocol) 経由で利用するためのサーバーです。 Cursor等でのClaude 3.7を使ったエージェントモードでの音声合成に利用できます。
必要条件
Windows環境
- Node.js 18以上
- VOICEVOX ENGINE等 (ローカルでhttp://localhost:50000等で実行)
- VLCメディアプレーヤー(パスが通っていること)
Docker環境 (WSL2)
- Docker と Docker Compose
- WSL2
- VOICEVOX ENGINE等 (ローカルまたはDockerで実行)
sudo apt install libsdl2-dev pulseaudio-utils pulseaudioされたLinux環境/mnt/wslgへのアクセス権限
インストールと設定
- リポジトリをクローン
git clone https://github.com/Dosugamea/voicevox-mcp-server.git
cd voicevox-mcp-server
- 依存関係のインストール
npm install
- 環境変数の設定
.env_exampleをコピーして.envファイルを作成し、必要に応じて設定を変更します:
VOICEVOX_API_URL=http://localhost:50021
VOICEVOX_SPEAKER_ID=1
実行方法
Windows環境での実行
エディタと別途で下記手順でサーバーを立ち上げてください。
npm run build
npm start
Docker環境での実行
エディタと別途での操作は不要です。 stdioモードで立ち上がるため直接実行することはできません。
設定方法
Windows環境での実行の場合
mcp.jsonに下記を追記してください。 接続が不安定なため切断されたら再接続してください。
"voicevox": {
"url": "http://localhost:10100/sse"
}
Docker環境での実行の場合
mcp.jsonに下記を追記してください。 (作者環境での動作は確認できていません)
{
"tools": {
"voicevox": {
"command": "cmd",
"args": [
"/c",
"docker",
"run",
"-i",
"--rm",
"-v",
"/mnt/wslg:/mnt/wslg",
"-e",
"PULSE_SERVER",
"-e",
"SDL_AUDIODRIVER",
"-e",
"VOICEVOX_API_URL",
"-e",
"VOICEVOX_SPEAKER_ID",
"your-local-docker-image-name"
],
"env": {
"PULSE_SERVER": "unix:/mnt/wslg/PulseServer",
"SDL_AUDIODRIVER": "pulseaudio",
"VOICEVOX_API_URL": "http://host.docker.internal:50031",
"VOICEVOX_SPEAKER_ID": "919692871"
}
}
}
}
話者IDについて
話者IDは使用するVOICEVOXのモデルによって異なります。デフォルトでは「1」(四国めたん)を使用しています。
他の話者IDを使用する場合は、環境変数 VOICEVOX_SPEAKER_ID を変更してください。
話者IDの一覧は、VOICEVOX ENGINE APIの /speakers エンドポイントで確認できます。
例: curl http://localhost:50021/speakers
トラブルシューティング
- VOICEVOXとの接続エラー: VOICEVOX ENGINEが起動していること、APIのURLが正しく設定されていることを確認してください。
- 音声が再生されない: VLCが正しくインストールされていることと、パスが通っていることを確認してください。
- Docker環境での音声出力問題: pulseaudioの設定が正しいか確認してください。
開発者向け情報
- ソースコードに貢献する場合は、Issueを作成するか、Pull Requestを送信してください。
- バグ報告や機能リクエストは、GitHubのIssue機能をご利用ください。
ライセンス
MIT License
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。