使用说明
项目简介
Jessica 是一个实现了 Model Context Protocol (MCP) 的后端服务器,专注于提供文本到语音 (TTS) 服务。它集成了 ElevenLabs 的 TTS API,允许 LLM 客户端(如 Cursor)通过 MCP 协议调用语音合成功能。该项目包含 FastAPI 后端服务和 React 前端应用,后端作为 MCP 服务器运行,前端提供用户界面和 WebSocket 通信。
主要功能点
- 文本转语音 (TTS): 使用 ElevenLabs API 将文本转换为自然流畅的语音。
- 语音选择和管理: 支持选择不同的 ElevenLabs 语音模型。
- MCP 集成: 通过 Model Context Protocol 标准协议与 LLM 客户端(如 Cursor)进行通信,提供 TTS 功能。
- 实时音频流: 通过 WebSocket 提供实时的音频流传输。
- 可配置性: 允许用户配置默认语音、模型等设置。
安装步骤
-
克隆仓库:
git clone https://github.com/georgi-io/jessica.git cd jessica -
配置 ElevenLabs API 密钥:
- 复制 '.env.example' 文件为 '.env'。
- 打开 '.env' 文件,将 'ELEVENLABS_API_KEY=your-api-key' 中的 'your-api-key' 替换为你的 ElevenLabs API 密钥。
-
安装后端依赖 (Python):
python -m venv .venv source .venv/bin/activate # 或 Windows: .venv\Scripts\activate poetry install -
安装前端依赖 (Node.js):
cd src/frontend npm install cd ../.. # 返回项目根目录
服务器配置
MCP 客户端(例如 Cursor)需要配置连接到 Jessica MCP 服务器。以下是配置信息,请在 MCP 客户端中按照示例进行配置:
{ "serverName": "Jessica TTS", // MCP 服务器名称,自定义 "command": "python", // 启动 MCP 服务器的命令 "args": ["-m", "src.backend"], // 启动命令的参数,指向后端入口 "transport": "sse", // MCP 通信协议,Jessica 服务器使用 SSE "url": "http://localhost:9022/sse" // MCP 服务器的 SSE Endpoint 地址 }
配置说明:
- 'serverName': 为你的 MCP 服务器自定义一个名称,方便在客户端中识别。
- 'command': 运行 Python 解释器的命令,通常为 'python' 或 'python3'。
- 'args': 传递给 'python' 命令的参数,'-m src.backend' 指示 Python 运行 'src/backend' 目录作为模块,启动 FastAPI 应用。
- 'transport': 指定 MCP 服务器使用的传输协议,Jessica 服务器使用 Server-Sent Events (SSE)。
- 'url': MCP 服务器提供的 SSE Endpoint URL,客户端通过此 URL 与服务器建立连接。默认情况下 Jessica MCP 服务器在 'http://localhost:9022/sse' 提供服务。
基本使用方法
-
启动后端服务器:
source .venv/bin/activate # 激活 Python 虚拟环境 (如果尚未激活) python -m src.backend启动后,后端服务器将运行在 'http://localhost:9020',MCP 服务器 (SSE) 将运行在 'http://localhost:9022/sse'。
-
在 MCP 客户端中添加服务器:
- 打开你的 MCP 客户端(例如 Cursor)。
- 在客户端的设置或扩展配置中,找到添加 MCP 服务器的选项。
- 按照上述 “服务器配置” 部分提供的 JSON 配置信息,填写服务器名称、命令、参数、传输协议和 URL。
- 保存配置并连接到 Jessica TTS MCP 服务器。
-
使用 TTS 功能:
- 在 MCP 客户端中,当需要使用文本转语音功能时,客户端将通过 MCP 协议与 Jessica 服务器通信。
- Jessica 服务器接收请求,调用 ElevenLabs API 进行语音合成,并将结果返回给客户端。
- 具体使用方式取决于 MCP 客户端的功能和界面。通常,你可以在客户端中找到调用 "speak_text" 或类似名称的工具来使用 TTS 功能。
注意事项
- 确保已正确配置 ElevenLabs API 密钥,否则 TTS 功能将无法正常工作。
- 检查防火墙设置,确保 MCP 客户端可以访问 MCP 服务器的 URL ('http://localhost:9022/sse')。
- 可以通过修改 '.env' 文件中的 'PORT' 和 'MCP_PORT' 变量来更改服务器端口。
信息
分类
AI与计算