谷歌消息MCP
Docker部署 打开消息 --使用本机的Google Messages MCP服务器 libgm 协议(与Matrix/Beeper网桥相同)。
部署在Nginx反向代理后面的Oracle Cloud ARM64 VM上,具有承载令牌身份验证,与现有的MCP基础架构模式相匹配。
建筑
- 运行时间: 在Alpine容器中执行二进制(openmessage)
- 数据库: 带WAL模式的SQLite
/data/messages.db - 运输: SSE(服务器发送事件)MCP位于
/mcp/sse - 配对: 二维码通过
openmessage pair命令 - 平台: Oracle云ARM64(aarch64)
MCP工具(12)
| 工具 | 说明 |
|---|---|
get_messages | 从对话中获取消息 |
get_conversation | 获取对话详细信息 |
search_messages | 跨邮件进行全文搜索 |
send_message | 发送消息 |
list_conversations | 列出所有对话 |
list_contacts | 列出联系人 |
get_status | 获取连接状态 |
download_media | 下载媒体附件 |
draft_message | 创建消息草稿 |
get_person_messages | 获取某人的所有消息 |
import_messages | 从外部源导入邮件 |
story | 生成对话故事/摘要 |
部署
- 将此目录复制到Oracle Cloud VM:
scp -r . oracle:~/google-messages-mcp/- 运行部署脚本:
ssh oracle
cd ~/google-messages-mcp
chmod +x deploy.sh
./deploy.sh- 从以下位置添加Nginx位置块
nginx-google-messages.conf到现有服务器配置:
sudo nano /etc/nginx/sites-enabled/henrymcp.conf
sudo nginx -t && sudo nginx -s reload- 与您的手机配对:
docker exec -it google-messages-mcp openmessage pair然后扫描谷歌信息中的二维码: 设置>设备配对>二维码扫描仪
- 监测回填情况:
docker logs -f google-messages-mcpMCP客户端配置
{
"google-messages": {
"type": "sse",
"url": "https://henrymcp.duckdns.org/google-messages/mcp/sse",
"headers": {
"Authorization": "Bearer d5920a797c5fd0c3baf4f7de6a2d3ebc248dbbc6c5616414e4d4182632514938"
}
}
}BaseURL补丁
Dockerfile补丁 cmd/serve.go 读 OPENMESSAGES_BASE_URL 从环境而不是硬编码 http://localhost:{port}.这是SSE握手在Nginx反向代理后正确工作所必需的-SSE端点告诉客户端返回POST的位置,并且URL必须是公共地址。
数据库模式
SQLite有5个表: conversations, messages, contacts, drafts, unified_contacts支持通过源索引对多平台消息进行数据删除。启动时自动迁移。
