mcpField
M
mcp-fish

mcp-fish

远程服务
platform.acedata.cloud媒体与设计11 周前更新

关于 mcp-fish

mcp-fish 是通过 AceDataCloud 调用 Fish Audio 的 MCP 服务,可生成语音并浏览音色模型,也能跟踪生成任务。

主要功能

  1. 01Fish Audio 文本转语音
  2. 02浏览和搜索音色模型
  3. 03用参考音频临时调整音色
  4. 04轮询及批量查询生成任务

适用场景

  1. 01将文本生成为语音
  2. 02查找音色模型并读取元数据
  3. 03根据参考音频生成语音
  4. 04查询一个或多个任务结果

MCP 相关

向 MCP 客户端提供语音生成、音色模型查询、任务跟踪和使用指南工具。支持托管 OAuth、API 令牌及本地 stdio 接入。

配置

远程服务无需本地安装。选择你使用的客户端,复制配置或使用一键安装。

服务地址https://fish.mcp.acedata.cloud/mcp
一键复制安装命令
Claude CodeTerminal
Cursor.cursor/mcp.json
VS Code.vscode/mcp.json
Claude Desktopclaude_desktop_config.json
Windsurf~/.codeium/windsurf/mcp_config.json

命令在终端中运行;JSON 粘贴到对应客户端的 MCP 配置后重启。需要授权的服务会在首次连接时提示登录。

安装包
pypimcp-fish2026.10.18.5

工具

详细介绍

MCP Fish 服务

通过 AceDataCloud 平台为 Fish Audio TTS(文本转语音)提供的模型上下文协议(MCP)服务。 生成自然流畅的语音,并探索 Fish 语音模型库。

功能

  • 高质量 TTS:通过 Fish Audio 模型将文本转为语音
  • 语音库:浏览、搜索 Fish 语音模型并获取其元数据
  • 异步任务:提交生成任务并轮询结果
  • 批量查询任务:一次调用查询多个任务结果
单次语音克隆

传入一个公开的 HTTPS 参考音频 URL 及其准确转录文本。此操作仅用于当前 TTS 请求,不会创建可重复使用的语音模型:

fish_generate_audio(
    text="New speech in the referenced voice",
    reference_audio_url="https://cdn.acedata.cloud/reference.mp3",
    reference_text="The exact words spoken in the reference audio",
)

已保存或公开的语音请使用 reference_id,临时语音请使用单次参考字段。不要同时使用两者。参考音频支持 MP3/WAV,时长应为 10–270 秒。计费仍按目标文本的 UTF-8 字节数计算。

查找已保存的语音

调用 fish_list_models 并设置 self=true,即可列出调用账户通过 AceDataCloud 创建并保存的语音,包括使用该账户其他 API 令牌创建的语音。这是列表筛选条件,而非隐私设置:已保存的语音为公开语音, 其他人也可以搜索和使用。语音创建 API 的 visibility 输入不会将语音设为私有或不公开;此 MCP 不提供语音创建功能。

使用 page_size 和从 1 开始计数的 page_number 进行分页。设置 self=true 时, sort_by 支持 created_at 和 task_count,并可通过 author_id 进一步筛选 已保存的语音。title_language 仅支持公开语音库查询,不能与 self=true 同时使用。返回的 has_more 对账户创建的语音是布尔值,但在公开语音库查询中可能为 null;这种情况下请使用 total 和 page_size 进行分页。将返回的语音 ID 作为 reference_id 传给 fish_generate_audio。

连接:托管 OAuth、API 令牌或本地 stdio

托管端点为 https://fish.mcp.acedata.cloud/mcp。为 MCP 客户端选择一种连接方式:

方式适用场景凭据设置
托管 OAuth客户端支持远程 MCP OAuth只添加 URL,然后登录 AceDataCloud 并批准访问。无需将令牌粘贴到客户端配置中。
托管 API 令牌客户端无法完成 OAuth,或你需要明确的集成凭据在 Authorization: Bearer … 标头中发送 AceDataCloud API 令牌。将其保存在本地密钥存储区或环境变量中。
本地 stdio客户端运行本地 MCP 进程安装 mcp-fish,并将 ACEDATACLOUD_API_TOKEN 传给该进程。该进程仍会调用 AceDataCloud API。

托管服务提供 OAuth 元数据和动态客户端注册(DCR)。**DCR 用于注册客户端应用,不是 API 密钥。**OAuth 会验证你的登录身份,客户端随后发送生成的 Bearer 令牌;它可能会为该账户重用或创建 API 凭据。通过浏览器登录仍需拥有 AceDataCloud 账户。托管服务可能按用量计费:执行实际操作前,请查看当前服务文档和显示的价格。同一服务不要同时配置 OAuth 登录和固定的 Authorization 标头。

托管 OAuth 示例
  • Claude 和 Claude Desktop 聊天: 在 Customize → Connectors → Add custom connector 中添加远程自定义连接器,输入 https://fish.mcp.acedata.cloud/mcp,选择登录;如果 Claude 询问如何注册 OAuth 客户端,请选择 Register automatically。完成授权。Claude Desktop 的本地 claude_desktop_config.json 是单独的配置步骤。Claude 连接器指南。
  • Claude Code: 运行 claude mcp add --transport http --scope user fish https://fish.mcp.acedata.cloud/mcp,然后运行 claude mcp login fish。检查 /mcp。Claude Code MCP 指南。
  • Cursor: 添加远程服务,只需填写 https://fish.mcp.acedata.cloud/mcp。对于项目,将以下条目合并到 <project>/.cursor/mcp.json;个人使用时,请使用 ~/.cursor/mcp.json。Cursor MCP 指南。
  • VS Code / Copilot: 运行 MCP: Add Server,选择 HTTP,输入 https://fish.mcp.acedata.cloud/mcp,然后完成浏览器登录。新的可移植工作区配置使用 <project>/.mcp.json;以下 VS Code 专用格式使用 <project>/.vscode/mcp.json 或用户配置文件。检查 MCP: List Servers。VS Code MCP 设置指南。
  • Codex: 运行 codex mcp add fish --url https://fish.mcp.acedata.cloud/mcp,然后运行 codex mcp login fish。其用户设置位于 ~/.codex/config.toml。Codex 官方 MCP 指南。

Cursor 项目配置(OAuth):

{
  "mcpServers": {
    "fish": {"url": "https://fish.mcp.acedata.cloud/mcp"}
  }
}

VS Code 专用工作区配置(OAuth):

{
  "servers": {
    "fish": {"type": "http", "url": "https://fish.mcp.acedata.cloud/mcp"}
  }
}
托管 API 令牌
  1. 打开 Ace Data Cloud → Applications。登录,或先注册账号。
  2. 找到 General application。如果尚未创建,请选择 Initialize General Application。通用密钥可使用账号可用的服务;专用应用的密钥则仅限其对应的服务。检查所需的服务/模型访问权限和当前定价。
  3. 从应用卡片中复制 API Key,或打开 Keys / Manage Keys → Create,为此集成创建单独的密钥。为密钥设置易于识别的名称,以便单独撤销或轮换。
  4. 创建密钥时,请检查 Expiration Time、Set Usage Limitation 和 Allowed APIs。仅启用所需的限制,并允许将要调用的操作,然后点击 Create,再从密钥列表中复制令牌。查询任务并不代表获准提交生成请求。确认应用余额足以支付首次请求;任何试用额度以账号当前显示的额度为准。
  5. 仅复制令牌值,不要包含引号、空格或 Bearer 。API Key / API Token 字段需要填写原始值;只有手动配置 HTTP Authorization 标头时才需要添加 Bearer 前缀。platform-... 账号管理令牌不能替代生成 API 密钥。

复制应用 API 密钥,或打开 Manage Keys

创建具有单独名称且可选限制的密钥

将密钥保存在客户端的凭据存储中,或保存在下方所示的环境变量中。切勿将其放入提示词、共享工作流、截图或 Git 提交中。如果身份验证失败,请先检查完整复制的值、应用/服务访问权限、过期时间、使用限额和余额,再创建其他密钥。

固定的 Bearer 标头会绕过 OAuth。如果标头无效,请在尝试浏览器登录前将其移除;请妥善保管已保存的凭据。

对于 Claude Code,添加服务时 shell 会展开令牌;请将已保存的用户 MCP 配置视为机密:

export ACEDATACLOUD_API_TOKEN='YOUR_API_TOKEN'
claude mcp add --transport http --scope user fish https://fish.mcp.acedata.cloud/mcp \
  --header "Authorization: Bearer $ACEDATACLOUD_API_TOKEN"

对于 Claude Code 项目配置,请在 <project>/.mcp.json 中填写变量引用,并在启动 Claude Code 的环境中设置该变量:

{
  "mcpServers": {
    "fish": {
      "type": "http",
      "url": "https://fish.mcp.acedata.cloud/mcp",
      "headers": {"Authorization": "Bearer ${ACEDATACLOUD_API_TOKEN}"}
    }
  }
}

Cursor 在 ~/.cursor/mcp.json 或未提交的项目配置中使用不同的环境变量语法:

{
  "mcpServers": {
    "fish": {
      "url": "https://fish.mcp.acedata.cloud/mcp",
      "headers": {"Authorization": "Bearer ${env:ACEDATACLOUD_API_TOKEN}"}
    }
  }
}

在 VS Code 中,运行 MCP: Open User Configuration,然后合并此服务和它的屏蔽输入;${input:...} 适用于 VS Code 的用户/工作区格式,与 Agent Host .mcp.json 格式不通用:

{
  "inputs": [
    {"id": "acedata-fish-token", "type": "promptString", "description": "AceDataCloud API token", "password": true}
  ],
  "servers": {
    "fish": {
      "type": "http",
      "url": "https://fish.mcp.acedata.cloud/mcp",
      "headers": {"Authorization": "Bearer ${input:acedata-fish-token}"}
    }
  }
}

对于 Cline,请使用其 MCP 配置界面或 CLI 文件 ~/.cline/data/settings/cline_mcp_settings.json;其远程传输值为 streamableHttp。对于 JetBrains AI Assistant,请在 Settings → Tools → AI Assistant → Model Context Protocol (MCP) 中添加远程 URL。对于 Zed,使用仅包含 URL 的 context_servers 条目进行 OAuth,或添加本地 Bearer 标头。这些客户端使用不同的配置架构;请按照各自当前的界面操作,不要照搬其他客户端的 JSON。Cline · JetBrains · Zed。

本地 stdio

安装软件包,并为本地进程提供 API 令牌:

python -m pip install mcp-fish
export ACEDATACLOUD_API_TOKEN='YOUR_API_TOKEN'
mcp-fish

对于 Claude Desktop 本地 MCP,请将此条目合并到其开发者设置打开的文件中(macOS 上为 ~/Library/Application Support/Claude/claude_desktop_config.json)。uvx 需要将 uv 添加到 PATH:

{
  "mcpServers": {
    "fish": {
      "command": "uvx",
      "args": ["mcp-fish"],
      "env": {"ACEDATACLOUD_API_TOKEN": "YOUR_API_TOKEN"}
    }
  }
}

请妥善保密此用户级文件。可自托管的 HTTP 使用 mcp-fish --transport http --port 8000;仅在具备适当网络和 TLS 控制措施的情况下将其公开。即使在本地执行,仍会调用 AceDataCloud API。

使用服务前进行检查
  1. https://fish.mcp.acedata.cloud/health 返回 {"status":"ok"},只能确认端点可访问。
  2. 确认 MCP 客户端已加载工具。fish_get_usage_guide 是参考工具;它无法验证下游 API 访问权限或余额。
  3. 如果需要完整的 API 检查,请先查阅当前服务文档和显示的定价,然后使用自己的有效输入调用 fish_generate_audio。如果结果包含任务 ID,请使用同一 ID 调用 fish_get_task,直到任务成功或失败终止。请勿仅为检查进度而重新提交操作。

对于 401,请检查客户端使用了哪种身份验证方式,以及令牌或 OAuth 会话是否有效。403 可能表示账户权限或内容审核失败;请查看返回的错误信息。余额不足和下游服务故障需要分别诊断。工具已列出或任务已提交,并不能证明操作成功。

工具参考

工具描述
fish_generate_audio通过 Fish 语音模型将文本转换为语音
fish_list_models列出可用的 Fish 语音模型
fish_get_model获取特定 Fish 语音模型的元数据
fish_get_task获取生成任务的状态/结果
fish_get_tasks_batch批量获取多个任务的状态/结果
fish_get_usage_guide获取 API 使用指南

文档

文档

许可证

MIT — 请参阅仓库根目录中的 LICENSE。

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。