
iMessage MCP Server

2024.12.12
7
JavaScript联系人管理消息发送交流协作
iMessage MCP Server 是一个通过 AppleScript 与 macOS 的 Messages 和 Contacts 应用交互的 MCP 服务器。它允许用户查看和搜索联系人,发送 iMessage 消息,并获取发送确认。所有操作均在本地进行,确保数据安全。
View on GitHub
Overview
基本能力
产品定位
iMessage MCP Server 是一个用于管理联系人和发送 iMessage 消息的本地服务器,通过 Model Context Protocol (MCP) 与 macOS 的 Messages 和 Contacts 应用交互。
核心功能
- 查看和搜索联系人:通过
contacts://all
访问联系人,查看详细信息(姓名、电话号码、电子邮件地址)。 - 发送 iMessage 消息:支持向联系人或电话号码发送消息,并返回发送确认。
- 本地数据处理:所有数据均存储在本地,不发送到外部服务器。
适用场景
- 需要快速搜索和查看联系人的场景。
- 需要通过命令行或脚本发送 iMessage 消息的场景。
- 需要与 Claude Desktop 集成进行自然语言交互的场景。
工具列表
search_contacts
:通过名称、电话或电子邮件搜索联系人。- 功能:输入搜索查询,返回匹配的联系人,支持跨名称、电话号码和电子邮件地址搜索。
send_message
:发送 iMessage 消息。- 功能:输入收件人(电话/电子邮件)和消息内容,通过本地 Messages 应用发送,返回确认或错误详情。
常见问题解答
- 消息发送失败:
- 检查 Messages 应用是否已登录。
- 确认已授予权限。
- 查看 Claude Desktop 日志中的错误信息:
tail -f ~/Library/Logs/Claude/mcp*.log
。
使用教程
使用依赖
- macOS(用于 Messages 和 Contacts 集成)。
- Node.js 18 或更高版本。
- Claude Desktop。
- 活跃的 iMessage 账户。
安装教程
- 安装依赖:
npm install
- 构建服务器:
npm run build
- 配置 Claude Desktop 使用服务器:
- 在 MacOS 上编辑
~/Library/Application Support/Claude/claude_desktop_config.json
:
{
"mcpServers": {
"imessage": {
"command": "node",
"args": ["/path/to/imessage-server/build/server.js"]
}
}
}
- 重启 Claude Desktop。
- 授予权限:
- 联系人访问权限。
- Messages 访问权限。
调试方式
使用 MCP Inspector 进行开发和调试:
npx @modelcontextprotocol/inspector node build/server.js
许可证
None