iCloud MCP
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| R2_ACCOUNT_ID | Yes | Your Cloudflare account id. Configured in wrangler.jsonc as vars.R2_ACCOUNT_ID. | |
| CONFIRM_SECRET | Yes | Secret used for preview-and-commit confirmation tokens. Set with `npx wrangler secret put CONFIRM_SECRET`, e.g. `openssl rand -base64 32`. | |
| ROUTES_PATTERN | Yes | Your custom domain route pattern, e.g. icloud-mcp.your-domain.example. Configured in wrangler.jsonc as routes[0].pattern. workers.dev and preview URLs are disabled by design. | |
| KV_NAMESPACE_IDS | Yes | The ids of the five KV namespaces created via wrangler (OAUTH_KV, DAV_CACHE, CONFIRM_KV, ALLOW_LIST, SAVE_LINK), pasted into kv_namespaces[].id in wrangler.jsonc. | |
| R2_ACCESS_KEY_ID | Yes | R2 S3 API token access key id (Object Read & Write, scoped to the bucket). Set with `npx wrangler secret put R2_ACCESS_KEY_ID`. | |
| AUTONOMY_SEAL_KEY | No | Seal key for each person's autonomy sign-in used by the rules job. Set automatically by `node scripts/grants.mjs autonomy-setup --yes`; its value is never printed. | |
| SAVE_LINK_SEAL_KEY | Yes | 32 random bytes, base64url, used to seal attachment save links. Set with `npx wrangler secret put SAVE_LINK_SEAL_KEY`, sent on standard input so it is never printed. | |
| R2_SECRET_ACCESS_KEY | Yes | R2 S3 API token secret access key (Object Read & Write, scoped to the bucket). Set with `npx wrangler secret put R2_SECRET_ACCESS_KEY`. | |
| ALLOWED_APPLE_IDS_SEED | Yes | Your own Apple ID as a one-element JSON array string, e.g. "[\"you@example.com\"]". Configured in wrangler.jsonc as vars.ALLOWED_APPLE_IDS_SEED. Read on every API request. | |
| AUTONOMY_CLIENT_SECRET | No | Secret for the client the rules job signs in as. Set automatically by `node scripts/grants.mjs autonomy-setup --yes`; its value is never printed. |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Server capabilities have not been inspected yet.
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
No tools | |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
This server cannot be deployed
Maintenance
ActivityMaintained
ResponsivenessNo issues