Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion developer-guide/resources/coding-agents.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,7 @@

<CodeGroup>
```bash All skills
npx skills add https://docs.fish.audio

Check warning on line 36 in developer-guide/resources/coding-agents.mdx

View check run for this annotation

Mintlify / Mintlify Validation (hanabiaiinc) - vale-spellcheck

developer-guide/resources/coding-agents.mdx#L36

Did you really mean 'npx'?
```

```bash One skill
Expand Down Expand Up @@ -66,7 +66,7 @@
</Card>

<Card title="Stream from an LLM" icon="bolt">
"Stream an LLM's tokens to Fish Audio TTS over the WebSocket."

Check warning on line 69 in developer-guide/resources/coding-agents.mdx

View check run for this annotation

Mintlify / Mintlify Validation (hanabiaiinc) - vale-spellcheck

developer-guide/resources/coding-agents.mdx#L69

Did you really mean 'LLM's'?
</Card>

<Card title="Raw API, any language" icon="code">
Expand All @@ -76,7 +76,7 @@

## Or connect via MCP

The [Fish Audio MCP server](/overview/mcp) at `https://api.fish.audio/mcp` gives your agent tools instead of docs: it can search the voice library, generate speech, and transcribe audio with your Fish Audio account (OAuth sign-in, no API key). See the [MCP server guide](/overview/mcp) for client setup and the tool list.
The [Fish Audio MCP server](/overview/mcp) at `https://api.fish.audio/mcp` gives your agent tools instead of docs: it can search the voice library, generate speech, and transcribe audio with your Fish Audio account (OAuth sign-in, no API key). See the [MCP server guide](/overview/mcp) for client setup and the [tool list](/overview/mcp/tools) for what the agent can call.

<Note>
This site also exposes [llms.txt](https://docs.fish.audio/llms.txt) and [llms-full.txt](https://docs.fish.audio/llms-full.txt) for agents that fetch docs directly.
Expand Down
6 changes: 5 additions & 1 deletion docs.json
Original file line number Diff line number Diff line change
Expand Up @@ -67,7 +67,11 @@
"overview/platform/create-voice/voice-design"
]
},
"overview/mcp"
{
"group": "MCP Server",
"icon": "plug",
"pages": ["overview/mcp", "overview/mcp/tools"]
}
]
},
{
Expand Down
29 changes: 27 additions & 2 deletions overview/mcp.mdx
Original file line number Diff line number Diff line change
@@ -1,14 +1,14 @@
---
title: "MCP Server"
description: "Connect Claude, Cursor, or any MCP client to your Fish Audio account: search voices, generate speech, transcribe audio, and create images and videos"
description: "Connect Claude, Cursor, or any MCP client to your Fish Audio account: search voices, generate speech, transcribe audio, create images and videos, and produce long-form Story Studio projects"
icon: "plug"
---

import { PromptCard } from "/snippets/prompt-card.jsx";

The Fish Audio MCP server gives AI agents direct access to your Fish Audio account: they can browse the voice library, generate speech, transcribe audio, and generate or edit images and videos for you.
The Fish Audio MCP server gives AI agents direct access to your Fish Audio account: they can browse the voice library, clone a voice, generate speech, transcribe audio, generate or edit images and videos, and produce multi-speaker [Story Studio](https://fish.audio/app/story-studio) projects for you.

- **Endpoint**: `https://api.fish.audio/mcp` (streamable HTTP)

Check warning on line 11 in overview/mcp.mdx

View check run for this annotation

Mintlify / Mintlify Validation (hanabiaiinc) - vale-spellcheck

overview/mcp.mdx#L11

Did you really mean 'streamable'?
- **Authentication**: OAuth. Your MCP client opens a browser window, you sign in with your Fish Audio account, and choose the team the connection works in.
- **Billing**: usage draws from your plan's package credits, exactly like the [web app](https://fish.audio/app). It does not consume developer API credits. Image and video generation is quoted first, and the agent asks you to confirm the price before it generates.

Expand All @@ -17,7 +17,7 @@
<Tabs>
<Tab title="Claude Code">
```bash
claude mcp add --transport http fish-audio https://api.fish.audio/mcp

Check warning on line 20 in overview/mcp.mdx

View check run for this annotation

Mintlify / Mintlify Validation (hanabiaiinc) - vale-spellcheck

overview/mcp.mdx#L20

Did you really mean 'claude'?

Check warning on line 20 in overview/mcp.mdx

View check run for this annotation

Mintlify / Mintlify Validation (hanabiaiinc) - vale-spellcheck

overview/mcp.mdx#L20

Did you really mean 'mcp'?
```

Run `/mcp` inside Claude Code to sign in, then ask "Generate a short greeting with a warm English voice."
Expand All @@ -35,7 +35,7 @@
```json
{
"mcpServers": {
"fish-audio": { "url": "https://api.fish.audio/mcp" }

Check warning on line 38 in overview/mcp.mdx

View check run for this annotation

Mintlify / Mintlify Validation (hanabiaiinc) - vale-spellcheck

overview/mcp.mdx#L38

Did you really mean 'mcp'?
}
}
```
Expand Down Expand Up @@ -121,10 +121,34 @@
icon="film"
prompt="Turn the image you just generated into a short video with a slow push-in, and give me the video URL and what was charged."
/>

<PromptCard
title="Produce a story"
icon="book"
prompt="Import chapters.md into a new Story Studio project, give each character a distinct voice, and quote the credits before generating the first chapter."
/>
</CardGroup>

In coding agents like Claude Code and Codex, tools compose with the shell: the agent can download generated audio, images, and videos with `curl`, upload local recordings for transcription or reference images for editing, or batch-generate a directory of scripts.

## Tools

The core tool set is 37 tools across six areas. Agents choose them for you from a plain-language request, so the names matter mainly when you want to steer an agent to a specific step. Your client's own tool list is what the agent actually sees, and it includes a few more tools besides these.

| Area | Tools | What they cover |
| ------------------------ | ----- | ------------------------------------------------------------------------------------------- |
| Voices | 4 | Search the voice library, read the details of a voice, create and verify a voice clone |
| Speech and transcription | 2 | Text to speech, and speech to text |
| File uploads | 2 | Temporary slots for local audio, images, and video |
| Images and video | 10 | Model discovery, price estimates, submission, and polling |
| Story Studio | 17 | Long-form, multi-speaker projects: import and cast, edit blocks, generate audio, and export |
| Account | 2 | Team workspaces and credit balance |

<Card title="MCP tools reference" icon="wrench" href="/overview/mcp/tools">
The tools the server exposes, with the exact tool names and what each one
does.
</Card>

## Good to know

- Add audio tags in square brackets inside the text to control delivery: `[whispering]`, `[excited]`, `[laughing]`. Tags are performed, never spoken.
Expand All @@ -133,5 +157,6 @@
- Before an image or video is generated, the agent requests a credit estimate and asks you to confirm it. The server re-checks the price when the job is submitted and never charges more than the amount you approved.
- Video generation needs a Plus plan or higher. Free plans have a daily image allowance and a smaller image count per request; the estimate reports these limits before you are asked to approve anything.
- Reference images for editing or image-to-video are JPEG, PNG, or WebP files up to 20 MB. The agent uploads them for you, and an image it just generated can be reused as input without downloading it.
- Story Studio works on the same projects as the [web editor](https://fish.audio/app/story-studio). Importing, casting, and editing are free; only generated audio costs credits. Export requires a paid plan.
- Generated audio, images, and videos are returned as permanent URLs; failed generations are refunded.
- A connection is bound to the team you chose at sign-in. To work in another team, add the server again and choose that team.
Loading
Loading