Document OAuth consent flow updates#3090
Conversation
Appwrite WebsiteProject ID: Website (appwrite/website)Project ID: Tip Schedule functions to run as often as every minute with cron expressions |
Greptile SummaryThis PR adds documentation for three related OAuth consent behaviors: native-app deep-link outcome screens and the Open app retry action on the OAuth2 page, PAR-backed login resumption that shortens the browser-visible login URL without affecting the app callback, and user-driven scope narrowing at consent time on the MCP API server page.
Confidence Score: 4/5Documentation-only change with clear prose; safe to merge after addressing the section placement question. Both files contain documentation additions with no broken anchors, missing images, or incorrect technical claims. The only concern is that the new "OAuth consent" content in the MCP API page is nested under a "Pre-requisites" heading even though it describes runtime consent behavior rather than a setup step, which could mislead readers who expect only configuration instructions there. src/routes/docs/tooling/ai/mcp-servers/api/+page.markdoc — review section placement of the new OAuth consent subsection within Prerequisites. Important Files Changed
Prompt To Fix All With AIFix the following 1 code review issue. Work through them one at a time, proposing concise fixes.
---
### Issue 1 of 1
src/routes/docs/tooling/ai/mcp-servers/api/+page.markdoc:31-36
**OAuth consent section placed under Prerequisites**
The `## OAuth consent` heading sits inside the `# Pre-requisites` section, between "Appwrite API key" and "Install uv". A developer scanning that section expects only setup steps; a behavioral description of what happens at consent time is unexpected there. Consider moving this to a standalone top-level section (e.g., `# OAuth consent {% #oauth-consent %}`) so it is discoverable on its own and doesn't inflate the prerequisites list with conceptual content.
Reviews (1): Last reviewed commit: "Document OAuth consent flow updates" | Re-trigger Greptile |
| ## OAuth consent | ||
|
|
||
| When an MCP client connects through Appwrite's hosted OAuth flow, the Console consent screen lets the user review the requested access before granting it. For MCP grants, users can keep the full requested access or customize the grant by narrowing project and organization resources and selecting read-only or read/write access where supported. | ||
|
|
||
| This narrowing happens at consent time. The MCP client still receives an OAuth grant only for the access the user approved, so requests outside the approved resources or scopes are not authorized. | ||
|
|
There was a problem hiding this comment.
OAuth consent section placed under Prerequisites
The ## OAuth consent heading sits inside the # Pre-requisites section, between "Appwrite API key" and "Install uv". A developer scanning that section expects only setup steps; a behavioral description of what happens at consent time is unexpected there. Consider moving this to a standalone top-level section (e.g., # OAuth consent {% #oauth-consent %}) so it is discoverable on its own and doesn't inflate the prerequisites list with conceptual content.
Prompt To Fix With AI
This is a comment left during a code review.
Path: src/routes/docs/tooling/ai/mcp-servers/api/+page.markdoc
Line: 31-36
Comment:
**OAuth consent section placed under Prerequisites**
The `## OAuth consent` heading sits inside the `# Pre-requisites` section, between "Appwrite API key" and "Install uv". A developer scanning that section expects only setup steps; a behavioral description of what happens at consent time is unexpected there. Consider moving this to a standalone top-level section (e.g., `# OAuth consent {% #oauth-consent %}`) so it is discoverable on its own and doesn't inflate the prerequisites list with conceptual content.
How can I resolve this? If you propose a fix, please make it concise.Note: If this suggestion doesn't match your team's coding style, reply to this and let me know. I'll remember it for next time!


What
Validation
git diff --checkFull repo checks were not run because
bunis not installed in this environment, andpnpm install --frozen-lockfileis blocked by the currentpackage.json/pnpm-lock.yamlmismatch onorigin/main.