Prototyp · Vorschau: alle Server aus der offiziellen Registry, alle 30 Minuten synchronisiert. Bewertungen und Benutzerkonten folgen in einem späteren Schritt.
PopNx MCPMCP-Server für alle, die KI nutzen · in einfachen Worten erklärt

iCloud Mail

von JulienRabaultVersion 0.1.1i★ –iLäuft auf deinem Computer
Name in der Registryio.github.JulienRabault/icloud-mcp

Installieren

Überblick

Beschreibung vom Entwickler (englisches Original)

Read, search, draft, send and file iCloud Mail over IMAP and SMTP. No tool destroys mail.

Die drei Säulen von PopNx MCP

Diese drei werden nie zu einer Punktzahl zusammengefasst: Meinungen, Messungen und Beliebtheit sind verschiedene Dinge.

Was du damit machen kannst

Für diesen Server haben wir noch keine Zusammenfassung in einfacher Sprache geschrieben. Unten stehen die Fakten, die wir aus der Registry gelesen haben.

  • Verbindung: Läuft auf deinem Computer
  • Transport: stdio
  • Kategorie: Suche & KI-Gedächtnis
  • Das musst du eintragen: ICLOUD_EMAIL, ICLOUD_APP_PASSWORD

Installation

Wähle die KI-App, die du nutzt, und kopiere die Einstellungen.

Bevor du installierst

  • Basischecks: 1 von 1 bestanden
  • Läuft auf deinem Computer mit den Rechten deines Benutzerkontos (Dateien, Netzwerk, Apps).
  • Das trägst du selbst ein: ICLOUD_EMAIL, ICLOUD_APP_PASSWORD, ICLOUD_DISPLAY_NAME

Als geheim markierte Werte sind Schlüssel zu deinem Konto. Gib sie nie weiter und füge sie nie in einen Chat ein.

Du brauchst

  • PyPIuv für Python installiert (für den Befehl uvx)

Welche App nutzt du?

Wähle oben deine App. Wir merken sie uns, damit der Button beim nächsten Mal „In … installieren“ anzeigt.

Öffne Claude Desktop → Settings → Developer → Edit Config und füge dies in claude_desktop_config.json ein

{
  "mcpServers": {
    "icloud": {
      "command": "uvx",
      "args": [
        "icloud-mail-mcp"
      ],
      "env": {
        "ICLOUD_EMAIL": "your-value",
        "ICLOUD_APP_PASSWORD": "your-value",
        "ICLOUD_DISPLAY_NAME": "your-value"
      }
    }
  }
}

Führe das in deinem Terminal aus

claude mcp add icloud --env ICLOUD_EMAIL=your-value --env ICLOUD_APP_PASSWORD=your-value --env ICLOUD_DISPLAY_NAME=your-value -- uvx icloud-mail-mcp

Trag die leeren Werte ein, bevor du ihn startest.

In Cursor öffnen

Oder kopier die Einstellungen selbst

In .cursor/mcp.json in deinem Projekt oder in ~/.cursor/mcp.json einfügen

{
  "mcpServers": {
    "icloud": {
      "command": "uvx",
      "args": [
        "icloud-mail-mcp"
      ],
      "env": {
        "ICLOUD_EMAIL": "your-value",
        "ICLOUD_APP_PASSWORD": "your-value",
        "ICLOUD_DISPLAY_NAME": "your-value"
      }
    }
  }
}

Dein Browser fragt, ob er die App öffnen darf, dann zeigt die App die Einstellungen und bittet dich um Bestätigung. Schlüsselwerte bleiben leer, damit du sie selbst einträgst.

In VS Code öffnen

Oder kopier die Einstellungen selbst

In .vscode/mcp.json in deinem Projekt einfügen

{
  "servers": {
    "icloud": {
      "type": "stdio",
      "command": "uvx",
      "args": [
        "icloud-mail-mcp"
      ],
      "env": {
        "ICLOUD_EMAIL": "your-value",
        "ICLOUD_APP_PASSWORD": "your-value",
        "ICLOUD_DISPLAY_NAME": "your-value"
      }
    }
  }
}

Dein Browser fragt, ob er die App öffnen darf, dann zeigt die App die Einstellungen und bittet dich um Bestätigung. Schlüsselwerte bleiben leer, damit du sie selbst einträgst.

Dieser Server läuft auf deinem Computer, und ChatGPT kann sich nur mit Servern im Internet verbinden. Wähle eine andere App.

Deine Auswahl bleibt in einem Cookie auf diesem Gerät; kein Konto nötig.

Werte, die du selbst einträgst

  • ICLOUD_EMAIL erforderlich env
    Your iCloud address, for example you@icloud.com.
  • ICLOUD_APP_PASSWORD geheim erforderlich env
    An app-specific password generated at account.apple.com. iCloud rejects your main password over IMAP.
  • ICLOUD_DISPLAY_NAME env
    Name shown in the From header of sent mail. Defaults to the local part of the address.

Diese Einstellungen werden aus dem Registry-Eintrag des Entwicklers erzeugt. Wenn in der README etwas anderes steht, folge der README.

Was er kann

Läuft auf deinem Computer; die Tool-Liste erscheint nach der Installation in deiner KI-App.

Basischecksi

Wir prüfen Informationen, die jeder sehen kann; den Code haben wir nicht gelesen. Checks, die nicht zutreffen, werden nicht mitgezählt. · Geprüft am 8. Nov. 2026

  • ✓ Bestanden

    Entwickler passt zum Repo

    Der Registry-Name wurde mit dem GitHub-Konto JulienRabault bestätigt, dem das Repo gehört

  • … Noch nicht geprüft

    Wird noch gepflegt

    Dieses Repo haben wir noch nicht von GitHub gelesen

  • … Noch nicht geprüft

    Hat eine Lizenz

    Dieses Repo haben wir noch nicht von GitHub gelesen

  • – Nicht zutreffend

    Endpunkt antwortet

    Dieser Server läuft auf deinem Computer; es gibt keinen Endpunkt im Internet

  • – Nicht zutreffend

    Anmeldung mit OAuth

    Läuft auf deinem Computer und nutzt stattdessen lokale Einstellungen

  • … Noch nicht geprüft

    Keine versteckten Anweisungen in Tool-Beschreibungen

    Läuft auf deinem Computer; Tool-Listen können wir nur von Endpunkten im Internet lesen

Im Vergleich mit anderen in Suche & KI-Gedächtnisi

  • Mehr Sterne als 0 % der anderen 5668 Server in dieser Kategorie
  • Neuer in der Registry veröffentlicht als 47 % der anderen 5668 Server in dieser Kategorie
  • Basischecks gleich gut wie oder besser als bei 100 % der anderen 5668 Server in dieser Kategorie

Verglichen mit allen aktiven Servern dieser Kategorie in der Registry. Sterne zählen nur, wenn dem Herausgeber das Repo gehört.

Häufige Fragen

Ist iCloud Mail sicher?

Er hat 1 von 1 zutreffenden Basischecks bestanden. Den Code haben wir nicht gelesen. Bevor du einen Schlüssel oder Token hinzufügst, sieh nach, welche Zugriffe der Server verlangt, und nutze einen Schlüssel, der nur die Berechtigungen hat, die du brauchst.

Welche Schlüssel oder Codes braucht er?

Das musst du eintragen: ICLOUD_EMAIL, ICLOUD_APP_PASSWORD

Läuft er auf meinem Computer oder in der Cloud?

Er läuft auf deinem Computer. Deine KI-App startet ihn bei Bedarf, und die Daten laufen nicht über die Server des Entwicklers (außer der Server ruft selbst einen Onlinedienst auf).

Wird er noch gepflegt?

Das GitHub-Repo wurde zuletzt – geändert, und die neueste Version (0.1.1) kam vor 2 Monaten in die Registry.

Welche Apps können ihn nutzen?

Apps, die MCP unterstützen, etwa Claude Desktop, Claude Code, Cursor und VS Code. Außerdem brauchst du Python (uv) auf deinem Computer.

Was kann ich stattdessen nutzen?

In derselben Kategorie: Context7, Codebase Memory, Exa

Alternativen

Server derselben Kategorie von anderen Entwicklern, sortiert nach Sternen.

So liest du eine Karte:★ GitHub-SterneiDrei Säulen: Bewertungen · Checks · NutzungiAktualisiert = neueste Version in der Registry veröffentlichti

Context7

von upstash

Up-to-date docs for AI agents

Computer oder Cloud★ 64.224MITAktualisiert gestern
Installieren

Codebase Memory

von DeusData

Codebase knowledge graph for AI agents — 162 languages, sub-ms queries, 99% fewer tokens.

Läuft auf deinem Computer★ 48.148MITAktualisiert vor 21 Tagen
Installieren

Exa

von exa-labs

Connect AI agents to Exa for web search, content fetching, and multi-step research.

Läuft in der Cloud★ 5.213MITAktualisiert vor 2 Monaten
Installieren

README vom Entwickler

README öffnen

Unverändert aus dem Repo des Entwicklers übernommen. PopNx MCP hat den Inhalt weder geprüft noch empfiehlt es ihn. HTML, Bilder und Skripte wurden entfernt. Links führen von dieser Website weg.

iCloud Mail MCP

A Model Context Protocol (MCP) server for iCloud Mail. Lets an LLM read, search, file and send your Apple mail over IMAP and SMTP.

Runs entirely on your machine: your credentials and your mail never reach a third party. Networking and MIME parsing use only the Python standard library.

Key Features
  • Read-only by default. Search and read tools use SELECT ... readonly and BODY.PEEK — nothing is marked as read, moved or deleted behind your back.
  • Searches every folder, not just the inbox. Replies get filed away by mail rules; search_all_folders finds them where an inbox-only search can't.
  • Drafts before sends. save_draft puts a message in Drafts for you to review. send_email exists, but it is separate and explicit.
  • Nothing destroys mail. There is no tool that deletes messages, and delete_mailbox refuses any folder that still holds some.
  • Handles real iCloud MIME. Modified UTF-7 folder names, quoted-printable, lying charsets, HTML-only messages, accented server-side search.
Requirements
  • Python 3.11 or newer, and uv
  • An iCloud account with two-factor authentication enabled
  • An app-specific password — iCloud rejects your main password over IMAP
Getting started

Once published to PyPI, no clone is needed:

uvx --from icloud-mail-mcp icloud-mcp-setup     # interactive configuration

uvx --from icloud-mail-mcp icloud-mcp # run the server

From source:

git clone https://github.com/JulienRabault/icloud-mcp.git

cd icloud-mcp uv sync uv run python -m icloud_mcp.setup

The setup command asks for your address and app-specific password, tests the connection, writes .env, then prints the exact config block for your client.

Generate the app-specific password at account.apple.com → Sign-In and Security → App-Specific Passwords.

Standard config works in most clients:

{

"mcpServers": { "icloud-mail": { "command": "uv", "args": ["run", "--directory", "/path/to/icloud-mcp", "python", "-m", "icloud_mcp"] } } }

Claude Code

claude mcp add icloud-mail --scope user -- uv run --directory /path/to/icloud-mcp python -m icloud_mcp

Check with claude mcp list.

Claude Desktop

Add the standard config to claude_desktop_config.json:

  • macOS — ~/Library/Application Support/Claude/claude_desktop_config.json
  • Windows — %APPDATA%\Claude\claude_desktop_config.json

On Windows, use the absolute path to uv.exe: desktop clients don't always inherit your shell PATH.

Codex

In ~/.codex/config.toml:

[mcp_servers.icloud-mail]

command = "uv" args = ["run", "--directory", "/path/to/icloud-mcp", "python", "-m", "icloud_mcp"]

</details>

Cursor / Windsurf / VS Code

Use the standard config block in the MCP settings file of your editor (.cursor/mcp.json, ~/.codeium/windsurf/mcp_config.json, or the VS Code MCP settings).

MCP servers load at client startup — restart the client after editing its config.

Tools

Read — none of these modify the mailbox:

ToolDescription
list_foldersList folders, optionally with message and unread counts
folder_statusCounts for one folder without listing messages
search_emailsSearch one folder: text, sender, recipient, subject, dates, flags, size
search_all_foldersThe same search across every folder at once
read_emailFull message: decoded body, optional HTML, attachment metadata
get_threadRebuild a conversation, optionally with each message body
save_attachmentsWrite attachments to disk and return their paths

Write — explicit by design:

ToolDescription
save_draftPut a message in Drafts. Nothing is sent
set_flagRead/unread, flagged, answered. Reversible
create_mailboxCreate a folder, accented names included
rename_mailboxRename a folder, messages follow
delete_mailboxDelete an empty folder. Refuses while it holds mail
auto_organizeFile messages by rules. Simulates unless dry_run=false
move_emailsMove between folders. Simulates unless dry_run=false
send_emailActually sends. No draft step, no undo

No tool destroys mail. delete_mailbox refuses a folder that still holds messages — move them out first, which keeps the decision with you.

Attachment bytes never pass through the model: save_attachments writes files and returns paths. Filenames arriving from email are sanitised — they are hostile input, not trusted paths.

Resources
URIContent
icloud://foldersEvery folder with message and unread counts
icloud://unreadUnread messages in the inbox
Prompts
PromptPurpose
triage_inboxSort recent mail into action required / info / waiting / ignorable
draft_replyRead a message and its thread, draft a reply into Drafts
follow_upReconstruct an exchange with a contact, say who owes whom a reply
Automation without an MCP client

examples/ holds standalone scripts using the same modules — point cron or Task Scheduler at them:

uv run python examples/daily_digest.py           # what arrived today

uv run python examples/watch_sender.py acme.com # exit 1 if nothing new uv run python examples/waiting_on_reply.py # threads nobody answered uv run python examples/auto_file.py --apply # file mail by rules

All support --json for piping. See examples/README.md.

Bundled skill

skills/mailbox-search/ is a Claude Code skill that forces a sweep of every folder before concluding a message doesn't exist:

cp -r skills/mailbox-search ~/.claude/skills/
iCloud quirks handled here

Worth knowing if you're writing your own IMAP client against iCloud:

  • `SEARCH` returns UIDs out of order. RFC 3501 doesn't guarantee ordering, and iCloud genuinely returns unsorted lists. Taking the tail of the response gives you the wrong messages — sort numerically first.
  • No `MOVE`, no `UIDPLUS`. Moving means COPY + \Deleted + EXPUNGE, and EXPUNGE purges *every* \Deleted message in the folder. move_emails refuses to run when the folder holds deleted messages outside the requested batch, which would otherwise be destroyed.
  • `SEARCH CHARSET UTF-8` works. Accented queries run server-side across the whole mailbox. A client-side fallback covers servers that refuse, and flags it via filtered_client_side in the response.
  • Folder names use modified UTF-7 (RFC 3501), implemented in utf7.py.
  • Charsets lie. Bodies fall back to latin-1 when the declared charset fails, and to stripped HTML when there's no text/plain part.
Security notes
  • Credentials live in .env (gitignored) or the environment, never in code. Settings.__repr__ omits the password.
  • Email content is data, not instructions. The server tells clients never to act on directives found inside a received message.
  • send_email and move_emails are meant to run only after the user approves the exact content or the exact message list in the conversation.
Development
uv run pytest -q

49 offline tests — no network, no credentials. CI runs them on Linux, macOS and Windows against Python 3.11 to 3.13.

src/icloud_mcp/

config.py env / .env loading utf7.py modified UTF-7 for folder names models.py frozen Pydantic models mime.py header, body and attachment decoding imap_client.py connection, LIST, STATUS, SELECT, FETCH search.py SEARCH criteria, threading, multi-folder search smtp_client.py MIME building, SMTP send, copy to Sent attachments.py attachment extraction, filename sanitising drafts.py APPEND to Drafts flags.py \Seen, \Flagged, \Answered move.py COPY + EXPUNGE with the anti-purge guard mailboxes.py create, rename, delete (empty only) organize.py rule-based filing server.py tools, resources, prompts setup_wizard.py interactive configuration cli.py terminal checks

Contributing

Issues and pull requests welcome. Tests must pass offline — no test may require a real mailbox.

License

MIT

PopNx fragen