Skip to main content
Glama
DavidGreigQC

iMessage MCP Server

by DavidGreigQC

iMessage MCP Server

MCP server for Claude Desktop that reads iMessages, SMS, and RCS messages - including mixed group chats with Android users.

Why This Exists

Other iMessage MCP connectors fail to read:

  • RCS messages (newer Android-to-iPhone messages)

  • Group chats with Android users (SMS/MMS groups)

  • Messages stored in attributedBody instead of plain text

This server handles all of these by:

  • Querying SMS, RCS, and iMessage conversations

  • Decoding binary attributedBody blobs to extract message text

  • Merging duplicate chat IDs that appear for mixed-protocol groups

Related MCP server: messages

Features

  • List all conversations (iMessage, SMS, RCS)

  • Search by contact name, phone number, or group name

  • Read messages from any conversation type

  • Get recent messages across all chats

  • Properly handles mixed iPhone/Android group chats

Installation

git clone https://github.com/DavidGreigQC/imessage-mcp-server.git
cd imessage-mcp-server
npm install

Setup with Claude Desktop

  1. Open Claude Desktop config:

    ~/Library/Application Support/Claude/claude_desktop_config.json
  2. Add the server:

    {
      "mcpServers": {
        "imessage": {
          "command": "node",
          "args": ["/path/to/imessage-mcp-server/src/index.js"]
        }
      }
    }
  3. Grant Full Disk Access to Claude Desktop:

    • System Settings > Privacy & Security > Full Disk Access

    • Add Claude Desktop

  4. Restart Claude Desktop

Usage Examples

Once configured, you can ask Claude things like:

  • "List my recent conversations"

  • "Search for messages from John"

  • "Read messages from the work group chat"

  • "Show me messages from the last 24 hours"

Available Tools

Tool

Description

list_conversations

List all conversations with last activity time

search_conversations

Search by name, phone, or group name

read_messages

Read messages from a specific conversation

get_recent_messages

Get recent messages across all chats

Requirements

  • macOS (tested on Sonoma/Sequoia)

  • Node.js 18+

  • Claude Desktop with Full Disk Access

  • Messages app with message history

How It Works

The server reads directly from the macOS Messages database (~/Library/Messages/chat.db). For RCS and some iMessage conversations, message text is stored in a binary attributedBody field rather than plain text - this server decodes that binary format to extract the actual message content.

License

MIT

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    B
    maintenance
    Enables Claude to send and read iMessages on macOS, with smart contact lookup, message history retrieval, and cross-conversation search using natural language commands.
    5
    MIT
  • A
    license
    Not graded
    quality
    A
    maintenance
    Enables fuzzy search and browsing of Apple Messages (iMessage/SMS) with contact resolution, filtering by sender or date, and context display through CLI, MCP, or Claude Code plugin.
    36 npm
    19
    MIT
  • A
    license
    A
    quality
    D
    maintenance
    Connects Claude Desktop to iMessage on macOS, enabling reading conversations, searching messages, sending texts, and managing attachments.
    7
    5 npm
    MIT