Mac Messages MCP
A Python bridge for interacting with the macOS Messages app using MCP (Multiple Context Protocol).
Quick Install
For Cursor Users
Click the button above to automatically add Mac Messages MCP to Cursor
For Claude Desktop Users
See the Integration section below for setup instructions.
Features
- Universal Message Sending: Automatically sends via iMessage or SMS/RCS based on recipient availability
- Smart Fallback: Seamless fallback to SMS when iMessage is unavailable (perfect for Android users)
- Message Reading: Read recent messages from the macOS Messages app
- Contact Filtering: Filter messages by specific contacts or phone numbers
- Fuzzy Search: Search through message content with intelligent matching
- iMessage Detection: Check if recipients have iMessage before sending
- Cross-Platform: Works with both iPhone/Mac users (iMessage) and Android users (SMS/RCS)
Prerequisites
- macOS (tested on macOS 11+)
- Python 3.10+
- uv package manager
Installing uv
If you're on Mac, install uv using Homebrew:
Otherwise, follow the installation instructions on the uv website.
⚠️ Do not proceed before installing uv
Installation
Full Disk Access Permission
⚠️ This application requires Full Disk Access permission for your terminal or application to access the Messages database.
To grant Full Disk Access:
- Open System Preferences/Settings > Security & Privacy/Privacy > Full Disk Access
- Click the lock icon to make changes
- Add your terminal app (Terminal, iTerm2, etc.) or Claude Desktop/Cursor to the list
- Restart your terminal or application after granting permission
Integration
Claude Desktop Integration
- Go to Claude > Settings > Developer > Edit Config > claude_desktop_config.json
- Add the following configuration:
Cursor Integration
Option 1: One-Click Install (Recommended)
Option 2: Manual Setup
Go to Cursor Settings > MCP and paste this as a command:
⚠️ Only run one instance of the MCP server (either on Cursor or Claude Desktop), not both
Option 1: Install from PyPI
Option 2: Install from source
Usage
Smart Message Delivery
Mac Messages MCP automatically handles message delivery across different platforms:
- iMessage Users (iPhone, iPad, Mac): Messages sent via iMessage
- Android Users: Messages automatically fall back to SMS/RCS
- Mixed Groups: Optimal delivery method chosen per recipient
As a Module
As a Command-Line Tool
Development
Versioning
This project uses semantic versioning. See VERSIONING.md for details on how the versioning system works and how to release new versions.
To bump the version:
Security Notes
This application accesses the Messages database directly, which contains personal communications. Please use it responsibly and ensure you have appropriate permissions.
License
MIT
Contributing
Contributions are welcome! Please feel free to submit a Pull Request.
Star History
local-only server
The server can only run on the client's local machine because it depends on local resources.
Tools
一个 Python 桥接器,用于使用 MCP(多上下文协议)与 macOS 信息应用交互。使用 uvx mac-messages-mcp 即可轻松安装。
Related Resources
Related MCP Servers
- AsecurityAlicenseAqualityEnables interaction with Apple apps like Messages, Notes, and Contacts through the MCP protocol to send messages, search, and open app content using natural language.Last updated -75702,338TypeScriptMIT License
- -securityAlicense-qualityA macOS app that provides an MCP server to your Messages, Contacts, and moreLast updated -762MIT License
- -securityAlicense-qualityA collection of Apple-native tools for the MCP protocol that enables AI assistants to interact with Apple applications including Messages, Notes, Contacts, Mail, Reminders, Calendar, and Maps.Last updated -570TypeScriptMIT License
- -securityFlicense-qualityA Python-based MCP server that uses uv for dependency management, requiring Python 3.13+ to run.Last updated -Python