iMessage MCP Server

by marissamarym

Integrations

  • Enables sending iMessages to contacts or phone numbers from your Mac, with confirmation when messages are sent.

  • Provides access to macOS Contacts app for viewing, searching, and managing contacts, including names, phone numbers, and email addresses.

iMessage MCP Server

⚠️ DISCLAIMER - USE AT YOUR OWN RISK ⚠️

This software is provided as-is, without any warranties or guarantees.

An MCP server that uses AppleScript to send iMessages and manage contacts.

This server uses AppleScript to interface with macOS Messages and Contacts apps through the Model Context Protocol (MCP). It wraps AppleScript commands in a TypeScript server to allow you to:

  • View and search your contacts
  • Send iMessages to contacts or phone numbers
  • Get confirmation when messages are sent

Features

Resources

  • Access your contacts via contacts://all
  • View contact details including names, phone numbers, and email addresses
  • All data stays local on your machine

Tools

  • search_contacts - Find contacts by name, phone, or email
    • Takes a search query and returns matching contacts
    • Searches across names, phone numbers, and email addresses
  • send_message - Send an iMessage
    • Takes recipient (phone/email) and message content
    • Sends through your local Messages app
    • Returns confirmation or error details

Installation

  1. Install dependencies:
npm install
  1. Build the server:
npm run build
  1. Configure Claude Desktop to use the server:

On MacOS: ~/Library/Application Support/Claude/claude_desktop_config.json

{ "mcpServers": { "imessage": { "command": "node", "args": ["/path/to/imessage-server/build/server.js"] } } }
  1. Restart Claude Desktop
  2. Grant permissions when prompted for:
    • Contacts access
    • Messages access

Usage

Once installed, you can talk to Claude Desktop naturally:

  • "Show me my contacts"
  • "Search for contacts named Marissa"
  • "Send a message to 555-0123 saying I'll be there in 10 minutes"
  • "Send Alice an iMessage asking if we're still on for lunch"

Security Notes

  • All operations happen locally on your machine
  • No contact or message data is sent to external servers
  • The server requires macOS permissions for Contacts and Messages access
  • Messages are sent through your iMessage account

Development

For development and debugging, use the MCP Inspector:

npx @modelcontextprotocol/inspector node build/server.js

Requirements

  • macOS (for Messages and Contacts integration)
  • Node.js 18 or higher
  • Claude Desktop
  • Active iMessage account

Troubleshooting

If messages aren't sending:

  1. Check Messages app is signed in
  2. Verify permissions are granted
  3. Look for errors in Claude Desktop logs:
tail -f ~/Library/Logs/Claude/mcp*.log

You must be authenticated.

A
security – no known vulnerabilities
F
license - not found
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.

A local server that enables Claude Desktop to interact with your macOS Contacts and Messages apps, allowing you to search contacts and send iMessages through natural language commands.

  1. Features
    1. Resources
    2. Tools
  2. Installation
    1. Usage
      1. Security Notes
        1. Development
          1. Requirements
            1. Troubleshooting

              Related MCP Servers

              • -
                security
                F
                license
                -
                quality
                This server allows integration with Discord, enabling message exchanges between Claude and a Discord channel using prompts and notifications.
                Last updated -
                TypeScript
              • A
                security
                F
                license
                A
                quality
                A server that enables Claude Desktop users to access the Claude API directly, allowing them to bypass Professional Plan limitations and use advanced features like custom system prompts and conversation management.
                Last updated -
                1
                5
                Python
                • Apple
              • -
                security
                A
                license
                -
                quality
                A server that allows Claude to search and retrieve emails from your Gmail account, supporting functions like searching emails, retrieving full content of specific emails, and listing recent messages.
                Last updated -
                2
                Python
                Apache 2.0
              • -
                security
                F
                license
                -
                quality
                An integration server that provides Claude Desktop access to Gmail, enabling users to view recent emails and search their Gmail inbox using natural language commands.
                Last updated -
                6
                Python

              View all related MCP servers

              ID: l9nb64rn7g