[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"similar-mattt--iMCP":3,"tool-mattt--iMCP":61},[4,18,26,36,44,53],{"id":5,"name":6,"github_repo":7,"description_zh":8,"stars":9,"difficulty_score":10,"last_commit_at":11,"category_tags":12,"status":17},4358,"openclaw","openclaw\u002Fopenclaw","OpenClaw 是一款专为个人打造的本地化 AI 助手，旨在让你在自己的设备上拥有完全可控的智能伙伴。它打破了传统 AI 助手局限于特定网页或应用的束缚，能够直接接入你日常使用的各类通讯渠道，包括微信、WhatsApp、Telegram、Discord、iMessage 等数十种平台。无论你在哪个聊天软件中发送消息，OpenClaw 都能即时响应，甚至支持在 macOS、iOS 和 Android 设备上进行语音交互，并提供实时的画布渲染功能供你操控。\n\n这款工具主要解决了用户对数据隐私、响应速度以及“始终在线”体验的需求。通过将 AI 部署在本地，用户无需依赖云端服务即可享受快速、私密的智能辅助，真正实现了“你的数据，你做主”。其独特的技术亮点在于强大的网关架构，将控制平面与核心助手分离，确保跨平台通信的流畅性与扩展性。\n\nOpenClaw 非常适合希望构建个性化工作流的技术爱好者、开发者，以及注重隐私保护且不愿被单一生态绑定的普通用户。只要具备基础的终端操作能力（支持 macOS、Linux 及 Windows WSL2），即可通过简单的命令行引导完成部署。如果你渴望拥有一个懂你",349277,3,"2026-04-06T06:32:30",[13,14,15,16],"Agent","开发框架","图像","数据工具","ready",{"id":19,"name":20,"github_repo":21,"description_zh":22,"stars":23,"difficulty_score":10,"last_commit_at":24,"category_tags":25,"status":17},3808,"stable-diffusion-webui","AUTOMATIC1111\u002Fstable-diffusion-webui","stable-diffusion-webui 是一个基于 Gradio 构建的网页版操作界面，旨在让用户能够轻松地在本地运行和使用强大的 Stable Diffusion 图像生成模型。它解决了原始模型依赖命令行、操作门槛高且功能分散的痛点，将复杂的 AI 绘图流程整合进一个直观易用的图形化平台。\n\n无论是希望快速上手的普通创作者、需要精细控制画面细节的设计师，还是想要深入探索模型潜力的开发者与研究人员，都能从中获益。其核心亮点在于极高的功能丰富度：不仅支持文生图、图生图、局部重绘（Inpainting）和外绘（Outpainting）等基础模式，还独创了注意力机制调整、提示词矩阵、负向提示词以及“高清修复”等高级功能。此外，它内置了 GFPGAN 和 CodeFormer 等人脸修复工具，支持多种神经网络放大算法，并允许用户通过插件系统无限扩展能力。即使是显存有限的设备，stable-diffusion-webui 也提供了相应的优化选项，让高质量的 AI 艺术创作变得触手可及。",162132,"2026-04-05T11:01:52",[14,15,13],{"id":27,"name":28,"github_repo":29,"description_zh":30,"stars":31,"difficulty_score":32,"last_commit_at":33,"category_tags":34,"status":17},1381,"everything-claude-code","affaan-m\u002Feverything-claude-code","everything-claude-code 是一套专为 AI 编程助手（如 Claude Code、Codex、Cursor 等）打造的高性能优化系统。它不仅仅是一组配置文件，而是一个经过长期实战打磨的完整框架，旨在解决 AI 代理在实际开发中面临的效率低下、记忆丢失、安全隐患及缺乏持续学习能力等核心痛点。\n\n通过引入技能模块化、直觉增强、记忆持久化机制以及内置的安全扫描功能，everything-claude-code 能显著提升 AI 在复杂任务中的表现，帮助开发者构建更稳定、更智能的生产级 AI 代理。其独特的“研究优先”开发理念和针对 Token 消耗的优化策略，使得模型响应更快、成本更低，同时有效防御潜在的攻击向量。\n\n这套工具特别适合软件开发者、AI 研究人员以及希望深度定制 AI 工作流的技术团队使用。无论您是在构建大型代码库，还是需要 AI 协助进行安全审计与自动化测试，everything-claude-code 都能提供强大的底层支持。作为一个曾荣获 Anthropic 黑客大奖的开源项目，它融合了多语言支持与丰富的实战钩子（hooks），让 AI 真正成长为懂上",152630,2,"2026-04-12T23:33:54",[14,13,35],"语言模型",{"id":37,"name":38,"github_repo":39,"description_zh":40,"stars":41,"difficulty_score":32,"last_commit_at":42,"category_tags":43,"status":17},2271,"ComfyUI","Comfy-Org\u002FComfyUI","ComfyUI 是一款功能强大且高度模块化的视觉 AI 引擎，专为设计和执行复杂的 Stable Diffusion 图像生成流程而打造。它摒弃了传统的代码编写模式，采用直观的节点式流程图界面，让用户通过连接不同的功能模块即可构建个性化的生成管线。\n\n这一设计巧妙解决了高级 AI 绘图工作流配置复杂、灵活性不足的痛点。用户无需具备编程背景，也能自由组合模型、调整参数并实时预览效果，轻松实现从基础文生图到多步骤高清修复等各类复杂任务。ComfyUI 拥有极佳的兼容性，不仅支持 Windows、macOS 和 Linux 全平台，还广泛适配 NVIDIA、AMD、Intel 及苹果 Silicon 等多种硬件架构，并率先支持 SDXL、Flux、SD3 等前沿模型。\n\n无论是希望深入探索算法潜力的研究人员和开发者，还是追求极致创作自由度的设计师与资深 AI 绘画爱好者，ComfyUI 都能提供强大的支持。其独特的模块化架构允许社区不断扩展新功能，使其成为当前最灵活、生态最丰富的开源扩散模型工具之一，帮助用户将创意高效转化为现实。",108322,"2026-04-10T11:39:34",[14,15,13],{"id":45,"name":46,"github_repo":47,"description_zh":48,"stars":49,"difficulty_score":32,"last_commit_at":50,"category_tags":51,"status":17},6121,"gemini-cli","google-gemini\u002Fgemini-cli","gemini-cli 是一款由谷歌推出的开源 AI 命令行工具，它将强大的 Gemini 大模型能力直接集成到用户的终端环境中。对于习惯在命令行工作的开发者而言，它提供了一条从输入提示词到获取模型响应的最短路径，无需切换窗口即可享受智能辅助。\n\n这款工具主要解决了开发过程中频繁上下文切换的痛点，让用户能在熟悉的终端界面内直接完成代码理解、生成、调试以及自动化运维任务。无论是查询大型代码库、根据草图生成应用，还是执行复杂的 Git 操作，gemini-cli 都能通过自然语言指令高效处理。\n\n它特别适合广大软件工程师、DevOps 人员及技术研究人员使用。其核心亮点包括支持高达 100 万 token 的超长上下文窗口，具备出色的逻辑推理能力；内置 Google 搜索、文件操作及 Shell 命令执行等实用工具；更独特的是，它支持 MCP（模型上下文协议），允许用户灵活扩展自定义集成，连接如图像生成等外部能力。此外，个人谷歌账号即可享受免费的额度支持，且项目基于 Apache 2.0 协议完全开源，是提升终端工作效率的理想助手。",100752,"2026-04-10T01:20:03",[52,13,15,14],"插件",{"id":54,"name":55,"github_repo":56,"description_zh":57,"stars":58,"difficulty_score":32,"last_commit_at":59,"category_tags":60,"status":17},4721,"markitdown","microsoft\u002Fmarkitdown","MarkItDown 是一款由微软 AutoGen 团队打造的轻量级 Python 工具，专为将各类文件高效转换为 Markdown 格式而设计。它支持 PDF、Word、Excel、PPT、图片（含 OCR）、音频（含语音转录）、HTML 乃至 YouTube 链接等多种格式的解析，能够精准提取文档中的标题、列表、表格和链接等关键结构信息。\n\n在人工智能应用日益普及的今天，大语言模型（LLM）虽擅长处理文本，却难以直接读取复杂的二进制办公文档。MarkItDown 恰好解决了这一痛点，它将非结构化或半结构化的文件转化为模型“原生理解”且 Token 效率极高的 Markdown 格式，成为连接本地文件与 AI 分析 pipeline 的理想桥梁。此外，它还提供了 MCP（模型上下文协议）服务器，可无缝集成到 Claude Desktop 等 LLM 应用中。\n\n这款工具特别适合开发者、数据科学家及 AI 研究人员使用，尤其是那些需要构建文档检索增强生成（RAG）系统、进行批量文本分析或希望让 AI 助手直接“阅读”本地文件的用户。虽然生成的内容也具备一定可读性，但其核心优势在于为机器",93400,"2026-04-06T19:52:38",[52,14],{"id":62,"github_repo":63,"name":64,"description_en":65,"description_zh":66,"ai_summary_zh":66,"readme_en":67,"readme_zh":68,"quickstart_zh":69,"use_case_zh":70,"hero_image_url":71,"owner_login":72,"owner_name":73,"owner_avatar_url":74,"owner_bio":75,"owner_company":75,"owner_location":76,"owner_email":75,"owner_twitter":72,"owner_website":77,"owner_url":78,"languages":79,"stars":88,"forks":89,"last_commit_at":90,"license":91,"difficulty_score":32,"env_os":92,"env_gpu":93,"env_ram":93,"env_deps":94,"category_tags":103,"github_topics":104,"view_count":32,"oss_zip_url":75,"oss_zip_packed_at":75,"status":17,"created_at":107,"updated_at":108,"faqs":109,"releases":110},7003,"mattt\u002FiMCP","iMCP","A macOS app that provides an MCP server to your Messages, Contacts, Reminders and more","iMCP 是一款专为 macOS 设计的本地应用，旨在通过模型上下文协议（MCP）将您的数字生活与人工智能无缝连接。它充当本地服务器，让 Claude Desktop 等兼容的 AI 客户端能够安全地访问并操作您设备上的核心数据与服务。\n\n过去，AI 助手往往难以直接读取或管理用户本地的隐私数据。iMCP 解决了这一痛点，赋予 AI 实际执行任务的能力：它可以帮您查询日历行程、检索联系人信息、查看短信记录、管理提醒事项，甚至获取实时天气、地理位置及地图导航服务。这意味着您可以直接用自然语言指令让 AI 帮您“查找上周和某人的聊天记录”或“在明天下午三点添加一个会议提醒”。\n\n这款工具特别适合希望提升工作效率的普通用户、热衷于探索 AI 本地化应用的开发者以及注重隐私的技术爱好者。其独特的技术亮点在于严格的数据隐私保护机制：iMCP 本身不收集或存储任何用户数据，所有信息仅保留在本地，仅在用户主动发起请求时，才通过 MCP 协议按需提供给可信的 AI 客户端。只需在菜单栏启用相应权限，即可让 AI 真正成为懂您生活的智能助理。","\u003Cpicture>\n  \u003Csource media=\"(prefers-color-scheme: dark)\" srcset=\"Assets\u002Fhero-dark.svg\">\n  \u003Csource media=\"(prefers-color-scheme: light)\" srcset=\"Assets\u002Fhero-light.svg\">\n  \u003Cimg alt=\"iMCP\">\n\u003C\u002Fpicture>\n\niMCP is a macOS app for connecting your digital life with AI.\nIt works with [Claude Desktop][claude-app]\nand a [growing list of clients][mcp-clients] that support the\n[Model Context Protocol (MCP)][mcp].\n\n## Capabilities\n\n\u003Ctable>\n  \u003Ctr>\n    \u003Cth>\n      \u003Cimg src=\"Assets\u002Fcalendar.svg\" width=\"48\" height=\"48\" alt=\"\" role=\"presentation\"\u002F>\n    \u003C\u002Fth>\n    \u003Ctd>\u003Cstrong>Calendar\u003C\u002Fstrong>\u003C\u002Ftd>\n    \u003Ctd>View and manage calendar events, including creating new events with customizable settings like recurrence, alarms, and availability status.\u003C\u002Ftd>\n  \u003C\u002Ftr>\n  \u003Ctr>\n    \u003Cth>\n      \u003Cimg src=\"Assets\u002Fcontacts.svg\" width=\"48\" height=\"48\" alt=\"\" role=\"presentation\"\u002F>\n    \u003C\u002Fth>\n    \u003Ctd>\u003Cstrong>Contacts\u003C\u002Fstrong>\u003C\u002Ftd>\n    \u003Ctd>Access contact information about yourself and search your contacts by name, phone number, or email address.\u003C\u002Ftd>\n  \u003C\u002Ftr>\n  \u003Ctr>\n    \u003Cth>\n      \u003Cimg src=\"Assets\u002Flocation.svg\" width=\"48\" height=\"48\" alt=\"\" role=\"presentation\"\u002F>\n    \u003C\u002Fth>\n    \u003Ctd>\u003Cstrong>Location\u003C\u002Fstrong>\u003C\u002Ftd>\n    \u003Ctd>Access current location data and convert between addresses and geographic coordinates.\u003C\u002Ftd>\n  \u003C\u002Ftr>\n  \u003Ctr>\n    \u003Cth>\n      \u003Cimg src=\"Assets\u002Fmaps.svg\" width=\"48\" height=\"48\" alt=\"\" role=\"presentation\"\u002F>\n    \u003C\u002Fth>\n    \u003Ctd>\u003Cstrong>Maps\u003C\u002Fstrong>\u003C\u002Ftd>\n    \u003Ctd>Provides location services including place search, directions, points of interest lookup, travel time estimation, and static map image generation.\u003C\u002Ftd>\n  \u003C\u002Ftr>\n  \u003Ctr>\n    \u003Cth>\n      \u003Cimg src=\"Assets\u002Fmessages.svg\" width=\"48\" height=\"48\" alt=\"\" role=\"presentation\"\u002F>\n    \u003C\u002Fth>\n    \u003Ctd>\u003Cstrong>Messages\u003C\u002Fstrong>\u003C\u002Ftd>\n    \u003Ctd>Access message history with specific participants within customizable date ranges.\u003C\u002Ftd>\n  \u003C\u002Ftr>\n  \u003Ctr>\n    \u003Cth>\n      \u003Cimg src=\"Assets\u002Freminders.svg\" width=\"48\" height=\"48\" alt=\"\" role=\"presentation\"\u002F>\n    \u003C\u002Fth>\n    \u003Ctd>\u003Cstrong>Reminders\u003C\u002Fstrong>\u003C\u002Ftd>\n    \u003Ctd>View and create reminders with customizable due dates, priorities, and alerts across different reminder lists.\u003C\u002Ftd>\n  \u003C\u002Ftr>\n  \u003Ctr>\n    \u003Cth>\n      \u003Cimg src=\"Assets\u002Fweather.svg\" width=\"48\" height=\"48\" alt=\"\" role=\"presentation\"\u002F>\n    \u003C\u002Fth>\n    \u003Ctd>\u003Cstrong>Weather\u003C\u002Fstrong>\u003C\u002Ftd>\n    \u003Ctd>Access current weather conditions including temperature, wind speed, and weather conditions for any location.\u003C\u002Ftd>\n  \u003C\u002Ftr>\n\u003C\u002Ftable>\n\n## Getting Started\n\n### Download and open the app\n\nFirst, [download the iMCP app](https:\u002F\u002FiMCP.app\u002Fdownload)\n(requires macOS 15.3 or later).\n\nOr, if you have [Homebrew](https:\u002F\u002Fbrew.sh) installed,\nyou can run the following command:\n\n```console\nbrew install --cask mattt\u002Ftap\u002FiMCP\n```\n\n\u003Cimg align=\"right\" width=\"344\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fmattt_iMCP_readme_1d55b901ac67.png\" alt=\"Screenshot of iMCP on first launch\" \u002F>\n\nWhen you open the app,\nyou'll see a\n\u003Cimg style=\"display: inline\" width=\"20\" height=\"16\" src=\"\u002FAssets\u002Ficon.svg\" \u002F>\nicon in your menu bar.\n\nClicking on this icon reveals the iMCP menu,\nwhich displays all available services.\nInitially, all services will appear in gray,\nindicating they're inactive.\n\nThe blue toggle switch at the top indicates that the MCP server is running\nand ready to connect with MCP-compatible clients.\n\n\u003Cbr clear=\"all\">\n\n\u003Cimg align=\"right\" width=\"372\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fmattt_iMCP_readme_f78d097ca6ae.png\" alt=\"Screenshot of macOS permission dialog\" \u002F>\n\n### Activate services\n\nTo activate a service, click on its icon.\nThe system will prompt you with a permission dialog.\nFor example, when activating Calendar access, you'll see a dialog asking `\"iMCP\" Would Like Full Access to Your Calendar`.\nClick \u003Ckbd>Allow Full Access\u003C\u002Fkbd> to continue.\n\n> [!IMPORTANT]\n> iMCP **does not** collect or store any of your data.\n> Clients like Claude Desktop _do_ send\n> your data off device as part of tool calls.\n\n\u003Cbr clear=\"all\">\n\n\u003Cimg align=\"right\" width=\"344\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fmattt_iMCP_readme_c4c66e693b9a.png\" alt=\"Screenshot of iMCP with all services enabled\" \u002F>\n\nOnce activated,\neach service icons goes from gray to their distinctive colors —\nred for Calendar, green for Messages, blue for Location, and so on.\n\nRepeat this process for all of the capabilities you'd like to enable.\nThese permissions follow Apple's standard security model,\ngiving you complete control over what information iMCP can access.\n\n\u003C!-- \u003Cbr clear=\"all\"> -->\n\n\u003C!-- \u003Cimg align=\"right\" width=\"344\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fmattt_iMCP_readme_c68adaf4eab2.png\" \u002F> -->\n\n\u003Cbr clear=\"all\">\n\n### Connect to Claude Desktop\n\nIf you don't have Claude Desktop installed,\nyou can [download it here](https:\u002F\u002Fclaude.ai\u002Fdownload).\n\nOpen Claude Desktop and go to \"Settings... (\u003Ckbd>⌘\u003C\u002Fkbd>\u003Ckbd>,\u003C\u002Fkbd>)\".\nClick on \"Developer\" in the sidebar of the Settings pane,\nand then click on \"Edit Config\".\nThis will create a configuration file at\n`~\u002FLibrary\u002FApplication Support\u002FClaude\u002Fclaude_desktop_config.json`.\n\n\u003Cbr\u002F>\n\nTo connect iMCP to Claude Desktop,\nclick \u003Cimg style=\"display: inline\" width=\"20\" height=\"16\" src=\"\u002FAssets\u002Ficon.svg\" \u002F>\n\\> \"Configure Claude Desktop\".\n\nThis will add or update the MCP server configuration to use the\n`imcp-server` executable bundled in the application.\nOther MCP server configurations in the file will be preserved.\n\n\u003Cdetails>\n\u003Csummary>You can also configure Claude Desktop manually\u003C\u002Fsummary>\n\nClick \u003Cimg style=\"display: inline\" width=\"20\" height=\"16\" src=\"\u002FAssets\u002Ficon.svg\" \u002F>\n\\> \"Copy server command to clipboard\".\nThen open `claude_desktop_config.json` in your editor\nand enter the following:\n\n```json\n{\n  \"mcpServers\": {\n    \"iMCP\": {\n      \"command\": \"{paste iMCP server command}\"\n    }\n  }\n}\n```\n\n\u003C\u002Fdetails>\n\n\u003Cimg align=\"right\" width=\"372\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fmattt_iMCP_readme_60269cfeb392.png\" \u002F>\n\n### Call iMCP tools from Claude Desktop\n\nQuit and reopen the Claude Desktop app.\nYou'll be prompted to approve the connection.\n\n\u003Cbr clear=\"all\">\n\nAfter approving the connection,\nyou should now see 🔨12 in the bottom right corner of your chat box.\nClick on that to see a list of all the tools made available to Claude\nby iMCP.\n\n\u003Cp align=\"center\">\n  \u003Cimg width=\"694\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fmattt_iMCP_readme_e6f7b891b863.png\" alt=\"Screenshot of Claude Desktop with tools enabled\" \u002F>\n\u003C\u002Fp>\n\nNow you can ask Claude questions that require access to your personal data,\nsuch as:\n\n> \"How's the weather where I am?\"\n\nClaude will use the appropriate tools to retrieve this information,\nproviding you with accurate, personalized responses\nwithout requiring you to manually share this data during your conversation.\n\n\u003Cp align=\"center\">\n  \u003Cimg width=\"738\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fmattt_iMCP_readme_8779d457ac24.png\" alt=\"Screenshot of Claude response to user message 'How's the weather where I am?'\" \u002F>\n\u003C\u002Fp>\n\n### Connect to [Claude Code][claude-code]\n\nTo add iMCP globally after installing the app:\n\n```console\nclaude mcp add --scope user iMCP -- \u002FApplications\u002FiMCP.app\u002FContents\u002FMacOS\u002Fimcp-server\n```\n\n\u003Cdetails>\n\u003Csummary>Or import from Claude Desktop\u003C\u002Fsummary>\n\nIf you've already configured Claude Desktop, you can import its MCP servers:\n\n```console\nclaude mcp add-from-claude-desktop\n```\n\n\u003C\u002Fdetails>\n\n### Connect to [Cursor][cursor]\n\nOpen this deep link to automatically install the iMCP server:\n\n\u003Ca href=\"https:\u002F\u002Fcursor.com\u002Fen-US\u002Finstall-mcp?name=iMCP&config=eyJjb21tYW5kIjoiL0FwcGxpY2F0aW9ucy9pTUNQLmFwcC9Db250ZW50cy9NYWNPUy9pbWNwLXNlcnZlciAifQ%3D%3D\">\n  \u003Cpicture>\n    \u003Csource media=\"(prefers-color-scheme: dark)\" srcset=\"https:\u002F\u002Fcursor.com\u002Fdeeplink\u002Fmcp-install-dark.svg\">\n    \u003Csource media=\"(prefers-color-scheme: light)\" srcset=\"https:\u002F\u002Fcursor.com\u002Fdeeplink\u002Fmcp-install-light.svg\">\n    \u003Cimg alt=\"Install MCP Server\" src=\"https:\u002F\u002Fcursor.com\u002Fdeeplink\u002Fmcp-install-light.svg\">\n  \u003C\u002Fpicture>\n\u003C\u002Fa>\n\n### Connect to [Amp][amp]\n\nTo add iMCP globally (available in all projects):\n\n```console\namp mcp add iMCP -- \u002FApplications\u002FiMCP.app\u002FContents\u002FMacOS\u002Fimcp-server\n```\n\n> [!NOTE]\n> When a client first connects, iMCP will show an approval dialog.\n> Click \"Allow\" and check \"Always trust this client\" to avoid repeated prompts.\n\n## Technical Details\n\n### App & CLI\n\niMCP is a macOS app that bundles a command-line executable, `imcp-server`.\n\n- [`iMCP.app`](\u002FApp\u002F) provides UI for configuring services and — most importantly —\n  a means of interacting with macOS system permissions,\n  so that it can access Contacts, Calendar, and other information.\n- [`imcp-server`](\u002FCLI\u002F) provides an MCP server that\n  uses standard input\u002Foutput for communication\n  ([stdio transport][mcp-transports]).\n\nThe app and CLI communicate with each other on the local network\nusing [Bonjour][bonjour] for automatic discovery.\nBoth advertise a service with type \"\\_mcp.\\_tcp\" and domain \"local\".\nRequests from MCP clients are read by the CLI from `stdin`\nand relayed to the app;\nresponses from the app are received by the CLI and written to `stdout`.\nSee [`StdioProxy`](https:\u002F\u002Fgithub.com\u002Fmattt\u002FiMCP\u002Fblob\u002F8cf9d250286288b06bf5d3dda78f5905ad0d7729\u002FCLI\u002Fmain.swift#L47)\nfor implementation details.\n\nFor this project, we created what became\n[the official Swift SDK][swift-sdk]\nfor Model Context Protocol servers and clients.\nThe app uses this package to handle proxied requests from MCP clients.\n\n### iMessage Database Access\n\nApple doesn't provide public APIs for accessing your messages.\nHowever, the Messages app on macOS stores data in a SQLite database located at\n`~\u002FLibrary\u002FMessages\u002Fchat.db`.\n\niMCP runs in [App Sandbox][app-sandbox],\nwhich limits its access to user data and system resources.\nWhen you go to enable the Messages service,\nyou'll be prompted to open the `chat.db` file through the standard file picker.\nWhen you do, macOS adds that file to the app's sandbox.\n[`NSOpenPanel`][nsopenpanel] is magic like that.\n\nBut opening the iMessage database is just half the battle.\nOver the past few years,\nApple has moved away from storing messages in plain text\nand instead toward a proprietary `typedstream` format.\n\nFor this project, we created [Madrid][madrid]:\na Swift package for reading your iMessage database.\nIt includes a Swift implementation for decoding Apple's `typedstream` format,\nadapted from Christopher Sardegna's [imessage-exporter] project\nand [blog post about reverse-engineering `typedstream`][typedstream-blog-post].\n\n### JSON-LD for Tool Results\n\nThe tools provided by iMCP return results as\n[JSON-LD][json-ld] documents.\nFor example,\nthe `fetchContacts` tool uses the [Contacts framework][contacts-framework],\nwhich represents people and organizations with the [`CNContact`][cncontact] type.\nHere's how an object of that type is encoded as JSON-LD:\n\n```json\n{\n  \"@context\": \"https:\u002F\u002Fschema.org\",\n  \"@type\": \"Person\",\n  \"name\": \"Mattt\",\n  \"url\": \"https:\u002F\u002Fmat.tt\"\n}\n```\n\n[Schema.org][schema.org] provides standard vocabularies for\npeople, postal addresses, events, and many other objects we want to represent.\nAnd JSON-LD is a convenient encoding format for\nhumans, AI, and conventional software alike.\n\nFor this project, we created [Ontology][ontology]:\na Swift package for working with structured data.\nIt includes convenience initializers for types from Apple frameworks,\nsuch as those returned by iMCP tools.\n\n## Debugging\n\n### Using the MCP Inspector\n\nTo debug interactions between iMCP and clients,\nyou can use the [inspector tool](https:\u002F\u002Fgithub.com\u002Fmodelcontextprotocol\u002Finspector)\n(requires Node.js):\n\n1. Click \u003Cimg style=\"display: inline\" width=\"20\" height=\"16\" src=\"\u002FAssets\u002Ficon.svg\" \u002F> > \"Copy server command to clipboard\"\n2. Open a terminal and run the following commands:\n\n   ```console\n   # Download and run inspector package on imcp-server\n   npx @modelcontextprotocol\u002Finspector [paste-copied-command]\n\n   # Open inspector web app running locally\n   open http:\u002F\u002F127.0.0.1:6274\n   ```\n\nInspector lets you see all requests and responses between the client and the iMCP server,\nwhich is helpful for understanding how the protocol works.\n\n### Using Companion\n\n\u003Cimg align=\"right\" width=\"284\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fmattt_iMCP_readme_a922322dd26a.png\" \u002F>\n\n[Companion][companion] is a utility for testing and debugging your MCP servers\n(requires macOS 15 or later).\nIt gives you an easy way to browse and interact with\na server's prompts, resources, and tools.\nHere's how to connect it to iMCP:\n\n1. Click \u003Cimg style=\"display: inline\" width=\"20\" height=\"16\" src=\"\u002FAssets\u002Ficon.svg\" \u002F> > \"Copy server command to clipboard\"\n2. [Download][companion-download] and open the Companion app\n3. Click the \u003Ckbd>+\u003C\u002Fkbd> button in the toolbar to add an MCP server\n4. Fill out the form:\n   - Enter \"iMCP\" as the name\n   - Select \"STDIO\" as the transport\n   - Paste the copied iMCP server command\n   - Click \"Add Server\"\n\n\u003Cbr clear=\"all\">\n\n## Acknowledgments\n\n- [Justin Spahr-Summers](https:\u002F\u002Fjspahrsummers.com\u002F)\n  ([@jspahrsummers](https:\u002F\u002Fgithub.com\u002Fjspahrsummers)),\n  David Soria Parra\n  ([@dsp-ant](https:\u002F\u002Fgithub.com\u002Fdsp-ant)), and\n  Ashwin Bhat\n  ([@ashwin-ant](https:\u002F\u002Fgithub.com\u002Fashwin-ant))\n  for their work on MCP.\n- [Christopher Sardegna](https:\u002F\u002Fchrissardegna.com)\n  ([@ReagentX](https:\u002F\u002Fgithub.com\u002FReagentX))\n  for reverse-engineering the `typedstream` format\n  used by the Messages app.\n\n## License\n\nThis project is available under the MIT license.\nSee the LICENSE file for more info.\n\n## Legal\n\niMessage® is a registered trademark of Apple Inc.\nThis project is not affiliated with, endorsed, or sponsored by Apple Inc.\n\n[amp]: https:\u002F\u002Fampcode.com\n[app-sandbox]: https:\u002F\u002Fdeveloper.apple.com\u002Fdocumentation\u002Fsecurity\u002Fapp-sandbox\n[bonjour]: https:\u002F\u002Fdeveloper.apple.com\u002Fbonjour\u002F\n[claude-app]: https:\u002F\u002Fclaude.ai\u002Fdownload\n[claude-code]: https:\u002F\u002Fclaude.com\u002Fproduct\u002Fclaude-code\n[companion]: https:\u002F\u002Fgithub.com\u002Fmattt\u002FCompanion\n[companion-download]: https:\u002F\u002Fgithub.com\u002Fmattt\u002FCompanion\u002Freleases\u002Flatest\u002Fdownload\u002FCompanion.zip\n[contacts-framework]: https:\u002F\u002Fdeveloper.apple.com\u002Fdocumentation\u002Fcontacts\n[cncontact]: https:\u002F\u002Fdeveloper.apple.com\u002Fdocumentation\u002Fcontacts\u002Fcncontact\n[cursor]: https:\u002F\u002Fcursor.com\n[imessage-exporter]: https:\u002F\u002Fgithub.com\u002FReagentX\u002Fimessage-exporter\n[json-ld]: https:\u002F\u002Fjson-ld.org\n[madrid]: https:\u002F\u002Fgithub.com\u002Fmattt\u002FMadrid\n[mcp]: https:\u002F\u002Fmodelcontextprotocol.io\u002Fintroduction\n[mcp-clients]: https:\u002F\u002Fmodelcontextprotocol.io\u002Fclients\n[mcp-transports]: https:\u002F\u002Fmodelcontextprotocol.io\u002Fdocs\u002Fconcepts\u002Farchitecture#transport-layer\n[nsopenpanel]: https:\u002F\u002Fdeveloper.apple.com\u002Fdocumentation\u002Fappkit\u002Fnsopenpanel\n[ontology]: https:\u002F\u002Fgithub.com\u002Fmattt\u002FOntology\n[schema.org]: https:\u002F\u002Fschema.org\n[swift-sdk]: https:\u002F\u002Fgithub.com\u002Fmodelcontextprotocol\u002Fswift-sdk\n[typedstream-blog-post]: https:\u002F\u002Fchrissardegna.com\u002Fblog\u002Freverse-engineering-apples-typedstream-format\u002F\n","\u003Cpicture>\n  \u003Csource media=\"(prefers-color-scheme: dark)\" srcset=\"Assets\u002Fhero-dark.svg\">\n  \u003Csource media=\"(prefers-color-scheme: light)\" srcset=\"Assets\u002Fhero-light.svg\">\n  \u003Cimg alt=\"iMCP\">\n\u003C\u002Fpicture>\n\niMCP 是一款 macOS 应用程序，可将您的数字生活与人工智能连接起来。\n它可与 [Claude Desktop][claude-app] 以及支持\n[模型上下文协议 (MCP)][mcp] 的\n[不断增长的客户端列表][mcp-clients] 配合使用。\n\n## 功能\n\n\u003Ctable>\n  \u003Ctr>\n    \u003Cth>\n      \u003Cimg src=\"Assets\u002Fcalendar.svg\" width=\"48\" height=\"48\" alt=\"\" role=\"presentation\"\u002F>\n    \u003C\u002Fth>\n    \u003Ctd>\u003Cstrong>日历\u003C\u002Fstrong>\u003C\u002Ftd>\n    \u003Ctd>查看和管理日历事件，包括创建具有自定义设置的新事件，例如重复、提醒和可用性状态。\u003C\u002Ftd>\n  \u003C\u002Ftr>\n  \u003Ctr>\n    \u003Cth>\n      \u003Cimg src=\"Assets\u002Fcontacts.svg\" width=\"48\" height=\"48\" alt=\"\" role=\"presentation\"\u002F>\n    \u003C\u002Fth>\n    \u003Ctd>\u003Cstrong>通讯录\u003C\u002Fstrong>\u003C\u002Ftd>\n    \u003Ctd>访问您自己的联系人信息，并可通过姓名、电话号码或电子邮件地址搜索联系人。\u003C\u002Ftd>\n  \u003C\u002Ftr>\n  \u003Ctr>\n    \u003Cth>\n      \u003Cimg src=\"Assets\u002Flocation.svg\" width=\"48\" height=\"48\" alt=\"\" role=\"presentation\"\u002F>\n    \u003C\u002Fth>\n    \u003Ctd>\u003Cstrong>位置\u003C\u002Fstrong>\u003C\u002Ftd>\n    \u003Ctd>访问当前位置数据，并在地址和地理坐标之间进行转换。\u003C\u002Ftd>\n  \u003C\u002Ftr>\n  \u003Ctr>\n    \u003Cth>\n      \u003Cimg src=\"Assets\u002Fmaps.svg\" width=\"48\" height=\"48\" alt=\"\" role=\"presentation\"\u002F>\n    \u003C\u002Fth>\n    \u003Ctd>\u003Cstrong>地图\u003C\u002Fstrong>\u003C\u002Ftd>\n    \u003Ctd>提供位置服务，包括地点搜索、路线规划、兴趣点查询、行程时间估算以及静态地图图像生成。\u003C\u002Ftd>\n  \u003C\u002Ftr>\n  \u003Ctr>\n    \u003Cth>\n      \u003Cimg src=\"Assets\u002Fmessages.svg\" width=\"48\" height=\"48\" alt=\"\" role=\"presentation\"\u002F>\n    \u003C\u002Fth>\n    \u003Ctd>\u003Cstrong>消息\u003C\u002Fstrong>\u003C\u002Ftd>\n    \u003Ctd>在自定义日期范围内访问与特定参与者的消息记录。\u003C\u002Ftd>\n  \u003C\u002Ftr>\n  \u003Ctr>\n    \u003Cth>\n      \u003Cimg src=\"Assets\u002Freminders.svg\" width=\"48\" height=\"48\" alt=\"\" role=\"presentation\"\u002F>\n    \u003C\u002Fth>\n    \u003Ctd>\u003Cstrong>提醒\u003C\u002Fstrong>\u003C\u002Ftd>\n    \u003Ctd>查看和创建具有自定义截止日期、优先级和警报的提醒，并可在不同的提醒列表中进行管理。\u003C\u002Ftd>\n  \u003C\u002Ftr>\n  \u003Ctr>\n    \u003Cth>\n      \u003Cimg src=\"Assets\u002Fweather.svg\" width=\"48\" height=\"48\" alt=\"\" role=\"presentation\"\u002F>\n    \u003C\u002Fth>\n    \u003Ctd>\u003Cstrong>天气\u003C\u002Fstrong>\u003C\u002Ftd>\n    \u003Ctd>访问当前天气状况，包括温度、风速以及任何地点的天气情况。\u003C\u002Ftd>\n  \u003C\u002Ftr>\n\u003C\u002Ftable>\n\n## 开始使用\n\n### 下载并打开应用\n\n首先，请[下载 iMCP 应用](https:\u002F\u002FiMCP.app\u002Fdownload)\n（需要 macOS 15.3 或更高版本）。\n\n或者，如果您已安装 [Homebrew](https:\u002F\u002Fbrew.sh)，可以运行以下命令：\n\n```console\nbrew install --cask mattt\u002Ftap\u002FiMCP\n```\n\n\u003Cimg align=\"right\" width=\"344\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fmattt_iMCP_readme_1d55b901ac67.png\" alt=\"iMCP 首次启动截图\" \u002F>\n\n打开应用后，您会在菜单栏中看到一个\n\u003Cimg style=\"display: inline\" width=\"20\" height=\"16\" src=\"\u002FAssets\u002Ficon.svg\" \u002F>\n图标。\n\n单击此图标即可显示 iMCP 菜单，其中列出了所有可用的服务。最初，所有服务将以灰色显示，表示它们处于未启用状态。\n\n顶部的蓝色切换开关表示 MCP 服务器正在运行，\n并已准备好与兼容 MCP 的客户端建立连接。\n\n\u003Cbr clear=\"all\">\n\n\u003Cimg align=\"right\" width=\"372\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fmattt_iMCP_readme_f78d097ca6ae.png\" alt=\"macOS 权限对话框截图\" \u002F>\n\n### 激活服务\n\n要激活某项服务，只需单击其图标。系统会弹出权限请求对话框。例如，当您激活“日历”访问权限时，会出现一个对话框，提示“iMCP 想要完全访问您的日历”。点击\u003Ckbd>允许完全访问\u003C\u002Fkbd>继续。\n\n> [!重要]\n> iMCP **不会**收集或存储您的任何数据。\n> 像 Claude Desktop 这样的客户端则会将您的数据发送到设备之外，\n> 作为工具调用的一部分。\n\n\u003Cbr clear=\"all\">\n\n\u003Cimg align=\"right\" width=\"344\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fmattt_iMCP_readme_c4c66e693b9a.png\" alt=\"所有服务均已启用的 iMCP 截图\" \u002F>\n\n一旦激活，每个服务的图标就会从灰色变为各自的特色颜色——日历为红色，消息为绿色，位置为蓝色，以此类推。\n\n对您希望启用的所有功能重复此过程。这些权限遵循 Apple 的标准安全模型，\n使您可以完全控制 iMCP 可以访问哪些信息。\n\n\u003C!-- \u003Cbr clear=\"all\"> -->\n\n\u003C!-- \u003Cimg align=\"right\" width=\"344\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fmattt_iMCP_readme_c68adaf4eab2.png\" \u002F> -->\n\n\u003Cbr clear=\"all\">\n\n### 连接到 Claude Desktop\n\n如果您尚未安装 Claude Desktop，可以在此处[下载](https:\u002F\u002Fclaude.ai\u002Fdownload)。\n\n打开 Claude Desktop，转到“设置… (\u003Ckbd>⌘\u003C\u002Fkbd>\u003Ckbd>,\u003C\u002Fkbd>)”。\n在设置面板的侧边栏中，单击“开发者”，然后单击“编辑配置”。\n这将创建一个配置文件，位于\n`~\u002FLibrary\u002FApplication Support\u002FClaude\u002Fclaude_desktop_config.json`。\n\n\u003Cbr\u002F>\n\n要将 iMCP 连接到 Claude Desktop，\n请点击 \u003Cimg style=\"display: inline\" width=\"20\" height=\"16\" src=\"\u002FAssets\u002Ficon.svg\" \u002F>\n\\> “配置 Claude Desktop”。\n\n这将添加或更新 MCP 服务器配置，以使用应用程序中捆绑的\n`imcp-server` 可执行文件。文件中的其他 MCP 服务器配置将被保留。\n\n\u003Cdetails>\n\u003Csummary>您也可以手动配置 Claude Desktop\u003C\u002Fsummary>\n\n点击 \u003Cimg style=\"display: inline\" width=\"20\" height=\"16\" src=\"\u002FAssets\u002Ficon.svg\" \u002F>\n\\> “将服务器命令复制到剪贴板”。\n然后在您的编辑器中打开 `claude_desktop_config.json`\n并输入以下内容：\n\n```json\n{\n  \"mcpServers\": {\n    \"iMCP\": {\n      \"command\": \"{粘贴 iMCP 服务器命令}\"\n    }\n  }\n}\n```\n\n\u003C\u002Fdetails>\n\n\u003Cimg align=\"right\" width=\"372\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fmattt_iMCP_readme_60269cfeb392.png\" \u002F>\n\n### 从 Claude Desktop 调用 iMCP 工具\n\n退出并重新打开 Claude Desktop 应用程序。系统将提示您批准连接。\n\n\u003Cbr clear=\"all\">\n\n批准连接后，您现在应该会在聊天框的右下角看到 🔨12。\n点击它即可查看由 iMCP 提供给 Claude 的所有可用工具列表。\n\n\u003Cp align=\"center\">\n  \u003Cimg width=\"694\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fmattt_iMCP_readme_e6f7b891b863.png\" alt=\"启用工具后的 Claude Desktop 截图\" \u002F>\n\u003C\u002Fp>\n\n现在，您可以向 Claude 提出需要访问您个人数据的问题，例如：\n\n> “我现在所在的地方天气如何？”\n\nClaude 将使用相应的工具来获取这些信息，\n为您提供准确且个性化的回复，\n而无需您在对话过程中手动分享这些数据。\n\n\u003Cp align=\"center\">\n  \u003Cimg width=\"738\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fmattt_iMCP_readme_8779d457ac24.png\" alt=\"Claude 对用户问题‘我现在所在的地方天气如何？’的回复截图\" \u002F>\n\u003C\u002Fp>\n\n### 连接到 [Claude Code][claude-code]\n\n在安装应用后，要将 iMCP 全局添加：\n\n```console\nclaude mcp add --scope user iMCP -- \u002FApplications\u002FiMCP.app\u002FContents\u002FMacOS\u002Fimcp-server\n```\n\n\u003Cdetails>\n\u003Csummary>或者从 Claude Desktop 导入\u003C\u002Fsummary>\n\n如果你已经配置了 Claude Desktop，可以导入其 MCP 服务器：\n\n```console\nclaude mcp add-from-claude-desktop\n```\n\n\u003C\u002Fdetails>\n\n### 连接到 [Cursor][cursor]\n\n打开此深度链接以自动安装 iMCP 服务器：\n\n\u003Ca href=\"https:\u002F\u002Fcursor.com\u002Fen-US\u002Finstall-mcp?name=iMCP&config=eyJjb21tYW5kIjoiL0FwcGxpY2F0aW9ucy9pTUNQLmFwcC9Db250ZW50cy9NYWNPUy9pbWNwLXNlcnZlciAifQ%3D%3D\">\n  \u003Cpicture>\n    \u003Csource media=\"(prefers-color-scheme: dark)\" srcset=\"https:\u002F\u002Fcursor.com\u002Fdeeplink\u002Fmcp-install-dark.svg\">\n    \u003Csource media=\"(prefers-color-scheme: light)\" srcset=\"https:\u002F\u002Fcursor.com\u002Fdeeplink\u002Fmcp-install-light.svg\">\n    \u003Cimg alt=\"Install MCP Server\" src=\"https:\u002F\u002Fcursor.com\u002Fdeeplink\u002Fmcp-install-light.svg\">\n  \u003C\u002Fpicture>\n\u003C\u002Fa>\n\n### 连接到 [Amp][amp]\n\n要全局添加 iMCP（在所有项目中可用）：\n\n```console\namp mcp add iMCP -- \u002FApplications\u002FiMCP.app\u002FContents\u002FMacOS\u002Fimcp-server\n```\n\n> [!NOTE]\n> 当客户端首次连接时，iMCP 会显示一个批准对话框。\n> 点击“允许”并勾选“始终信任此客户端”，以避免重复提示。\n\n## 技术细节\n\n### 应用程序与命令行工具\n\niMCP 是一款 macOS 应用程序，捆绑了一个命令行可执行文件 `imcp-server`。\n\n- [`iMCP.app`](\u002FApp\u002F) 提供用于配置服务的用户界面，最重要的是，\n  它提供了一种与 macOS 系统权限交互的方式，\n  以便访问通讯录、日历等信息。\n- [`imcp-server`](\u002FCLI\u002F) 提供一个 MCP 服务器，使用标准输入输出进行通信\n  ([stdio transport][mcp-transports])。\n\n应用程序和命令行工具通过本地网络相互通信，\n使用 [Bonjour][bonjour] 进行自动发现。\n两者都以 `_mcp._tcp` 类型和服务域为 `local` 来发布服务。\n来自 MCP 客户端的请求由命令行工具从 `stdin` 读取，\n并转发给应用程序；\n应用程序的响应则由命令行工具接收，并写入到 `stdout`。\n有关实现细节，请参阅 [`StdioProxy`](https:\u002F\u002Fgithub.com\u002Fmattt\u002FiMCP\u002Fblob\u002F8cf9d250286288b06bf5d3dda78f5905ad0d7729\u002FCLI\u002Fmain.swift#L47)。\n\n为此项目，我们创建了后来成为\n[官方 Swift SDK][swift-sdk]\n用于 Model Context Protocol 服务器和客户端的软件开发包。\n该应用程序使用此软件包来处理来自 MCP 客户端的代理请求。\n\n### iMessage 数据库访问\n\nApple 并未提供公开的 API 来访问你的消息。\n然而，macOS 上的 Messages 应用程序将数据存储在一个 SQLite 数据库中，\n位于 `~\u002FLibrary\u002FMessages\u002Fchat.db`。\n\niMCP 在 [App Sandbox][app-sandbox] 中运行，\n这限制了它对用户数据和系统资源的访问。\n当你尝试启用 Messages 服务时，\n系统会提示你通过标准文件选择器打开 `chat.db` 文件。\n当你这样做时，macOS 会将该文件添加到应用程序的沙盒中。\n[`NSOpenPanel`][nsopenpanel] 就是这样一种神奇的功能。\n\n不过，打开 iMessage 数据库只是成功的一半。\n在过去几年里，\nApple 已经不再以纯文本形式存储消息，\n而是转向了一种专有的 `typedstream` 格式。\n\n为此项目，我们创建了 [Madrid][madrid]：\n一个用于读取你的 iMessage 数据库的 Swift 软件包。\n它包含一个 Swift 实现，用于解码 Apple 的 `typedstream` 格式，\n改编自 Christopher Sardegna 的 [imessage-exporter] 项目\n以及关于逆向工程 `typedstream` 的 [博客文章][typedstream-blog-post]。\n\n### JSON-LD 用于工具结果\n\niMCP 提供的工具会以\n[JSON-LD][json-ld] 文档的形式返回结果。\n例如，\n`fetchContacts` 工具使用了 [Contacts framework][contacts-framework]，\n该框架用 `CNContact` 类型来表示个人和组织。\n以下是该类型对象如何编码为 JSON-LD：\n\n```json\n{\n  \"@context\": \"https:\u002F\u002Fschema.org\",\n  \"@type\": \"Person\",\n  \"name\": \"Mattt\",\n  \"url\": \"https:\u002F\u002Fmat.tt\"\n}\n```\n\n[Schema.org][schema.org] 提供了用于表示人物、邮政地址、事件等对象的标准词汇表。\n而 JSON-LD 则是一种方便的编码格式，\n适用于人类、人工智能以及传统软件。\n\n为此项目，我们创建了 [Ontology][ontology]：\n一个用于处理结构化数据的 Swift 软件包。\n它包括来自 Apple 框架类型的便捷初始化器，\n例如 iMCP 工具所返回的对象。\n\n## 调试\n\n### 使用 MCP 检查器\n\n为了调试 iMCP 与客户端之间的交互，\n你可以使用 [检查器工具](https:\u002F\u002Fgithub.com\u002Fmodelcontextprotocol\u002Finspector)\n（需要 Node.js）：\n\n1. 点击 \u003Cimg style=\"display: inline\" width=\"20\" height=\"16\" src=\"\u002FAssets\u002Ficon.svg\" \u002F> > “复制服务器命令到剪贴板”\n2. 打开终端并运行以下命令：\n\n   ```console\n   # 下载并运行检查器包于 imcp-server\n   npx @modelcontextprotocol\u002Finspector [粘贴复制的命令]\n\n   # 打开本地运行的检查器 Web 应用程序\n   open http:\u002F\u002F127.0.0.1:6274\n   ```\n\n检查器可以让你查看客户端与 iMCP 服务器之间的所有请求和响应，\n这对于理解协议的工作方式非常有帮助。\n\n### 使用 Companion\n\n\u003Cimg align=\"right\" width=\"284\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fmattt_iMCP_readme_a922322dd26a.png\" \u002F>\n\n[Companion][companion] 是一款用于测试和调试 MCP 服务器的实用工具\n（需要 macOS 15 或更高版本）。\n它提供了一种简便的方式来浏览和与服务器的提示、资源和工具进行交互。\n以下是将其连接到 iMCP 的方法：\n\n1. 点击 \u003Cimg style=\"display: inline\" width=\"20\" height=\"16\" src=\"\u002FAssets\u002Ficon.svg\" \u002F> > “复制服务器命令到剪贴板”\n2. [下载][companion-download] 并打开 Companion 应用程序\n3. 点击工具栏中的 \u003Ckbd>+\u003C\u002Fkbd> 按钮以添加 MCP 服务器\n4. 填写表单：\n   - 输入“iMCP”作为名称\n   - 选择“STDIO”作为传输方式\n   - 粘贴复制的 iMCP 服务器命令\n   - 点击“添加服务器”\n\n\u003Cbr clear=\"all\">\n\n## 致谢\n\n- [Justin Spahr-Summers](https:\u002F\u002Fjspahrsummers.com\u002F)\n  ([@jspahrsummers](https:\u002F\u002Fgithub.com\u002Fjspahrsummers)),\n  David Soria Parra\n  ([@dsp-ant](https:\u002F\u002Fgithub.com\u002Fdsp-ant)), 和\n  Ashwin Bhat\n  ([@ashwin-ant](https:\u002F\u002Fgithub.com\u002Fashwin-ant))\n  感谢他们对 MCP 所做的工作。\n- [Christopher Sardegna](https:\u002F\u002Fchrissardegna.com)\n  ([@ReagentX](https:\u002F\u002Fgithub.com\u002FReagentX))\n  感谢他逆向工程了 Messages 应用程序使用的 `typedstream` 格式。\n\n## 许可证\n\n本项目采用 MIT 许可证。更多信息请参阅 LICENSE 文件。\n\n## 法律声明\n\niMessage® 是苹果公司的注册商标。\n本项目与苹果公司无任何关联，亦未获得其认可或赞助。\n\n[amp]: https:\u002F\u002Fampcode.com\n[app-sandbox]: https:\u002F\u002Fdeveloper.apple.com\u002Fdocumentation\u002Fsecurity\u002Fapp-sandbox\n[bonjour]: https:\u002F\u002Fdeveloper.apple.com\u002Fbonjour\u002F\n[claude-app]: https:\u002F\u002Fclaude.ai\u002Fdownload\n[claude-code]: https:\u002F\u002Fclaude.com\u002Fproduct\u002Fclaude-code\n[companion]: https:\u002F\u002Fgithub.com\u002Fmattt\u002FCompanion\n[companion-download]: https:\u002F\u002Fgithub.com\u002Fmattt\u002FCompanion\u002Freleases\u002Flatest\u002Fdownload\u002FCompanion.zip\n[contacts-framework]: https:\u002F\u002Fdeveloper.apple.com\u002Fdocumentation\u002Fcontacts\n[cncontact]: https:\u002F\u002Fdeveloper.apple.com\u002Fdocumentation\u002Fcontacts\u002Fcncontact\n[cursor]: https:\u002F\u002Fcursor.com\n[imessage-exporter]: https:\u002F\u002Fgithub.com\u002FReagentX\u002Fimessage-exporter\n[json-ld]: https:\u002F\u002Fjson-ld.org\n[madrid]: https:\u002F\u002Fgithub.com\u002Fmattt\u002FMadrid\n[mcp]: https:\u002F\u002Fmodelcontextprotocol.io\u002Fintroduction\n[mcp-clients]: https:\u002F\u002Fmodelcontextprotocol.io\u002Fclients\n[mcp-transports]: https:\u002F\u002Fmodelcontextprotocol.io\u002Fdocs\u002Fconcepts\u002Farchitecture#transport-layer\n[nsopenpanel]: https:\u002F\u002Fdeveloper.apple.com\u002Fdocumentation\u002Fappkit\u002Fnsopenpanel\n[ontology]: https:\u002F\u002Fgithub.com\u002Fmattt\u002FOntology\n[schema.org]: https:\u002F\u002Fschema.org\n[swift-sdk]: https:\u002F\u002Fgithub.com\u002Fmodelcontextprotocol\u002Fswift-sdk\n[typedstream-blog-post]: https:\u002F\u002Fchrissardegna.com\u002Fblog\u002Freverse-engineering-apples-typedstream-format\u002F","# iMCP 快速上手指南\n\niMCP 是一款 macOS 应用程序，旨在通过 [Model Context Protocol (MCP)](https:\u002F\u002Fmodelcontextprotocol.io) 将您的数字生活（日历、联系人、位置、信息等）与 AI 连接。它允许 Claude Desktop、Cursor 等客户端安全地访问您的本地数据。\n\n## 环境准备\n\n*   **操作系统**：macOS 15.3 (Sequoia) 或更高版本。\n*   **前置依赖**：\n    *   已安装支持 MCP 的客户端（如 [Claude Desktop](https:\u002F\u002Fclaude.ai\u002Fdownload)、[Cursor](https:\u002F\u002Fcursor.com) 或 [Claude Code](https:\u002F\u002Fclaude.ai\u002Fcode)）。\n    *   （可选）[Homebrew](https:\u002F\u002Fbrew.sh)：用于便捷安装。\n\n## 安装步骤\n\n您可以选择以下任一方式安装 iMCP：\n\n### 方式一：使用 Homebrew（推荐）\n如果您已安装 Homebrew，在终端运行以下命令：\n\n```console\nbrew install --cask mattt\u002Ftap\u002FiMCP\n```\n\n### 方式二：手动下载\n访问 [iMCP 官网下载页](https:\u002F\u002FiMCP.app\u002Fdownload) 下载应用安装包，双击安装并将应用移至“应用程序”文件夹。\n\n## 基本使用\n\n### 1. 启动与授权服务\n1.  打开 **iMCP** 应用。您将在菜单栏看到一个图标。\n2.  点击菜单栏图标，你会看到所有可用服务（日历、联系人、位置等）初始状态为灰色（未激活）。\n3.  点击您需要使用的服务图标（例如\"Calendar\"）。\n4.  系统会弹出权限请求对话框（例如 `\"iMCP\" Would Like Full Access to Your Calendar`），点击 **Allow Full Access**。\n5.  重复此步骤以激活其他所需服务。激活后，图标将变为彩色。\n\n> **注意**：iMCP 本身不会收集或存储您的任何数据。数据仅在 AI 客户端调用工具时按需传输。\n\n### 2. 连接 Claude Desktop\n1.  确保已安装并打开 **Claude Desktop**。\n2.  进入设置 (`⌘` + `,`) -> 侧边栏选择 **Developer** -> 点击 **Edit Config**。这将创建或打开配置文件 `~\u002FLibrary\u002FApplication Support\u002FClaude\u002Fclaude_desktop_config.json`。\n3.  回到 macOS 菜单栏，点击 **iMCP 图标** -> 选择 **Configure Claude Desktop**。\n    *   此操作会自动将 `imcp-server` 配置写入上述 JSON 文件中。\n4.  **重启 Claude Desktop**。\n5.  重启后，系统会提示您批准连接，点击 **Allow**。\n6.  在聊天输入框右下角，您应该能看到一个 🔨 图标及数字（表示可用工具数量）。点击即可查看 iMCP 提供的工具列表。\n\n**测试示例**：\n在对话框中输入：\n> \"How's the weather where I am?\"\n\nClaude 将调用 iMCP 的位置和天气工具，直接读取您的实时位置和天气信息并回答。\n\n### 3. 连接其他客户端\n\n#### 连接 Cursor\n点击以下链接自动安装 iMCP 服务器：\n[\u003Cimg alt=\"Install MCP Server for Cursor\" src=\"https:\u002F\u002Fcursor.com\u002Fdeeplink\u002Fmcp-install-light.svg\" width=\"150\">](https:\u002F\u002Fcursor.com\u002Fen-US\u002Finstall-mcp?name=iMCP&config=eyJjb21tYW5kIjoiL0FwcGxpY2F0aW9ucy9pTUNQLmFwcC9Db250ZW50cy9NYWNPUy9pbWNwLXNlcnZlciAifQ%3D%3D)\n\n#### 连接 Claude Code\n在终端运行以下命令全局添加 iMCP：\n\n```console\nclaude mcp add --scope user iMCP -- \u002FApplications\u002FiMCP.app\u002FContents\u002FMacOS\u002Fimcp-server\n```\n\n或者，如果您已配置好 Claude Desktop，可以直接导入配置：\n\n```console\nclaude mcp add-from-claude-desktop\n```\n\n#### 连接 Amp\n在终端运行：\n\n```console\namp mcp add iMCP -- \u002FApplications\u002FiMCP.app\u002FContents\u002FMacOS\u002Fimcp-server\n```\n\n> **提示**：当新客户端首次连接时，iMCP 会弹出批准对话框。勾选 \"Always trust this client\" 可避免后续重复提示。","自由职业者小林正在规划下周的客户拜访行程，需要协调会议时间、查找客户联系方式并确认路线天气。\n\n### 没有 iMCP 时\n- **数据孤岛严重**：必须手动在日历、通讯录和地图应用间反复切换，无法在一个界面获取完整信息。\n- **操作繁琐低效**：安排会议时需先查联系人电话，再切到日历创建事件，最后单独打开地图估算路程，流程断裂且耗时。\n- **上下文易丢失**：在整理过往沟通记录时，难以快速检索特定日期的短信历史来确认之前的约定细节。\n- **动态调整困难**：若遇突发天气变化或交通拥堵，无法实时联动查询并自动建议修改会议时间或地点。\n\n### 使用 iMCP 后\n- **全域数据打通**：通过 Claude Desktop 直接调用 iMCP，AI 能同时读取日历空闲时段、客户电话号码及实时位置信息。\n- **自然语言一键执行**：只需输入“下周二下午约张总在咖啡馆见面”，iMCP 即自动搜索联系人、检查日程冲突、创建带提醒的日历项并规划路线。\n- **历史智能回溯**：让 AI“找出上个月和李经理关于预算的短信”，iMCP 立即调取指定时间段的消息记录并总结关键共识。\n- **动态场景联动**：询问“明天去那个地址会下雨吗？需要改期吗？”，iMCP 结合天气预报与路况预估，主动给出优化建议。\n\niMCP 将 macOS 原生数据转化为 AI 可理解的上下文，让用户从繁琐的跨应用操作中解放，真正实现用自然语言指挥数字生活。","https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fmattt_iMCP_1d55b901.png","mattt","Mattt","https:\u002F\u002Foss.gittoolsai.com\u002Favatars\u002Fmattt_7efe6017.jpg",null,"Portland, OR","https:\u002F\u002Fnshipster.com","https:\u002F\u002Fgithub.com\u002Fmattt",[80,84],{"name":81,"color":82,"percentage":83},"Swift","#F05138",94.9,{"name":85,"color":86,"percentage":87},"Shell","#89e051",5.1,1362,93,"2026-04-11T13:50:22","MIT","macOS","未说明",{"notes":95,"python":93,"dependencies":96},"1. 操作系统必须为 macOS 15.3 或更高版本。2. 该工具是一个 macOS 原生应用程序，包含一个命令行可执行文件 (imcp-server)，并非基于 Python 的 AI 模型，因此无需 GPU、特定内存大小或 Python 环境。3. 需要用户手动授予访问日历、联系人、位置、短信等数据的系统权限。4. 访问 iMessage 数据时，需通过文件选择器手动授权访问 ~\u002FLibrary\u002FMessages\u002Fchat.db 数据库。5. 支持通过 Bonjour 在本地网络进行应用与 CLI 间的通信。",[97,98,99,100,101,102],"Claude Desktop (可选客户端)","Claude Code (可选客户端)","Cursor (可选客户端)","Amp (可选客户端)","Node.js (仅用于调试工具 MCP Inspector)","Homebrew (可选安装方式)",[13,52],[105,106],"macos","mcp","2026-03-27T02:49:30.150509","2026-04-13T13:37:44.222896",[],[111,116,121,126,131,136,141,146,151,156],{"id":112,"version":113,"summary_zh":114,"released_at":115},238758,"1.4.0","## 变更内容\n* 将 Ontology 包依赖升级至 0.7.0，由 @mattt 在 https:\u002F\u002Fgithub.com\u002Fmattt\u002FiMCP\u002Fpull\u002F93 中完成\n* 添加使用 Homebrew 安装的说明，由 @mattt 在 https:\u002F\u002Fgithub.com\u002Fmattt\u002FiMCP\u002Fpull\u002F94 中完成\n* 当受信任的客户端连接时发送通知，由 @mattt 在 https:\u002F\u002Fgithub.com\u002Fmattt\u002FiMCP\u002Fpull\u002F97 中完成\n* 防止系统中同时运行多个 iMCP 实例，由 @mattt 在 https:\u002F\u002Fgithub.com\u002Fmattt\u002FiMCP\u002Fpull\u002F98 中完成\n* 添加捕获服务，由 @mattt 在 https:\u002F\u002Fgithub.com\u002Fmattt\u002FiMCP\u002Fpull\u002F99 中完成\n* 修复 `capture_record_audio` 工具中 `duration` 参数的处理问题，由 @mattt 在 https:\u002F\u002Fgithub.com\u002Fmattt\u002FiMCP\u002Fpull\u002F100 中完成\n* 将项目从 Loopwork 迁移过来，由 @mattt 在 https:\u002F\u002Fgithub.com\u002Fmattt\u002FiMCP\u002Fpull\u002F101 中完成\n* 根据 `DEBUG` 环境变量有条件地设置日志级别，由 @mattt 在 https:\u002F\u002Fgithub.com\u002Fmattt\u002FiMCP\u002Fpull\u002F107 中完成\n* 将 Ontology 包依赖升级至 0.8.0，由 @mattt 在 https:\u002F\u002Fgithub.com\u002Fmattt\u002FiMCP\u002Fpull\u002F110 中完成\n* 添加 Claude Code 和 Amp 的安装说明，由 @hamelsmu 在 https:\u002F\u002Fgithub.com\u002Fmattt\u002FiMCP\u002Fpull\u002F117 中完成\n* 添加使用 Cursor 进行配置的说明，由 @mattt 在 https:\u002F\u002Fgithub.com\u002Fmattt\u002FiMCP\u002Fpull\u002F119 中完成\n* 修复因多次调用已检查的延续而导致的崩溃问题，由 @mattt 在 https:\u002F\u002Fgithub.com\u002Fmattt\u002FiMCP\u002Fpull\u002F112 中完成\n* 使时间戳解析更加宽松，由 @mattt 在 https:\u002F\u002Fgithub.com\u002Fmattt\u002FiMCP\u002Fpull\u002F120 中完成\n* 修复实例变量的无效重新声明问题，由 @mattt 在 https:\u002F\u002Fgithub.com\u002Fmattt\u002FiMCP\u002Fpull\u002F121 中完成\n* 配置 iMCP 项目在无配置描述文件的情况下以调试模式构建，由 @mattt 在 https:\u002F\u002Fgithub.com\u002Fmattt\u002FiMCP\u002Fpull\u002F122 中完成\n* 添加 CI 工作流，由 @mattt 在 https:\u002F\u002Fgithub.com\u002Fmattt\u002FiMCP\u002Fpull\u002F123 中完成\n* 添加并强制执行代码格式化规则，由 @mattt 在 https:\u002F\u002Fgithub.com\u002Fmattt\u002FiMCP\u002Fpull\u002F124 中完成\n* 更新项目设置，将警告视为错误，由 @mattt 在 https:\u002F\u002Fgithub.com\u002Fmattt\u002FiMCP\u002Fpull\u002F125 中完成\n* 更新 `events_fetch` 工具的默认开始日期值，由 @mattt 在 https:\u002F\u002Fgithub.com\u002Fmattt\u002FiMCP\u002Fpull\u002F126 中完成\n* 升级到推荐的 Xcode 26 项目设置，由 @mattt 在 https:\u002F\u002Fgithub.com\u002Fmattt\u002FiMCP\u002Fpull\u002F127 中完成\n* 修复联系人服务中 QoS 不匹配导致的挂起警告，由 @mattt 在 https:\u002F\u002Fgithub.com\u002Fmattt\u002FiMCP\u002Fpull\u002F128 中完成\n* 添加用于发布自动化的脚本，由 @mattt 在 https:\u002F\u002Fgithub.com\u002Fmattt\u002FiMCP\u002Fpull\u002F131 中完成\n\n## 新贡献者\n* @hamelsmu 在 https:\u002F\u002Fgithub.com\u002Fmattt\u002FiMCP\u002Fpull\u002F117 中完成了首次贡献\n\n**完整变更日志**: https:\u002F\u002Fgithub.com\u002Fmattt\u002FiMCP\u002Fcompare\u002F1.3.0...1.4.0","2026-01-30T12:48:11",{"id":117,"version":118,"summary_zh":119,"released_at":120},238759,"1.3.0","## 变更内容\n* 由 @mattt 在 https:\u002F\u002Fgithub.com\u002Floopwork-ai\u002FiMCP\u002Fpull\u002F76 中实现，使日历事件提醒功能更加强大。\n* 由 @nighthawk 在 https:\u002F\u002Fgithub.com\u002Floopwork-ai\u002FiMCP\u002Fpull\u002F77 中将 SKIP_INSTALL 设置为 YES，以启用公证功能。\n* 由 @mattt 在 https:\u002F\u002Fgithub.com\u002Floopwork-ai\u002FiMCP\u002Fpull\u002F85 中允许用户自动连接到受信任的客户端。\n* 由 @mattt 在 https:\u002F\u002Fgithub.com\u002Floopwork-ai\u002FiMCP\u002Fpull\u002F86 中更新适用于 macOS 26 Tahoe（Beta 1）的资源文件。\n* 由 @mattt 在 https:\u002F\u002Fgithub.com\u002Floopwork-ai\u002FiMCP\u002Fpull\u002F87 中修复 macOS 26 Tahoe 上菜单的显示问题。\n* 由 @mattt 在 https:\u002F\u002Fgithub.com\u002Floopwork-ai\u002FiMCP\u002Fpull\u002F88 中将 JSONSchema 包更新至 1.3.0 版本。\n* 由 @mattt 在 https:\u002F\u002Fgithub.com\u002Floopwork-ai\u002FiMCP\u002Fpull\u002F89 中为天气工具的输入模式添加必填参数。\n* 由 @mattt 在 https:\u002F\u002Fgithub.com\u002Floopwork-ai\u002FiMCP\u002Fpull\u002F90 中调整菜单项之间的间距。\n* 由 @mattt 在 https:\u002F\u002Fgithub.com\u002Floopwork-ai\u002FiMCP\u002Fpull\u002F91 中更新 README，添加使用 Companion 调试 iMCP 的说明。\n\n## 新贡献者\n* @nighthawk 在 https:\u002F\u002Fgithub.com\u002Floopwork-ai\u002FiMCP\u002Fpull\u002F77 中完成了首次贡献。\n\n**完整变更日志**: https:\u002F\u002Fgithub.com\u002Floopwork-ai\u002FiMCP\u002Fcompare\u002F1.2.0...1.3.0","2025-06-23T18:18:50",{"id":122,"version":123,"summary_zh":124,"released_at":125},238760,"1.2.0","## 变更内容\n* 由 @mattt 在 https:\u002F\u002Fgithub.com\u002Floopwork-ai\u002FiMCP\u002Fpull\u002F67 中实现，使 ISO 8601 日期解析更加灵活。\n* 由 @mattt 在 https:\u002F\u002Fgithub.com\u002Floopwork-ai\u002FiMCP\u002Fpull\u002F68 中修复 `generateMapImage` 工具中兴趣点类别可用值列表的问题。\n* 由 @mattt 在 https:\u002F\u002Fgithub.com\u002Floopwork-ai\u002FiMCP\u002Fpull\u002F69 中重命名工具，采用 `{namespace}.{function}` 命名规范。\n* 由 @mattt 在 https:\u002F\u002Fgithub.com\u002Floopwork-ai\u002FiMCP\u002Fpull\u002F70 中简化输入模式。\n* 由 @mattt 在 https:\u002F\u002Fgithub.com\u002Floopwork-ai\u002FiMCP\u002Fpull\u002F71 中将工具名称中的句点替换为下划线。\n* 由 @mattt 在 https:\u002F\u002Fgithub.com\u002Floopwork-ai\u002FiMCP\u002Fpull\u002F72 中新增用于更新联系人的工具。\n* 由 @mattt 在 https:\u002F\u002Fgithub.com\u002Floopwork-ai\u002FiMCP\u002Fpull\u002F73 中新增用于创建新联系人的工具。\n* 由 @mattt 在 https:\u002F\u002Fgithub.com\u002Floopwork-ai\u002FiMCP\u002Fpull\u002F74 中新增列出日历的工具。\n* 由 @mattt 在 https:\u002F\u002Fgithub.com\u002Floopwork-ai\u002FiMCP\u002Fpull\u002F75 中新增获取提醒列表的工具。\n\n\n**完整变更日志**: https:\u002F\u002Fgithub.com\u002Floopwork-ai\u002FiMCP\u002Fcompare\u002F1.1.3...1.2.0","2025-05-15T17:30:10",{"id":127,"version":128,"summary_zh":129,"released_at":130},238761,"1.1.3","## 变更内容\n* 由 @mattt 在 https:\u002F\u002Fgithub.com\u002Floopwork-ai\u002FiMCP\u002Fpull\u002F64 中向 README 添加调试章节\n* 由 @mattt 在 https:\u002F\u002Fgithub.com\u002Floopwork-ai\u002FiMCP\u002Fpull\u002F65 中使用 `JSONSchema` 包定义工具 Schema\n* 由 @mattt 在 https:\u002F\u002Fgithub.com\u002Floopwork-ai\u002FiMCP\u002Fpull\u002F66 中添加工具注解\n\n\n**完整变更日志**: https:\u002F\u002Fgithub.com\u002Floopwork-ai\u002FiMCP\u002Fcompare\u002F1.1.2...1.1.3","2025-05-09T11:43:46",{"id":132,"version":133,"summary_zh":134,"released_at":135},238762,"1.1.2","## 变更内容\n* 在添加 iMCP 时，保留 Claude Desktop 的配置值，由 @mattt 在 https:\u002F\u002Fgithub.com\u002Floopwork-ai\u002FiMCP\u002Fpull\u002F63 中实现。\n\n\n**完整变更日志**: https:\u002F\u002Fgithub.com\u002Floopwork-ai\u002FiMCP\u002Fcompare\u002F1.1.1...1.1.2","2025-05-08T20:51:45",{"id":137,"version":138,"summary_zh":139,"released_at":140},238763,"1.1.1","本次发布显著提升了与 MCP 客户端及工具调用之间的连接可靠性。\n\n如果您过去在使用 iMCP 时遇到过问题，请务必试一试这个新版本 🙇\n\n## 变更内容\n* @mattt 在 https:\u002F\u002Fgithub.com\u002Floopwork-ai\u002FiMCP\u002Fpull\u002F62 中对客户端\u002F服务器网络通信进行了全面重构。\n\n\n**完整变更日志**: https:\u002F\u002Fgithub.com\u002Floopwork-ai\u002FiMCP\u002Fcompare\u002F1.1.0...1.1.1","2025-05-07T18:19:00",{"id":142,"version":143,"summary_zh":144,"released_at":145},238764,"1.1.0","## 变更内容\n* 由 @mattt 在 https:\u002F\u002Fgithub.com\u002Floopwork-ai\u002FiMCP\u002Fpull\u002F53 中添加了地图服务\n\n---\n\n本次发布新增了一个地图服务，提供了查找兴趣点、获取路线、估算行程时间以及生成地图图片等功能。\n\n\u003Cimg width=\"344\" alt=\"截图 2025-04-11 at 14 19 28\" src=\"https:\u002F\u002Fgithub.com\u002Fuser-attachments\u002Fassets\u002Fb94239eb-0e1d-40ce-aa29-a5c74bc31f9d\" \u002F>\n\n\u003Cimg width=\"753\" alt=\"截图 2025-04-11 at 14 13 58\" src=\"https:\u002F\u002Fgithub.com\u002Fuser-attachments\u002Fassets\u002F4971d60f-b509-42a0-86a7-8acb1a46900c\" \u002F>\n\n\n---\n\n## `searchPlaces`\n通过文本查询搜索地点、地址和兴趣点。\n\n**参数：**\n- `query`（必填）：用于搜索地点名称、地址等的文本。\n- `region`（可选）：搜索区域，包含：\n  - `latitude`：地理纬度\n  - `longitude`：地理经度\n  - `radius`：以米为单位的搜索半径\n\n**返回值：** `Place` 对象数组\n\n## `getDirections`\n根据可配置的交通方式，获取两点之间的路线信息。\n\n**参数：**\n- 起点（必填一项）：\n  - `originAddress`：文本地址，或\n  - `originCoordinates`：`{latitude, longitude}`\n- 终点（必填一项）：\n  - `destinationAddress`：文本地址，或\n  - `destinationCoordinates`：`{latitude, longitude}`\n- `transportType`（可选）：\n  - 选项：`\"automobile\"`、`\"walking\"`、`\"transit\"`、`\"any\"`\n  - 默认值：`\"automobile\"`\n\n**返回值：** `Trip` 对象\n\n## `findNearbyPointsOfInterest`\n在指定坐标附近查找兴趣点。\n\n**参数：**\n- `category`（必填）：兴趣点类别\n- `latitude`（必填）：中心点纬度\n- `longitude`（必填）：中心点经度\n- `radius`（可选）：搜索半径，单位为米（默认值：1000米）\n- `limit`（可选）：返回结果的最大数量（默认值：10）\n\n**返回值：** `Place` 对象数组\n\n## `getETABetweenLocations`\n计算两点之间的预计行程时间。\n\n**参数：**\n- `originLatitude`（必填）\n- `originLongitude`（必填）\n- `destinationLatitude`（必填）\n- `destinationLongitude`（必填）\n- `transportType`（可选）：\n  - 选项：`\"automobile\"`、`\"walking\"`、`\"transit\"`\n  - 默认值：`\"automobile\"`\n\n**返回值：** `Trip` 对象\n\n## `generateMapImage`\n根据指定的坐标和参数生成静态地图图片。\n\n**参数：**\n- `latitude`（必填）\n- `longitude`（必填）\n- `latitudeDelta`（必填）：可见的纬度范围（度数）\n- `longitudeDelta`（必填）：可见的经度范围（度数）\n- `width`（可选）：图片宽度，单位为像素（默认值：1024）\n- `height`（可选）：图片高度，单位为像素（默认值：1024）\n- `mapType`（可选）：\n  - 选项：`\"standard\"`、`\"satellite\"`、`\"hybrid\"`、`\"mutedStandard\"`\n  - 默认值：`\"standard\"`\n- `showPointsOfInterest`（可选）：\n  - 布尔值或兴趣点类别数组\n  - 默认值：`false`\n- `showBuildings`（可选）：\n  - 是否显示建筑物\n  - 默认值：`false`\n\n**返回值：** PN","2025-04-15T12:36:22",{"id":147,"version":148,"summary_zh":149,"released_at":150},238765,"1.0.2","## 变更内容\n* 由 @mattt 在 https:\u002F\u002Fgithub.com\u002Floopwork-ai\u002FiMCP\u002Fpull\u002F45 中实现：强制日期始终使用本地时区进行编码。\n* 由 @mluisbrown 在 https:\u002F\u002Fgithub.com\u002Floopwork-ai\u002FiMCP\u002Fpull\u002F48 中实现：支持 Claude Desktop 配置中的 `env` 字段。\n* 由 @mattt 在 https:\u002F\u002Fgithub.com\u002Floopwork-ai\u002FiMCP\u002Fpull\u002F49 中实现：将 Bonjour 发现功能限制为仅限本机。\n* 由 @mattt 在 https:\u002F\u002Fgithub.com\u002Floopwork-ai\u002FiMCP\u002Fpull\u002F51 中实现：采用 Swift 服务生命周期。\n\n## 新贡献者\n* @mluisbrown 在 https:\u002F\u002Fgithub.com\u002Floopwork-ai\u002FiMCP\u002Fpull\u002F48 中完成了首次贡献。\n\n**完整变更日志**：https:\u002F\u002Fgithub.com\u002Floopwork-ai\u002FiMCP\u002Fcompare\u002F1.0.1...1.0.2","2025-04-03T18:01:50",{"id":152,"version":153,"summary_zh":154,"released_at":155},238766,"1.0.1","## 变更内容\n* 由 @carlpeaslee 在 https:\u002F\u002Fgithub.com\u002Floopwork-ai\u002FiMCP\u002Fpull\u002F17 中更新 README，添加关于数据收集的信息。\n* 由 @mattt 在 https:\u002F\u002Fgithub.com\u002Floopwork-ai\u002FiMCP\u002Fpull\u002F18 中更新 README 中的 Claude Desktop 配置说明。\n* 由 @mattt 在 https:\u002F\u002Fgithub.com\u002Floopwork-ai\u002FiMCP\u002Fpull\u002F19 中更新 README 中的下载链接。\n* 由 @mattt 在 https:\u002F\u002Fgithub.com\u002Floopwork-ai\u002FiMCP\u002Fpull\u002F21 中更新 README 中的 macOS 系统要求。\n* 由 @mattt 在 https:\u002F\u002Fgithub.com\u002Floopwork-ai\u002FiMCP\u002Fpull\u002F22 中向 README 添加“技术细节”章节。\n* 由 @mattt 在 https:\u002F\u002Fgithub.com\u002Floopwork-ai\u002FiMCP\u002Fpull\u002F26 中更新 iMCP 标志在深色模式下的颜色。\n* 由 @mattt 在 https:\u002F\u002Fgithub.com\u002Floopwork-ai\u002FiMCP\u002Fpull\u002F29 中检查定位服务授权状态，以避免弹出权限请求。\n* 由 @mattt 在 https:\u002F\u002Fgithub.com\u002Floopwork-ai\u002FiMCP\u002Fpull\u002F30 中将 Ontology 包依赖版本升级至 0.3.1。\n* 由 @mattt 在 https:\u002F\u002Fgithub.com\u002Floopwork-ai\u002FiMCP\u002Fpull\u002F31 中更新天气服务，使用 Ontology 包对天气状况进行编码。\n* 由 @mattt 在 https:\u002F\u002Fgithub.com\u002Floopwork-ai\u002FiMCP\u002Fpull\u002F32 中配置 JSON 编码格式选项。\n* 由 @mattt 在 https:\u002F\u002Fgithub.com\u002Floopwork-ai\u002FiMCP\u002Fpull\u002F33 中为天气服务添加预测工具。\n* 由 @mattt 在 https:\u002F\u002Fgithub.com\u002Floopwork-ai\u002FiMCP\u002Fpull\u002F34 中将 mcp-swift-sdk 升级至 0.4.2。\n* 由 @mattt 在 https:\u002F\u002Fgithub.com\u002Floopwork-ai\u002FiMCP\u002Fpull\u002F36 中为工具输出配置 JSON 编码格式选项。\n* 由 @mattt 在 https:\u002F\u002Fgithub.com\u002Floopwork-ai\u002FiMCP\u002Fpull\u002F35 中在客户端初始化时允许传入连接。\n* 由 @mattt 在 https:\u002F\u002Fgithub.com\u002Floopwork-ai\u002FiMCP\u002Fpull\u002F37 中添加 `.gitignore` 文件，并删除缓存的 `xcuserdata` 目录。\n* 由 @mattt 在 https:\u002F\u002Fgithub.com\u002Floopwork-ai\u002FiMCP\u002Fpull\u002F38 中，如果尚未存在，则创建 Claude Desktop 配置文件。\n* 由 @mattt 在 https:\u002F\u002Fgithub.com\u002Floopwork-ai\u002FiMCP\u002Fpull\u002F39 中将最低部署目标设置为 macOS 15.3。\n* 由 @mattt 在 https:\u002F\u002Fgithub.com\u002Floopwork-ai\u002FiMCP\u002Fpull\u002F40 中更新 README，添加新的说明和截图。\n* 由 @mattt 在 https:\u002F\u002Fgithub.com\u002Floopwork-ai\u002FiMCP\u002Fpull\u002F41 中更改 iMCP 菜单图标在禁用状态下的色调。\n* 由 @mattt 在 https:\u002F\u002Fgithub.com\u002Floopwork-ai\u002FiMCP\u002Fpull\u002F42 中撤销“将最低部署目标设置为 macOS 15.3”的更改。\n\n## 新贡献者\n@NatashaTheRobot \n\n忽略建议\n**完整变更日志**: https:\u002F\u002Fgithub.com\u002Floopwork-ai\u002FiMCP\u002Fcompare\u002F1.0.0...1.0.1","2025-03-18T18:31:21",{"id":157,"version":158,"summary_zh":159,"released_at":160},238767,"1.0.0","初始发布","2025-03-05T22:44:09"]