什么是 MCP(模型上下文协议)?
MCP 是由 Anthropic 于 2024 年底提出、如今已被整个 AI 生态广泛支持的开放协议,用来统一 AI 应用连接外部工具和数据源的方式。你不再需要把数据复制粘贴进对话框:AI 客户端(如 ChatGPT、Claude、Cursor)连接到一个 MCP 服务器,发现它提供的工具,并在需要时调用它们来回答你的问题。
远程 MCP 服务器运行在互联网上,通常使用 OAuth 保护——你在浏览器中点击授权即可,无需交出密码。
为什么 AI 无法直接读取 Apple 健康?
Apple 健康(HealthKit)的设计初衷是把数据留在 iPhone 上,只有你授权的 App 才能读取,也没有任何供 ChatGPT、Claude 等云端 AI 调用的官方网络接口。这对隐私很好,但也意味着你的 AI 助手完全不知道你睡得怎样、心率趋势如何、这个月练了多少。
传统的做法是导出全部健康数据,得到一个巨大的 XML 文件再上传给聊天机器人——过程慢、数据很快过时、AI 难以解析,而且分享了远超必要的内容。
健康桥 MCP 服务器如何工作
- 在 iPhone 上:健康桥只读取你开启的 HealthKit 类型,按天或按小时汇总,并用 AES-256-GCM 加密。数据密钥保存在设备钥匙串中。
- 在云端:只保存密文,服务器不保存明文数据密钥或 API 密钥。
- 连接 AI 时:你确认一个具体、具名的 AI 接收方,App 为该连接签发加密的 OAuth 授权(MCP)或只读 API 密钥。
- AI 提问时:授权查询会在服务器内存中短暂解密相关数据,并返回只读结果。每次读取都会记录,你可以在 App 中查看。
- 不再需要时:撤销连接,后续读取立即停止。
托管方案 vs 自建方案
| 健康桥 | 自建(XML 导出 + 本地服务器) | |
|---|---|---|
| 配置 | 安装 App、选择数据、授权 AI | 导出 XML、安装依赖、配置本地 MCP 服务器 |
| 数据时效 | 从 iPhone 持续同步(后台时机由 iOS 决定) | 一次性快照,需要手动重新导出 |
| 可用于云端 AI(ChatGPT、Claude 网页/手机端) | 支持,远程 MCP + OAuth 或 API 密钥 | 通常只能在桌面端使用 |
| 精细化分享 | 按数据类型、按 AI 连接 | 通常是全部数据 |
| 撤销与访问记录 | 内置 | 需自行实现 |
AI 通过 MCP 能用 Apple 健康数据做什么
连接后,AI 助手可以以只读方式请求健康概览、睡眠记录或指定时间范围的指标,然后进行分析:发现趋势、对比不同时期、关联训练和睡眠,或把几个月的数据整理成就诊摘要。参见提问示例。