iMessage MCP Server
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| list_conversationsB | List recent iMessage/SMS conversations with last message preview. Args: limit: Max number of conversations to return (default 20) |
| get_messagesA | Get messages from a specific conversation. Args: chat_identifier: Phone number (e.g. +15551234567), email, or group chat identifier limit: Max messages to return (default 50, most recent first) |
| search_messagesB | Search across all iMessage conversations for messages containing a query string. Args: query: Text to search for (case-insensitive) limit: Max results to return (default 30) |
| get_contact_infoA | Look up a contact/handle by phone number or email and return conversation stats. Args: identifier: Phone number (e.g. +15551234567) or email address |
| send_messageB | Send an iMessage to a phone number or email address. Args: recipient: Phone number (e.g. +15551234567) or email address text: Message text to send |
| send_group_messageB | Send a message to a named group chat. Args: group_name: The display name of the group chat text: Message text to send |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 6 tools
Each tool has a clearly distinct purpose: get_contact_info retrieves contact details, get_messages fetches conversation history, list_conversations shows recent chats, search_messages performs text searches, send_message sends to individuals, and send_group_message sends to groups. No overlap exists between these functions.
All tools follow a consistent verb_noun naming pattern (e.g., get_contact_info, send_message, list_conversations). The naming is uniform throughout, using snake_case and clear action descriptors without any deviations.
With 6 tools, this server is well-scoped for iMessage functionality, covering key operations like reading, sending, searching, and listing without being overly complex or too sparse. Each tool serves a specific and necessary role.
The toolset provides strong coverage for core iMessage tasks, including sending, receiving, searching, and listing. A minor gap exists in update or delete operations (e.g., editing or deleting messages), but agents can still handle most workflows effectively.