Mac Messages

v1.0.0Communicationstable

An MCP server that securely interfaces with your iMessage database via the Model Context Protocol (MCP), allowing LLMs to query and analyze iMessage conversations. It includes robust phone number validation, attachment processing, contact management,

applescriptclaudecontactscursorimessage
Share:
286
Stars
0
Downloads
0
Weekly
0/5

What is Mac Messages?

Mac Messages is a Model Context Protocol (MCP) server that allows AI assistants like Claude, Cursor, and VS Code to mcp server that securely interfaces with your imessage database via the model context protocol (mcp), allowing llms to query and analyze imessage conversations. it includes robust phone number validat...

An MCP server that securely interfaces with your iMessage database via the Model Context Protocol (MCP), allowing LLMs to query and analyze iMessage conversations. It includes robust phone number validation, attachment processing, contact management,

This server falls under the Communication category on MCPgee, the world's largest MCP server directory with 33,000+ servers.

Features

  • An MCP server that securely interfaces with your iMessage da

Use Cases

Query and analyze iMessage conversations programmatically.
Extract contacts and attachment information from messages.
Search message history using natural language.
carterlasalle

Maintainer

LicenseMIT
Languagepython
Versionv1.0.0
UpdatedMay 19, 2026
Statushealthy
Maintenanceactive

Works with

ClaudeOpenAIwindowsmacoslinux

Installation

Manual Installation

npx mac-messages-mcp

Configuration

Configuration Details

Config File

claude_desktop_config.json

Performance

Response Metrics

Response Time< 200ms
ThroughputMedium

Resource Usage

Memory UsageLow
CPU UsageLow

How to Set Up and Use Mac Messages

Mac Messages MCP is a Python-based MCP server that interfaces with your Mac's local iMessage database, giving AI assistants the ability to read, search, and send iMessages entirely through natural language. It supports fuzzy search across message history, attachment discovery, contact lookups, and automatic iMessage vs SMS selection before sending. The server is designed for macOS power users who want to query conversation history, extract shared files, or automate message-based workflows from within Claude Desktop or Cursor.

Prerequisites

  • macOS 11 (Big Sur) or later
  • Python 3.10+ and the uv package manager (install with: brew install uv)
  • Full Disk Access permission granted to your terminal application or Claude Desktop in System Settings > Privacy & Security > Full Disk Access
  • An MCP client such as Claude Desktop or Cursor
  • iMessage configured and signed in on the Mac
1

Install the uv package manager

Mac Messages MCP uses uv to manage its Python dependencies. If you do not have uv installed, install it via Homebrew. This enables the uvx command used in the MCP configuration.

brew install uv
2

Grant Full Disk Access to your terminal and Claude Desktop

Open System Settings > Privacy & Security > Full Disk Access. Enable access for your terminal application (e.g., Terminal, iTerm2) and for Claude Desktop. This is required because the server reads the iMessage SQLite database at ~/Library/Messages/chat.db.

3

Add the server to your MCP client configuration

Edit your Claude Desktop configuration file to include the mac-messages-mcp server. The server is run via uvx, so no separate install step is needed — uvx will download the package on first run.

{
  "mcpServers": {
    "messages": {
      "command": "uvx",
      "args": ["mac-messages-mcp"]
    }
  }
}
4

Restart Claude Desktop

Quit and relaunch Claude Desktop. The server will start automatically via uvx. On the first launch, uvx will download the mac-messages-mcp package from PyPI, which may take a few seconds.

5

Verify the connection

In Claude Desktop, ask a simple question such as 'Show me my most recent 5 messages' to confirm the server can read your iMessage database. If it works, you will see actual message data returned.

Mac Messages Examples

Client configuration

Claude Desktop configuration for Mac Messages MCP using uvx to run the server.

{
  "mcpServers": {
    "messages": {
      "command": "uvx",
      "args": ["mac-messages-mcp"]
    }
  }
}

Prompts to try

Example prompts for reading, searching, and sending iMessages via the MCP server.

- "Show me all messages I received from +14155551234 in the last 7 days."
- "Search my messages for any conversation mentioning 'project deadline'."
- "List all image attachments shared in my chat with John."
- "Send an iMessage to +14155550100 saying: 'Running 10 minutes late, be there soon.'"
- "Find all messages from the last 48 hours and summarize what people are asking me about."

Troubleshooting Mac Messages

Server returns a permission error when accessing the iMessage database

Open System Settings > Privacy & Security > Full Disk Access and ensure both your terminal and Claude Desktop are listed and toggled on. You may need to quit and relaunch the apps after granting access. The database is at ~/Library/Messages/chat.db and requires Full Disk Access.

uvx command not found when Claude Desktop tries to start the server

Install uv via Homebrew with 'brew install uv'. Then confirm uvx is on your PATH by running 'which uvx' in a terminal. If Claude Desktop cannot find it, add the uv bin directory (typically ~/.local/bin) to your shell's PATH and restart Claude Desktop.

Sending a message fails or sends as SMS instead of iMessage

The server checks iMessage availability before sending. Ensure the recipient's number is registered with iMessage. Phone numbers must be in E.164 format (e.g., +14155551234). If iMessage is unavailable, the server will fall back to SMS automatically.

Frequently Asked Questions about Mac Messages

What is Mac Messages?

Mac Messages is a Model Context Protocol (MCP) server that mcp server that securely interfaces with your imessage database via the model context protocol (mcp), allowing llms to query and analyze imessage conversations. it includes robust phone number validation, attachment processing, contact management, It connects AI assistants to external tools and data sources through a standardized interface.

How do I install Mac Messages?

Follow the installation instructions on the Mac Messages GitHub repository. Clone the repo, install dependencies, and add the server config to your AI client.

Which AI clients work with Mac Messages?

Mac Messages works with all major MCP-compatible AI clients including Claude Desktop, Claude Code, Cursor, VS Code (GitHub Copilot), Windsurf, and Cline.

Is Mac Messages free to use?

Yes, Mac Messages is open source and available under the MIT license. You can use it freely in both personal and commercial projects.

Browse More Communication MCP Servers

Explore all communication servers available in the MCPgee directory. Each server includes setup guides for Claude, Cursor, and VS Code.

Quick Config Preview

{ "mcpServers": { "mac-messages-mcp": { "command": "npx", "args": ["-y", "mac-messages-mcp"] } } }

Add this to your claude_desktop_config.json or .cursor/mcp.json

Read the full setup guide →

Ready to use Mac Messages?

Browse our complete directory of 33,000+ MCP servers, read setup guides for your editor, and start building with the Model Context Protocol.

33,000+ ServersFree & Open SourceStep-by-Step Guides