Icloud MCP logo

Icloud MCP

Access Apple and iCloud mail, calendars, contacts, reminders, notes, messages, and Safari through 41 MCP tools.

Install Icloud MCP

Pick your client, then add it in one click or paste the config.

STDIONode.js
~/Library/Application Support/Claude/claude_desktop_config.json
claude_desktop_config.json
{
  "mcpServers": {
    "icloud-mcp": {
      "command": "npx",
      "args": [
        "-y",
        "mcp-icloud"
      ],
      "env": {
        "ICLOUD_APP_PASSWORD": "YOUR_VALUE_HERE"
      }
    }
  }
}

Settings → Developer → Edit Config, merge this into mcpServers, then fully quit and reopen Claude Desktop.

Values are written into the snippet above so you can paste it as is. They never leave your browser.

Install not yet sandbox-tested— the server itself is confirmed live (we called its tools/list endpoint). The stdio install command is a separate, ongoing check.

Overview

icloud-mcp connects AI clients to Apple services through either macOS apps or iCloud protocols. LOCAL mode uses AppleScript and supports services such as Reminders, Notes, Messages, and Safari; CLOUD mode uses IMAP, SMTP, CalDAV, and CardDAV and can run away from a Mac. Switch modes at runtime with set-mode, without restarting the server. Reach for it when an agent needs to read or modify personal productivity data, with extra caution around immediate message, email, and deletion actions.

Use cases

  • Search and summarize email from selected folders
  • Create and update calendar events
  • Find and maintain contacts
  • Manage local reminders and notes
  • Inspect or control Safari and Messages on macOS

Key features

  • LOCAL AppleScript and CLOUD protocol modes
  • Email, calendar, and contact read/write tools
  • Local reminders, notes, Messages, and Safari tools
  • Runtime mode switching without restart
  • Structured output from list operations
  • Validated tool arguments and explicit behavior annotations

Tools41

What Icloud MCP lets your agent do. Expand a tool for its parameters.

Verified live~4.1k tokens of context

Security & health

What it can reach and how reliably it runs — from our own checks, not the maintainer’s claims.

ActiveLast checked 1d ago

Recent health check succeeded.

19/24 checks healthy over the last 91d

Supply-chain signal

No high-severity advisories surfaced by our automated scan.

Critical 0High 0Medium 0Low 0

Scanned 2d ago via OSV.dev · mcp-icloud (npm)

Adoption & maintenance

Factual signals from GitHub, npm, and our automated checks — not a rating.

GitHub stars79Stargazers on the source repository.
npm downloads3.7kPackage downloads in the last 30 days.
Last commit5d agoMost recent push to the default branch.
Tools exposed41Callable tools this server registers over MCP.
Directory activity12 viewsConfig copies, upvotes, and views on AllMCPs.

How Icloud MCP works

What icloud-mcp does

icloud-mcp exposes Apple productivity and communication services as MCP tools. It covers email, calendars, contacts, reminders, notes, Messages, and Safari. Read, search, create, update, complete, delete, send, and navigation operations are available according to the service and active backend.

The server supports two operating modes. LOCAL mode controls native macOS applications through AppleScript and does not require an iCloud password. CLOUD mode uses iCloud-compatible IMAP and SMTP for mail, CalDAV for calendars, and CardDAV for contacts, allowing operation on machines that are not Macs. Services unavailable through those protocols, including Reminders, Notes, Messages, and Safari, are local-only.

How it works

Communication uses JSON-RPC over standard input and output. The server does not open a port or listen on a socket. The set-mode tool changes between LOCAL and CLOUD during runtime.

Email tools can list folders, retrieve and search messages, change read state, and send mail. Sending is immediate rather than draft-based. Cloud delivery can include an HTML body and returns a message ID; local Mail.app delivery is plain text and does not return one.

Calendar tools list calendars and upcoming events, create events, update selected fields, and delete events. Contact tools support lookup, detailed reads, creation, and permanent deletion. Reminders, Notes, Messages, and Safari tools are available through local macOS applications, with Messages reading requiring the imsg command-line tool and Full Disk Access.

Setup and configuration

Node.js 20 or newer is required. Install the npm package with an MCP client using the command npx -y mcp-icloud.

Cloud mode uses the ICLOUD_APP_PASSWORD environment variable. Credentials are read at startup and passed to the relevant mail and iCloud protocol clients; diagnostics mask the password. A local installation can load the value from a .env file, while the macOS bundle can store it in its sensitive configuration field.

LOCAL mode requires macOS privacy permissions. Automation access is needed for the controlled apps, Calendar and Contacts permissions are used by specific calendar and contact operations, and Full Disk Access is required for reading Messages. Use about and check-auth-status to inspect the active mode and authentication state.

Tools and capabilities

  • Inspect server information and authentication status.
  • Switch between local AppleScript and cloud protocol backends.
  • List, read, search, send, and mark email; enumerate mail folders.
  • List, create, update, and delete calendar events and calendars.
  • Search, read, create, and permanently delete contacts; inspect local accounts and groups.
  • Manage local reminder lists and reminders, including completion state.
  • List, read, search, and create local Notes content.
  • List chats, read and send Messages, and add message reactions locally.
  • List Safari tabs, retrieve the current URL, open URLs, and close tabs.

Tool arguments are validated before execution. List operations also return structured machine-readable content alongside text output.

Limitations and notes

Operations marked local-only return an error in CLOUD mode. Cloud calendar updates merge only the fields supplied, while preserving other CalDAV properties; recurrence, invitees, and alarms have an experimental round-trip status.

Deletion is permanent through this server for contacts, reminders, events, and Safari tabs. Email and Messages are sent immediately when their send tools run. macOS permissions and the imsg dependency determine whether local features can access the underlying applications and data.

The server states that it collects no telemetry, analytics, or persistent local state. Data moves between the machine, the connected AI client, and Apple services.

Reviews

No reviews yet — be the first to share how it worked for you.

Frequently Asked Questions about Icloud MCP

icloud-mcp is an MCP server that connects AI clients to Apple Mail, Calendar, Contacts, Reminders, Notes, Messages, and Safari. Its tools can list, read, search, create, update, delete, send, and manage data, using macOS apps locally or iCloud protocols in cloud mode.

Install it through an MCP client with `npx -y mcp-icloud`. The server requires Node.js 20 or newer and communicates over standard input and output.

Yes, LOCAL mode works without an iCloud password by controlling macOS applications through AppleScript. It requires the relevant macOS privacy permissions, including Automation access and, for Messages reading, Full Disk Access.

Use CLOUD mode with `ICLOUD_APP_PASSWORD`. It uses IMAP and SMTP for email, CalDAV for calendars, and CardDAV for contacts; Reminders, Notes, Messages, and Safari remain local-only.

Yes, send-email delivers immediately and has no draft step. Cloud mode supports HTML and returns a message ID, while local Mail.app sends plain text and returns no ID.

Related MCP servers

Add a badge to your READMEShow it’s listed — live SVG, Markdown or HTML.

AllMCPs Directory Badge

Full Badge Customizer

Showcase your server listing on GitHub or your project documentation. Embed this dynamic SVG badge to highlight official listing status and live engagement.

Badge Style:
Live Dynamic SVG PreviewIcloud MCP AllMCPs Directory Badge
Markdown (GitHub README)
[![AllMCPs](https://allmcps.com/api/badge/icloud-mcp?style=directory)](https://allmcps.com/mcp/icloud-mcp)
HTML Embed
<a href="https://allmcps.com/mcp/icloud-mcp"><img src="https://allmcps.com/api/badge/icloud-mcp?style=directory" alt="Icloud MCP on AllMCPs" /></a>