Kokoro Tts Mcp について
Kokoro TTS MCP サーバーは、Kokoro モデルを使ってテキストを .mp3 音声ファイルに変換し、必要に応じて S3 または S3 互換ストレージへアップロードします。音声ファイルをローカルで生成したい利用者に適しています。
主な機能
- 01テキストから .mp3 音声ファイルへの変換
- 02S3 または互換ストレージへの任意のアップロード
- 03音声、速度、言語の設定
- 04ローカル MP3 の保持期間と自動削除
- 05リクエストを送信するコマンドラインクライアント
活用シーン
- 01記事やテキストファイルからナレーション音声を生成
- 02生成した音声を S3 バケットへ自動アップロード
MCP 対応
テキストを音声に変換する要求を受け付け、生成した .mp3 ファイルを扱える MCP サーバーです。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
Kokoro Text to Speech(TTS)MCP サーバー
S3 へのアップロードも選択できる、.mp3 ファイルを生成する Kokoro Text to Speech MCP サーバーです。
使用先:https://huggingface.co/spaces/hexgrad/Kokoro-TTS
設定
- ローカルリポジトリにクローンします。
- Kokoro Onnx Weights から kokoro-v1.0.onnx と voices-v1.0.bin をダウンロードし、同じリポジトリに保存します。
以下を MCP の設定に追加します。ご自身の値に更新してください。
"kokoro-tts-mcp": {
"command": "uv",
"args": [
"--directory",
"/path/toyourlocal/kokoro-tts-mcp",
"run",
"mcp-tts.py"
],
"env": {
"TTS_VOICE": "af_heart",
"TTS_SPEED": "1.0",
"TTS_LANGUAGE": "en-us",
"AWS_ACCESS_KEY_ID": "",
"AWS_SECRET_ACCESS_KEY": "",
"AWS_REGION": "us-east-1",
"AWS_S3_FOLDER": "mp3",
"S3_ENABLED": "true",
"MP3_FOLDER": "/path/to/mp3"
}
}
ffmmeg のインストール
.wav ファイルを .mp3 ファイルに変換するために必要です。
Mac の場合:
brew install ffmpeg
ローカルで実行するには、これらを .env ファイルに追加します。env.example を確認し、.env にコピーして、ご自身の値に変更してください。
サポートされている環境変数
AWS_ACCESS_KEY_ID:AWS アクセスキー IDAWS_SECRET_ACCESS_KEY:AWS シークレットアクセスキーAWS_S3_BUCKET_NAME:S3 バケット名AWS_S3_REGION:S3 リージョン(例:us-east-1)AWS_S3_FOLDER:S3 バケット内のフォルダーパスAWS_S3_ENDPOINT_URL:S3 互換ストレージ用のカスタムエンドポイント URL(任意)MCP_HOST:サーバーをバインドするホスト(デフォルト:0.0.0.0)MCP_PORT:リッスンするポート(デフォルト:9876)MCP_CLIENT_HOST:サーバーへのクライアント接続に使用するホスト名(デフォルト:localhost)DEBUG:デバッグモードを有効にします("true" または "1" に設定)S3_ENABLED:S3 へのアップロードを有効にします("true" または "1" に設定)MP3_FOLDER:MP3 ファイルの保存先パス(デフォルトはスクリプトディレクトリ内の 'mp3' フォルダー)MP3_RETENTION_DAYS:MP3 ファイルを自動削除するまでの日数DELETE_LOCAL_AFTER_S3_UPLOAD:S3 へのアップロード成功後にローカルの MP3 ファイルを削除するかどうか("true" または "1" に設定)TTS_VOICE:TTS クライアントのデフォルト音声(デフォルト:af_heart)TTS_SPEED:TTS クライアントのデフォルト速度(デフォルト:1.0)TTS_LANGUAGE:TTS クライアントのデフォルト言語(デフォルト:en-us)
サーバーをローカルで実行する
推奨方法:UV を使用します
uv run mcp-tts.py
TTS クライアントの使用
mcp_client.py スクリプトを使用すると、サーバーに TTS リクエストを送信できます。以下のように使用できます。
接続設定
サーバーとクライアントを同じマシンで実行する場合:
- サーバーは
0.0.0.0(すべてのインターフェース)または127.0.0.1(localhost のみ)にバインドします - クライアントは
localhostまたは127.0.0.1に接続します
基本的な使い方
python mcp_client.py --text "Hello, world!"
ファイルからテキストを読み込む
python mcp_client.py --file my_text.txt
音声と速度のカスタマイズ
python mcp_client.py --text "Hello, world!" --voice "en_female" --speed 1.2
S3 アップロードの無効化
python mcp_client.py --text "Hello, world!" --no-s3
コマンドラインオプション
python mcp_client.py --help
MP3 ファイルの管理
TTS サーバーは、ローカルに保存し、必要に応じて S3 にアップロードする MP3 ファイルを生成します。これらのファイルの管理方法は次のように設定できます。
ローカルストレージ
.envファイルのMP3_FOLDERを設定し、MP3 ファイルの保存先を指定します- 自動削除されない限り、ファイルはこのフォルダーに保持されます
自動クリーンアップ
MP3_RETENTION_DAYS=30(または任意の日数)を設定すると、その日数より古いファイルが自動的に削除されますDELETE_LOCAL_AFTER_S3_UPLOAD=trueを設定すると、S3 へのアップロード成功後、ローカルファイルがただちに削除されます
S3 連携
S3_ENABLED=trueまたはDISABLE_S3=trueで S3 へのアップロードを有効/無効にします.envファイルで AWS 認証情報とバケット設定を行います- クライアントの
--no-s3オプションを使用すると、リクエストごとに S3 へのアップロードを無効にできます
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。