Skip to content

agent: @U0AJM7X8FBRCurrent: In our docs, there is nowhere that explains our MCP#79

Open
sweetmantech wants to merge 4 commits intomainfrom
feat/mcp-docs-full-tool-list
Open

agent: @U0AJM7X8FBRCurrent: In our docs, there is nowhere that explains our MCP#79
sweetmantech wants to merge 4 commits intomainfrom
feat/mcp-docs-full-tool-list

Conversation

@sweetmantech
Copy link
Copy Markdown
Collaborator

@sweetmantech sweetmantech commented Mar 24, 2026

Automated PR from coding agent.

Prompt: @U0AJM7X8FBRCurrent: In our docs, there is nowhere that explains our MCP server or tool list. Expected: Our docs should clearly explain our MCP server and our tools. Note: there IS a MCP tab but it links to the code for the mintify search_recoup server - which is helpful, but a different server. We should explain both, the server to search our docs, and our actual MCP server that calls our tools.

Summary by CodeRabbit

  • Documentation
    • Reorganized MCP docs into two MCP server sections with a “Choose your MCP server” selector, step-by-step setup, and per-client connection examples (desktop clients, VS Code, TypeScript SDK) using Bearer tokens.
    • Added a comprehensive, categorized Tool Reference (40+ tools) and new MCP tools page.
    • Renamed and updated Quickstart, homepage, and API Reference copy and navigation ordering; shortened authentication guidance and linked to an auth guide.

@coderabbitai
Copy link
Copy Markdown

coderabbitai bot commented Mar 24, 2026

📝 Walkthrough

Walkthrough

Docs reorganized: the "MCP" page was renamed "MCP Servers" and split into Docs Search and Recoup API MCP sections; prompt_sandbox/tool schemas were removed and a new mcp-tools reference listing 40+ tools was added. Homepage, quickstart, API reference, and docs navigation were updated.

Changes

Cohort / File(s) Summary
MCP Documentation
mcp.mdx, mcp-tools.mdx
Renamed MCP page to "MCP Servers"; replaced single-provider narrative with two MCP server choices; removed prior prompt_sandbox schema and run_sandbox_command docs; added per-client connection examples and a categorized tools reference listing 40+ tools.
API Reference
api-reference/introduction.mdx
Renamed to "API Reference"; removed detailed auth/background content; added concise Base URL and pointer to /authentication; updated OpenAPI card wording.
Quickstart
quickstart.mdx
Condensed onboarding: simplified API key step; changed first-request examples to a Spotify artist search; updated code samples and response shape to artist-focused schema; added MCP Server next-step.
Homepage / Marketing
index.mdx
Updated frontmatter and homepage copy; replaced "Get Started" with "Choose your integration path" (REST API, MCP Server, CLI); revised capability and integration cards and support text.
Docs Navigation
docs.json
Reordered "Guides" → "Getting started": moved mcp before cli, inserted new mcp-tools between them; re-added cli.

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~20 minutes

Possibly related PRs

Poem

🐰 I hopped through docs, tidy and quick,
MCPs split neatly—two tricks for the pick,
Tools in neat rows, examples aligned,
Bearer tokens snug, auth steps defined,
A tiny hop, docs polished and slick.

🚥 Pre-merge checks | ✅ 2 | ❌ 1

❌ Failed checks (1 inconclusive)

Check name Status Explanation Resolution
Title check ❓ Inconclusive The title is vague and contains formatting artifacts (@U0AJM7X8FBRCurrent, incomplete sentence). It does not clearly communicate the main change: adding comprehensive MCP documentation. Rewrite the title as a clear, complete sentence describing the main change, e.g., 'Add MCP server documentation and tool reference' or 'Document MCP servers and available tools'.
✅ Passed checks (2 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch feat/mcp-docs-full-tool-list

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.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

- Fix navigation order: authentication now appears before MCP (you need auth before MCP)
- Homepage: add integration path cards (REST/MCP/CLI), clearer "what you can build" framing
- Quickstart: replace Tasks example (requires existing data) with Spotify search (works immediately); add MCP card in next steps
- MCP page: add ready-to-paste config snippets for Claude Desktop, Cursor, and VS Code; move tool reference after connection guides
- API reference introduction: remove duplicate auth/base URL content, link to authentication guide instead

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Copy link
Copy Markdown

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

Caution

Some comments are outside the diff and can’t be posted inline due to platform limitations.

⚠️ Outside diff range comments (1)
mcp.mdx (1)

56-104: ⚠️ Potential issue | 🟠 Major

Same auth header issue in Cursor, VS Code, and TypeScript examples.

All remaining connection examples also use Authorization: Bearer format. Once the correct authentication method is confirmed, update all four config snippets consistently.

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@mcp.mdx` around lines 56 - 104, Update the three connection examples
(.cursor/mcp.json, ~/.cursor/mcp.json, .vscode/mcp.json, and the TypeScript
StreamableHTTPClientTransport requestInit headers) to use the confirmed
authentication header format instead of "Authorization: Bearer YOUR_API_KEY":
locate the JSON snippets for "mcpServers"/"servers" and the TypeScript transport
construction (StreamableHTTPClientTransport and its requestInit.headers) and
replace the "Authorization" header value consistently with the agreed scheme
(e.g., the exact header name and token prefix provided by the auth spec) across
all examples.
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Inline comments:
In `@quickstart.mdx`:
- Around line 29-51: Update all Spotify search examples to use the correct query
parameter name `q` instead of `query`: change the curl example URL parameter in
the curl command, update the requests.get params object in the Python snippet
(replace params={"query": "Drake", "type": "artist"} with params={"q": "Drake",
"type": "artist"}), and modify the fetch URL in the JavaScript example to use
?q=Drake&type=artist; ensure every occurrence of "query" in these three examples
is replaced with "q".

---

Outside diff comments:
In `@mcp.mdx`:
- Around line 56-104: Update the three connection examples (.cursor/mcp.json,
~/.cursor/mcp.json, .vscode/mcp.json, and the TypeScript
StreamableHTTPClientTransport requestInit headers) to use the confirmed
authentication header format instead of "Authorization: Bearer YOUR_API_KEY":
locate the JSON snippets for "mcpServers"/"servers" and the TypeScript transport
construction (StreamableHTTPClientTransport and its requestInit.headers) and
replace the "Authorization" header value consistently with the agreed scheme
(e.g., the exact header name and token prefix provided by the auth spec) across
all examples.

ℹ️ Review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: 65379075-2f88-4c4a-bebf-70d320933bd5

📥 Commits

Reviewing files that changed from the base of the PR and between e083670 and 05c455c.

📒 Files selected for processing (5)
  • api-reference/introduction.mdx
  • docs.json
  • index.mdx
  • mcp.mdx
  • quickstart.mdx
✅ Files skipped from review due to trivial changes (1)
  • docs.json

…rate tool reference

- Rewrite mcp.mdx with Tabs, Steps, CardGroup, Info/Warning callouts
- Extract tool reference into dedicated mcp-tools.mdx page
- Add mcp-tools to navigation in docs.json

Made-with: Cursor
The OpenAPI spec defines the parameter as `q`, so the quickstart
examples would return 400 errors with `query`.

Made-with: Cursor
Copy link
Copy Markdown

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🧹 Nitpick comments (1)
mcp-tools.mdx (1)

14-136: Consider adding a quick-jump index at the top for faster navigation.

Given the page length, a compact category index (anchor links or Mintlify cards) would improve scan speed on desktop/mobile.

As per coding guidelines: "Keep documentation content concise and scannable."

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@mcp-tools.mdx` around lines 14 - 136, Add a compact "quick-jump" index at the
top that links to each major category heading (e.g., Artists, Chats, Tasks,
Pulses, Catalogs & Songs, Spotify, YouTube, Search & Research, Images, Video,
Audio, Files & Knowledge, Communication, Segments, Sandboxes, Utilities) using
anchor links that target the existing markdown headings (e.g., "## Artists") so
users can jump directly to the tool tables like `create_new_artist`,
`get_chats`, `get_tasks`, `select_catalogs`, `get_spotify_search`,
`youtube_login`, `search_web`, `generate_image`, `generate_sora_2_video`,
`transcribe_audio`, `create_knowledge_base`, etc.; keep the index compact and
responsive (single-line pills or a collapsible mobile summary) so it remains
scannable on desktop and mobile.
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Nitpick comments:
In `@mcp-tools.mdx`:
- Around line 14-136: Add a compact "quick-jump" index at the top that links to
each major category heading (e.g., Artists, Chats, Tasks, Pulses, Catalogs &
Songs, Spotify, YouTube, Search & Research, Images, Video, Audio, Files &
Knowledge, Communication, Segments, Sandboxes, Utilities) using anchor links
that target the existing markdown headings (e.g., "## Artists") so users can
jump directly to the tool tables like `create_new_artist`, `get_chats`,
`get_tasks`, `select_catalogs`, `get_spotify_search`, `youtube_login`,
`search_web`, `generate_image`, `generate_sora_2_video`, `transcribe_audio`,
`create_knowledge_base`, etc.; keep the index compact and responsive
(single-line pills or a collapsible mobile summary) so it remains scannable on
desktop and mobile.

ℹ️ Review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: 1d963e8a-b388-4e31-89f6-fbaabcd71899

📥 Commits

Reviewing files that changed from the base of the PR and between 05c455c and 52d8de9.

📒 Files selected for processing (3)
  • docs.json
  • mcp-tools.mdx
  • mcp.mdx
✅ Files skipped from review due to trivial changes (2)
  • docs.json
  • mcp.mdx

Copy link
Copy Markdown

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Inline comments:
In `@quickstart.mdx`:
- Around line 57-71: The example JSON includes an extra "status" field that is
not part of the OpenAPI schema for SpotifySearchResponse; remove the "status":
"success" entry and ensure the example only contains the allowed top-level
properties (e.g., "artists", "albums", "tracks", "playlists") and valid artist
object fields (id, name, followers, popularity, genres, image) so the example
matches the SpotifySearchResponse schema.
🪄 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: b36359fa-1c8e-496b-b51a-f5ecf4afc9bc

📥 Commits

Reviewing files that changed from the base of the PR and between 52d8de9 and 2a2f366.

📒 Files selected for processing (1)
  • quickstart.mdx

Comment on lines 57 to 71
```json
{
"status": "success",
"tasks": [
"artists": [
{
"id": "550e8400-e29b-41d4-a716-446655440000",
"title": "Daily Fan Report",
"prompt": "Generate a summary of new fans from the past 24 hours",
"schedule": "0 9 * * *",
"account_id": "123e4567-e89b-12d3-a456-426614174000",
"artist_account_id": "987fcdeb-51a2-3b4c-d5e6-789012345678",
"enabled": true
"id": "3TVXtAsR1Inumwj472S9r4",
"name": "Drake",
"followers": 88000000,
"popularity": 96,
"genres": ["canadian hip hop", "rap"],
"image": "https://i.scdn.co/image/..."
}
]
}
```
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue | 🟡 Minor

🧩 Analysis chain

🏁 Script executed:

#!/bin/bash
# Check the OpenAPI spec for the actual Spotify search response schema
cat api-reference/openapi.json | jq '.paths["/api/spotify/search"].get.responses["200"].content["application/json"].schema'

Repository: recoupable/docs

Length of output: 117


🏁 Script executed:

cat api-reference/openapi.json | jq '.components.schemas.SpotifySearchResponse'

Repository: recoupable/docs

Length of output: 637


Remove the "status" field from the example response.

The "status": "success" field in the example (line 60) does not exist in the actual OpenAPI schema for SpotifySearchResponse. The schema only defines artists, albums, tracks, and playlists properties. Update the example to match the actual API response structure.

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@quickstart.mdx` around lines 57 - 71, The example JSON includes an extra
"status" field that is not part of the OpenAPI schema for SpotifySearchResponse;
remove the "status": "success" entry and ensure the example only contains the
allowed top-level properties (e.g., "artists", "albums", "tracks", "playlists")
and valid artist object fields (id, name, followers, popularity, genres, image)
so the example matches the SpotifySearchResponse schema.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants