-
Notifications
You must be signed in to change notification settings - Fork 301
Refactor the MCP docs #2365
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Refactor the MCP docs #2365
Conversation
appwrite.ioProject ID: Note Appwrite has a Discord community with over 16 000 members. |
WalkthroughThis PR reorganizes the MCP docs and navigation: adds pages for "MCP server for Appwrite API" (/docs/tooling/mcp/api) and "MCP server for Appwrite docs" (/docs/tooling/mcp/docs); introduces integration pages for Claude Desktop and Claude Code; removes legacy pages (claude and mcp-for-docs); converts Cursor, VS Code, and Windsurf guides to a dual‑server (API + Docs) tabbed flow; adds a partial listing IDE/tools (src/partials/mcp-add-ides-tools.md); updates navigation (adds a "Servers" group, renames/links, marks MCP for Docs as new); and adds a redirect from /docs/tooling/mcp/mcp-for-docs → /docs/tooling/mcp/docs. Possibly related PRs
Suggested reviewers
Pre-merge checks (3 passed)✅ Passed checks (3 passed)
Tip 👮 Agentic pre-merge checks are now available in preview!Pro plan users can now enable pre-merge checks in their settings to enforce checklists before merging PRs.
Example: reviews:
pre_merge_checks:
custom_checks:
- name: "Undocumented Breaking Changes"
mode: "warning"
instructions: |
Pass/fail criteria: All breaking changes to public APIs, CLI flags, environment variables, configuration keys, database schemas, or HTTP/GraphQL endpoints must be documented in the "Breaking Change" section of the PR description and in CHANGELOG.md. Exclude purely internal or private changes (e.g., code not exported from package entry points or explicitly marked as internal).Please share your feedback with us on this Discord post. 📜 Recent review detailsConfiguration used: CodeRabbit UI Review profile: CHILL Plan: Pro ⛔ Files ignored due to path filters (1)
📒 Files selected for processing (1)
✅ Files skipped from review due to trivial changes (1)
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (2)
✨ Finishing Touches🧪 Generate unit tests
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 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 2
Caution
Some comments are outside the diff and can’t be posted inline due to platform limitations.
⚠️ Outside diff range comments (1)
src/routes/integrations/mcp-cursor/+page.markdoc (1)
77-79: Fix outdated internal link to API CLI argumentsThe “command-line arguments” link should point to the API server page after the docs restructure.
-You may have noticed the `--users` argument, which enables Cursor to interact with the Appwrite Users API. To enable other Appwrite services, you can add their respective [command-line arguments](/docs/tooling/mcp#command-line-arguments). +You may have noticed the `--users` argument, which enables Cursor to interact with the Appwrite Users API. To enable other Appwrite services, you can add their respective [command-line arguments](/docs/tooling/mcp/api#command-line-arguments).
🧹 Nitpick comments (11)
src/routes/integrations/mcp-cursor/+page.markdoc (2)
59-71: Align sample key name with multi-server conventionElsewhere we use “appwrite-api” for the API server. Consider updating the Cursor example for consistency.
- "appwrite": { + "appwrite-api": {
85-96: Offer Docs MCP quick-add alongside API for parityTo reflect “equal importance,” add a Docs MCP card here as well (light and dark).
Would you like me to add this?
{% only_light %} {% cards %} {% cards_item href="https://apwr.dev/api-mcp-cursor?ref=integrations-catalog" title="Add to Cursor" image="/images/docs/mcp/logos/cursor-ai.svg" %} +{% cards_item href="https://apwr.dev/docs-mcp-cursor?ref=integrations-catalog" title="Add Docs MCP to Cursor" image="/images/docs/mcp/logos/cursor-ai.svg" %} {% /cards_item %} {% /cards %} {% /only_light %} {% only_dark %} {% cards %} {% cards_item href="https://apwr.dev/api-mcp-cursor?ref=integrations-catalog" title="Add to Cursor" image="/images/docs/mcp/logos/dark/cursor-ai.svg" %} +{% cards_item href="https://apwr.dev/docs-mcp-cursor?ref=integrations-catalog" title="Add Docs MCP to Cursor" image="/images/docs/mcp/logos/dark/cursor-ai.svg" %} {% /cards_item %} {% /cards %} {% /only_dark %}src/routes/docs/tooling/mcp/docs/+page.markdoc (1)
83-87: Consider pinning or explicitly scoping the package versionUsing npx without a version will fetch “latest.” If you want deterministic behavior in docs, pin to a major or to @latest explicitly.
- "args": ["@appwrite/mcp-server-docs"] + "args": ["@appwrite/mcp-server-docs@latest"]Also applies to: 101-107
src/routes/docs/tooling/mcp/windsurf/+page.markdoc (1)
58-62: Minor copy tweak (optional)Consider adding “or your self-hosted endpoint” after the Cloud example to help self-hosted users.
-- Replace `<REGION>` with your Appwrite Cloud region (e.g., `nyc`, `fra`) +- Replace `<REGION>` with your Appwrite Cloud region (e.g., `nyc`, `fra`), or use your self-hosted endpoint URLsrc/routes/docs/tooling/mcp/api/+page.markdoc (2)
18-21: Add least-privilege guidance for API keys.Recommend an explicit security callout to avoid over-scoped keys and accidental commits.
Before launching the MCP server, you must [set up an Appwrite project](https://cloud.appwrite.io) and create an **API key** with the necessary scopes enabled. + +{% info title="Security tip: use least privilege and keep keys out of source control" %} +Create an API key with only the scopes your workflow needs. Store it in your OS keychain or environment manager and avoid committing it to git or sharing it in screenshots. +{% /info %}
203-204: Minor grammar/polish in command-line arguments intro.Insert a comma for readability.
-Database tools are enabled by default. In addition you can pass arguments to `uvx mcp-server-appwrite [args]` to enable other MCP tools for various Appwrite APIs. +Database tools are enabled by default. In addition, you can pass arguments to `uvx mcp-server-appwrite [args]` to enable other MCP tools for various Appwrite APIs.src/routes/docs/tooling/mcp/vscode/+page.markdoc (1)
55-59: Add a brief security reminder near the config.Helps users avoid leaking API keys in dotfiles or repos.
- Replace `<REGION>` with your Appwrite Cloud region (e.g., `nyc`, `fra`) + +{% info title="Security tip" %} +Avoid committing `mcp.json` if it contains secrets. Prefer environment managers (e.g., Direnv, 1Password, system keychain) and exclude the file from version control. +{% /info %}src/routes/docs/tooling/mcp/+page.markdoc (1)
15-17: Typo: missing space.“andcode” → “and code”.
-- **Seamless integration**: MCP servers can be easily integrated with popular AI tools andcode editors, enhancing their functionality. +- **Seamless integration**: MCP servers can be easily integrated with popular AI tools and code editors, enhancing their functionality.src/routes/docs/tooling/mcp/claude/+page.markdoc (2)
103-105: Verify remote Docs server command vs. local npx approach.Here you use a hosted HTTP transport for the Docs server, while other pages use a local
npx @appwrite/mcp-server-docs. Please confirm this is intentional and supported, or align to one recommended path for consistency.
49-53: Surface a quick secret-handling reminder.Small addition reduces risk of key leakage in screenshots/configs.
"env": { "APPWRITE_PROJECT_ID": "your-project-id", "APPWRITE_API_KEY": "your-api-key", "APPWRITE_ENDPOINT": "https://<REGION>.cloud.appwrite.io/v1" } + +{% info title="Security tip" %} +Treat `APPWRITE_API_KEY` as sensitive. Prefer environment managers and avoid sharing configs publicly. +{% /info %}src/routes/docs/tooling/mcp/cursor/+page.markdoc (1)
55-59: Add a short security note near the env vars.Keeps guidance consistent across pages.
- Replace `<REGION>` with your Appwrite Cloud region (e.g., `nyc`, `fra`) + +{% info title="Security tip" %} +Do not commit API keys to your repo. Store them in your environment and reference them from `mcp.json`. +{% /info %}
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro
💡 Knowledge Base configuration:
- MCP integration is disabled by default for public repositories
- Jira integration is disabled by default for public repositories
- Linear integration is disabled by default for public repositories
You can enable these sources in your CodeRabbit configuration.
📒 Files selected for processing (10)
src/redirects.json(1 hunks)src/routes/docs/tooling/mcp/+layout.svelte(1 hunks)src/routes/docs/tooling/mcp/+page.markdoc(1 hunks)src/routes/docs/tooling/mcp/api/+page.markdoc(1 hunks)src/routes/docs/tooling/mcp/claude/+page.markdoc(3 hunks)src/routes/docs/tooling/mcp/cursor/+page.markdoc(1 hunks)src/routes/docs/tooling/mcp/docs/+page.markdoc(3 hunks)src/routes/docs/tooling/mcp/vscode/+page.markdoc(2 hunks)src/routes/docs/tooling/mcp/windsurf/+page.markdoc(2 hunks)src/routes/integrations/mcp-cursor/+page.markdoc(1 hunks)
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (2)
- GitHub Check: tests
- GitHub Check: build
🔇 Additional comments (8)
src/redirects.json (2)
722-726: LGTM: Redirect added for old Docs MCP pathThe new mapping to “/docs/tooling/mcp/docs” looks correct and JSON remains valid with the added comma on Line 722.
722-726: No additional legacy MCP slugs found Only mcp-for-docs references appear (already redirected in redirects.json); no mcp-for-api occurrences detected.src/routes/docs/tooling/mcp/+layout.svelte (1)
22-33: Servers subsection and dual entries look goodNice split between API and Docs; dates and hrefs align with the restructure.
src/routes/docs/tooling/mcp/docs/+page.markdoc (2)
33-47: Quick-add links verified live
Both apwr.dev quick-add endpoints return HTTP 200 OK; ready to ship.
113-114: Verify Claude MCP endpoint availabilityThe HEAD check (
curl -s -I -L https://mcp-for-docs.appwrite.io) returned HTTP/2 400 (reachable but doesn’t accept HEAD). Please confirm via a GET status check (e.g.curl -s -o /dev/null -w "%{http_code}" https://mcp-for-docs.appwrite.io) and verify DNS resolution (e.g.host mcp-for-docs.appwrite.io).src/routes/docs/tooling/mcp/windsurf/+page.markdoc (2)
41-53: API server config reads wellGood clarity on command, args, and env. Matches the dual-server pattern.
85-89: Correct link to API CLI argumentsNice touch linking to “/docs/tooling/mcp/api#command-line-arguments”; this matches the new structure.
src/routes/docs/tooling/mcp/cursor/+page.markdoc (1)
85-99: LGTM on direct-add links.The new apwr.dev deep links for adding the API server to Cursor look correct in both light and dark variants.
| "appwrite-api": { | ||
| "command": "uvx", | ||
| "args": [ | ||
| "mcp-server-appwrite", | ||
| "--sites", | ||
| "--sites" | ||
| ], |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Incorrect CLI flag “--sites” (likely a typo).
Other pages use “--users” and your API page doesn’t list “--sites” as a valid flag. This will cause setup failures.
"args": [
"mcp-server-appwrite",
- "--sites"
+ "--users"
],📝 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.
| "appwrite-api": { | |
| "command": "uvx", | |
| "args": [ | |
| "mcp-server-appwrite", | |
| "--sites", | |
| "--sites" | |
| ], | |
| "appwrite-api": { | |
| "command": "uvx", | |
| "args": [ | |
| "mcp-server-appwrite", | |
| "--users" | |
| ], |
🤖 Prompt for AI Agents
In src/routes/docs/tooling/mcp/vscode/+page.markdoc around lines 39 to 44, the
CLI example uses the incorrect flag "--sites"; replace it with the correct
"--users" flag (matching other docs and the API spec) so the command reads
"mcp-server-appwrite", "--users" and update any surrounding text if it
references "sites" to avoid mismatch.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 2
♻️ Duplicate comments (1)
src/routes/docs/tooling/mcp/+page.markdoc (1)
7-7: Fix plural agreement and consistency.Change “servers that allows” → “servers that allow” and use plural “servers” in the second sentence.
-Appwrite offers [Model Context Protocol](https://modelcontextprotocol.io) (MCP) servers that allows LLMs to directly interact with Appwrite's API and docs. Using the MCP server, you can use applications such as Claude Desktop, Cursor, Windsurf Editor, etc. to operate on your Appwrite project as well as gain context about the latest updates to Appwrite's SDKs, APIs, and CLI. +Appwrite offers [Model Context Protocol](https://modelcontextprotocol.io) (MCP) servers that allow LLMs to directly interact with Appwrite's API and docs. Using MCP servers, you can use applications such as Claude Desktop, Cursor, Windsurf Editor, etc. to operate on your Appwrite project as well as gain context about the latest updates to Appwrite's SDKs, APIs, and CLI.
🧹 Nitpick comments (5)
src/routes/docs/tooling/mcp/+page.markdoc (1)
33-33: Section heading is plural; ensure surrounding copy matches.This section introduces multiple MCP servers; keep subsequent references plural (“MCP servers”) within this section for consistency.
src/routes/docs/tooling/mcp/docs/+page.markdoc (4)
17-24: Spelling/style: “Prerequisites” and anchor slug.Prefer “Prerequisites” (no hyphen) and update the anchor to “#prerequisites”.
-# Pre-requisites {% #pre-requisites %} +# Prerequisites {% #prerequisites %}Optional: clarify scope so Node.js is only required for stdio/CLI flows (Windsurf, Claude Desktop), not for one‑click Cursor/VS Code.
-Install [Node.js](https://nodejs.org/en/download) and npm on your system. You can verify the installation by running the following commands in your terminal: +Install [Node.js](https://nodejs.org/en/download) and npm if you plan to use the stdio/CLI flows (Windsurf, Claude Desktop). One‑click setups for Cursor and VS Code don’t require Node. Verify your installation:
79-86: npx non‑interactive usage.Add “-y” so npx doesn’t prompt, improving copy‑paste reliability.
"command": "npx", - "args": ["@appwrite/mcp-server-docs"] + "args": ["-y", "@appwrite/mcp-server-docs"]
93-93: Brand capitalization.“MacOS” → “macOS”.
-In the Claude Desktop app, open the app's **Settings** page (press `CTRL + ,` on Windows or `CMD + ,` on MacOS) and head to the **Developer** tab. +In the Claude Desktop app, open the app's **Settings** page (press `CTRL + ,` on Windows or `CMD + ,` on macOS) and head to the **Developer** tab.
100-106: npx non‑interactive usage in Claude Desktop config.Same as Windsurf: add “-y”.
"appwrite-docs": { - "command": "npx", - "args": ["@appwrite/mcp-server-docs"] + "command": "npx", + "args": ["-y", "@appwrite/mcp-server-docs"] }
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro
💡 Knowledge Base configuration:
- MCP integration is disabled by default for public repositories
- Jira integration is disabled by default for public repositories
- Linear integration is disabled by default for public repositories
You can enable these sources in your CodeRabbit configuration.
📒 Files selected for processing (3)
src/routes/docs/tooling/mcp/+page.markdoc(2 hunks)src/routes/docs/tooling/mcp/api/+page.markdoc(1 hunks)src/routes/docs/tooling/mcp/docs/+page.markdoc(3 hunks)
🚧 Files skipped from review as they are similar to previous changes (1)
- src/routes/docs/tooling/mcp/api/+page.markdoc
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (2)
- GitHub Check: tests
- GitHub Check: build
🔇 Additional comments (2)
src/routes/docs/tooling/mcp/+page.markdoc (1)
21-31: All referenced MCP server pages exist and will not 404.src/routes/docs/tooling/mcp/docs/+page.markdoc (1)
134-164: All referenced example images exist.
|
|
||
| ```bash | ||
| claude mcp add appwrite-docs-mcp https://mcp-for-docs.appwrite.io -t http | ||
| claude mcp add appwrite-docs https://mcp-for-docs.appwrite.io -t http |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
💡 Verification agent
🧩 Analysis chain
Confirm CLI syntax and endpoint.
Please verify the Claude CLI transport flag and endpoint are correct for the Docs MCP server.
🌐 Web query:
What is the correct syntax for `claude mcp add` when adding an HTTP(S) MCP server, and does `-t http` match current docs? Also confirm the official URL for Appwrite's Docs MCP server.
💡 Result:
Short answer
- Use the long form: claude mcp add --transport http . Example: claude mcp add --transport http notion https://mcp.notion.com/mcp. [1]
- The short alias -t (e.g., -t http) is a supported shorthand for --transport in the CLI (docs/examples and community references show -t/--transport and people using -t). So -t http will work. [1][4]
- Appwrite does not publish a single public MCP URL to add; their official integration runs the Appwrite MCP server locally (mcp-server-appwrite) and you supply your Appwrite endpoint via APPWRITE_ENDPOINT (e.g. https://.cloud.appwrite.io/v1) when configuring the server. Use the Appwrite docs / GitHub repo for the mcp-server-appwrite implementation. [2][5]
Sources
- Anthropic Claude Code MCP docs (commands & examples). [1]
- Appwrite MCP / Claude integration docs (shows using mcp-server-appwrite and APPWRITE_ENDPOINT https://.cloud.appwrite.io/v1). [2]
- Appwrite mcp-server repo (usage & flags). [5]
- Community / CLI references showing -t / --transport aliases and examples (gist & GitHub issue). [4][3]
Correct transport flag syntax and Appwrite MCP endpoint
- The CLI accepts
-t httpas an alias for--transport http, but the canonical form is:claude mcp add --transport http appwrite-docs <url>
- Appwrite does not offer a public MCP URL (
https://mcp-for-docs.appwrite.iois not an official endpoint). Update this to instruct users to run themcp-server-appwritelocally and supply their Appwrite endpoint viaAPPWRITE_ENDPOINT=https://<REGION>.cloud.appwrite.io/v1.
🤖 Prompt for AI Agents
In src/routes/docs/tooling/mcp/docs/+page.markdoc around line 116, the CLI
example and Appwrite endpoint are incorrect; replace the one-line command to use
the canonical transport flag order ("claude mcp add --transport http
appwrite-docs <url>") and remove the bogus public URL, instead instructing users
to run the mcp-server-appwrite locally and provide their Appwrite endpoint via
an environment variable like
APPWRITE_ENDPOINT=https://<REGION>.cloud.appwrite.io/v1 when starting the
server.
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 0
♻️ Duplicate comments (1)
src/routes/docs/tooling/mcp/+page.markdoc (1)
15-17: Typo: missing space (“and code editors”).This mirrors a prior comment and is still present.
-- **Seamless integration**: MCP servers can be easily integrated with popular AI tools andcode editors, enhancing their functionality. +- **Seamless integration**: MCP servers can be easily integrated with popular AI tools and code editors, enhancing their functionality.Run to confirm no other instances:
#!/bin/bash rg -n -C1 'andcode' src
🧹 Nitpick comments (3)
src/routes/docs/tooling/mcp/+page.markdoc (3)
7-7: Tighten intro; avoid “use … use” repetition.Minor readability tweak.
-Appwrite offers [Model Context Protocol](https://modelcontextprotocol.io) (MCP) servers that allow LLMs to directly interact with Appwrite's API and docs. Using MCP servers, you can use applications such as Claude Desktop, Cursor, Windsurf Editor, etc. to operate on your Appwrite project as well as gain context about the latest updates to Appwrite's SDKs, APIs, and CLI. +Appwrite offers [Model Context Protocol](https://modelcontextprotocol.io) (MCP) servers that allow LLMs to directly interact with Appwrite's API and docs. Using MCP servers, you can work with applications such as Claude Desktop, Cursor, and Windsurf to operate on your Appwrite project and gain context about the latest updates to Appwrite's SDKs, APIs, and CLI.
21-22: Avoid time-sensitive wording (“currently”).Removes unnecessary temporal qualifier.
-Appwrite currently offers the following MCP servers: +Appwrite offers the following MCP servers:
25-29: Consistency: capitalize “Docs” and normalize tag spacing.
- Title case “Docs” to match “API”.
- Add a space before
%}for consistency with the next card.-{% cards_item href="/docs/tooling/mcp/api" title="MCP server for Appwrite API" icon="icon-globe-alt"%} +{% cards_item href="/docs/tooling/mcp/api" title="MCP server for Appwrite API" icon="icon-globe-alt" %} {% /cards_item %} -{% cards_item href="/docs/tooling/mcp/docs" title="MCP server for Appwrite docs" icon="icon-document-text" %} +{% cards_item href="/docs/tooling/mcp/docs" title="MCP server for Appwrite Docs" icon="icon-document-text" %} {% /cards_item %}
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro
💡 Knowledge Base configuration:
- MCP integration is disabled by default for public repositories
- Jira integration is disabled by default for public repositories
- Linear integration is disabled by default for public repositories
You can enable these sources in your CodeRabbit configuration.
📒 Files selected for processing (1)
src/routes/docs/tooling/mcp/+page.markdoc(2 hunks)
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (2)
- GitHub Check: tests
- GitHub Check: build
🔇 Additional comments (2)
src/routes/docs/tooling/mcp/+page.markdoc (2)
33-33: Section heading LGTM.Clear and aligns with the new navigation.
77-77: Info block LGTM.CTA and link read well.
|
work @adityaoberai |
|
Awesome work @adityaoberai For discoverability, not sure if this suggestion would align with our style guide, but for SEO/LLM, we could rename the page title to something like "Appwrite MCP Server Integration | Claude, Cursor, VS Code Setup" Still on discoverability, in the main page overview, we could group the key benefits under a subheading. There's currently no mention of VSCode or copilot in the overview. Would be good to add it along with the others in the introductory text. We can also add a "Popular use cases" section with a list like:
// Can we add a troubleshooting page or section somewhere with common issues users could face during setup? // For in-site discoverability, I think we should link to the MCP docs from the quick start page or guides; this might fall under another task or need work from design/product |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 2
Caution
Some comments are outside the diff and can’t be posted inline due to platform limitations.
⚠️ Outside diff range comments (1)
src/routes/docs/tooling/mcp/claude/+page.markdoc (1)
45-48: Config enables only Users tool; examples rely on Databases/Collections too.Either remove
--usersto expose default tools or explicitly document/enable the other tool flags; otherwise Step 3 prompts will fail."args": [ - "mcp-server-appwrite", - "--users" + "mcp-server-appwrite" ],If you intend to show a minimal “users-only” setup, adjust Step 3 prompts accordingly or add flags for databases/collections/documents.
♻️ Duplicate comments (1)
src/routes/docs/tooling/mcp/claude/+page.markdoc (1)
12-23: Casing and anchors look consistent with prior feedback."API server" / "Docs server" and the unique prerequisite tab IDs align with earlier suggestions.
🧹 Nitpick comments (7)
src/routes/docs/tooling/mcp/claude/+page.markdoc (5)
9-9: Use “prerequisites” (no hyphen).Minor copy edit for consistency across docs.
-Before you begin, ensure you have the following **pre-requisites** installed on your system: +Before you begin, ensure you have the following **prerequisites** installed on your system:
27-27: macOS capitalization.Apple’s style is “macOS,” not “MacOS.”
-In the Claude Desktop app, open the app's **Settings** page (press `CTRL + ,` on Windows or `CMD + ,` on MacOS) and head to the **Developer** tab. +In the Claude Desktop app, open the app's **Settings** page (press `CTRL + ,` on Windows or `CMD + ,` on macOS) and head to the **Developer** tab.
93-101: Avoid duplicate tab IDs on the same page.
#api-onlyand#docs-onlyare reused for a second tabs block. Safer to make them unique to prevent anchor collisions.-{% tabsitem #api-only title="API server" %} +{% tabsitem #api-cli title="API server" %} ... -{% tabsitem #docs-only title="Docs server" %} +{% tabsitem #docs-cli title="Docs server" %}
114-114: Tighten wording.Remove the duplicated “click on”.
-Restart the Claude Desktop app, click on the MCP tools button (at the bottom right section of the prompt input) and click on it to view available Appwrite MCP tools. +Restart the Claude Desktop app, click the MCP tools button (bottom-right of the prompt input) to view available Appwrite MCP tools.
59-63: Add a brief security note about secrets.Recommend mentioning not to commit API keys and to prefer environment management tools.
**Configuration:** - Replace `your-project-id` with your actual Appwrite project ID - Replace `your-api-key` with your Appwrite API key - Replace `<REGION>` with your Appwrite Cloud region (e.g., `nyc`, `fra`) +{% info title="Keep your keys safe" %} +Do not commit `APPWRITE_API_KEY` or your config file to source control. Prefer a secrets manager or per-user config. +{% /info %}src/routes/docs/tooling/mcp/cursor/+page.markdoc (2)
9-9: Use “prerequisites” (no hyphen).-Before you begin, ensure you have the following **pre-requisites** installed on your system: +Before you begin, ensure you have the following **prerequisites** installed on your system:
55-60: Add a secrets caution under Configuration.Prevent accidental leakage of project credentials.
- Replace `<REGION>` with your Appwrite Cloud region (e.g., `nyc`, `fra`) +{% info title="Keep your keys safe" %} +Avoid committing `APPWRITE_API_KEY` or `mcp.json` to source control. Use environment variables or OS keychains. +{% /info %}
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro
💡 Knowledge Base configuration:
- MCP integration is disabled by default for public repositories
- Jira integration is disabled by default for public repositories
- Linear integration is disabled by default for public repositories
You can enable these sources in your CodeRabbit configuration.
📒 Files selected for processing (4)
src/routes/docs/tooling/mcp/claude/+page.markdoc(3 hunks)src/routes/docs/tooling/mcp/cursor/+page.markdoc(1 hunks)src/routes/docs/tooling/mcp/vscode/+page.markdoc(2 hunks)src/routes/docs/tooling/mcp/windsurf/+page.markdoc(2 hunks)
🚧 Files skipped from review as they are similar to previous changes (2)
- src/routes/docs/tooling/mcp/windsurf/+page.markdoc
- src/routes/docs/tooling/mcp/vscode/+page.markdoc
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (2)
- GitHub Check: build
- GitHub Check: tests
🔇 Additional comments (4)
src/routes/docs/tooling/mcp/claude/+page.markdoc (2)
103-105: Confirm docs server endpoint for Claude Code CLI.Please verify
https://mcp-for-docs.appwrite.iois the intended, stable HTTP endpoint for the Docs MCP server (and not superseded by apwr.dev-style endpoints). Update if needed.
84-87: Nice cross-link to CLI flags.This helps users expand capabilities beyond the base config.
src/routes/docs/tooling/mcp/cursor/+page.markdoc (2)
80-118: Verify external “Add to Cursor” endpoints.Confirm
apwr.dev/*-mcp-cursor?ref=docslinks are final, non-temporary, and covered by your link checking/redirect rules.
122-126: Good addition: link to API CLI flags.Clear path for enabling more tools.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 0
♻️ Duplicate comments (1)
src/routes/docs/tooling/mcp/vscode/+page.markdoc (1)
39-44: Incorrect flag “--sites” breaks setup; use a valid tool flag."servers": { "appwrite-api": { "command": "uvx", "args": [ "mcp-server-appwrite", - "--sites" + "--users" ],If the intent was a minimal config, you can also omit flags entirely so all default tools load.
🧹 Nitpick comments (15)
src/routes/docs/tooling/mcp/+page.markdoc (5)
7-7: Add VS Code and Copilot to intro for discoverability.Explicitly mention “VS Code (GitHub Copilot Chat)” to match the cards below and help SEO/LLM recall.
-Appwrite offers [Model Context Protocol](https://modelcontextprotocol.io) (MCP) servers that allow LLMs to directly interact with Appwrite's API and docs. Using MCP servers, you can use applications such as Claude Desktop, Cursor, Windsurf Editor, etc. to operate on your Appwrite project as well as gain context about the latest updates to Appwrite's SDKs, APIs, and CLI. +Appwrite offers [Model Context Protocol](https://modelcontextprotocol.io) (MCP) servers that allow LLMs to directly interact with Appwrite's API and docs. Using MCP servers, you can use applications such as Claude Desktop, Cursor, Windsurf Editor, and VS Code (GitHub Copilot Chat) to operate on your Appwrite project as well as gain context about the latest updates to Appwrite's SDKs, APIs, and CLI.
35-35: Pluralize “server” → “servers”.Reads better and aligns with dual-server model.
-You can now integrate the MCP server with various popular AI-enabled code editors and LLM apps. +You can now integrate the MCP servers with various popular AI-enabled code editors and LLM apps.
3-4: Improve page title/description for SEO and intent.Add “Appwrite”, “MCP servers”, and tool names to boost discoverability.
-title: Model Context Protocol -description: Enable LLMs and code-generation tools to interact with your Appwrite project +title: Appwrite MCP Server Integration (API and Docs) +description: Integrate Appwrite MCP servers (API + Docs) with Claude, Cursor, VS Code (Copilot), and Windsurf to let LLMs act on your Appwrite project and reference latest docs.
13-17: Add a “Popular use cases” section (requested in PR feedback).Quick examples improve scannability and LLM chunking.
The key benefits of using MCP servers include: ... - **Seamless integration**: MCP servers can be easily integrated with popular AI tools and code editors, enhancing their functionality. + +# Popular use cases + +- AI scaffolding for Appwrite projects (functions, DB models, storage). +- Claude Desktop workflows: create users, manage databases, trigger functions. +- Cursor setup with both API and Docs servers side-by-side. +- VS Code (Copilot Chat) agent flows using Appwrite tools. +- Troubleshoot SDK calls by querying the latest Appwrite docs.
73-77: Add a short troubleshooting block.Surface common setup issues to reduce bounce/issue churn.
{% info title="Want to integrate your AI tool?" %} ... {% /info %} + +{% info title="Troubleshooting" %} +- `uvx: command not found` or `ENOENT`: add `uvx` to your PATH or use its absolute path in configs. +- Firewall/corp proxy: allow outbound for `npx` and MCP HTTP connections (Docs server). +- Copilot/Editor can’t see tools: reload the editor and re-open the MCP user config. +{% /info %}src/routes/docs/tooling/mcp/vscode/+page.markdoc (4)
27-27: macOS capitalization.-In VS Code, open the **Command Palette** (press `CTRL + Shift + P` on Windows or `CMD + Shift + P` on MacOS) and run the `MCP: Open User Configuration` command. +In VS Code, open the **Command Palette** (press `Ctrl+Shift+P` on Windows or `Cmd+Shift+P` on macOS) and run the `MCP: Open User Configuration` command.
9-9: Spell “prerequisites” consistently.-Before you begin, ensure you have the following **pre-requisites** installed on your system: +Before you begin, ensure you have the following **prerequisites** installed on your system:
82-86: Add VS Code-specific troubleshooting (uvx path).{% info title="Enable other API MCP tools" %} ... {% /info %} + +{% info title="Troubleshooting: uvx ENOENT in VS Code" %} +If you see `uvx ENOENT`, add `uvx` to your PATH or use the absolute path (e.g., `"command": "/usr/local/bin/uvx"`). +{% /info %}
31-78: Optional: Show a combined config for both servers.Many users want both servers active at once; a ready-to-paste block helps.
{% tabs %} {% tabsitem #api-only title="API server" %} ... {% /tabsitem %} {% tabsitem #docs-only title="Docs server" %} ... {% /tabsitem %} + +{% tabsitem #both title="Both servers" %} + +Update `mcp.json` to enable both servers: + +```json +{ + "servers": { + "appwrite-api": { + "command": "uvx", + "args": ["mcp-server-appwrite","--users"], + "env": { + "APPWRITE_PROJECT_ID": "your-project-id", + "APPWRITE_API_KEY": "your-api-key", + "APPWRITE_ENDPOINT": "https://<REGION>.cloud.appwrite.io/v1" + } + }, + "appwrite-docs": { + "command": "npx", + "args": ["@appwrite/mcp-server-docs"] + } + } +} +``` +{% /tabsitem %} {% /tabs %}src/routes/docs/tooling/mcp/windsurf/+page.markdoc (3)
9-9: Spell “prerequisites” consistently.-Before you begin, ensure you have the following **pre-requisites** installed on your system: +Before you begin, ensure you have the following **prerequisites** installed on your system:
31-82: Optional: Provide a “Both servers” tab with a merged config.{% tabs %} {% tabsitem #api-only title="API server" %} ... {% /tabsitem %} {% tabsitem #docs-only title="Docs server" %} ... {% /tabsitem %} + +{% tabsitem #both title="Both servers" %} + +Update `mcp_config.json` to enable both servers: + +```json +{ + "mcpServers": { + "appwrite-api": { + "command": "uvx", + "args": ["mcp-server-appwrite","--databases","--users"], + "env": { + "APPWRITE_PROJECT_ID": "your-project-id", + "APPWRITE_API_KEY": "your-api-key", + "APPWRITE_ENDPOINT": "https://<REGION>.cloud.appwrite.io/v1" + } + }, + "appwrite-docs": { + "command": "npx", + "args": ["@appwrite/mcp-server-docs"] + } + } +} +``` +{% /tabsitem %} {% /tabs %}
85-89: Add Windsurf troubleshooting.{% info title="Enable other API MCP tools" %} To enable additional API tools, learn more about [command-line arguments](/docs/tooling/mcp/api#command-line-arguments). {% /info %} + +{% info title="Troubleshooting" %} +- After editing `mcp_config.json`, click **Refresh** in MCP Servers. If tools don’t appear, restart Windsurf. +- If `uvx` isn’t found, use its absolute path in `"command"` or add it to PATH. +{% /info %}src/routes/docs/tooling/mcp/claude/+page.markdoc (3)
9-9: Spell “prerequisites” consistently.-Before you begin, ensure you have the following **pre-requisites** installed on your system: +Before you begin, ensure you have the following **prerequisites** installed on your system:
27-27: macOS capitalization.-In the Claude Desktop app, open the app's **Settings** page (press `CTRL + ,` on Windows or `CMD + ,` on MacOS) and head to the **Developer** tab. +In the Claude Desktop app, open **Settings** (press `Ctrl+,` on Windows or `Cmd+,` on macOS) and head to the **Developer** tab.
95-107: Add platform note for CLI JSON quoting.Prevents Windows cmd quoting issues.
```bash claude mcp add-json appwrite-api '{"command":"uvx","args":["mcp-server-appwrite","--users"],"env":{"APPWRITE_PROJECT_ID": "your-project-id", "APPWRITE_API_KEY": "your-api-key", "APPWRITE_ENDPOINT": "https://<REGION>.cloud.appwrite.io/v1"}}'
+{% info title="Windows quoting tip" %}
+On Windows Command Prompt, use double quotes around the JSON and escape inner quotes, or run the command from PowerShell (which supports single quotes).
+{% /info %}</blockquote></details> </blockquote></details> <details> <summary>📜 Review details</summary> **Configuration used**: CodeRabbit UI **Review profile**: CHILL **Plan**: Pro **💡 Knowledge Base configuration:** - MCP integration is disabled by default for public repositories - Jira integration is disabled by default for public repositories - Linear integration is disabled by default for public repositories You can enable these sources in your CodeRabbit configuration. <details> <summary>📥 Commits</summary> Reviewing files that changed from the base of the PR and between b5c7266ac75498cbdfbbec82f324119c738727d4 and f6a9a1abf3ea58bf460fd45e7523f2e8415f74fd. </details> <details> <summary>📒 Files selected for processing (5)</summary> * `src/routes/docs/tooling/mcp/+page.markdoc` (2 hunks) * `src/routes/docs/tooling/mcp/claude/+page.markdoc` (3 hunks) * `src/routes/docs/tooling/mcp/cursor/+page.markdoc` (1 hunks) * `src/routes/docs/tooling/mcp/vscode/+page.markdoc` (2 hunks) * `src/routes/docs/tooling/mcp/windsurf/+page.markdoc` (2 hunks) </details> <details> <summary>🚧 Files skipped from review as they are similar to previous changes (1)</summary> * src/routes/docs/tooling/mcp/cursor/+page.markdoc </details> <details> <summary>⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (2)</summary> * GitHub Check: build * GitHub Check: tests </details> <details> <summary>🔇 Additional comments (1)</summary><blockquote> <details> <summary>src/routes/docs/tooling/mcp/claude/+page.markdoc (1)</summary><blockquote> `104-105`: **Verify docs server endpoint/transport.** Confirm `https://mcp-for-docs.appwrite.io` with `-t http` is the intended transport and publicly reachable. Would you like me to open a follow-up to validate this endpoint across all MCP pages and align with any new apwr.dev deeplinks? </blockquote></details> </blockquote></details> </details> <!-- This is an auto-generated comment by CodeRabbit for review status -->
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 0
🧹 Nitpick comments (6)
src/routes/docs/tooling/mcp/+page.markdoc (6)
7-7: Tighten overview copy; add VS Code; drop “etc.”; keep plural.Clarifies supported tools without “etc.” and aligns with plural “servers”.
-Appwrite offers [Model Context Protocol](https://modelcontextprotocol.io) (MCP) servers that allow LLMs to directly interact with Appwrite's API and docs. Using MCP servers, you can use applications such as Claude Desktop, Cursor, Windsurf Editor, etc. to operate on your Appwrite project as well as gain context about the latest updates to Appwrite's SDKs, APIs, and CLI. +Appwrite offers [Model Context Protocol](https://modelcontextprotocol.io) (MCP) servers that allow LLMs to directly interact with Appwrite's API and docs. Using MCP servers, you can use applications such as Claude Desktop, Cursor, Windsurf Editor, and VS Code to operate on your Appwrite project and gain context about the latest updates to Appwrite's SDKs, APIs, and CLI.Optional (SEO): consider updating frontmatter title/description too:
title: Appwrite MCP Servers (API & Docs) – Claude, Cursor, VS Code Setup description: Connect Claude, Cursor, Windsurf, and VS Code to Appwrite via MCP servers for API access and docs-aware coding.
25-29: Capitalize “Docs” for brand consistency in card title.-{% cards_item href="/docs/tooling/mcp/docs" title="MCP server for Appwrite docs" icon="icon-document-text" %} +{% cards_item href="/docs/tooling/mcp/docs" title="MCP server for Appwrite Docs" icon="icon-document-text" %}
19-31: Boost discoverability with cross-links from Quick Start/Guides.Add a link from Quick Start or relevant guides to this page (and vice versa) to improve in-site SEO and navigation. Happy to suggest exact placements if you share the target pages.
35-41: Add a couple Appwrite-specific examples to the use-cases list.Ground the bullets in Appwrite tasks for better relevance/SEO.
- **Code generation**: Automatically generate code snippets or entire files based on user input and context. +- **Appwrite SDK snippets**: Quickly generate client/server SDK code for auth, databases, and storage. ... - **Project management**: Create, update, or delete resources in your Appwrite project using natural language commands. +- **Schema design**: Define collections, attributes, and indexes through natural language instructions.
45-45: Pluralize and remove “now” for evergreen phrasing.-You can now integrate the MCP server with various popular AI-enabled code editors and LLM apps. +You can integrate Appwrite's MCP servers with popular AI-enabled code editors and LLM apps.
83-87: Partner CTA—LGTM.Consider adding a troubleshooting link near here when available.
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro
💡 Knowledge Base configuration:
- MCP integration is disabled by default for public repositories
- Jira integration is disabled by default for public repositories
- Linear integration is disabled by default for public repositories
You can enable these sources in your CodeRabbit configuration.
📒 Files selected for processing (1)
src/routes/docs/tooling/mcp/+page.markdoc(2 hunks)
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (2)
- GitHub Check: build
- GitHub Check: tests
🔇 Additional comments (4)
src/routes/docs/tooling/mcp/+page.markdoc (4)
9-19: Clear, concise MCP definition—LGTM.
21-21: Servers section intro—LGTM.
33-33: Section heading—LGTM.
43-43: Tools section heading—LGTM.
There was a problem hiding this 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
🧹 Nitpick comments (14)
src/routes/docs/tooling/mcp/api/+page.markdoc (14)
3-4: Improve SEO/title for discoverability (aligns with PR feedback).Recommend a clearer, keyword-rich title/description for search and LLM routing.
--- layout: article -title: MCP server for Appwrite API -description: Enable LLMs and code-generation tools to interact with the Appwrite API +title: Appwrite API MCP Server | Setup for Cursor, VS Code, Claude, Windsurf +description: Set up the Appwrite API MCP server so Cursor, VS Code, Claude, and Windsurf can securely read/write Appwrite resources using uvx. ---
16-16: Spelling/anchor: “Prerequisites”.Use “Prerequisites” (no hyphen) and update the anchor for consistency across docs.
-# Pre-requisites {% #pre-requisites %} +# Prerequisites {% #prerequisites %}
36-36: macOS capitalization.Use “macOS” (Apple style guide).
-{% tabsitem #uv-linux-macos title="Linux and MacOS" %} +{% tabsitem #uv-linux-macos title="Linux and macOS" %}-In VS Code, open the **Command Palette** (press `CTRL + Shift + P` on Windows or `CMD + Shift + P` on MacOS) and run the `MCP: Open User Configuration` command. Update the `mcp.json` file to include the following: +In VS Code, open the **Command Palette** (press `CTRL + Shift + P` on Windows or `CMD + Shift + P` on macOS) and run the `MCP: Open User Configuration` command. Update the `mcp.json` file to include the following:-In the Claude Desktop app, open the app's **Settings** page (press `CTRL + ,` on Windows or `CMD + ,` on MacOS) and head to the **Developer** tab. +In the Claude Desktop app, open the app's **Settings** page (press `CTRL + ,` on Windows or `CMD + ,` on macOS) and head to the **Developer** tab.Also applies to: 109-109, 167-167
11-15: Add “Popular use cases” block (aligns with PR feedback).Helps readers understand when to use the API server.
- **Customizable tools**: Offers a range of tools for different Appwrite services, which can be enabled as needed + +## Popular use cases +- Generate CRUD data access and seed scripts against Appwrite Databases. +- Manage users/teams (list, invite, deactivate) from your editor. +- Upload and manage Storage files via prompts. +- Deploy Functions and check logs without leaving your IDE.
53-57: uv PATH tip.Users often hit “command not found” until a new shell is opened.
```bash uv
+{% tip %}
+Ifuvis not found, open a new terminal so your PATH updates.
+{% /tip %}--- `61-66`: **Add a general reload tip for editors.** Prevents “server not detected” confusion after editing config. ```diff You can add the MCP server to various AI tools and code editors: + +{% tip %} +After editing MCP configuration files, restart or reload your editor so it picks up the changes. +{% /tip %}
109-128: VS Code JSON key may differ (“servers” vs “mcpServers”). Please verify.Some MCP extensions expect
mcpServersinstead ofservers. Provide an alternate snippet to reduce setup friction.}Replace
your-project-id,your-api-key, and<REGION>with your actual Appwrite project details.+{% tip title="If your extension expects
mcpServers" %}
+Use:
+
+```json
+{
- "mcpServers": {
- "appwrite-api": {
"command": "uvx","args": ["mcp-server-appwrite","--users"],"env": {"APPWRITE_PROJECT_ID": "your-project-id","APPWRITE_API_KEY": "your-api-key","APPWRITE_ENDPOINT": "https://<REGION>.cloud.appwrite.io/v1"}- }
- }
+}
+```
+{% /tip %}If helpful, I can check the latest extension docs and open a follow-up PR. Do you want me to verify which key is correct for our recommended VS Code extension? --- `211-211`: **Minor grammar + reproducibility tip near flags.** Add comma after “In addition” and include a version pin tip for `uvx`. ```diff -Database tools are enabled by default. In addition you can pass arguments to `uvx mcp-server-appwrite [args]` to enable other MCP tools for various Appwrite APIs. +Database tools are enabled by default. Additionally, you can pass arguments to `uvx mcp-server-appwrite [args]` to enable other MCP tools for various Appwrite APIs.{% /info %} +# {% raw %}{% endraw %}{% comment %} spacer {% endcomment %} +{% tip title="Pin a version for repeatable setups" %} +Use `uvx mcp-server-appwrite==X.Y.Z` to avoid accidental upgrades changing behavior. +{% /tip %}
245-251: Clarify required tool flags for Example 2.Make it explicit which API must be enabled to run the example.
## Example 2: Search a site Run the following prompt in your preferred code editor/LLM after enabling the MCP server: + +_Requires enabling the relevant API tools for your resource (for example, `--databases`)._
198-205: Windows quoting forclaude mcp add-json.Current single-quoted JSON works in bash but often fails in PowerShell. Provide tabs for both shells.
-```bash -claude mcp add-json appwrite-api '{"command":"uvx","args":["mcp-server-appwrite","--users"],"env":{"APPWRITE_PROJECT_ID": "your-project-id", "APPWRITE_API_KEY": "your-api-key", "APPWRITE_ENDPOINT": "https://<REGION>.cloud.appwrite.io/v1"}}' -``` +{% tabs %} +{% tabsitem #claude-bash title="bash/zsh" %} +```bash +claude mcp add-json appwrite-api '{"command":"uvx","args":["mcp-server-appwrite","--users"],"env":{"APPWRITE_PROJECT_ID":"your-project-id","APPWRITE_API_KEY":"your-api-key","APPWRITE_ENDPOINT":"https://<REGION>.cloud.appwrite.io/v1"}}' +``` +{% /tabsitem %} +{% tabsitem #claude-pwsh title="Windows PowerShell" %} +```powershell +claude mcp add-json appwrite-api "{\"command\":\"uvx\",\"args\":[\"mcp-server-appwrite\",\"--users\"],\"env\":{\"APPWRITE_PROJECT_ID\":\"your-project-id\",\"APPWRITE_API_KEY\":\"your-api-key\",\"APPWRITE_ENDPOINT\":\"https://<REGION>.cloud.appwrite.io/v1\"}}" +``` +{% /tabsitem %} +{% /tabs %}
82-103: Cursor config: add a restart note and self-hosted hint once.Reduce repetition across tools by adding a concise tip after the first config.
Replace `your-project-id`, `your-api-key`, and `<REGION>` with your actual Appwrite project details. +{% tip %} +If you set OS environment variables, you can omit the `env` block—Cursor will pass inherited env vars to the server. Restart Cursor after saving `mcp.json`. +{% /tip %}
231-264: Add a short Troubleshooting section (aligns with PR feedback).Helps resolve the most common setup issues without leaving the page.
 +# Troubleshooting + +- `uvx: command not found`: open a new terminal (PATH refresh) or re-run the uv installer. +- MCP server not detected: restart/reload your editor after editing config. +- `401 Unauthorized`: verify API key scopes, project ID, and `APPWRITE_ENDPOINT` (cloud region vs self-hosted). +- “Too many tools enabled” or context errors: enable only the APIs you need (see flags above). +- Corporate proxy: configure proxy env vars so `uvx` and your editor can reach the server.
93-97: Endpoint note for self-hosted users.Consider adding a one-line note under the first example only, to avoid repeating in every snippet.
If Cloud endpoints aren’t always region-scoped, suggest clarifying acceptable formats (e.g.,
https://cloud.appwrite.io/v1vshttps://<REGION>.cloud.appwrite.io/v1) and the self-hosted shape (https://<host>/v1). I can verify and update the exact guidance if you want.Also applies to: 121-124, 152-155, 183-186
209-224: Scopes matrix (optional).A tiny table mapping flags → minimum API key scopes would make setup safer and reduce 401s.
I can draft a scopes-to-flag matrix if you share the exact scopes per API, or I can open a follow-up PR once confirmed.
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro
💡 Knowledge Base configuration:
- MCP integration is disabled by default for public repositories
- Jira integration is disabled by default for public repositories
- Linear integration is disabled by default for public repositories
You can enable these sources in your CodeRabbit configuration.
📒 Files selected for processing (1)
src/routes/docs/tooling/mcp/api/+page.markdoc(1 hunks)
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (2)
- GitHub Check: build
- GitHub Check: tests
| Ensure you save the **API key** along with the **project ID**, **region** and **endpoint URL** from the Settings page of your project as you'll need them later. | ||
|
|
||
| ## Install uv |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
🛠️ Refactor suggestion
Don’t hardcode API keys in config; add env setup + security warning.
Readers will likely paste secrets into JSON. Add a short “Set environment variables” section and a warning so tools inherit secrets from the OS instead of committing them to config files.
Ensure you save the **API key** along with the **project ID**, **region** and **endpoint URL** from the Settings page of your project as you'll need them later.
+{% warning title="Keep your API key secret" %}
+- Avoid committing `mcp.json`, `claude_desktop_config.json`, or `mcp_config.json` with secrets.
+- Prefer setting OS environment variables and letting the MCP process inherit them.
+{% /warning %}
+
+## Set environment variables
+
+{% tabs %}
+{% tabsitem #env-linux-macos title="Linux and macOS" %}
+
+```bash
+export APPWRITE_PROJECT_ID="your-project-id"
+export APPWRITE_API_KEY="your-api-key"
+export APPWRITE_ENDPOINT="https://<REGION>.cloud.appwrite.io/v1"
+```
+
+{% /tabsitem %}
+{% tabsitem #env-windows title="Windows (PowerShell)" %}
+
+```powershell
+setx APPWRITE_PROJECT_ID "your-project-id"
+setx APPWRITE_API_KEY "your-api-key"
+setx APPWRITE_ENDPOINT "https://<REGION>.cloud.appwrite.io/v1"
+# Open a new terminal for changes to take effect
+```
+{% /tabsitem %}
+{% /tabs %}
+
+{% info title="Self-hosted Appwrite" %}
+For self-hosted, set `APPWRITE_ENDPOINT` to your instance, e.g. `https://your-domain.example/v1` or `http://localhost/v1`.
+{% /info %}
+
# Install uv🤖 Prompt for AI Agents
In src/routes/docs/tooling/mcp/api/+page.markdoc around lines 29-31, the doc
currently encourages readers to copy API keys into config which risks leaking
secrets; replace the inline hardcoded example with a "Set environment variables"
section that shows the environment variable names (APPWRITE_PROJECT_ID,
APPWRITE_API_KEY, APPWRITE_ENDPOINT) and provides shell examples for both
Linux/macOS (export) and Windows PowerShell (setx), include a short warning to
never commit secrets to repo or paste them into JSON/config files and instruct
readers to use OS environment variables so tools inherit secrets, and add a note
for self-hosted users to set APPWRITE_ENDPOINT to their instance URL.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 0
Caution
Some comments are outside the diff and can’t be posted inline due to platform limitations.
⚠️ Outside diff range comments (1)
src/routes/docs/tooling/mcp/+layout.svelte (1)
22-34: Move the “new” badge to MCP for API, remove it from MCP for Docs, and clean up stale mcp-for-docs linksSwap the badge from Docs to API in
src/routes/docs/tooling/mcp/+layout.svelteand remove all remaining references to/docs/tooling/mcp/mcp-for-docs(e.g. insrc/redirects.jsonand docs pages).@@ src/routes/docs/tooling/mcp/+layout.svelte:22-34 { label: 'MCP for API', href: '/docs/tooling/mcp/api', + new: isNewUntil('31 Oct 2025') }, { label: 'MCP for Docs', href: '/docs/tooling/mcp/docs', - new: isNewUntil('31 Oct 2025') }
🧹 Nitpick comments (1)
src/routes/docs/tooling/mcp/+layout.svelte (1)
29-31: If keeping the “new” badge on Docs intentionally, use ISO 8601.Only if you decide to keep it here: prefer 2025-10-31 to reduce parsing ambiguity.
- new: isNewUntil('31 Oct 2025') + new: isNewUntil('2025-10-31')
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro
💡 Knowledge Base configuration:
- MCP integration is disabled by default for public repositories
- Jira integration is disabled by default for public repositories
- Linear integration is disabled by default for public repositories
You can enable these sources in your CodeRabbit configuration.
📒 Files selected for processing (1)
src/routes/docs/tooling/mcp/+layout.svelte(2 hunks)
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (2)
- GitHub Check: build
- GitHub Check: tests
🔇 Additional comments (2)
src/routes/docs/tooling/mcp/+layout.svelte (2)
18-21: Getting Started → Overview: looks good.Nav entry points to the overview at /docs/tooling/mcp as expected.
39-41: Rename to “Claude”: verify page metadata and inbound links.Confirm the +page.markdoc H1/frontmatter use “Claude” and that no in-site links or breadcrumbs still say “Claude Desktop”.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 4
♻️ Duplicate comments (3)
src/routes/docs/tooling/mcp/cursor/+page.markdoc (1)
41-44: Config enables only Users; examples use databases too.
Remove the flag or include Databases so examples work."args": [ - "mcp-server-appwrite", - "--users" + "mcp-server-appwrite", + "--users", + "--databases" ],src/routes/docs/tooling/mcp/vscode/+page.markdoc (1)
39-44: Fix incorrect CLI flag: use --users (not --sites).This will otherwise fail to start the API MCP server with Users tools enabled.
- "appwrite-api": { + "appwrite-api": { "command": "uvx", "args": [ "mcp-server-appwrite", - "--sites" + "--users" ],src/routes/docs/tooling/mcp/api/+page.markdoc (1)
29-30: Add env-var setup and a secrets warning; avoid pasting keys in JSON.-Ensure you save the **API key** along with the **project ID**, **region** and **endpoint URL** from the Settings page of your project as you'll need them later. +Ensure you save the **API key** along with the **project ID**, **region** and **endpoint URL** from the Settings page of your project as you'll need them later. + +{% warning title="Keep your API key secret" %} +- Avoid committing `mcp.json`, `claude_desktop_config.json`, or `mcp_config.json` with secrets. +- Prefer setting OS environment variables and letting the MCP process inherit them. +{% /warning %} + +## Set environment variables + +{% tabs %} +{% tabsitem #env-linux-macos title="Linux and macOS" %} + +```bash +export APPWRITE_PROJECT_ID="your-project-id" +export APPWRITE_API_KEY="your-api-key" +export APPWRITE_ENDPOINT="https://<REGION>.cloud.appwrite.io/v1" +``` + +{% /tabsitem %} +{% tabsitem #env-windows title="Windows (PowerShell)" %} + +```powershell +setx APPWRITE_PROJECT_ID "your-project-id" +setx APPWRITE_API_KEY "your-api-key" +setx APPWRITE_ENDPOINT "https://<REGION>.cloud.appwrite.io/v1" +# Open a new terminal for changes to take effect +``` +{% /tabsitem %} +{% /tabs %} + +{% info title="Self-hosted Appwrite" %} +For self-hosted, set `APPWRITE_ENDPOINT` to your instance, e.g. `https://your-domain.example/v1` or `http://localhost/v1`. +{% /info %}
🧹 Nitpick comments (14)
src/redirects.json (1)
726-727: Add redirect for renamed Claude page.
Old links to /docs/tooling/mcp/claude will 404 after moving to claude-desktop.- } + }, + { + "link": "/docs/tooling/mcp/claude", + "redirect": "/docs/tooling/mcp/claude-desktop" + } ]src/routes/docs/tooling/mcp/docs/+page.markdoc (2)
30-33: Add “Popular use cases” to aid discovery.
Aligns with review feedback and improves scannability.# Usage {% #usage %} Once configured, your AI assistant will have access to Appwrite documentation context. You can ask questions like: + +## Popular use cases +- Explore SDK usage examples for your language +- Troubleshoot common auth/storage errors +- Compare REST vs GraphQL for a task +- Get migration guidance and best practices
72-72: Add a troubleshooting section.
Common setup pitfalls for the Docs server. + +## Troubleshooting +- `npx: command not found`: Install Node.js and ensure `npm` is on your PATH. +- Tools not visible: Restart your editor/agent and confirm `appwrite-docs` appears in the MCP servers list. +- Slow/timeout: Check network/firewall and retry; package download occurs on first run.src/routes/docs/tooling/mcp/claude-desktop/+page.markdoc (1)
27-27: Nit: OS and key naming.
Use “macOS” and “Ctrl” for consistency.-In the Claude Desktop app, open the app's **Settings** page (press `CTRL + ,` on Windows or `CMD + ,` on MacOS) and head to the **Developer** tab. +In the Claude Desktop app, open the app's **Settings** page (press `Ctrl + ,` on Windows or `Cmd + ,` on macOS) and head to the **Developer** tab.src/routes/docs/tooling/mcp/vscode/+page.markdoc (2)
95-103: Annotate prompts that require the Users tool.Helps prevent confusion when only Databases is enabled by default.
-**Example prompts:** -- `Create a new user in my Appwrite project` +**Example prompts:** +- `Create a new user in my Appwrite project` _(requires `--users`)_ - `List all databases in my project` - `Show me the collections in my database` - `Create a new document in my collection` -- `Delete a specific user by ID` +- `Delete a specific user by ID` _(requires `--users`)_
66-75: Pin docs server version in npx for reproducibility.Prevents accidental breaking changes on fresh installs.
- "args": ["@appwrite/mcp-server-docs"] + "args": ["@appwrite/mcp-server-docs@latest"]src/routes/docs/tooling/mcp/+layout.svelte (1)
6-9: Pluralize parent label to match multi-server IA.- label: 'MCP Server' + label: 'MCP Servers'src/routes/docs/tooling/mcp/api/+page.markdoc (4)
36-37: Style: macOS capitalization.-{% tabsitem #uv-linux-macos title="Linux and MacOS" %} +{% tabsitem #uv-linux-macos title="Linux and macOS" %}
46-48: Typo: PowerShell ExecutionPolicy value casing.-powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex" +powershell -ExecutionPolicy Bypass -c "irm https://astral.sh/uv/install.ps1 | iex"
89-99: Call out required flags per example.Make prerequisites explicit to reduce trial-and-error.
## Example 1: List users @@ -Run the following prompt in your preferred code editor/LLM after enabling the MCP server: +Run the following prompt after enabling the MCP server. _(Requires `--users`.)_ @@ ## Example 2: Search a site @@ -Run the following prompt in your preferred code editor/LLM after enabling the MCP server: +Run the following prompt after enabling the MCP server. _(Uses Databases; enabled by default.)_
109-117: Also mark “Create a user” as requiring Users.-Run the following prompt in your preferred code editor/LLM after enabling the MCP server: +Run the following prompt after enabling the MCP server. _(Requires `--users`.)_src/routes/docs/tooling/mcp/+page.markdoc (3)
3-4: Improve SEO/title for discoverability.-title: Model Context Protocol -description: Enable LLMs and code-generation tools to interact with your Appwrite project +title: Appwrite MCP Server Integration (API & Docs) | Claude, Cursor, VS Code +description: Set up Appwrite’s MCP servers for API and docs to use with Claude Desktop, Cursor, Windsurf, and VS Code (Copilot Chat).
7-7: Explicitly mention VS Code (Copilot Chat).-Appwrite offers [Model Context Protocol](https://modelcontextprotocol.io) (MCP) servers that allow LLMs to directly interact with Appwrite's API and docs. Using MCP servers, you can use applications such as Claude Desktop, Cursor, Windsurf Editor, etc. to operate on your Appwrite project as well as gain context about the latest updates to Appwrite's SDKs, APIs, and CLI. +Appwrite offers [Model Context Protocol](https://modelcontextprotocol.io) (MCP) servers that allow LLMs to directly interact with Appwrite's API and docs. Using MCP servers, you can use applications such as Claude Desktop, Cursor, Windsurf Editor, and VS Code (Copilot Chat) to operate on your Appwrite project as well as gain context about the latest updates to Appwrite's SDKs, APIs, and CLI.
33-41: Add a Troubleshooting section (common setup issues).Recommend a short section after this block covering: missing env vars, invalid endpoint/region, MCP transport errors, and Copilot/Cursor not discovering servers.
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro
⛔ Files ignored due to path filters (5)
static/images/docs/mcp/claude-code/implement-file-uploads.pngis excluded by!**/*.pngstatic/images/docs/mcp/claude-code/verify-mcp-tools.pngis excluded by!**/*.pngstatic/images/docs/mcp/claude-desktop/claude-list-users.pngis excluded by!**/*.pngstatic/images/docs/mcp/claude-desktop/claude-mcp-tools.pngis excluded by!**/*.pngstatic/images/docs/mcp/claude-desktop/claude-settings.pngis excluded by!**/*.png
📒 Files selected for processing (14)
src/partials/mcp-add-ides-tools.md(1 hunks)src/redirects.json(1 hunks)src/routes/docs/tooling/mcp/+layout.svelte(2 hunks)src/routes/docs/tooling/mcp/+page.markdoc(1 hunks)src/routes/docs/tooling/mcp/api/+page.markdoc(1 hunks)src/routes/docs/tooling/mcp/claude-code/+page.markdoc(1 hunks)src/routes/docs/tooling/mcp/claude-desktop/+page.markdoc(1 hunks)src/routes/docs/tooling/mcp/claude/+page.markdoc(0 hunks)src/routes/docs/tooling/mcp/cursor/+page.markdoc(1 hunks)src/routes/docs/tooling/mcp/docs/+page.markdoc(1 hunks)src/routes/docs/tooling/mcp/mcp-for-docs/+page.markdoc(0 hunks)src/routes/docs/tooling/mcp/vscode/+page.markdoc(2 hunks)src/routes/docs/tooling/mcp/windsurf/+page.markdoc(2 hunks)src/routes/integrations/mcp-cursor/+page.markdoc(1 hunks)
💤 Files with no reviewable changes (2)
- src/routes/docs/tooling/mcp/claude/+page.markdoc
- src/routes/docs/tooling/mcp/mcp-for-docs/+page.markdoc
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (2)
- GitHub Check: tests
- GitHub Check: build
🔇 Additional comments (10)
src/redirects.json (2)
720-722: LGTM: collections → tables redirect is correct.
Matches the updated CLI docs path.
723-725: LGTM: added redirect for mcp-for-docs.
Prevents 404s after path change.src/routes/integrations/mcp-cursor/+page.markdoc (1)
87-87: LGTM: unified “Add to Cursor” deep link.
Consistent light/dark links with tracking param.Also applies to: 94-94
src/partials/mcp-add-ides-tools.md (1)
1-49: LGTM: clear, reusable IDE/tools partial.
Good theming and link targets.src/routes/docs/tooling/mcp/windsurf/+page.markdoc (1)
41-52: LGTM: API server config covers Users + Databases.
Matches the example prompts; good env guidance.src/routes/docs/tooling/mcp/cursor/+page.markdoc (1)
85-101: LGTM: direct add links for API/Docs servers.
Nice DX touch; consistent light/dark variants.src/routes/docs/tooling/mcp/vscode/+page.markdoc (1)
92-93: Confirm Copilot UI wording (“Agent Mode”).Labeling may vary across Copilot Chat versions; consider adding a short note if the toggle name differs.
src/routes/docs/tooling/mcp/+layout.svelte (3)
23-33: Servers section addition looks good.
29-31: Date format supported
Verified thatnew Date('31 Oct 2025')(and variants like “31 July 2025”) parses correctly to the expected dates, soisNewUntilwill behave as intended.
39-57: All linked MCP routes exist and legacy redirect is configured
Verified that each tool (claude-desktop,claude-code,cursor,windsurf,vscode) has a corresponding+page.markdocundersrc/routes/docs/tooling/mcp/, and the"mcp-for-docs"redirect to/docs/tooling/mcp/docsis present inredirects.json.
| --- | ||
| layout: article | ||
| title: Appwrite MCP and Claude Code | ||
| description: Learn how to add the Appwrite MCP servers to Claude= Code to interact with both the Appwrite API and documentation. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Fix typo in description.
Extraneous “=” in “Claude= Code”.
-description: Learn how to add the Appwrite MCP servers to Claude= Code to interact with both the Appwrite API and documentation.
+description: Learn how to add the Appwrite MCP servers to Claude Code to interact with both the Appwrite API and documentation.📝 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.
| description: Learn how to add the Appwrite MCP servers to Claude= Code to interact with both the Appwrite API and documentation. | |
| description: Learn how to add the Appwrite MCP servers to Claude Code to interact with both the Appwrite API and documentation. |
🤖 Prompt for AI Agents
In src/routes/docs/tooling/mcp/claude-code/+page.markdoc around line 4, the
description contains an extraneous "=" in "Claude= Code"; remove the "=" so the
phrase reads "Claude Code" (i.e., update the description to "Learn how to add
the Appwrite MCP servers to Claude Code to interact with both the Appwrite API
and documentation.").
| ```bash | ||
| claude mcp add-json appwrite-api '{"command":"uvx","args":["mcp-server-appwrite","--users"],"env":{"APPWRITE_PROJECT_ID": "your-project-id", "APPWRITE_API_KEY": "your-api-key", "APPWRITE_ENDPOINT": "https://<REGION>.cloud.appwrite.io/v1"}}' | ||
| ``` |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
🛠️ Refactor suggestion
Enable DB tools for parity with prompts.
Only Users is enabled currently.
-claude mcp add-json appwrite-api '{"command":"uvx","args":["mcp-server-appwrite","--users"],"env":{"APPWRITE_PROJECT_ID": "your-project-id", "APPWRITE_API_KEY": "your-api-key", "APPWRITE_ENDPOINT": "https://<REGION>.cloud.appwrite.io/v1"}}'
+claude mcp add-json appwrite-api '{"command":"uvx","args":["mcp-server-appwrite","--users","--databases"],"env":{"APPWRITE_PROJECT_ID":"your-project-id","APPWRITE_API_KEY":"your-api-key","APPWRITE_ENDPOINT":"https://<REGION>.cloud.appwrite.io/v1"}}'📝 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.
| ```bash | |
| claude mcp add-json appwrite-api '{"command":"uvx","args":["mcp-server-appwrite","--users"],"env":{"APPWRITE_PROJECT_ID": "your-project-id", "APPWRITE_API_KEY": "your-api-key", "APPWRITE_ENDPOINT": "https://<REGION>.cloud.appwrite.io/v1"}}' | |
| ``` |
🤖 Prompt for AI Agents
In src/routes/docs/tooling/mcp/claude-code/+page.markdoc around lines 32–34, the
example MCP command only enables the Users tool; update the documented command
so DB tools are enabled for parity with prompts by adding the DB tool to the MCP
configuration/arguments (or appropriate flag) and reflect the correct tool name
used by MCP (e.g., "db" or "database"); ensure the JSON/args in the shell
snippet includes both users and DB tool enablement and update any accompanying
text to mention DB tools are now enabled.
| ```bash | ||
| claude mcp add appwrite-docs https://mcp-for-docs.appwrite.io -t http | ||
| ``` |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Incorrect Docs server command and transport.
Appwrite doesn’t expose a public HTTP Docs MCP URL; run the local stdio server.
-claude mcp add appwrite-docs https://mcp-for-docs.appwrite.io -t http
+claude mcp add-json appwrite-docs '{"command":"npx","args":["@appwrite/mcp-server-docs"]}'🤖 Prompt for AI Agents
In src/routes/docs/tooling/mcp/claude-code/+page.markdoc around lines 40-42, the
example shows adding an Appwrite Docs MCP via an HTTP URL which is incorrect
because Appwrite does not expose a public HTTP Docs MCP; update the example to
use the local stdio transport instead (remove the public URL and set transport
to stdio), and add a short note to run the local stdio server locally before
adding the MCP.
There was a problem hiding this 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
♻️ Duplicate comments (1)
src/routes/docs/tooling/mcp/claude-desktop/+page.markdoc (1)
40-57: Fix mismatch: examples use databases, but config enables only Users.Your API config enables only the Users tool (
--users), yet Step 3 includes database/collection prompts. Either enable the DB tool(s) here or remove DB-related prompts. Suggest enabling databases:"args": [ "mcp-server-appwrite", - "--users" + "--users", + "--databases" ],
🧹 Nitpick comments (3)
src/routes/docs/tooling/mcp/claude-desktop/+page.markdoc (3)
84-84: Clarify local vs. remote docs server rationale.The current wording reads as if local-only support prevents using the local
@appwrite/mcp-server-docs. Rephrase to emphasize that the Docs MCP is remote andmcp-remotebridges it to stdio.-We don't directly use the `@appwrite/mcp-server-docs` package in Claude Desktop because currently, Claude Desktop only supports local (stdio) MCP servers and not remote servers. The `mcp-remote` package acts as a proxy to connect to the docs MCP server. +Claude Desktop currently supports only local (stdio) MCP servers. Because the Appwrite Docs MCP server is hosted remotely, we use the `mcp-remote` package as a local proxy to connect to it.
9-9: Editorial nit: “prerequisites” spelling.-Before you begin, ensure you have the following **pre-requisites** installed on your system: +Before you begin, ensure you have the following **prerequisites** installed on your system:
27-27: Editorial nit: macOS capitalization.-In the Claude Desktop app, open the app's **Settings** page (press `CTRL + ,` on Windows or `CMD + ,` on MacOS) and head to the **Developer** tab. +In the Claude Desktop app, open the app's **Settings** page (press `Ctrl + ,` on Windows or `Command + ,` on macOS) and head to the **Developer** tab.
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro
📒 Files selected for processing (1)
src/routes/docs/tooling/mcp/claude-desktop/+page.markdoc(1 hunks)
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (1)
- GitHub Check: build
🔇 Additional comments (1)
src/routes/docs/tooling/mcp/claude-desktop/+page.markdoc (1)
25-109: Overall structure reads well.Clear step-based flow, helpful screenshots, and a concise troubleshooting tip. Nice work.

What does this PR do?
Refactors the MCP docs to give equal importance to the API and Docs MCP servers
Test Plan
/docs/tooling/mcpRelated PRs and Issues
#2338
Have you read the Contributing Guidelines on issues?
Yes
Summary by CodeRabbit