☁︎ mcp-icloud

Remote Model Context Protocol server · iCloud

iCloud workflows, without the copy-paste.

Expose iCloud account, drive, photos, calendars, contacts, reminders, and notes data to Claude and other MCP clients through one hosted endpoint, JSON-first resources, and guarded mutation tools.

OAuth is enabled for the MCP endpoint, so Claude Desktop's remote Connect flow can discover and authorize this server on the custom domain.

JSON-first Stable MCP resources and practical tool payloads.
Guarded writes Mutations stay behind config flags and destructive confirm gates.
Brokered binaries Drive and Photos downloads use short-lived app URLs instead of bloating MCP responses.
mcp client config
{
  "mcpServers": {
    "icloud": {
      "url": "https://icloud-dev.mcp.jflamb.com/mcp"
    }
  }
}

# auth UI
open https://icloud-dev.mcp.jflamb.com/auth

# first connection opens a browser for Google OAuth
# then the server-side iCloud session still comes from the auth UI


# examples
- summarize my iCloud storage usage
- show my upcoming reminders this week
- list calendar events tomorrow
- fetch the details for photo 123 from Library

What it exposes right now

The current hosted surface focuses on honest capabilities, stable reads, and carefully gated mutations where the underlying seams have been audited.

Account and devices

  • Account overview and storage summary
  • Find My device listing and detail reads
  • Public status and operator auth flows

Content surfaces

  • Drive metadata plus brokered downloads
  • Photos albums, item metadata, and guarded deletes
  • Contacts, calendars, reminders, and read-only notes

Mutation model

  • Calendars and events
  • Contacts and contact groups
  • Reminder items and related records

Getting started

Use the hosted MCP endpoint in your client, then use the auth UI once to establish the iCloud session that backs the server-side tools and resources.

MCP endpoint OAuth-protected Streamable HTTP endpoint for remote MCP clients.
https://icloud-dev.mcp.jflamb.com/mcp
Authentication UI Operator-facing Apple ID, 2FA, and revoke flow.
https://icloud-dev.mcp.jflamb.com/auth
Status JSON Machine-readable current auth state for diagnostics.
https://icloud-dev.mcp.jflamb.com/status

Operational guardrails

The server is designed to fail closed around mutations and large payloads so clients can use it safely in day-to-day automation.

Writes stay explicit

Mutation tools require MCP_ENABLE_MUTATIONS=true, and destructive operations also require MCP_ENABLE_DESTRUCTIVE_MUTATIONS=true plus confirm=true.

Large files stay out of MCP payloads

Drive and Photos binary retrieval uses short-lived broker tokens and /downloads/<token> routes unless the caller explicitly requests a small inline payload.

Example prompts

The current surface is broad enough for common personal-ops workflows without forcing clients to memorize Apple-specific shapes.

Summarize my iCloud storage usage and tell me which media category is largest.
List my upcoming calendar events for the next 7 days and flag overlaps.
Create a contact group named Family Admin and add the contacts I mention.
Show my incomplete reminders in Personal and add a start date to the travel prep item.
Give me a brokered download link for /Documents/Receipts/2026.pdf.