imessage-mcp
imessage-mcp
Ein lokaler MCP-Server, der die iMessage-Daten Ihres Macs für Claude Desktop / Claude Code verfügbar macht. Zwei Schnittstellen:
SENDEN via AppleScript →
Messages.appLESEN via direktem, schreibgeschütztem SQLite-Zugriff auf
~/Library/Messages/chat.db
Alles läuft lokal. Keine API-Schlüssel, keine Netzwerkaufrufe.
Installation
# 1. Clone / copy into ~/mcp-servers/imessage-mcp
cd ~/mcp-servers/imessage-mcp
# 2. Create a Python 3.11+ venv and install deps
python3.12 -m venv .venv
.venv/bin/pip install -e .Related MCP server: imessage-mcp
Berechtigungen (erforderlich)
Vollständiger Festplattenzugriff — damit wir chat.db lesen können
Systemeinstellungen → Datenschutz & Sicherheit → Vollständiger Festplattenzugriff → aktivieren für:
Ihre Terminal-App (z. B. Terminal, iTerm2, Ghostty) UND
Claude.app(falls Sie Claude Desktop verwenden)
Automation — damit wir Messages.app steuern können
Systemeinstellungen → Datenschutz & Sicherheit → Automation → erweitern Sie Ihr Terminal / Claude.app
und schalten Sie Messages auf EIN.
Messages.app muss ausgeführt werden und bei iMessage angemeldet sein.
Wenn ein Berechtigungsschritt fehlt, meldet der Server einen Fehler mit dem genauen Pfad zu den Einstellungen, die geöffnet werden müssen.
Claude Desktop Konfiguration
Fügen Sie dies in ~/Library/Application Support/Claude/claude_desktop_config.json ein:
{
"mcpServers": {
"imessage": {
"command": "/Users/YOUR_USERNAME/mcp-servers/imessage-mcp/.venv/bin/python",
"args": ["-m", "imessage_mcp.server"]
}
}
}(Der absolute Pfad zum Python des venv ist am sichersten — er vermeidet PATH-Mehrdeutigkeiten. Ersetzen Sie YOUR_USERNAME.)
Tools
Tool | Zweck |
| Senden via Messages.app. |
| Chats sortiert nach Aktualität mit Vorschau der letzten Nachricht und Anzahl ungelesener Nachrichten. |
| Nachrichten für einen Chat; geben Sie |
| Groß-/Kleinschreibung ignorierende LIKE-Suche in Nachrichtentexten. |
| Eigene Handles + DB-Metadaten. |
Daten werden im ISO8601-Format ein- und ausgegeben. Intern speichert Apple message.date als Nanosekunden seit dem 01.01.2001 UTC; der Server konvertiert dies in beide Richtungen.
Sicherheitsinvarianten
chat.dbwird mitsqlite3.connect("file:...chat.db?mode=ro", uri=True)geöffnet. Jeder Schreibversuch löst einensqlite3.OperationalError: attempt to write a readonly databaseaus.send_imessageübergibt Empfänger / Text / Dienst als separate osascript argv-Einträge — keine Shell-Interpolation, keine Injektion.Anhänge geben nur Metadaten zurück (Dateiname, mime_type, total_bytes). Blobs werden niemals gelesen.
Einschränkungen
Geplante / verzögerte Nachrichten werden nicht unterstützt.
Bei Rich- / Antwort-Thread-Nachrichten kann der Text in
attributedBody(NSKeyedArchive) gespeichert sein. Wir versuchen bestmöglich, den eingebetteten NSString zu extrahieren; Nachrichten mit exotischeren Payloads (Bilder, Taps, Apple Pay) zeigen einen leerenbody, aber korrekte Metadaten.Zustellungsbestätigung:
send_imessagemeldet Erfolg basierend auf dem Exit-Code von osascript. Um zu überprüfen, ob die Nachricht tatsächlich zugestellt wurde, rufen Sie einige Sekunden spätersearch_imessagesoderget_chat_messagesauf.Dies ist nur für macOS verfügbar und funktioniert nicht mit sandboxed App Store-Apps.
Lokale Entwicklung
.venv/bin/pytest -qMaintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- AlicenseBqualityDmaintenanceA local server that enables Claude Desktop to interact with your macOS Contacts and Messages apps, allowing you to search contacts and send iMessages through natural language commands.21928MIT
- Alicense-qualityCmaintenanceA read-only MCP server for macOS that enables users to search through iMessage history and analyze conversation patterns using AI-powered tools. It provides detailed statistics on messaging habits, streaks, and contact analytics while keeping all data private and local.1041
- AlicenseAqualityCmaintenanceEnables full-text search of macOS iMessages including link preview metadata. Works as an MCP server for Claude Desktop to search your messages locally.1MIT
- FlicenseAqualityCmaintenanceA read-only MCP server that exposes your iMessage data to Claude Code and Claude Desktop, with automatic contact name resolution.3
Related MCP Connectors
MCP connector for iMessage & Contacts via a local Mac agent + Vercel relay
Let ChatGPT, Claude & Cursor use your Mac: email, calendar, iMessage, Teams, files. Local, free.
Search, read, and write your Apple Notes from ChatGPT/Claude via a local Mac agent + MCP relay.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/camfortin/imessage-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server