/ 目录 / 演练场 / mac_messages_mcp
● 社区 carterlasalle ⚡ 即开即用

mac_messages_mcp

作者 carterlasalle · carterlasalle/mac_messages_mcp

Read, search, and send iMessages and SMS from Claude — smart delivery auto-selects iMessage or SMS/RCS for each recipient.

mac_messages_mcp is a Python MCP server that bridges macOS Messages app with AI assistants. It can read messages with contact filtering and fuzzy search, send messages with automatic iMessage/SMS detection, check iMessage availability for recipients, process attachments, and handle group chats. Requires Full Disk Access on macOS for database access.

为什么要用

核心特性

实时演示

实际使用效果

mac-messages-mcp-2.replay ▶ 就绪
0/0

安装

选择你的客户端

~/Library/Application Support/Claude/claude_desktop_config.json  · Windows: %APPDATA%\Claude\claude_desktop_config.json
{
  "mcpServers": {
    "mac-messages-mcp-2": {
      "command": "TODO",
      "args": [
        "See README: https://github.com/carterlasalle/mac_messages_mcp"
      ]
    }
  }
}

打开 Claude Desktop → Settings → Developer → Edit Config。保存后重启应用。

~/.cursor/mcp.json · .cursor/mcp.json
{
  "mcpServers": {
    "mac-messages-mcp-2": {
      "command": "TODO",
      "args": [
        "See README: https://github.com/carterlasalle/mac_messages_mcp"
      ]
    }
  }
}

Cursor 使用与 Claude Desktop 相同的 mcpServers 格式。项目级配置优先于全局。

VS Code → Cline → MCP Servers → Edit
{
  "mcpServers": {
    "mac-messages-mcp-2": {
      "command": "TODO",
      "args": [
        "See README: https://github.com/carterlasalle/mac_messages_mcp"
      ]
    }
  }
}

点击 Cline 侧栏中的 MCP Servers 图标,然后选 "Edit Configuration"。

~/.codeium/windsurf/mcp_config.json
{
  "mcpServers": {
    "mac-messages-mcp-2": {
      "command": "TODO",
      "args": [
        "See README: https://github.com/carterlasalle/mac_messages_mcp"
      ]
    }
  }
}

格式与 Claude Desktop 相同。重启 Windsurf 生效。

~/.continue/config.json
{
  "mcpServers": [
    {
      "name": "mac-messages-mcp-2",
      "command": "TODO",
      "args": [
        "See README: https://github.com/carterlasalle/mac_messages_mcp"
      ]
    }
  ]
}

Continue 使用服务器对象数组,而非映射。

~/.config/zed/settings.json
{
  "context_servers": {
    "mac-messages-mcp-2": {
      "command": {
        "path": "TODO",
        "args": [
          "See README: https://github.com/carterlasalle/mac_messages_mcp"
        ]
      }
    }
  }
}

加入 context_servers。Zed 保存后热重载。

claude mcp add mac-messages-mcp-2 -- TODO 'See README: https://github.com/carterlasalle/mac_messages_mcp'

一行命令搞定。用 claude mcp list 验证,claude mcp remove 卸载。

使用场景

实战用法: mac_messages_mcp

How to search your iMessage history with AI assistance

👤 Mac users who want to find specific conversations or information ⏱ ~5 min beginner

何时使用: You need to find a message from weeks ago but can't remember who sent it or when.

前置条件
  • Full Disk Access granted — System Settings → Privacy & Security → Full Disk Access → add Terminal or your MCP host
  • mac-messages-mcp installed — uvx mac-messages-mcp or uv pip install mac-messages-mcp
步骤
  1. Search messages
    Search my messages for conversations about 'dinner reservation' in the last 2 weeks. Show who sent them and the full context.✓ 已复制
    → Matching messages with sender, timestamps, and surrounding context
  2. Get recent from a contact
    Show me my last 20 messages with John Smith.✓ 已复制
    → Conversation thread with timestamps

结果: Found the specific message or conversation you were looking for.

注意事项
  • Full Disk Access not granted — The MCP server can't read the Messages database without this permission. Grant it in System Settings.

Send messages to contacts using Claude

👤 Mac users who want to send messages hands-free ⏱ ~2 min beginner

何时使用: You want to compose and send messages through Claude.

前置条件
  • mac-messages-mcp with Full Disk Access — Set up as above
步骤
  1. Check iMessage availability
    Can I reach +1-555-0123 via iMessage?✓ 已复制
    → Availability status (iMessage or SMS)
  2. Send a message
    Send a message to Mom saying 'Running 15 minutes late, see you soon!'✓ 已复制
    → Message sent confirmation with delivery method

结果: Message delivered via the appropriate channel.

注意事项
  • Contact names may be ambiguous — Use phone numbers or email addresses for precise targeting

组合

与其他 MCP 搭配,撬动十倍杠杆

mac-messages-mcp-2 + filesystem

Export message conversations to text files for backup

Export my last month's messages with the 'Family' group chat to ~/messages-backup/family.txt.✓ 已复制

工具

此 MCP 暴露的能力

工具输入参数何时调用成本
send_message recipient: str, content: str Send a message via iMessage or SMS 0
get_recent_messages contact?: str, limit?: int, time_range?: str Retrieve recent messages with optional filters 0
check_imessage_availability recipient: str Check if a recipient can receive iMessage 0

成本与限制

运行它的成本

API 配额
N/A — reads local macOS Messages database
每次调用 Token 数
200–1000 tokens per query
费用
Free — standard iMessage/SMS rates apply for sending
提示
Use time-based filters to limit search scope and reduce token usage.

安全

权限、密钥、影响范围

最小权限: Full Disk Access on macOS
凭据存储: No credentials needed — accesses local Messages database directly
数据出站: Reads from local ~/Library/Messages/chat.db. Sending goes through macOS Messages framework.

故障排查

常见错误与修复

Permission denied reading Messages database

Grant Full Disk Access to Terminal (or your MCP host app) in System Settings → Privacy & Security → Full Disk Access.

验证: ls ~/Library/Messages/chat.db
Contact not found

Use phone number or email instead of display name. Fuzzy matching may not find all contacts.

验证: Try with the exact phone number
Message fails to send

Ensure Messages.app is configured and signed into your Apple ID. The MCP server uses macOS frameworks to send.

验证: Try sending a message manually from Messages.app

替代方案

mac_messages_mcp 对比其他方案

替代方案何时用它替代权衡
applescript-mcpYou want broader macOS control beyond just MessagesCan do everything plus more, but with full system access risks

更多

资源

📖 阅读 GitHub 上的官方 README

🐙 查看未解决的 issue

🔍 浏览全部 400+ MCP 服务器和 Skills