返回市场
心声合成MCP

心声合成MCP

作者:mberg55 星标更新:2025-09-13

项目介绍

<a href="https://glama.ai/mcp/servers/@mberg/kokoro-tts-mcp"> <img width="380" height="200" src="https://gips2.baidu.com/it/u=4060911051,3016187928&fm=3081&app=3081&f=PNG?w=760&h=400" alt="Kokoro 文本转语音服务器 MCP 服务器" /> </a>

Kokoro 文本转语音(TTS)MCP 服务器

Kokoro 文本转语音 MCP 服务器生成 .mp3 文件,并提供上传到 S3 的选项。

使用:https://huggingface.co/spaces/hexgrad/Kokoro-TTS

配置

在您的 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 访问密钥 ID
  • AWS_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(仅限本地主机)
  • 客户端应连接到 localhost127.0.0.1

基本用法

python mcp_client.py --text "你好,世界!"

从文件读取文本

python mcp_client.py --file 我的文本.txt

自定义语音和速度

python mcp_client.py --text "你好,世界!" --voice "en_female" --speed 1.2

禁用 S3 上传

python mcp_client.py --text "你好,世界!" --no-s3

命令行选项

python mcp_client.py --help

MP3 文件管理

TTS 服务器生成的 MP3 文件会存储在本地,并且可以选择上传到 S3。您可以配置这些文件的管理方式:

本地存储

  • 在您的 .env 文件中设置 MP3_FOLDER 以指定 MP3 文件的存储位置
  • 文件将保留在该文件夹中,除非被自动删除

自动清理

  • 设置 MP3_RETENTION_DAYS=30(或任何数字)以自动删除超过该天数的文件
  • 设置 DELETE_LOCAL_AFTER_S3_UPLOAD=true 以在成功上传到 S3 后立即删除本地文件

S3 集成

  • 使用 S3_ENABLED=trueDISABLE_S3=true 启用或禁用 S3 上传
  • 在 .env 文件中配置 AWS 凭证和存储桶设置
  • 可以通过客户端的 --no-s3 选项在每次请求中禁用 S3 上传