🎧
DevcontainerやWSL上のClaude Codeにデスクトップ版VOICEVOXでしゃべらせる(MCP)
Windows環境のClaude CodeにVOICEVOXでしゃべらせるの面倒ですよね。
MCP HTTPサーバーを使うと設定が楽になったので記事にしました。
環境
- Windows11
- Node.js(MCPサーバーを動かすため)
- VOICEVOXデスクトップ版(https://voicevox.hiroshiba.jp/)
必要になるツール
今回使用させていただくツールは以下の通りです:
- VOICEVOXのMCPサーバー:mcp-simple-voicevox
- stdio⇔httpに変換:supergateway(MCPサーバーがstdioのみ提供している場合に必要)
VOICEVOXの準備
まず、デスクトップ版VOICEVOXを起動してください。APIが使用できることをlocalhost:50021で確認
1. ホスト側でVOICEVOXのMCPサーバーを起動
PowerShellまたはコマンドプロンプトで以下を実行:
# PowerShell (Windows)
npx -y supergateway `
--stdio "npx -y @t09tanaka/mcp-simple-voicevox" `
--baseUrl http://localhost:8000 `
--outputTransport streamableHttp `
--port 8000
2. devcontainer.jsonの設定
プロジェクトルートの.devcontainer/devcontainer.json
に以下の設定を追加:
{
"name": "Ubuntu",
"image": "mcr.microsoft.com/devcontainers/base:jammy",
"features": {
"ghcr.io/anthropics/devcontainer-features/claude-code:1.0": {}
},
"forwardPorts": [],
"runArgs": ["--add-host=host.docker.internal:host-gateway"]
}
3. コンテナ上のClaude CodeにMCPを追加
Devcontainer内で以下を実行:
claude mcp add --transport http tts http://host.docker.internal:8000/mcp
WSL環境での設定
1. ホスト側でMCPサーバーを起動
設定はDevcontainerと同じです:
# PowerShell (Windows)
npx -y supergateway `
--stdio "npx -y @t09tanaka/mcp-simple-voicevox" `
--baseUrl http://localhost:8000 `
--outputTransport streamableHttp `
--port 8000
2. WSL上でWindowsホストのIPアドレスを確認
WSL内で以下を実行してWindowsホストのIPアドレスを取得:
ip route show | grep default | awk '{print $3}'
通常は 172.x.x.1
の形式になります。
3. WSL上のClaude CodeにMCPを追加
取得したIPアドレスを使用してMCPサーバーに接続:
# IPアドレスは手順2で確認したものに置き換えてください
claude mcp add --transport http tts http://172.29.176.1:8000/mcp
動作確認
設定が完了したら、Claude Codeで以下のように試してみてください:
「こんにちは、音声で読み上げてください」
音声が再生されれば設定成功です
おまけ:自動起動の設定
毎回手動でMCPサーバーを起動するのは面倒なので、Windowsのスタートアップフォルダに登録しておくと便利です。
バッチファイルの作成
まず、以下の内容でバッチファイル(start-voicevox-mcp.bat
)を作成します:
start-voicevox-mcp.bat
@echo off
npx -y supergateway --stdio "npx -y @t09tanaka/mcp-simple-voicevox" --baseUrl http://localhost:8000 --outputTransport streamableHttp --port 8000
スタートアップフォルダへの登録
-
Win + R
キーを押して「ファイル名を指定して実行」を開く -
shell:startup
と入力してEnterキーを押す - 開いたフォルダに作成したバッチファイルをコピー
これで、Windowsの起動時に自動的にMCPサーバーが立ち上がるようになります。
参考リンク:
Discussion