iMCP
iMCP 是一款专为 macOS 设计的本地应用,旨在通过模型上下文协议(MCP)将您的数字生活与人工智能无缝连接。它充当本地服务器,让 Claude Desktop 等兼容的 AI 客户端能够安全地访问并操作您设备上的核心数据与服务。
过去,AI 助手往往难以直接读取或管理用户本地的隐私数据。iMCP 解决了这一痛点,赋予 AI 实际执行任务的能力:它可以帮您查询日历行程、检索联系人信息、查看短信记录、管理提醒事项,甚至获取实时天气、地理位置及地图导航服务。这意味着您可以直接用自然语言指令让 AI 帮您“查找上周和某人的聊天记录”或“在明天下午三点添加一个会议提醒”。
这款工具特别适合希望提升工作效率的普通用户、热衷于探索 AI 本地化应用的开发者以及注重隐私的技术爱好者。其独特的技术亮点在于严格的数据隐私保护机制:iMCP 本身不收集或存储任何用户数据,所有信息仅保留在本地,仅在用户主动发起请求时,才通过 MCP 协议按需提供给可信的 AI 客户端。只需在菜单栏启用相应权限,即可让 AI 真正成为懂您生活的智能助理。
使用场景
自由职业者小林正在规划下周的客户拜访行程,需要协调会议时间、查找客户联系方式并确认路线天气。
没有 iMCP 时
- 数据孤岛严重:必须手动在日历、通讯录和地图应用间反复切换,无法在一个界面获取完整信息。
- 操作繁琐低效:安排会议时需先查联系人电话,再切到日历创建事件,最后单独打开地图估算路程,流程断裂且耗时。
- 上下文易丢失:在整理过往沟通记录时,难以快速检索特定日期的短信历史来确认之前的约定细节。
- 动态调整困难:若遇突发天气变化或交通拥堵,无法实时联动查询并自动建议修改会议时间或地点。
使用 iMCP 后
- 全域数据打通:通过 Claude Desktop 直接调用 iMCP,AI 能同时读取日历空闲时段、客户电话号码及实时位置信息。
- 自然语言一键执行:只需输入“下周二下午约张总在咖啡馆见面”,iMCP 即自动搜索联系人、检查日程冲突、创建带提醒的日历项并规划路线。
- 历史智能回溯:让 AI“找出上个月和李经理关于预算的短信”,iMCP 立即调取指定时间段的消息记录并总结关键共识。
- 动态场景联动:询问“明天去那个地址会下雨吗?需要改期吗?”,iMCP 结合天气预报与路况预估,主动给出优化建议。
iMCP 将 macOS 原生数据转化为 AI 可理解的上下文,让用户从繁琐的跨应用操作中解放,真正实现用自然语言指挥数字生活。
运行环境要求
- macOS
未说明
未说明

快速开始
iMCP 是一款 macOS 应用程序,可将您的数字生活与人工智能连接起来。 它可与 Claude Desktop 以及支持 模型上下文协议 (MCP) 的 不断增长的客户端列表 配合使用。
功能
|
|
日历 | 查看和管理日历事件,包括创建具有自定义设置的新事件,例如重复、提醒和可用性状态。 |
|---|---|---|
|
|
通讯录 | 访问您自己的联系人信息,并可通过姓名、电话号码或电子邮件地址搜索联系人。 |
|
|
位置 | 访问当前位置数据,并在地址和地理坐标之间进行转换。 |
|
|
地图 | 提供位置服务,包括地点搜索、路线规划、兴趣点查询、行程时间估算以及静态地图图像生成。 |
|
|
消息 | 在自定义日期范围内访问与特定参与者的消息记录。 |
|
|
提醒 | 查看和创建具有自定义截止日期、优先级和警报的提醒,并可在不同的提醒列表中进行管理。 |
|
|
天气 | 访问当前天气状况,包括温度、风速以及任何地点的天气情况。 |
开始使用
下载并打开应用
首先,请下载 iMCP 应用 (需要 macOS 15.3 或更高版本)。
或者,如果您已安装 Homebrew,可以运行以下命令:
brew install --cask mattt/tap/iMCP
打开应用后,您会在菜单栏中看到一个
图标。
单击此图标即可显示 iMCP 菜单,其中列出了所有可用的服务。最初,所有服务将以灰色显示,表示它们处于未启用状态。
顶部的蓝色切换开关表示 MCP 服务器正在运行, 并已准备好与兼容 MCP 的客户端建立连接。
激活服务
要激活某项服务,只需单击其图标。系统会弹出权限请求对话框。例如,当您激活“日历”访问权限时,会出现一个对话框,提示“iMCP 想要完全访问您的日历”。点击允许完全访问继续。
[!重要] iMCP 不会收集或存储您的任何数据。 像 Claude Desktop 这样的客户端则会将您的数据发送到设备之外, 作为工具调用的一部分。
一旦激活,每个服务的图标就会从灰色变为各自的特色颜色——日历为红色,消息为绿色,位置为蓝色,以此类推。
对您希望启用的所有功能重复此过程。这些权限遵循 Apple 的标准安全模型, 使您可以完全控制 iMCP 可以访问哪些信息。
连接到 Claude Desktop
如果您尚未安装 Claude Desktop,可以在此处下载。
打开 Claude Desktop,转到“设置… (⌘,)”。
在设置面板的侧边栏中,单击“开发者”,然后单击“编辑配置”。
这将创建一个配置文件,位于
~/Library/Application Support/Claude/claude_desktop_config.json。
要将 iMCP 连接到 Claude Desktop,
请点击
> “配置 Claude Desktop”。
这将添加或更新 MCP 服务器配置,以使用应用程序中捆绑的
imcp-server 可执行文件。文件中的其他 MCP 服务器配置将被保留。
您也可以手动配置 Claude Desktop
点击
> “将服务器命令复制到剪贴板”。
然后在您的编辑器中打开
claude_desktop_config.json
并输入以下内容:
{
"mcpServers": {
"iMCP": {
"command": "{粘贴 iMCP 服务器命令}"
}
}
}
从 Claude Desktop 调用 iMCP 工具
退出并重新打开 Claude Desktop 应用程序。系统将提示您批准连接。
批准连接后,您现在应该会在聊天框的右下角看到 🔨12。 点击它即可查看由 iMCP 提供给 Claude 的所有可用工具列表。
现在,您可以向 Claude 提出需要访问您个人数据的问题,例如:
“我现在所在的地方天气如何?”
Claude 将使用相应的工具来获取这些信息, 为您提供准确且个性化的回复, 而无需您在对话过程中手动分享这些数据。
连接到 Claude Code
在安装应用后,要将 iMCP 全局添加:
claude mcp add --scope user iMCP -- /Applications/iMCP.app/Contents/MacOS/imcp-server
或者从 Claude Desktop 导入
如果你已经配置了 Claude Desktop,可以导入其 MCP 服务器:
claude mcp add-from-claude-desktop
连接到 Cursor
打开此深度链接以自动安装 iMCP 服务器:
连接到 Amp
要全局添加 iMCP(在所有项目中可用):
amp mcp add iMCP -- /Applications/iMCP.app/Contents/MacOS/imcp-server
[!NOTE] 当客户端首次连接时,iMCP 会显示一个批准对话框。 点击“允许”并勾选“始终信任此客户端”,以避免重复提示。
技术细节
应用程序与命令行工具
iMCP 是一款 macOS 应用程序,捆绑了一个命令行可执行文件 imcp-server。
iMCP.app提供用于配置服务的用户界面,最重要的是, 它提供了一种与 macOS 系统权限交互的方式, 以便访问通讯录、日历等信息。imcp-server提供一个 MCP 服务器,使用标准输入输出进行通信 (stdio transport)。
应用程序和命令行工具通过本地网络相互通信,
使用 Bonjour 进行自动发现。
两者都以 _mcp._tcp 类型和服务域为 local 来发布服务。
来自 MCP 客户端的请求由命令行工具从 stdin 读取,
并转发给应用程序;
应用程序的响应则由命令行工具接收,并写入到 stdout。
有关实现细节,请参阅 StdioProxy。
为此项目,我们创建了后来成为 官方 Swift SDK 用于 Model Context Protocol 服务器和客户端的软件开发包。 该应用程序使用此软件包来处理来自 MCP 客户端的代理请求。
iMessage 数据库访问
Apple 并未提供公开的 API 来访问你的消息。
然而,macOS 上的 Messages 应用程序将数据存储在一个 SQLite 数据库中,
位于 ~/Library/Messages/chat.db。
iMCP 在 App Sandbox 中运行,
这限制了它对用户数据和系统资源的访问。
当你尝试启用 Messages 服务时,
系统会提示你通过标准文件选择器打开 chat.db 文件。
当你这样做时,macOS 会将该文件添加到应用程序的沙盒中。
NSOpenPanel 就是这样一种神奇的功能。
不过,打开 iMessage 数据库只是成功的一半。
在过去几年里,
Apple 已经不再以纯文本形式存储消息,
而是转向了一种专有的 typedstream 格式。
为此项目,我们创建了 Madrid:
一个用于读取你的 iMessage 数据库的 Swift 软件包。
它包含一个 Swift 实现,用于解码 Apple 的 typedstream 格式,
改编自 Christopher Sardegna 的 imessage-exporter 项目
以及关于逆向工程 typedstream 的 博客文章。
JSON-LD 用于工具结果
iMCP 提供的工具会以
JSON-LD 文档的形式返回结果。
例如,
fetchContacts 工具使用了 Contacts framework,
该框架用 CNContact 类型来表示个人和组织。
以下是该类型对象如何编码为 JSON-LD:
{
"@context": "https://schema.org",
"@type": "Person",
"name": "Mattt",
"url": "https://mat.tt"
}
Schema.org 提供了用于表示人物、邮政地址、事件等对象的标准词汇表。 而 JSON-LD 则是一种方便的编码格式, 适用于人类、人工智能以及传统软件。
为此项目,我们创建了 Ontology: 一个用于处理结构化数据的 Swift 软件包。 它包括来自 Apple 框架类型的便捷初始化器, 例如 iMCP 工具所返回的对象。
调试
使用 MCP 检查器
为了调试 iMCP 与客户端之间的交互, 你可以使用 检查器工具 (需要 Node.js):
点击
> “复制服务器命令到剪贴板”
打开终端并运行以下命令:
# 下载并运行检查器包于 imcp-server npx @modelcontextprotocol/inspector [粘贴复制的命令] # 打开本地运行的检查器 Web 应用程序 open http://127.0.0.1:6274
检查器可以让你查看客户端与 iMCP 服务器之间的所有请求和响应, 这对于理解协议的工作方式非常有帮助。
使用 Companion
Companion 是一款用于测试和调试 MCP 服务器的实用工具 (需要 macOS 15 或更高版本)。 它提供了一种简便的方式来浏览和与服务器的提示、资源和工具进行交互。 以下是将其连接到 iMCP 的方法:
- 点击
> “复制服务器命令到剪贴板”
- 下载 并打开 Companion 应用程序
- 点击工具栏中的 + 按钮以添加 MCP 服务器
- 填写表单:
- 输入“iMCP”作为名称
- 选择“STDIO”作为传输方式
- 粘贴复制的 iMCP 服务器命令
- 点击“添加服务器”
致谢
- Justin Spahr-Summers (@jspahrsummers), David Soria Parra (@dsp-ant), 和 Ashwin Bhat (@ashwin-ant) 感谢他们对 MCP 所做的工作。
- Christopher Sardegna
(@ReagentX)
感谢他逆向工程了 Messages 应用程序使用的
typedstream格式。
许可证
本项目采用 MIT 许可证。更多信息请参阅 LICENSE 文件。
法律声明
iMessage® 是苹果公司的注册商标。 本项目与苹果公司无任何关联,亦未获得其认可或赞助。
版本历史
1.4.02026/01/301.3.02025/06/231.2.02025/05/151.1.32025/05/091.1.22025/05/081.1.12025/05/071.1.02025/04/151.0.22025/04/031.0.12025/03/181.0.02025/03/05相似工具推荐
openclaw
OpenClaw 是一款专为个人打造的本地化 AI 助手,旨在让你在自己的设备上拥有完全可控的智能伙伴。它打破了传统 AI 助手局限于特定网页或应用的束缚,能够直接接入你日常使用的各类通讯渠道,包括微信、WhatsApp、Telegram、Discord、iMessage 等数十种平台。无论你在哪个聊天软件中发送消息,OpenClaw 都能即时响应,甚至支持在 macOS、iOS 和 Android 设备上进行语音交互,并提供实时的画布渲染功能供你操控。 这款工具主要解决了用户对数据隐私、响应速度以及“始终在线”体验的需求。通过将 AI 部署在本地,用户无需依赖云端服务即可享受快速、私密的智能辅助,真正实现了“你的数据,你做主”。其独特的技术亮点在于强大的网关架构,将控制平面与核心助手分离,确保跨平台通信的流畅性与扩展性。 OpenClaw 非常适合希望构建个性化工作流的技术爱好者、开发者,以及注重隐私保护且不愿被单一生态绑定的普通用户。只要具备基础的终端操作能力(支持 macOS、Linux 及 Windows WSL2),即可通过简单的命令行引导完成部署。如果你渴望拥有一个懂你
stable-diffusion-webui
stable-diffusion-webui 是一个基于 Gradio 构建的网页版操作界面,旨在让用户能够轻松地在本地运行和使用强大的 Stable Diffusion 图像生成模型。它解决了原始模型依赖命令行、操作门槛高且功能分散的痛点,将复杂的 AI 绘图流程整合进一个直观易用的图形化平台。 无论是希望快速上手的普通创作者、需要精细控制画面细节的设计师,还是想要深入探索模型潜力的开发者与研究人员,都能从中获益。其核心亮点在于极高的功能丰富度:不仅支持文生图、图生图、局部重绘(Inpainting)和外绘(Outpainting)等基础模式,还独创了注意力机制调整、提示词矩阵、负向提示词以及“高清修复”等高级功能。此外,它内置了 GFPGAN 和 CodeFormer 等人脸修复工具,支持多种神经网络放大算法,并允许用户通过插件系统无限扩展能力。即使是显存有限的设备,stable-diffusion-webui 也提供了相应的优化选项,让高质量的 AI 艺术创作变得触手可及。
everything-claude-code
everything-claude-code 是一套专为 AI 编程助手(如 Claude Code、Codex、Cursor 等)打造的高性能优化系统。它不仅仅是一组配置文件,而是一个经过长期实战打磨的完整框架,旨在解决 AI 代理在实际开发中面临的效率低下、记忆丢失、安全隐患及缺乏持续学习能力等核心痛点。 通过引入技能模块化、直觉增强、记忆持久化机制以及内置的安全扫描功能,everything-claude-code 能显著提升 AI 在复杂任务中的表现,帮助开发者构建更稳定、更智能的生产级 AI 代理。其独特的“研究优先”开发理念和针对 Token 消耗的优化策略,使得模型响应更快、成本更低,同时有效防御潜在的攻击向量。 这套工具特别适合软件开发者、AI 研究人员以及希望深度定制 AI 工作流的技术团队使用。无论您是在构建大型代码库,还是需要 AI 协助进行安全审计与自动化测试,everything-claude-code 都能提供强大的底层支持。作为一个曾荣获 Anthropic 黑客大奖的开源项目,它融合了多语言支持与丰富的实战钩子(hooks),让 AI 真正成长为懂上
ComfyUI
ComfyUI 是一款功能强大且高度模块化的视觉 AI 引擎,专为设计和执行复杂的 Stable Diffusion 图像生成流程而打造。它摒弃了传统的代码编写模式,采用直观的节点式流程图界面,让用户通过连接不同的功能模块即可构建个性化的生成管线。 这一设计巧妙解决了高级 AI 绘图工作流配置复杂、灵活性不足的痛点。用户无需具备编程背景,也能自由组合模型、调整参数并实时预览效果,轻松实现从基础文生图到多步骤高清修复等各类复杂任务。ComfyUI 拥有极佳的兼容性,不仅支持 Windows、macOS 和 Linux 全平台,还广泛适配 NVIDIA、AMD、Intel 及苹果 Silicon 等多种硬件架构,并率先支持 SDXL、Flux、SD3 等前沿模型。 无论是希望深入探索算法潜力的研究人员和开发者,还是追求极致创作自由度的设计师与资深 AI 绘画爱好者,ComfyUI 都能提供强大的支持。其独特的模块化架构允许社区不断扩展新功能,使其成为当前最灵活、生态最丰富的开源扩散模型工具之一,帮助用户将创意高效转化为现实。
gemini-cli
gemini-cli 是一款由谷歌推出的开源 AI 命令行工具,它将强大的 Gemini 大模型能力直接集成到用户的终端环境中。对于习惯在命令行工作的开发者而言,它提供了一条从输入提示词到获取模型响应的最短路径,无需切换窗口即可享受智能辅助。 这款工具主要解决了开发过程中频繁上下文切换的痛点,让用户能在熟悉的终端界面内直接完成代码理解、生成、调试以及自动化运维任务。无论是查询大型代码库、根据草图生成应用,还是执行复杂的 Git 操作,gemini-cli 都能通过自然语言指令高效处理。 它特别适合广大软件工程师、DevOps 人员及技术研究人员使用。其核心亮点包括支持高达 100 万 token 的超长上下文窗口,具备出色的逻辑推理能力;内置 Google 搜索、文件操作及 Shell 命令执行等实用工具;更独特的是,它支持 MCP(模型上下文协议),允许用户灵活扩展自定义集成,连接如图像生成等外部能力。此外,个人谷歌账号即可享受免费的额度支持,且项目基于 Apache 2.0 协议完全开源,是提升终端工作效率的理想助手。
markitdown
MarkItDown 是一款由微软 AutoGen 团队打造的轻量级 Python 工具,专为将各类文件高效转换为 Markdown 格式而设计。它支持 PDF、Word、Excel、PPT、图片(含 OCR)、音频(含语音转录)、HTML 乃至 YouTube 链接等多种格式的解析,能够精准提取文档中的标题、列表、表格和链接等关键结构信息。 在人工智能应用日益普及的今天,大语言模型(LLM)虽擅长处理文本,却难以直接读取复杂的二进制办公文档。MarkItDown 恰好解决了这一痛点,它将非结构化或半结构化的文件转化为模型“原生理解”且 Token 效率极高的 Markdown 格式,成为连接本地文件与 AI 分析 pipeline 的理想桥梁。此外,它还提供了 MCP(模型上下文协议)服务器,可无缝集成到 Claude Desktop 等 LLM 应用中。 这款工具特别适合开发者、数据科学家及 AI 研究人员使用,尤其是那些需要构建文档检索增强生成(RAG)系统、进行批量文本分析或希望让 AI 助手直接“阅读”本地文件的用户。虽然生成的内容也具备一定可读性,但其核心优势在于为机器