项目简介

'voicevox-cli' 不仅是一个命令行工具,更内嵌了符合 Model Context Protocol (MCP) 标准的服务器模块。该 MCP 服务器的核心功能是将 VOICEVOX 的高级日语文本转语音能力封装成 LLM 可调用的工具,让 AI 助手能以结构化、标准化的方式生成语音或查询语音资源。它通过 JSON-RPC 协议与 AI 客户端通信,为 LLM 应用提供统一的上下文服务框架。

主要功能点

  • 文本转语音 (Text-to-Speech): 接收日语文本和指定的音色 ID,使用 VOICEVOX 引擎生成高质量的语音,并支持流式播放或保存为文件。此功能会自动处理长文本分割,以确保播放的流畅性和兼容性。
  • 音色查询 (List Voice Styles): 允许 LLM 客户端查询所有可用的 VOICEVOX 说话人及其音色风格(Style ID),并支持按说话人名称或音色名称进行筛选。这有助于 AI 助手在对话中选择最合适的语音风格。
  • 资源管理: 自动管理和加载 VOICEVOX 语音模型、ONNX Runtime 和 OpenJTalk 字典等核心资源,确保语音合成的顺利进行。
  • MCP 协议兼容: 完全遵循 MCP 协议,提供标准化的 'initialize', 'tools/list', 'tools/call' 等接口,确保与各类兼容 MCP 的 AI 客户端无缝集成。

安装步骤

  1. 系统要求: 目前该项目主要支持 macOS Apple Silicon (M1/M2/M3)
  2. 安装 Nix 包管理器: 访问 NixOS 官网 安装适用于 macOS 的 Nix 包管理器。
  3. 克隆仓库:
    git clone https://github.com/usabarashi/voicevox-cli
    cd voicevox-cli
  4. 构建项目: 在仓库根目录运行以下命令构建可执行文件:
    nix develop          # 进入开发环境,Nix将自动安装所有依赖
    cargo build --release # 构建项目,生成可执行文件在 target/release/ 目录下
  5. 首次设置 (下载资源): 首次运行前,请执行 'voicevox-setup' 命令以下载 VOICEVOX 语音模型、ONNX Runtime 和 OpenJTalk 字典。这是首次使用前必须完成的步骤。
    # 假设您已将 voicevox-setup 复制到 PATH 中,或直接从 target/release/ 运行
    ./voicevox-setup
    请根据提示接受语音模型的使用许可条款。

服务器配置 (供AI助手客户端使用)

AI 助手客户端需要配置以下信息,以便启动 VOICEVOX MCP 服务器并与之建立连接。客户端通常会通过内部机制,使用这些信息来启动服务器并进行通信。

{
  "name": "VOICEVOX MCP Server",
  "description": "提供VOICEVOX日语文本转语音能力和音色查询工具,使AI助手能够生成高质量的日语语音。",
  "command": "/path/to/your/voicevox-cli/target/release/voicevox-mcp-server",
  "args": []
}
  • 'name': 服务器的友好名称。
  • 'description': 服务器功能的简要描述。
  • 'command': MCP 服务器可执行文件的完整路径。请将 '/path/to/your/voicevox-cli/target/release/voicevox-mcp-server' 替换为您系统中实际的 'voicevox-mcp-server' 可执行文件路径。
  • 'args': 启动 MCP 服务器时需要的额外命令行参数(通常为空)。

服务器提供的工具 (AI助手客户端可动态发现):

客户端连接后,将能够通过 MCP 协议动态发现并调用以下工具:

  • 'text_to_speech': 用于将日语文本转换为语音。
    • 参数: 'text' (要合成的文本), 'style_id' (音色 ID,例如 3 代表普通,22 代表耳语), 'rate' (语速,可选,默认 1.0), 'streaming' (是否启用流式合成,可选,默认 true)。
  • 'list_voice_styles': 用于查询所有可用的 VOICEVOX 音色风格。
    • 参数: 'speaker_name' (可选,按说话人名称过滤), 'style_name' (可选,按音色风格名称过滤)。

基本使用方法

一旦 'voicevox-mcp-server' 按照上述配置由 MCP 客户端启动,AI 助手即可通过标准 MCP JSON-RPC 请求与服务器通信。

例如:

  1. AI 助手查询可用音色: 客户端发送 'tools/list' 请求或 'tools/call' 请求调用 'list_voice_styles' 工具,获取 VOICEVOX 中所有说话人及其音色 ID 和特性。
  2. AI 助手生成语音: 客户端发送 'tools/call' 请求调用 'text_to_speech' 工具,提供日语文本和选定的 'style_id',MCP 服务器将返回语音数据或直接播放。

注意: 用户无需手动运行 'voicevox-mcp-server' 命令。它通常会由集成它的 MCP 客户端在后台自动启动和管理。

信息

分类

AI与计算