MCP.Market

Imessage Max MCP server

by cyberpapiii·io.github.cyberpapiii/imessage-max·v0.4.4·6 stars

AI-optimized MCP server for iMessage on macOS. Read, search, and send messages.

A92/100grade A
What users say
No reviews yet
Be the first
Safety scan
A92/100

full report

Adoption
Growing

6 stars

Reviews

Write one

Nobody has reviewed Imessage Max yet.

If you have run it, two minutes of your experience saves the next person an afternoon.

Imessage Max tools (12, 2 write)

write = sends, deletes, buys or posts

Read from the package source without running it. The installed server may list more.

  • diagnose

    Diagnose iMessage MCP configuration and permissions.

  • find_chat

    Find chats by participants, name, or recent content.

  • get_active_conversations

    Find conversations with recent bidirectional activity.

  • get_attachment

    Get attachment content at specified resolution.

  • get_context

    Get messages surrounding a specific message.

  • get_messages

    Get messages from a chat with flexible filtering.

  • get_unread

    Get unread messages across chats, or unread count summary.

  • list_attachments

    List attachments with metadata.

  • list_chats

    List recent chats with previews.

  • search

    Full-text search across messages with advanced filtering.

  • sendwrite action

    Send a message to a person or group chat.

  • updatewrite action

    Check for and install iMessage Max updates.

Public scan report

scanner v0.1.10 · 2026-10-01 · same rubric, same numbers if you re-run it

no findings
  • Code scan30 source files scanned25/25
  • –Live reliabilityno gateway calls yet and no remote to proben/a
  • –Tool poisoningtools not inspected (local package is not executed); not countedn/a
  • Auth qualitylocal package, no credentials required12/15
  • Maintenancelast push 2 days ago15/15
  • Maintainer identityregistry namespace matches repository owner; GitHub account older than a year8/10
Overall 92/100. Components that don't apply are left out of the denominator. Any critical finding is an F.RubricAppeal a findingJSON

How Imessage Max compares

Against every graded Web search MCP server, from our own scans and uptime checks. Updated after each scan run.

Safety score
92/100
higher than 90% of 3,470 Web search servers
Tools
12
the typical Web search server has 5
Tools that change things
17%
typical: 0%. Fewer write tools means less an agent can break
GitHub stars
6
more than 81% of 1,786 Web search servers

What its tools let an agent do: 10 read · 1 change · 1 send or post

Install Imessage Max in Claude Code, Cursor or VS Code

claude mcp add imessage-max -- uvx imessage-max
Add to Cursor

What the publisher says

From the Imessage Max repository's README, as published. We do not edit it. Read it on GitHub

iMessage Max

An MCP (Model Context Protocol) server for iMessage. It lets AI agents read, search, and send your messages, resolving phone numbers to contact names along the way.

Written in Swift. One binary, no runtime dependencies.

Distribution status

The project now ships a single Swift implementation:

  • GitHub releases
  • Homebrew
  • source builds
  • Codex plugin metadata
  • Claude Desktop MCPB metadata

The old Python package has been retired and removed from the repository. Everything current lives under swift/.

Features

  • 13 tools shaped around questions people actually ask, not around database tables
  • Phone numbers resolve to names through macOS Contacts
  • Three image variants: vision (1568px), thumb (400px), full (original), so a photo does not have to arrive at full size
  • Messages group into sessions, split on gaps of 4 hours or more
  • Attachment listings say whether each file is on disk or offloaded to iCloud
  • Raw SQLite3 and Core Image GPU acceleration
  • Reads chat.db only. Sending needs Automation permission for Messages.app

Why this exists

Most iMessage tools expose raw database structures, requiring 3-5 tool calls per user intent. This MCP provides intent-aligned tools:

"What did Contact A and I talk about yesterday?"
→ find_chat(participants=["Contact A"]) + get_messages(since="yesterday")

"Show me the exact details for this thread before I reply"
→ get_chat_details(chat_id="chat123")

"Show me photos from the group chat"
→ list_attachments(chat_id="chat123", type="image")

"Find where we discussed the launch timeline"
→ search(query="launch timeline")

Common agent workflows

The tools work best when an agent uses them as short workflows instead of isolated one-off calls.

Agents should treat chat_id values like chat123 as internal handles for tool calls and exact sends. When explaining results to a person, use the returned chat name, group name, or participant-derived label instead of saying "Chat 123."

Find the right conversation, then read it

find_chat(participants=["Contact A"])
get_chat_details(chat_id="chat123")
get_messages(chat_id="chat123", since="yesterday", limit=50)

Use this when the person matters more than the exact thread id.

Search first, then zoom in

search(query="launch timeline", limit=10)
get_context(message_id="msg_456", before=5, after=10)

Use this when you know the topic but not where it was discussed.

Check what needs attention

get_unread()
get_active_conversations(hours=24, min_exchanges=2)

Use this to surface unread threads and active conversations after a broad chat-list sweep.

Work with attachments safely

list_attachments(chat_id="chat123", type="image", since="30d")
get_attachment(attachment_id="att123", variant="vision")

Use list_attachments to find the message where files were shared. It returns exact attachment ids and says whether each file is on disk, so you know before you fetch.

Send with exact targeting when it matters

find_chat(participants=["Contact A", "Contact B"])
send(chat_id="chat456", text="Please use the latest draft")

For sensitive sends, prefer resolving the exact chat first and then using chat_id so the message lands in the intended thread.

Installation

Homebrew (recommended)

brew tap cyberpapiii/tap
brew install imessage-max

From source

git clone https://github.com/cyberpapiii/imessage-max.git
cd imessage-max/swift
swift build -c release

# Binary is at .build/release/imessage-max

For local development, advanced setup, and the signed install workflow, see:

  • swift/README.md

Protocol support

iMessage Max is a dual-era MCP server. Both transports (stdio and HTTP) serve both eras concurrently, selected per request:

Shortened. The full README is on GitHub.

Nothing above is checked by us. What we check is on the safety report.

Imessage Max: common questions

Is Imessage Max MCP server safe?
Yes, by our scan: it is graded A (92/100). Read the Imessage Max safety report
How do I install Imessage Max?
It runs on your machine. Copy the Claude Code, Cursor, VS Code or Claude Desktop config from the install section.
Does Imessage Max need an API key?
Not as far as the registry entry and our scan can tell: no credentials are declared or required.
Is Imessage Max maintained?
The last commit was 36 days ago (2026-09-29). The latest release is v0.4.4.
What can I use instead of Imessage Max?
Servers from other publishers that do the same job: Apple Mail MCP server and Everything Search MCP server.
How does Imessage Max compare with other Web search MCP servers?
safety score 92/100 (higher than 90% of 3,470 Web search servers); tools 12 (the typical Web search server has 5); tools that change things 17% (typical: 0%. Fewer write tools means less an agent can break). Full comparison.

Alternatives to Imessage Max

Same job from other publishers: the closest match first, then the best rated.