mattt/iMCP

A macOS app that provides an MCP server to your Messages, Contacts, Reminders and more

iMCP – 您的个人数据与 AI 工具之间的 macOS 桥梁

这是什么 – iMCP 是一款原生 macOS 应用程序(内置 imcp‑server 命令行工具),实现了 Model Context Protocol (MCP)。它公开了一组“工具” – 日历、联系人、位置、地图、信息、提醒事项、天气 – 可由兼容 MCP 的 AI 客户端调用,例如 Claude DesktopClaude CodeCursorAmp。AI 可以请求例如“我所在位置的天气如何?”,iMCP 将从操作系统获取数据,并以结构化的 JSON‑LD 格式返回。


核心功能

服务 您可以做什么
Calendar 列出事件、创建新事件(重复、闹钟、可用性)。
Contacts 读取您自己的联系人名片,并按姓名、电话或电子邮件搜索联系人。
Location 获取当前地理坐标,或将地址与坐标互相转换。
Maps 搜索地点、获取路线、查询景点、估计旅行时间、生成静态地图图像。
Messages 检索指定参与者在特定日期范围内的信息历史记录。
Reminders 列出提醒事项,并创建具有截止日期、优先级和提醒的新提醒事项。
Weather 获取任何位置当前的温度、风速和天气状况。

工作原理

  1. MCP 服务器 – 内置的 imcp‑server 作为本地 TCP 服务运行(通过 Bonjour 的 _mcp._tcp)。它通过 stdio 传输 (stdin/stdout) 与 AI 客户端通信,并将请求转发给 GUI 应用程序。
  2. 权限处理 – macOS 应用程序会在您第一次启用服务时要求标准系统权限(日历、联系人等)。iMCP 本身不存储或发送任何数据;只有您连接的 AI 客户端(例如 Claude)可以传输数据。
  3. 工具响应 – 每个工具都返回使用 schema.org 词汇的 JSON‑LD 文档(例如,联系人使用 Person 对象)。这种格式易于人类和 LLM 使用。
  4. 客户端集成 – 安装 iMCP 后,将其添加到客户端:
    • Claude Desktop – 使用 Configure Claude Desktop 菜单项,或将服务器命令复制到 claude_desktop_config.json
    • Claude Codeclaude mcp add --scope user iMCP -- /Applications/iMCP.app/Contents/MacOS/imcp-server
    • Cursor – 点击提供的深层链接,它会自动安装服务器命令。
    • Ampamp mcp add iMCP -- /Applications/iMCP.app/Contents/MacOS/imcp-server
  5. 调试 – 项目附带 MCP Inspector (Node.js) 和 macOS Companion 应用程序,以查看请求/响应流并测试服务器。

开始使用(快速步骤)

  1. 安装brew install --cask mattt/tap/iMCP 或从 https://iMCP.app/download 下载(需要 macOS 15.3+)。
  2. 启动 – 菜单栏中会出现一个图标;切换蓝色开关以启动 MCP 服务器。
  3. 启用服务 – 点击服务图标,授予 macOS 权限对话框,图标就会更改颜色(红色 = 日历,绿色 = 信息等)。
  4. 连接客户端 – 遵循上述特定客户端的说明;在客户端批准连接后,您会在聊天 UI 中看到一个锤子 (🔨) 图标,表示工具可用。
  5. 询问 AI – 提出需要个人数据的自然语言请求;AI 将调用适当的 iMCP 工具并返回结果。

技术亮点

  • Swift SDK – iMCP 使用 Model Context Protocol 的官方 Swift SDK (https://github.com/modelcontextprotocol/swift-sdk)。
  • 信息数据库访问 – 通过自定义 Madrid Swift 包从 ~/Library/Messages/chat.db 读取 macOS 信息,该包能解码 Apple 专有的 typedstream 格式。
  • JSON‑LD 本体Ontology Swift 包提供帮助程序,将 Apple 框架对象(例如 CNContact)编码为 schema.org JSON‑LD。
  • 本地发现 – Bonjour 广播让任何兼容 MCP 的客户端都能找到服务器,无需手动配置。

谁可能会使用它?

  • 高级用户,希望他们的 LLM 助手能对真实的个人数据采取行动(安排会议、获取最新信息、查看天气),而无需手动复制信息。
  • 开发者,正在构建新的 MCP 客户端或自定义工具 – iMCP 可作为参考实现和现成的数据源。
  • 注重隐私的用户 – iMCP 本身绝不存储或传输数据;所有数据流都通过 macOS 权限由用户控制。

许可与法律

  • MIT 许可证。
  • 不隶属于 Apple;iMessage® 是 Apple Inc. 的商标。

总结: iMCP 是一个真正可用于生产环境的 macOS 桥梁,让现代 AI 助手能够通过标准协议安全地在本地查询您的个人 macOS 数据,使 AI 驱动的个人生产力成为可能,同时兼顾隐私。

相关

  • 项目
  • 项目
  • 项目
  • 项目