AGENTS.md
+21 −10
https://raw.githubusercontent.com/appwrite/mcp-for-api/HEAD/AGENTS.md
− key (`APPWRITE_PROJECT_ID`, `APPWRITE_API_KEY`, `APPWRITE_ENDPOINT`).− | `operator.py` | The compact "operator" surface — `appwrite_search_tools`, `appwrite_call_tool`, result/resource storage, write confirmation. |− | `context.py` | `appwrite_get_context` — workspace summary (project, services, account/org for OAuth). |− needs no credentials. Dashboards live in the `dashboards` repo under `MCP/`.− The server boots in a compact workflow: the client sees up to 4 tools− (`appwrite_get_context`, `appwrite_search_tools`, `appwrite_call_tool`, and− optionally `appwrite_search_docs`), while the full OAuth Appwrite catalog (41− 27-service catalog. Mutating hidden tools require− `confirm_write=true`. Large outputs are stored as MCP resources and returned as a− preview + resource URI.+ key (`APPWRITE_PROJECT_ID`, `APPWRITE_API_KEY`, `APPWRITE_ENDPOINT`, and+ optionally `APPWRITE_ENVIRONMENT_ID` for a project environment).+ | `operator.py` | The compact "operator" surface — `appwrite_search_tools`, `appwrite_call_tool` / `appwrite_call_write_tool`, tool annotations, result/resource storage, write confirmation. |+ | `context.py` | `appwrite_get_context` — workspace summary (project, services, account/org for OAuth, a focused project's environments). |+ | `headers.py` | Per-call request headers: `X-Appwrite-Environment` (a project environment, next to the project's ID) and `X-Appwrite-Reason` (why a write is made, validated and percent-encoded as Appwrite expects). |+ | `apps/` | MCP Apps (behind `flags.APPS`): `protocol.py` (the `io.modelcontextprotocol/ui` extension and per-client gating), `views.py` (`appwrite_show` and the view-only `appwrite_view_write`), `resource.py` (`ui://appwrite/view`, served from `assets/view.html`: plain JavaScript, no build step). See [docs/apps.md](docs/apps.md). |+ needs no credentials. The MCP dashboard lives in `appwrite-labs/monitoring` at+ `dashboards/Cloud/mcp.json`, synced to monitoring.appwrite.systems by Grafana Git Sync.+ The server boots in a compact workflow: the client sees up to 5 tools+ (`appwrite_get_context`, `appwrite_search_tools`, `appwrite_call_tool` for+ reads, `appwrite_call_write_tool` for everything else, and optionally+ `appwrite_search_docs`), while the full OAuth Appwrite catalog (41+ 27-service catalog. Mutating hidden tools run only through+ `appwrite_call_write_tool` and require `confirm_write=true` and a one-line+ `reason` (sent as `X-Appwrite-Reason`, recorded on the audit log), so each+ exposed tool's annotations match every call it accepts. Large outputs are stored as MCP+ resources and returned as a preview + resource URI.+ With MCP Apps on (`flags.APPS`), hosts that render them also see+ `appwrite_show`, whose result the host renders as an interactive view+ (`ui://appwrite/view`), and the view can call `appwrite_view_write`, which the+ model never sees. See [docs/apps.md](docs/apps.md).