Imessage-MCP
Provides read-only access to your iMessage and SMS history, allowing searching, listing conversations, and retrieving recent messages.
Read-only iMessage MCP server
Gives an assistant read-only access to your macOS Messages so it can help you
read, search, and analyze texts. It cannot send, edit, or delete anything —
every database connection is opened with SQLite mode=ro. You send replies yourself.
What it reads
~/Library/Messages/chat.db— your iMessage/SMS history (read-only)~/Library/Application Support/AddressBook/.../AddressBook-v22.abcddb— to turn phone numbers/emails into contact names (read-only, best effort)
It never writes to, copies, or transmits these anywhere — it just answers queries from whichever Claude client is connected.
Related MCP server: imessage-mcp
Tools
Tool | What it does |
| Most recently active threads + last-message preview |
| Threads where the other person texted last (awaiting your reply) |
| Recent message history with a person or group (fuzzy name/phone/email match) |
| Full-text search across messages, optionally scoped to one contact |
| Inbox-style view of recent messages across all threads (optional |
Requirements
uvinstalled (handles the Python deps automatically).Full Disk Access for whatever app runs the server, because
chat.dbis protected:Claude Code (CLI): the terminal app you launch
claudefrom (Terminal, iTerm, etc.).Claude Desktop: the Claude.app itself. Grant it in System Settings → Privacy & Security → Full Disk Access, then restart the app.
How it's wired up
Claude Code: registered at user scope (
~/.claude.json). Remove withclaude mcp remove imessage-readonly.Claude Desktop: added under
mcpServersin~/Library/Application Support/Claude/claude_desktop_config.json(a timestamped.bakof the original sits next to it). Restart the app to load it.
Notes
On recent macOS the message text is stored in a binary
attributedBodyblob rather than thetextcolumn;server.pydecodes it (handles emoji/accents).Timestamps are converted from Apple absolute time (nanoseconds since 2001-01-01).
Override the database path with the
IMESSAGE_DBenvironment variable if needed.
This server cannot be deployed
Maintenance
Related MCP Connectors
Send and read iMessages from your own Mac and Apple ID — drafts, history and contacts.
1Explore your Messages SQLite database to browse tables and inspect schemas with ease. Run flexible…
MCP connector for iMessage & Contacts via a local Mac agent + Vercel relay
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceEnables reading, searching, and sending iMessages directly from MCP-compatible clients by accessing the local macOS iMessage database, supporting conversations, attachments, and both individual and group chats.246 npm10MIT
- AlicenseNot gradedqualityDmaintenanceRead-only MCP server for your iMessage DB. No hosted service.MIT
- AlicenseBqualityBmaintenanceEnables reading, searching, sending iMessages, viewing image attachments, and managing conversations, with full support for modern macOS attributedBody parsing.141MIT
- AlicenseNot gradedqualityBmaintenanceEnables AI assistants to read, search, and send iMessages, manage contacts, and access attachments on macOS.5 npmMIT