MCP TTS Say 使用说明
项目简介
MCP TTS Say 是一个基于 Model Context Protocol (MCP) 构建的服务器,它通过集成 OpenAI 的文本到语音 (TTS) SDK,为 LLM 客户端提供将文本转换为语音并在本地环境播放的功能。作为一个 MCP 服务器,它定义了一个名为 "say" 的工具,允许 LLM 客户端调用该工具来播放指定的文本内容。
主要功能点
- 文本转语音 (TTS): 使用 OpenAI TTS SDK 高质量地将文本合成为语音。
- 本地音频播放: 在 MCP 服务器运行的本地环境中播放合成的语音。
- MCP 工具集成: 通过 MCP 协议提供 "say" 工具,方便 LLM 客户端调用语音播放功能。
- 可配置的声音: 支持多种 OpenAI TTS 声音模型,允许选择不同的 voice 参数。
安装步骤
- 克隆仓库
git clone https://github.com/hirokidaichi/mcp-tts-say.git cd mcp-tts-say - 安装依赖
确保已安装 Node.js (v18 或更高版本) 和 npm。然后运行:
npm install - 配置环境变量
在项目根目录下创建 '.env' 文件,并填入你的 OpenAI API 密钥:
请替换 'YOUR_OPENAI_API_KEY' 为你实际的 OpenAI API 密钥。OPENAI_API_KEY=YOUR_OPENAI_API_KEY
服务器配置 (MCP 客户端配置)
为了让 MCP 客户端连接到 MCP TTS Say 服务器,你需要配置客户端的服务器连接信息。以下是一个典型的 JSON 配置示例,用于配置 MCP 客户端连接到本服务器:
{ "serverName": "LocalVoicePlaybackServer", "command": "npm", "args": ["run", "dev"] }
配置参数说明:
- 'serverName': 服务器名称,这里设置为 "LocalVoicePlaybackServer",与 'src/main.ts' 中定义的服务名称一致。
- 'command': 启动服务器的命令,这里使用 'npm'。
- 'args': 启动命令的参数,这里使用 '["run", "dev"]',表示运行 'package.json' 中定义的 'dev' 脚本,该脚本通常用于启动开发模式的服务器。
注意: 请确保你的 MCP 客户端能够执行 'npm run dev' 命令来启动服务器。如果你的环境或启动方式不同,请相应地调整 'command' 和 'args' 配置。例如,如果需要直接运行编译后的 JavaScript 文件,你可能需要将 'command' 设置为 'node','args' 设置为指向编译后的 'main.js' 文件路径。
基本使用方法
-
启动 MCP TTS Say 服务器 在项目根目录下,运行以下命令启动服务器:
npm run dev服务器启动后,你将在控制台看到 "LocalVoicePlaybackServer が起動しました。" 的日志信息。
-
配置 MCP 客户端并调用 "say" 工具 在你的 MCP 客户端应用中,配置连接到 "LocalVoicePlaybackServer" (根据上述服务器配置)。然后,你可以调用服务器提供的 "say" 工具,并传递 'text' 参数 (要播放的文本内容) 和 'voice' 参数 (可选,指定声音类型,默认为 "echo")。
例如,使用 MCP 客户端发送一个 JSON-RPC 请求来调用 "say" 工具,请求参数可能如下所示:
{ "method": "tool/invoke", "params": { "tool_name": "say", "arguments": { "text": "你好,世界!", "voice": "fable" } } }服务器收到请求后,会将 "你好,世界!" 这段文本合成为 "fable" 声音类型的语音,并在服务器本地播放。MCP 客户端将收到工具执行结果的响应。
通过以上步骤,你就可以使用 MCP TTS Say 服务器为你的 LLM 应用增加本地语音播放能力。
信息
分类
桌面与硬件