← Back to Plugins
MCP Server MCP

io.github.eodozzy/icloud-mcp

github By github 👁 1 views ▲ 0 votes

Read-only-by-default MCP server for iCloud mail, calendar, and contacts (IMAP/CalDAV/CardDAV).

Homepage Verified source GitHub

Install

uvx icloud-mcp

Configuration Example

{
  "remotes": [],
  "packages": [
    {
      "registryType": "pypi",
      "identifier": "icloud-mcp",
      "version": "0.1.1",
      "transport": {
        "type": "stdio"
      },
      "environmentVariables": [
        {
          "description": "Your Apple ID email (the IMAP/CalDAV username).",
          "isRequired": true,
          "format": "string",
          "name": "ICLOUD_USERNAME"
        },
        {
          "description": "OS-keyring service name to read the app-specific password from. Default: icloud-mcp. Set to reuse an existing entry.",
          "format": "string",
          "name": "ICLOUD_KEYRING_SERVICE"
        },
        {
          "description": "App-specific password. Fallback only; preferred storage is the OS keyring. Used only when no keyring entry is found.",
          "format": "string",
          "isSecret": true,
          "name": "ICLOUD_APP_PASSWORD"
        },
        {
          "description": "Enable mutating tools (send/reply/forward mail, create/update/delete event & contact). Off by default; each write still requires interactive confirmation. Accepts 1/true/yes/on.",
          "format": "string",
          "name": "ICLOUD_ENABLE_WRITES"
        },
        {
          "description": "IMAP host override. Default: imap.mail.me.com",
          "format": "string",
          "name": "ICLOUD_IMAP_HOST"
        },
        {
          "description": "IMAP port override. Default: 993",
          "format": "number",
          "name": "ICLOUD_IMAP_PORT"
        },
        {
          "description": "SMTP host override (used only by write/send tools). Default: smtp.mail.me.com",
          "format": "string",
          "name": "ICLOUD_SMTP_HOST"
        },
        {
          "description": "SMTP port override. Default: 587",
          "format": "number",
          "name": "ICLOUD_SMTP_PORT"
        },
        {
          "description": "CalDAV base URL override. Default: https://caldav.icloud.com/",
          "format": "string",
          "name": "ICLOUD_CALDAV_URL"
        },
        {
          "description": "CardDAV base URL override. Default: https://contacts.icloud.com/",
          "format": "string",
          "name": "ICLOUD_CARDDAV_URL"
        },
        {
          "description": "IANA timezone for rendering/scoping events. Default: system local time.",
          "format": "string",
          "name": "ICLOUD_TZ"
        }
      ]
    }
  ]
}
mcp model-context-protocol pypi

Comments

Sign in to leave a comment

Loading comments...