Skip to content
appsgit

Mac Messages MCP

Mac Messages MCP is an MCP server that adds messaging tools to AI assistants such as Claude Desktop, Claude Code and Cursor. An MCP server that securely interfaces with your iMessage database via the Model Context Protocol (MCP), allowing LLMs to… It has 331 GitHub stars, is released under the MIT license and runs locally with uvx mac-messages-mcp.

github.com/carterlasalle/mac_messages_mcp (opens in a new tab)

Install Mac Messages MCP

Generated from the server's published package. Replace your-value with your own values.

Claude Desktop

claude_desktop_config.json
{
  "mcpServers": {
    "mac-messages-mcp": {
      "command": "uvx",
      "args": [
        "mac-messages-mcp"
      ],
      "env": {
        "MAC_MESSAGES_REGION": "your-value"
      }
    }
  }
}

Settings > Developer > Edit Config. macOS: ~/Library/Application Support/Claude/, Windows: %APPDATA%\Claude\. Restart Claude Desktop afterwards.

Claude Code

claude mcp add --env MAC_MESSAGES_REGION=your-value --transport stdio mac-messages-mcp -- uvx mac-messages-mcp

Cursor

.cursor/mcp.json
{
  "mcpServers": {
    "mac-messages-mcp": {
      "type": "stdio",
      "command": "uvx",
      "args": [
        "mac-messages-mcp"
      ],
      "env": {
        "MAC_MESSAGES_REGION": "your-value"
      }
    }
  }
}

Project file; use ~/.cursor/mcp.json to enable it in every project.

VS Code

.vscode/mcp.json
{
  "servers": {
    "mac-messages-mcp": {
      "type": "stdio",
      "command": "uvx",
      "args": [
        "mac-messages-mcp"
      ],
      "env": {
        "MAC_MESSAGES_REGION": "your-value"
      }
    }
  }
}

Config formats checked against the official docs on Oct 7, 2026: modelcontextprotocol.io (opens in a new tab), code.claude.com (opens in a new tab), cursor.com (opens in a new tab), code.visualstudio.com (opens in a new tab).

Environment variables

Variables the server reads at startup.

NameRequiredDescription
MAC_MESSAGES_REGIONNoShown in the README's example configuration.

Tools (18)

Parsed from the Tools section of the README; check the repository for the current list.

  • tool_get_recent_messages

    Read recent messages, filtered by contact, group chat ID, date range, or unread state; page with limit/offset

  • tool_fuzzy_search_messages

    Search message bodies by approximate text match, scoped to a contact or chat; defaults to 30 days, or hours=0

  • tool_list_conversations

    List every conversation with kind, message count, unread count, and last activity

  • tool_wait_for_new_messages

    Block until a message newer than a ROWID cursor arrives, or the timeout expires

  • tool_find_contact

    Fuzzy-match a name in Contacts and return phone numbers

  • tool_get_chats

    List named group chats and their identifiers

  • tool_search_attachments

    Find attachment metadata by date, contact, MIME type, and limit

  • tool_search_attachment_contents

    Search inside attachment text/PDF contents by date, contact, and MIME type

  • tool_get_attachment

    Fetch one attachment by ID, inline when supported or as a local path

  • tool_check_imessage_availability

    Check likely iMessage availability for a phone number or email

  • tool_check_db_access

    Diagnose access to ~/Library/Messages/chat.db

  • tool_check_contacts

    Return a contact count and a small sample

  • tool_check_addressbook

    Diagnose Contacts/AddressBook database access

  • tool_send_message

    Send one direct or group message through Messages.app, optionally with file attachments and elicitation approval

  • tool_create_contact

    Create one Contacts.app entry with a phone number

  • tool_schedule_message

    Queue a message for later delivery while this server process runs

  • tool_list_scheduled_messages

    List the in-process scheduled-message queue and its status

  • tool_cancel_scheduled_message

    Cancel one pending scheduled message

About Mac Messages MCP

Use Claude, Codex, Cursor, VS Code, or any local MCP client to search, read, and send messages through the macOS Messages app.

  • applescript
  • claude
  • contacts
  • cursor
  • imessage
  • mac
  • macos
  • mcp
  • mcp-server

FAQ

Mac Messages MCP FAQ

Still curious? Email info@appsgit.com.

What is Mac Messages MCP?

Mac Messages MCP is an MCP server that adds messaging tools to AI assistants such as Claude Desktop, Claude Code and Cursor. An MCP server that securely interfaces with your iMessage database via the Model Context Protocol (MCP), allowing LLMs to… It has 331 GitHub stars, is released under the MIT license and runs locally with uvx mac-messages-mcp. The source code is at github.com/carterlasalle/mac_messages_mcp.

How do I install the Mac Messages MCP MCP server?

Add the command uvx mac-messages-mcp to your MCP client: put it in claude_desktop_config.json for Claude Desktop, run claude mcp add for Claude Code, or add it to .cursor/mcp.json (Cursor) or .vscode/mcp.json (VS Code). The snippets on this page are ready to paste.

Is Mac Messages MCP free?

The server is open source under the MIT license, so running it is free. It does not declare any required API key.

Is Mac Messages MCP actively maintained?

The most recent commit was on Oct 6, 2026. The latest release is v1.1.0, published Sep 1, 2026. appsgit only lists MCP servers with a commit in the last six months and re-checks every server daily.