anipotts avatar

iMessage History

anipotts/imessage-mcp

This server connects Claude to your local iMessage database on macOS with 26 read-only tools for conversational analysis. You can search message history, calculate texting streaks, find who initiates conversations, generate year-in-review summaries, analyze reaction patterns, track double-texts, and explore group chat dynamics. All queries run locally against chat.db and your AddressBook with no network calls or writes. The entire tool surface is marked read-only, so MCP clients can auto-approve calls without manual confirmation. Useful for personal analytics, reconstructing conversation timelines, or building custom iMessage insights without leaving your terminal or IDE. Requires Full Disk Access permission for whatever app hosts the MCP connection.

GitHub stars
30
tools
8
transport
STDIO
env vars
5
last updated
Oct 23, 2026

Tools

8 tools

Public tool metadata for what this MCP can expose to an agent.

search_messagesSearch by substring, exact text, token, or phrase. Message text by default; conversation names and attachment filenames are opt-in. Filter by service, sent or received, and date

Search by substring, exact text, token, or phrase. Message text by default; conversation names and attachment filenames are opt-in. Filter by service, sent or received, and date

No parameter schema in public metadata yet.

get_conversationRead a conversation by chat_id or by a contact or group name, with edits, reactions, receipts, replies, group events, and attachments. The cursor pages to older events

Read a conversation by chat_id or by a contact or group name, with edits, reactions, receipts, replies, group events, and attachments. The cursor pages to older events

No parameter schema in public metadata yet.

list_conversationsFind conversations by contact, service, kind, reply state, or date, each with its latest message, newest first or by who you text most

Find conversations by contact, service, kind, reply state, or date, each with its latest message, newest first or by who you text most

No parameter schema in public metadata yet.

get_attachmentShow one attachment from get_conversation: images as a JPEG with location and camera metadata removed, text files as text. Needs the full privacy mode

Show one attachment from get_conversation: images as a JPEG with location and camera metadata removed, text files as text. Needs the full privacy mode

No parameter schema in public metadata yet.

sync_messagesPull every change since a cursor: new, edited, unsent, and deleted messages, conversation memberships, reactions, and receipts

Pull every change since a cursor: new, edited, unsent, and deleted messages, conversation memberships, reactions, and receipts

No parameter schema in public metadata yet.

analyze_communicationMessage counts by hour and weekday, response times, streaks, and who starts conversations

Message counts by hour and weekday, response times, streaks, and who starts conversations

No parameter schema in public metadata yet.

resolve_contactMatch a name, phone number, or email to a contact in your Mac's Address Book, and report ambiguity rather than guess

Match a name, phone number, or email to a contact in your Mac's Address Book, and report ambiguity rather than guess

No parameter schema in public metadata yet.

server_statusVersion, update availability, privacy mode, index and cache state, schema support, conversation membership counts, and Contacts access

Version, update availability, privacy mode, index and cache state, schema support, conversation membership counts, and Contacts access

No parameter schema in public metadata yet.

Sponsors

Configuration

IMESSAGE_PRIVACY

Most any caller can see: full (default for stdio), redacted, or aggregate.

IMESSAGE_CONTACTS

live (default) names handles from Contacts; none shows handles only.

IMESSAGE_DB

Path to a copy of chat.db instead of this Mac's Messages database.

IMESSAGE_CACHE

Set to 0 to keep the search index in memory only.

IMESSAGE_UPDATE_CHECK

Set to 0 to turn off the npm version check.

Readme

imessage-mcp

npm MCP Registry CI License: MIT

Search and read your Messages history from Claude, Codex, Cursor, VS Code, and any other MCP client.

Claude Code catching up on a real conversation about a hackathon through imessage-mcp

Read-only. Runs on your Mac. No accounts, no cloud service, nothing to compile.


View the full README on GitHub

Details

Repository
github.com/anipotts/imessage-mcp
Package
imessage-mcp
Transport
STDIO
Registry
MCP registry, active