VoiceVox

Voicevox MCP Server

VOICEVOX互換の音声合成サーバー(AivisSpeech / VOICEVOX / COEIROINK) を MCP (Model Context Protocol) 経由で利用するためのサーバーです。 Cursor等でのClaude 3.7を使ったエージェントモードでの音声合成に利用できます。

必要条件

Windows環境

Docker環境 (WSL2)

  • Docker と Docker Compose
  • WSL2
  • VOICEVOX ENGINE等 (ローカルまたはDockerで実行)
  • sudo apt install libsdl2-dev pulseaudio-utils pulseaudio されたLinux環境
  • /mnt/wslg へのアクセス権限

インストールと設定

  1. リポジトリをクローン
git clone https://github.com/Dosugamea/voicevox-mcp-server.git
cd voicevox-mcp-server
  1. 依存関係のインストール
npm install
  1. 環境変数の設定 .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