Fish Audio MCP
Fish Audio TTS — generate natural speech and browse the Fish voice library.

Generate natural-sounding speech from text using Fish Audio voices via Ace Data Cloud. Browse and search the voice library, fetch model metadata, submit asynchronous generation tasks, and poll single or batched results.
This extension registers the fish MCP server with VS Code so GitHub
Copilot and any other agent that speaks the Model Context Protocol
can call it directly from chat.
Quick Start
- Install this extension. VS Code registers the
fish MCP server automatically.
- Get an API token from Ace Data Cloud → API Keys. New accounts include free trial credit.
- Open Copilot Chat in agent mode and ask for a audio task — VS Code will prompt for the token the first time and store it securely.
The default config talks to the hosted streamable-HTTP endpoint at
https://fish.mcp.acedata.cloud/mcp — no Python, no uvx, no local install needed.
Example prompts
- "Generate audio for "Welcome to Ace Data Cloud" with a Fish voice and give me the URL."
- "List 10 Fish voice models and show their language, gender, and any tags."
- "Check the status of Fish task ."
6 tools available via this server.
| Tool |
Description |
fish_generate_audio |
Generate speech from text via a Fish voice model |
fish_list_models |
List available Fish voice models |
fish_get_model |
Fetch metadata for a specific Fish voice model |
fish_get_task |
Get the status / result of a generation task |
fish_get_tasks_batch |
Batch-fetch the status / result of multiple tasks |
fish_get_usage_guide |
Get the API usage guide |
Pricing
Per-character billing. Free trial credit on sign-up. See full pricing at https://docs.acedata.cloud.
Configuration
This extension contributes the following entry to your VS Code MCP config:
{
"servers": {
"fish": {
"type": "http",
"url": "https://fish.mcp.acedata.cloud/mcp",
"headers": { "Authorization": "Bearer ${input:acedatacloud_api_token}" }
}
},
"inputs": [
{
"type": "promptString",
"id": "acedatacloud_api_token",
"description": "Ace Data Cloud API token",
"password": true
}
]
}
VS Code will prompt for the token on first use and persist it in the OS
secret store (Keychain / Credential Manager / libsecret).
Alternative: local stdio (no network roundtrip)
If you prefer running the server locally — for offline dev, air-gapped
environments, or to pin to a specific PyPI version — install
uv and replace your mcp.json entry with:
{
"servers": {
"fish": {
"type": "stdio",
"command": "uvx",
"args": ["mcp-fish"],
"env": { "ACEDATACLOUD_API_TOKEN": "${input:acedatacloud_api_token}" }
}
}
}
uvx will download and run the latest mcp-fish on demand.
Alternative: OAuth via Dynamic Client Registration
The hosted endpoint also accepts OAuth 2.1 with DCR.
Drop the headers and inputs blocks and VS Code will run the auth flow on
first use (redirect URL http://127.0.0.1:33418 or https://vscode.dev/redirect).
Links
License
MIT — see LICENSE.