Back to Directory/Media & Images

io.github.AceDataCloud/mcp-fish

MCP server exposing the AceDataCloud Fish Audio API (text-to-speech with voice conditioning)

Media & ImagesPythonv2026.10.4.1

MCP Fish Server

A Model Context Protocol (MCP) server for Fish Audio TTS (Text-to-Speech) via the AceDataCloud platform. Generate natural-sounding speech and explore the Fish voice model library.

Features

  • High-quality TTS: Generate speech from text via Fish Audio models
  • Voice library: Browse, search, and fetch metadata for Fish voice models
  • Asynchronous tasks: Submit generation tasks and poll for results
  • Batch task lookup: Query multiple task results in one call

One-shot voice cloning

Pass one public HTTPS reference audio URL plus its exact transcript. This conditions only the current TTS request and does not create a reusable voice model:

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",
)

Use reference_id for saved or public voices, and the one-shot reference fields for a temporary voice. Do not combine them. Reference audio supports MP3/WAV and should be 10–270 seconds. Billing remains based on the target text's UTF-8 byte count.

Installation

pip install mcp-fish

Configuration

Set your AceDataCloud API token:

export ACEDATACLOUD_API_TOKEN=your_token_here

Get your token from https://platform.acedata.cloud.

Usage

stdio mode (default)

mcp-fish

HTTP mode

mcp-fish --transport http --port 8000

Tool Reference

ToolDescription
fish_generate_audioGenerate speech from text via a Fish voice model
fish_list_modelsList available Fish voice models
fish_get_modelFetch metadata for a specific Fish voice model
fish_get_taskGet the status / result of a generation task
fish_get_tasks_batchBatch-fetch the status / result of multiple tasks
fish_get_usage_guideGet the API usage guide

Documentation

Documentation

License

MIT — see LICENSE at the repository root.

Installation

Source-derived launch command. Check the maintainer’s required arguments and credentials before running:

bash
uvx mcp-fish

Set up in your AI client

Merge this template into ~/Library/Application Support/Claude/claude_desktop_config.json. Keep existing servers. Add any arguments, credentials, and permissions required by the maintainer; this template has not been install-tested.

json
{
  "mcpServers": {
    "io-github-acedatacloud-mcp-fish": {
      "command": "uvx",
      "args": [
        "mcp-fish"
      ]
    }
  }
}

Restart Claude Desktop completely for changes to take effect. Confirm the server appears connected in the client’s tool list, then try a read-only example from its documentation.

Claude Desktop setup reference

Package

mcp-fishpypi

Compatible MCP Clients

io.github.AceDataCloud/mcp-fish works with any MCP-compatible client. Copy the config snippet from the Configuration section above and add it to the file shown for your client, then restart the application.

  • Claude Desktop~/Library/Application Support/Claude/claude_desktop_config.jsonRestart Claude Desktop completely for changes to take effect.
  • Cursor~/.cursor/mcp.jsonRestart Cursor for changes to take effect.
  • VS Code.vscode/mcp.jsonReload VS Code window for changes to take effect.
  • Windsurf~/.codeium/windsurf/mcp_config.jsonRestart Windsurf for changes to take effect.
  • Claude Code.mcp.jsonSave at the project root, then start Claude Code in that project and review the MCP server approval prompt. Keep real credentials out of shared files.

Learn More