Skip to main content
Glama

mac-messages-mcp

MIT License
155
  • Apple

Mac Messages MCP

A Python bridge for interacting with the macOS Messages app using MCP (Multiple Context Protocol).

a-diagram-of-a-mac-computer-with-the-tex_FvvnmbaBTFeKy6F2GMlLqA_IfCBMgJARcia1WTH7FaqwA

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:

brew install uv

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:

  1. Open System Preferences/Settings > Security & Privacy/Privacy > Full Disk Access
  2. Click the lock icon to make changes
  3. Add your terminal app (Terminal, iTerm2, etc.) or Claude Desktop/Cursor to the list
  4. Restart your terminal or application after granting permission

Integration

Claude Desktop Integration

  1. Go to Claude > Settings > Developer > Edit Config > claude_desktop_config.json
  2. Add the following configuration:
{ "mcpServers": { "messages": { "command": "uvx", "args": [ "mac-messages-mcp" ] } } }

Cursor Integration

Option 2: Manual Setup

Go to Cursor Settings > MCP and paste this as a command:

uvx mac-messages-mcp

⚠️ Only run one instance of the MCP server (either on Cursor or Claude Desktop), not both

Option 1: Install from PyPI

uv pip install mac-messages-mcp

Option 2: Install from source

# Clone the repository git clone https://github.com/carterlasalle/mac_messages_mcp.git cd mac_messages_mcp # Install dependencies uv install -e .

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
# Send to iPhone user - uses iMessage send_message("+1234567890", "Hey! This goes via iMessage") # Send to Android user - automatically uses SMS send_message("+1987654321", "Hey! This goes via SMS") # Check delivery method before sending check_imessage_availability("+1234567890") # Returns availability status

As a Module

from mac_messages_mcp import get_recent_messages, send_message # Get recent messages messages = get_recent_messages(hours=48) print(messages) # Send a message (automatically chooses iMessage or SMS) result = send_message(recipient="+1234567890", message="Hello from Mac Messages MCP!") print(result) # Shows whether sent via iMessage or SMS

As a Command-Line Tool

# Run the MCP server directly mac-messages-mcp

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:

python scripts/bump_version.py [patch|minor|major]

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

Install Server
A
security – no known vulnerabilities
A
license - permissive license
A
quality - confirmed to work

local-only server

The server can only run on the client's local machine because it depends on local resources.

一个 Python 桥接器,用于使用 MCP(多上下文协议)与 macOS 信息应用交互。使用 uvx mac-messages-mcp 即可轻松安装。

  1. 特征
    1. 先决条件
      1. 安装 uv
    2. 安装
      1. 完全磁盘访问权限
    3. 一体化
      1. Claude 桌面集成
      2. 光标集成
      3. 选项 1:从 PyPI 安装
      4. 选项 2:从源安装
    4. 用法
      1. 作为模块
      2. 作为命令行工具
    5. 发展
      1. 版本控制
    6. 安全说明
      1. 执照
        1. 贡献
          1. 星史

            Related MCP Servers

            • A
              security
              A
              license
              A
              quality
              Enables 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 -
              7
              570
              2,338
              TypeScript
              MIT License
              • Apple
            • -
              security
              A
              license
              -
              quality
              A macOS app that provides an MCP server to your Messages, Contacts, and more
              Last updated -
              762
              MIT License
              • Apple
            • -
              security
              A
              license
              -
              quality
              A 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 -
              570
              TypeScript
              MIT License
              • Apple
            • -
              security
              F
              license
              -
              quality
              A Python-based MCP server that uses uv for dependency management, requiring Python 3.13+ to run.
              Last updated -
              Python
              • Apple
              • Linux

            View all related MCP servers

            MCP directory API

            We provide all the information about MCP servers via our MCP API.

            curl -X GET 'https://glama.ai/api/mcp/v1/servers/carterlasalle/mac_messages_mcp'

            If you have feedback or need assistance with the MCP directory API, please join our Discord server