GPT SoVITS MCP服务器
此项目包括:GPT-SoVITS的,之API打开服务器Model Context Protocol (MCP) 使可用作工具MCP服务器。FastAPI-MCP来修改标记元素的显示属性Swagger从规格自动MCP生成工具定义。
机能
- 文本转语音合成:从文本生成声音
- 语音克隆:使用参照声音复制音质
- 支持多种语言:支持中文、英语、日语、韩语、粤语
- 模型管理: GPT/SoVITS动态切换模型
- 流式传输:实时语音发布
- MCP统合: AI 与代理集成
所需环境
- Python 3.11以上(Windows/macOS/Linux対応)
- GPT-SoVITS API 服务器(在端口9880上运行)
安装
视窗
- Python 安装:
- Python网站标题从…开始Python 3.11下载以上内容 - 安装时检查“Add Python to PATH”
- 安装依赖关系:
python -m pip install -r requirements.txt- GPT-SoVITS API 启动服务器:
cd GPT-SoVITS
python api.pymacOS/Linux
- 安装依赖关系:
python3.11 -m pip install -r requirements.txt
# または
pip install -r requirements.txt- GPT-SoVITS API 启动服务器:
cd GPT-SoVITS
python3.11 api.py
# または
python api.py使用方法
简単起动(推奨)
视窗
start_server.batmacOS/Linux
./start_server.sh手动起动
视窗
python fastapi_mcp_server.pymacOS/Linux
python3.11 fastapi_mcp_server.py选项卡页面上创建或编辑条目
--host:要绑定的主机(默认值:0.0.0.0)--port:要绑定的端口(默认值:8000)--gpt-sovits-url: GPT-SoVITS API的,之URL (默认值:http://localhost:9880)--reload:启用自动重载
环境变数
SOVITS_VOICES_PATH:音频文件的基本路径HOST:服务器主机PORT:服务器端口
端点
服务器启动后,以下端点可用:
- API 文档: http://localhost:8000/docs
- MCP 端点: http://localhost:8000/mcp
- 健康检查: http://localhost:8000/health
可用的MCP工具
- 文本到语音 (
/tts)
- 从文本合成声音 - 基于参照语音的语音克隆对应 - 支持多种语音格式(wav,ogg,aac)
- set_model (
/set_model)
- GPT/SoVITS设置模型权重 - 动态模型切换
- set_reference (
/set_reference)
- 设置默认参考语音和提示文本 - 设定成为声音克隆基准的音质
- 控制服务器 (
/control)
- 服务器控制(重新启动/关闭)
API 使用例
从文本到语音合成
curl -X POST "http://localhost:8000/tts" \
-H "Content-Type: application/json" \
-d '{
"text": "こんにちは、世界",
"text_lang": "ja",
"refer_wav_path": "path/to/reference.wav",
"prompt_text": "参照音声のテキスト"
}'模型设置
curl -X POST "http://localhost:8000/set_model" \
-H "Content-Type: application/json" \
-d '{
"gpt_model_path": "path/to/gpt.ckpt",
"sovits_model_path": "path/to/sovits.pth"
}'MCP统合
这个服务器Model Context Protocol (MCP) 对应Claude等的AI代理可以直接使用语音合成功能。
Claude Desktop中的设置
配置文件位置
- 视窗:
%APPDATA%\Claude\claude_desktop_config.json - macOS:
~/Library/Application Support/Claude/claude_desktop_config.json
Windows用设定
{
"mcpServers": {
"gpt-sovits": {
"command": "python",
"args": ["C:\\path\\to\\sovits_mcp\\fastapi_mcp_server.py"],
"env": {
"HOST": "127.0.0.1",
"PORT": "8000",
"SOVITS_VOICES_PATH": "C:\\voices\\characters"
}
}
}
}macOS/Linux用設定
{
"mcpServers": {
"gpt-sovits": {
"command": "python3.11",
"args": ["/path/to/sovits_mcp/fastapi_mcp_server.py"],
"env": {
"HOST": "127.0.0.1",
"PORT": "8000",
"SOVITS_VOICES_PATH": "/voices/characters"
}
}
}
}SSE (Server-Sent Events) 中所述修改相应参数的值
FastAPI-MCP自动的 /mcp 在终点SSE提供连接。SSE使用代理:
{
"mcpServers": {
"gpt-sovits-sse": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-fetch", "http://127.0.0.1:8000/mcp"],
"env": {}
}
}
}配置文件位置
项目包含多个配置示例:
Windows用
claude_desktop_config_windows.json- Claude Desktop的设置mcp_windows.json-基本MCP配置mcp_sse_windows.json- SSE 使用代理设置start_server.bat- Windows用启动脚本
macOS/Linux用
claude_desktop_config.json- Claude Desktop的设置mcp.json-基本MCP配置mcp_sse.json- SSE 使用代理设置start_server.sh- macOS/Linux用启动脚本
故障排除
Windows固有问题
Python 缺少
python --version- 如果出现错误Python 表示PATH未添加到
- Python 安装时检查“Add Python to PATH”
- 在工作空间的边缘
py使用命令
音频文件路径错误
- Windows那么反斜线(
\),模板名称将采用不同的格式 - 或环境变量
SOVITS_VOICES_PATH的规格化距离的幂函数
set SOVITS_VOICES_PATH=C:\voices\characters常见问题
GPT-SoVITS API无法连接到服务器
- GPT-SoVITS API确认服务器已启动
- 确保端口9880可用
- 检查防火墙设置
依赖性错误
- Python 3.11确认是否使用了以上内容
pip install -r requirements.txt安装依赖关系
找不到音频文件
SOVITS_VOICES_PATH正确设置环境变量- 确认声音文件是否存在于指定路径中
- 默认情况下
voices/characters/使用文件夹
许可证
这个项目MIT在许可证下公开。
