-
Notifications
You must be signed in to change notification settings - Fork 303
add opencode to mcp docs #2394
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
add opencode to mcp docs #2394
Conversation
WalkthroughAdds OpenCode to MCP documentation and navigation: two OpenCode tool cards were appended to src/partials/mcp-add-ides-tools.md (light and dark themes, placed after the VS Code cards); a new Integrations nav entry Possibly related PRs
Suggested reviewers
Pre-merge checks and finishing touches✅ Passed checks (3 passed)
✨ Finishing touches🧪 Generate unit tests
📜 Recent review detailsConfiguration used: CodeRabbit UI Review profile: CHILL Plan: Pro 📒 Files selected for processing (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). (3)
🔇 Additional comments (1)
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: 1
🧹 Nitpick comments (4)
src/routes/docs/tooling/mcp/opencode/+page.markdoc (4)
1-8: Minor copy tweak to avoid lede duplication.Apply:
- Learn how you can add the Appwrite MCP servers to OpenCode to interact with both the Appwrite API and documentation. + This guide shows how to add Appwrite MCP servers to OpenCode to work with both the Appwrite API and the documentation.
9-23: Use “Prerequisites” (house style) and tighten phrasing.Apply:
-Before you begin, ensure you have the following **pre-requisites** installed on your system: +Before you begin, ensure you have the following prerequisites installed:
50-54: Clarify endpoints for Cloud vs self-hosted.Add a bullet:
- For self-hosted installations, set
APPWRITE_ENDPOINTto your instance URL, e.g.,https://your-domain.example/v1.
83-110: Favor non-destructive example prompts for first-run tests.Replace or move “Delete a specific user by ID” under an “Advanced” or “Destructive” subsection, and default to read-only actions for initial verification.
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro
⛔ Files ignored due to path filters (3)
static/images/docs/mcp/logos/dark/opencode.svgis excluded by!**/*.svgstatic/images/docs/mcp/logos/opencode.svgis excluded by!**/*.svgstatic/images/docs/mcp/opencode/oauth-question.pngis excluded by!**/*.png
📒 Files selected for processing (3)
src/partials/mcp-add-ides-tools.md(2 hunks)src/routes/docs/tooling/mcp/+layout.svelte(1 hunks)src/routes/docs/tooling/mcp/opencode/+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 (5)
src/partials/mcp-add-ides-tools.md (1)
21-23: LGTM — target page found; confirm logo assets existVerified src/routes/docs/tooling/mcp/opencode/+page.markdoc exists. Images not confirmed — confirm images/docs/mcp/logos/opencode.svg and images/docs/mcp/logos/dark/opencode.svg resolve to avoid broken cards. Also applies to lines 45–47.
src/routes/docs/tooling/mcp/+layout.svelte (1)
57-61: Action required — route missing: create or fix the href.fd returned 0 matches for src/routes/docs/tooling/mcp/opencode/+page.markdoc — either add that +page.markdoc at that exact path (ensure only one) or update the href in src/routes/docs/tooling/mcp/+layout.svelte to the correct existing route. Optional: add new: isNewUntil('31 Oct 2025') to highlight.
src/routes/docs/tooling/mcp/opencode/+page.markdoc (3)
112-112: Image asset verified — no action required.
File exists at static/images/docs/mcp/opencode/oauth-question.png and matches the Markdoc reference (/images/docs/mcp/opencode/oauth-question.png).
36-39: MCP local config is valid — confirm external CLI.opencode accepts "type": "local" with a "command" (array or string) and "enabled"; local MCPs use stdio by default so no explicit "stdio"/"transport" field is required. Use {env:VAR} / {file:path} for interpolation (not ${VAR}). The snippet below is sufficient.
File: src/routes/docs/tooling/mcp/opencode/+page.markdoc Lines: 36-39
"appwrite": { "type": "local", "command": ["uvx", "mcp-server-appwrite", "--sites"], "enabled": true,Action: verify that "uvx mcp-server-appwrite --sites" is the correct CLI + flags and that the binary is available at runtime (PATH or repo).
57-70: Confirm remote server URL schema and endpoint
- type: "remote" expects an HTTPS URL (Streamable HTTP / SSE); use wss:// only for MCP servers that explicitly expose a WebSocket transport.
- https://mcp-for-docs.appwrite.io is the documented Appwrite Docs MCP endpoint (listed in Appwrite docs / PulseMCP) — no change required.
| ```json | ||
| { | ||
| "$schema": "https://opencode.ai/config.json", | ||
| "mcp": { | ||
| "appwrite": { | ||
| "type": "local", | ||
| "command": ["uvx", "mcp-server-appwrite", "--sites"], | ||
| "enabled": true, | ||
| "environment": { | ||
| "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
Avoid encouraging hardcoded secrets in opencode.json. Add a security note and env-based guidance.
Consider adding this block right after the JSON snippet:
+{% info title="Security tip" %}
+Avoid committing secrets to version control. Prefer environment variables or your OS keychain. If you must keep `opencode.json` locally, restrict file permissions and exclude it from git.
+{% /info %}If OpenCode supports env interpolation, prefer:
"environment": {
"APPWRITE_PROJECT_ID": "${APPWRITE_PROJECT_ID}",
"APPWRITE_API_KEY": "${APPWRITE_API_KEY}",
"APPWRITE_ENDPOINT": "https://<REGION>.cloud.appwrite.io/v1"
}🤖 Prompt for AI Agents
In src/routes/docs/tooling/mcp/opencode/+page.markdoc around lines 32 to 48, the
JSON snippet currently shows hardcoded Appwrite secrets; add a short security
note immediately after the JSON block advising against hardcoding secrets and
recommending using environment variables or a secrets manager, and update the
example to use environment interpolation placeholders (e.g., reference
APPWRITE_PROJECT_ID, APPWRITE_API_KEY, APPWRITE_ENDPOINT as env vars) with a
brief mention that this requires OpenCode env interpolation support or an
external secrets store; keep the note concise and show the env-based guidance
textually (no raw secret values).
adityaoberai
left a 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.
@atharvadeosthale can you also add this to the Docs landing page?
Summary by CodeRabbit