Document the product MCP server, drop the docs-MCP hooks#105
Conversation
📝 WalkthroughWalkthroughThe changes add Fish Audio MCP server documentation covering OAuth setup, client connections, tools, billing, and operational rules. Agent guides now reference the MCP server and documentation indexes, while navigation exposes the new MCP page. ChangesMCP documentation and integration
Estimated code review effort: 3 (Moderate) | ~20 minutes Sequence Diagram(s)sequenceDiagram
participant Agent as Claude Code
participant MCP as Fish Audio MCP server
participant API as Fish Audio API
Agent->>MCP: Configure the MCP endpoint
MCP->>API: Complete OAuth sign-in
Agent->>MCP: Request audio generation or transcription
MCP->>API: Invoke the selected MCP tool
API-->>MCP: Return the tool result
MCP-->>Agent: Return audio or transcription data
Possibly related PRs
Suggested reviewers: 🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✨ Finishing Touches📝 Generate docstrings
🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
|
Preview deployment for your docs. Learn more about Mintlify Previews.
💡 Tip: Enable Workflows to automatically generate PRs for you. |
Add overview/mcp under Platform (Web App): the api.fish.audio/mcp server (OAuth sign-in, playground-credit billing), per-client setup, and the tool list. Remove the old docs.fish.audio/mcp support: the mcp/cursor/vscode contextual options and the live-docs MCP setup section in the coding-agents guide now point at the product server. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
8668f7f to
099663c
Compare
There was a problem hiding this comment.
Actionable comments posted: 3
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In `@developer-guide/resources/coding-agents.mdx`:
- Line 82: Update the llms.txt and llms-full.txt links in the documentation text
to use root-relative paths instead of absolute docs.fish.audio URLs, preserving
the existing link labels and destinations.
In `@overview/mcp.mdx`:
- Around line 99-100: Update the speech_to_text pricing entry in the
transcription costs table to use a consistent time unit for both pro and flash
models, or explicitly show the conversion so their costs can be compared
directly. Leave the text_to_speech pricing entry unchanged.
- Around line 13-15: Update the Connect section in the MCP documentation before
the Tabs component to add a concise prerequisites statement covering a Fish
Audio account, an MCP client that supports streamable HTTP/OAuth, and browser
access for sign-in. Keep the existing connection tabs and procedural steps
unchanged.
🪄 Autofix (Beta)
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: defaults
Review profile: CHILL
Plan: Pro
Run ID: dc949822-637d-4bbb-85bb-bc275e53a264
📒 Files selected for processing (4)
developer-guide/resources/agent-quickstart.mdxdeveloper-guide/resources/coding-agents.mdxdocs.jsonoverview/mcp.mdx
|
|
||
| <Note> | ||
| **Skill vs MCP:** the skill is a self-contained instruction file that works offline after install; MCP fetches the latest docs live. You can use both. 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. | ||
| 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. |
There was a problem hiding this comment.
📐 Maintainability & Code Quality | 🟡 Minor | ⚡ Quick win
Use relative paths for the internal documentation links.
These links point to the same docs site, so replace the absolute URLs with root-relative paths.
Suggested fix
- 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.
+ This site also exposes [llms.txt](/llms.txt) and [llms-full.txt](/llms-full.txt) for agents that fetch docs directly.As per coding guidelines: “Use relative paths for internal links” and “Do not use absolute URLs for internal links.”
📝 Committable suggestion
‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.
| 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. | |
| This site also exposes [llms.txt](/llms.txt) and [llms-full.txt](/llms-full.txt) for agents that fetch docs directly. |
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
In `@developer-guide/resources/coding-agents.mdx` at line 82, Update the llms.txt
and llms-full.txt links in the documentation text to use root-relative paths
instead of absolute docs.fish.audio URLs, preserving the existing link labels
and destinations.
Source: Coding guidelines
| ## Connect | ||
|
|
||
| <Tabs> |
There was a problem hiding this comment.
📐 Maintainability & Code Quality | 🟡 Minor | ⚡ Quick win
Add prerequisites before the connection tabs.
This procedural section should first state requirements such as a Fish Audio account, an MCP client supporting streamable HTTP/OAuth, and browser access for sign-in.
Suggested addition
+Before you begin:
+
+- Make sure you have a Fish Audio account.
+- Use an MCP client that supports streamable HTTP and OAuth.
+- Make sure the client can open a browser for sign-in.
+
## ConnectAs per coding guidelines: “Include prerequisites at the start of procedural content.”
📝 Committable suggestion
‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.
| ## Connect | |
| <Tabs> | |
| Before you begin: | |
| - Make sure you have a Fish Audio account. | |
| - Use an MCP client that supports streamable HTTP and OAuth. | |
| - Make sure the client can open a browser for sign-in. | |
| ## Connect | |
| <Tabs> |
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
In `@overview/mcp.mdx` around lines 13 - 15, Update the Connect section in the MCP
documentation before the Tabs component to add a concise prerequisites statement
covering a Fish Audio account, an MCP client that supports streamable
HTTP/OAuth, and browser access for sign-in. Keep the existing connection tabs
and procedural steps unchanged.
Source: Coding guidelines
| | `text_to_speech` | Generate speech and return a permanent audio URL | 1 credit per UTF-8 byte of text | | ||
| | `speech_to_text` | Transcribe audio from a public URL | `pro`: 50 credits/second, `flash`: 500 credits/minute | |
There was a problem hiding this comment.
🎯 Functional Correctness | 🟡 Minor | ⚡ Quick win
Use consistent units for transcription costs.
The same cost column mixes credits/second and credits/minute, making model comparison and spend estimates easy to misread. Normalize both to one unit or show the conversion explicitly.
Suggested clarification
- | `speech_to_text` | Transcribe audio from a public URL | `pro`: 50 credits/second, `flash`: 500 credits/minute |
+ | `speech_to_text` | Transcribe audio from a public URL | `pro`: 3,000 credits/minute, `flash`: 500 credits/minute |📝 Committable suggestion
‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.
| | `text_to_speech` | Generate speech and return a permanent audio URL | 1 credit per UTF-8 byte of text | | |
| | `speech_to_text` | Transcribe audio from a public URL | `pro`: 50 credits/second, `flash`: 500 credits/minute | | |
| | `text_to_speech` | Generate speech and return a permanent audio URL | 1 credit per UTF-8 byte of text | | |
| | `speech_to_text` | Transcribe audio from a public URL | `pro`: 3,000 credits/minute, `flash`: 500 credits/minute | |
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
In `@overview/mcp.mdx` around lines 99 - 100, Update the speech_to_text pricing
entry in the transcription costs table to use a consistent time unit for both
pro and flash models, or explicitly show the conversion so their costs can be
compared directly. Leave the text_to_speech pricing entry unchanged.
Summary
overview/mcpunder Platform (Web App): the product MCP server atapi.fish.audio/mcp— OAuth sign-in (no API key), playground-credit billing, per-client setup (Claude Code, Claude.ai, Cursor, Codex CLI, Windsurf), example prompts, and evergreen usage notes (audio tags, default voices, refunds, local-file transcription). Tool names and per-tool pricing are intentionally not enumerated — the toolset will keep evolving.mcp/cursor/vscodecontextual options in docs.json, and the live-docs MCP setup section in the coding-agents guide (now a short pointer to the product MCP page; the llms.txt note is kept).Preview
Verified locally with
mint dev(page renders, nav entry appears, no residualdocs.fish.audio/mcpreferences outside package-lock).🤖 Generated with Claude Code