Açık kaynaklı Kokoro TTS modellerini kullanan MCP Server ile metni konuşmaya dönüştürün. Metni yerel sürücüde MP3'e çevirebilir veya otomatik olarak S3 bucket'a yükleyebilirsiniz.
Claude Desktop config.json'a ekle
{
"mcpServers": {
"mberg-kokoro-tts-mcp": {
"command": "python",
"args": [
"-m",
"kokoro_tts_mcp"
]
}
}
} Kaynak kodu al ve yerel olarak çalıştır
git clone https://github.com/mberg/kokoro-tts-mcp.git ~/.mcp/kokoro-tts-mcp
cd ~/.mcp/kokoro-tts-mcp Kokoro Metin Konuşmaya MCP sunucusu, S3'e yükleme seçeneği ile .mp3 dosyaları oluşturur.
Kullanılan: https://huggingface.co/spaces/hexgrad/Kokoro-TTS
Aşağıdakileri MCP yapılandırmalarınıza ekleyin. Kendi değerlerinizle güncelleyin.
"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"
}
}
Bu, .wav dosyalarını .mp3 dosyalarına dönüştürmek için gereklidir.
Mac için:
brew install ffmpeg
Yerel olarak çalıştırmak için bu değerleri .env dosyanıza ekleyin. env.example dosyasına bakın ve .env dosyasına kopyalayın, kendi değerlerinizle değiştirin.
AWS_ACCESS_KEY_ID: AWS erişim anahtarı kimliğiAWS_SECRET_ACCESS_KEY: AWS gizli erişim anahtarıAWS_S3_BUCKET_NAME: S3 bucket adıAWS_S3_REGION: S3 bölgesi (örn., us-east-1)AWS_S3_FOLDER: S3 bucket içindeki klasör yoluAWS_S3_ENDPOINT_URL: S3 uyumlu depolama için isteğe bağlı özel endpoint URL'siMCP_HOST: Sunucunun bağlanacağı host (varsayılan: 0.0.0.0)MCP_PORT: Dinlenecek port (varsayılan: 9876)MCP_CLIENT_HOST: İstemci bağlantıları için hostname (varsayılan: localhost)DEBUG: Debug modunu etkinleştir ("true" veya "1" olarak ayarla)S3_ENABLED: S3 yüklemelerini etkinleştir ("true" veya "1" olarak ayarla)MP3_FOLDER: MP3 dosyalarını depolamak için yol (varsayılan, script dizininde 'mp3' klasörü)MP3_RETENTION_DAYS: Otomatik silmeden önce MP3 dosyalarını tutulacak gün sayısıDELETE_LOCAL_AFTER_S3_UPLOAD: Başarılı S3 yüklemesinden sonra yerel MP3 dosyalarını silip silmeyeceğini belirt ("true" veya "1" olarak ayarla)TTS_VOICE: TTS istemcisi için varsayılan ses (varsayılan: af_heart)TTS_SPEED: TTS istemcisi için varsayılan hız (varsayılan: 1.0)TTS_LANGUAGE: TTS istemcisi için varsayılan dil (varsayılan: en-us)Tercih edilen yöntem UV kullanmaktır
uv run mcp-tts.py
mcp_client.py script'i sunucuya TTS istekleri göndermenize izin verir. Aşağıdaki şekilde kullanılabilir:
Sunucu ve istemci aynı makinede çalışırken:
0.0.0.0 (tüm arayüzler) veya 127.0.0.1 (sadece localhost) adresine bağlanmalıdırlocalhost veya 127.0.0.1 adresine bağlanmalıdırpython 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
python mcp_client.py --text "Hello, world!" --no-s3
python mcp_client.py --help
TTS sunucusu, yerel olarak depolanan ve isteğe bağlı olarak S3'e yüklenen MP3 dosyaları oluşturur. Bu dosyaların nasıl yönetildiğini yapılandırabilirsiniz:
.env dosyanızda MP3_FOLDER seçeneğini ayarlayınMP3_RETENTION_DAYS=30 (veya herhangi bir sayı) ayarlayınDELETE_LOCAL_AFTER_S3_UPLOAD=true ayarlayınS3_ENABLED=true veya DISABLE_S3=true ile S3 yüklemelerini etkinleştirin/devre dışı bırakın.env dosyasında AWS kimlik bilgilerini ve bucket ayarlarını yapılandırın--no-s3 seçeneği kullanılarak istek başına devre dışı bırakılabilir