imessage-kit-mcp
Allows reading, sending, and automating iMessages via the iMessage Kit MCP server.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@imessage-kit-mcpsend 'See you soon' to +1234567890"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
iMessage Kit MCP Server
An MCP server for iMessage — read, send, and automate conversations via iMessage Kit.
Features
Send Messages: Send iMessages to phone numbers or email addresses
Read Messages: Retrieve message history from conversations
List Conversations: Get all active iMessage conversations
Conversation Details: Get detailed information about specific conversations
Dual Transport: Supports both STDIO (local) and HTTP (production) transports
Related MCP server: iMessage MCP Server
Tools
imsg_send_message
Sends an iMessage to a recipient.
Inputs:
recipient(string, required): Phone number (e.g., '+1234567890') or email addresstext(string, required): Message text to sendchatId(string, optional): Chat ID if continuing an existing conversation
imsg_read_messages
Reads messages from an iMessage conversation.
Inputs:
chatId(string, optional): Chat/conversation IDrecipient(string, optional): Recipient phone number or emaillimit(number, optional): Maximum number of messages (default: 50)offset(number, optional): Number of messages to skip (default: 0)
imsg_get_conversations
Gets a list of all iMessage conversations.
Inputs:
limit(number, optional): Maximum number of conversations (default: 50)offset(number, optional): Number of conversations to skip (default: 0)
imsg_get_conversation_details
Gets detailed information about a specific conversation.
Inputs:
chatId(string, required): Chat/conversation ID
Installation
Prerequisites
Bun — required runtime
macOS (required for iMessage functionality)
Install Dependencies
bun installConfiguration
Usage with Claude Desktop
Add this to your claude_desktop_config.json:
STDIO Transport (Local)
{
"mcpServers": {
"imessage-kit": {
"command": "bun",
"args": ["run", "/path/to/imessage-kit-mcp/src/index.ts"]
}
}
}HTTP Transport
{
"mcpServers": {
"imessage-kit": {
"command": "bun",
"args": ["run", "/path/to/imessage-kit-mcp/src/index.ts", "--port", "3002"],
"url": "http://localhost:3002/mcp"
}
}
}Usage with VS Code
Add the following JSON block to your User Settings (JSON) file in VS Code. You can do this by pressing Ctrl + Shift + P and typing Preferences: Open User Settings (JSON).
{
"mcp": {
"inputs": [],
"servers": {
"imessage-kit": {
"command": "bun",
"args": ["run", "/absolute/path/to/imessage-kit-mcp/src/index.ts"]
}
}
}
}Development
Running the Server
# STDIO transport (default)
bun run src/index.ts
# HTTP transport
bun run src/index.ts --port 3002Testing with MCP Inspector
bunx @modelcontextprotocol/inspector src/index.tsProject Structure
imessage-kit-mcp/
├── src/
│ ├── index.ts # Main entry point
│ ├── server.ts # MCP server implementation
│ ├── client.ts # iMessage Kit SDK client wrapper
│ ├── config.ts # Configuration management
│ ├── cli.ts # CLI argument parsing
│ ├── types.ts # TypeScript type definitions
│ ├── tools/
│ │ ├── index.ts # Tool exports
│ │ └── imessage.ts # iMessage tool definitions
│ └── transport/
│ ├── index.ts # Transport exports
│ ├── stdio.ts # STDIO transport
│ └── http.ts # HTTP transport
├── package.json
├── tsconfig.json
└── README.mdNotes
This server requires macOS to access iMessage functionality
Requires Bun (uses
bun:sqlitefor native SQLite access)Uses iMessage Kit for database access
Make sure you have proper permissions to access Messages on macOS
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Latest Blog Posts
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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/xthezealot/imessage-kit-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server