使用MCP(多上下文协议)与macOS Messages应用程序进行交互的Python桥接工具。
点击上方按钮以自动将Mac Messages MCP添加到Cursor
请参阅下方的集成部分获取设置说明。
如果你使用的是Mac,请使用Homebrew安装uv:
brew install uv
否则,请按照uv网站上的安装说明进行操作。
⚠️ 请先安装uv再继续
⚠️ 此应用需要完整磁盘访问权限,以便终端或应用程序能够访问Messages数据库。
授予完整磁盘访问权限的方法如下:
{
"mcpServers": {
"messages": {
"command": "uvx",
"args": [
"mac-messages-mcp"
]
}
}
}
前往Cursor设置 > MCP 并粘贴以下命令:
uvx mac-messages-mcp
⚠️ 只需运行一个MCP服务器实例(要么在Cursor上,要么在Claude Desktop上),不要同时运行两个
如果你需要从Docker容器连接到mac-messages-mcp,你需要使用mcp-proxy包来桥接基于stdio的服务器到HTTP。
npm install -g mcp-proxy
# 使用发布的版本
npx mcp-proxy uvx mac-messages-mcp --port 8000 --host 0.0.0.0
# 或使用本地开发(如果遇到问题)
npx mcp-proxy uv run python -m mac_messages_mcp.server --port 8000 --host 0.0.0.0
http://host.docker.internal:8000/mcp(在macOS/Windows上)http://<host-ip>:8000/mcp(在Linux上)version: '3.8'
services:
your-app:
image: your-image
environment:
MCP_MESSAGES_URL: "http://host.docker.internal:8000/mcp"
extra_hosts:
- "host.docker.internal:host-gateway" # 对于Linux主机
# 终端1 - 消息MCP在8001端口
npx mcp-proxy uvx mac-messages-mcp --port 8001 --host 0.0.0.0
# 终端2 - 另一个MCP服务器在8002端口
npx mcp-proxy uvx another-mcp-server --port 8002 --host 0.0.0.0
**注意:**绑定到0.0.0.0会将服务暴露给所有网络接口。在生产环境中,请考虑使用更严格的主机绑定并添加身份验证。
uv pip install mac-messages-mcp
# 克隆仓库
git clone https://github.com/carterlasalle/mac_messages_mcp.git
cd mac_messages_mcp
# 安装依赖
uv install -e .
Mac Messages MCP自动处理不同平台之间的消息投递:
# 发送到iPhone用户 - 使用iMessage
send_message("+1234567890", "嘿!这将通过iMessage发送")
# 发送到Android用户 - 自动使用短信
send_message("+1987654321", "嘿!这将通过短信发送")
# 发送前检查投递方式
check_imessage_availability("+1234567890") # 返回可用状态
from mac_messages_mcp import get_recent_messages, send_message
# 获取最近的消息
messages = get_recent_messages(hours=48)
print(messages)
# 发送消息(自动选择iMessage或短信)
result = send_message(recipient="+1234567890", message="来自Mac Messages MCP的问候!")
print(result) # 显示是通过iMessage还是短信发送
# 直接运行MCP服务器
mac-messages-mcp
此项目使用语义化版本控制。详情请参阅VERSIONING.md,了解版本控制系统的工作原理及如何发布新版本。
要更新版本:
python scripts/bump_version.py [patch|minor|major]
此应用直接访问包含个人通信的Messages数据库。请负责任地使用,并确保您拥有适当的权限。
MIT
欢迎贡献!请随时提交Pull Request。