mcpField
A
Apple Maps

Apple Maps

本地服务
cupertino.mgcrea.io地图与出行5今天更新

关于 Apple Maps

Apple Maps 的 MCP 服务,面向希望读取本机已保存地点的 macOS 用户。它提供收藏、指南和最近查看地点的真实坐标,但不搜索地图、规划路线或计算行程时间。

主要功能

  1. 01列出收藏地点和指南
  2. 02查看指南内及未归类地点
  3. 03检索最近查看地点
  4. 04按名称、标签或地址搜索
  5. 05可选添加或移除收藏

适用场景

  1. 01查找已收藏地点的地址和坐标
  2. 02查看某个指南收录的地点
  3. 03检查最近查看过的地点
  4. 04启用写入以管理收藏

MCP 相关

向 MCP 客户端公开 Apple Maps 已保存地点的读取工具,以及可选的收藏管理工具。写入默认关闭;提示词和资源可配置公开。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

mcp.json · 通用配置
{
"mcpServers": {
"mgcrea-mcp-apple-maps": {
"command": "npx",
"args": [
"-y",
"@mgcrea/mcp-apple-maps"
],
"env": {
"APPLE_MAPS_ALLOW_WRITES": "<APPLE_MAPS_ALLOW_WRITES>"
}
}
}
}
启动命令npx -y @mgcrea/mcp-apple-maps
需要配置的环境变量
APPLE_MAPS_ALLOW_WRITESRegister the mutating tools. Off by default, and the gate decides whether the write tools exist at all rather than merely refusing — an agent with writes off cannot see them.

本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。

安装包
npm@mgcrea/mcp-apple-maps1.31.0

工具

还没有获取到工具列表

本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。

详细介绍

@mgcrea/mcp-apple-maps

适用于 macOS 地图应用的 MCP 服务:你保存的地点。

{
  "mcpServers": {
    "apple-maps": { "command": "npx", "args": ["-y", "@mgcrea/mcp-apple-maps"] }
  }
}

可读取的内容

从地图的 Core Data 存储中读取收藏、合集(指南)和最近浏览记录,包含名称、地址和真实坐标。

工具内容
apple_maps_list_favorites已保存为收藏的地点
apple_maps_list_collections指南
apple_maps_list_collection_places某个指南中归档的内容
apple_maps_list_unfiled_places已保存但未归档到任何指南的地点
apple_maps_list_recents最近浏览过的地点
apple_maps_search_places按名称、标签或地址一次搜索以上三类内容
apple_maps_get_place按引用获取一个地点
apple_maps_diagnostics检查已打开的内容、解析出的列以及无法执行的操作

可写入的内容

仅当设置了 APPLE_MAPS_ALLOW_WRITES=1 时可用。关闭时,这两个工具不会注册,而不是拒绝请求,因此未选择启用写入的客户端根本不会知道它们的存在。

工具内容
apple_maps_add_favorite将地点保存为收藏,通过 maps:// 创建记录
apple_maps_remove_favorite删除一条收藏记录

还有三个工具通过辅助功能操作地点卡片上的按钮,而非写入 SQL;仅当 Cupertino.app 托管此 MCP 服务时才会注册:授权属于应用,因此通过 npm 运行的包无法使用这些工具,也不会知道它们的存在。

工具内容
apple_maps_save_place将地点添加到地点库(与置顶不同)
apple_maps_remove_saved_place从地点库中移除地点
apple_maps_add_place_to_guide将地点归档到现有指南中;地图无法确认是否成功

每项操作都会打开地图、将其窗口置于前台,并在最近浏览记录中留下该地点。

不会执行的操作

它读取的是这台 Mac 上保存的内容。它不会搜索 Apple 的全球地图、对地址进行地理编码、提供路线指引或计算出行时间。这些操作需要调用 Apple 的服务,而非读取磁盘上的数据。

仅当设置了 APPLE_MAPS_ALLOW_WRITES 时,它才会写入内容:通过存储写入收藏,通过地图自身的界面操作地点库和指南成员关系。除此之外的所有操作均为只读。存储由 NSPersistentCloudKitContainer 镜像到 iCloud,因此写入意味着在正在运行的应用下编辑同步对象图中的一个副本;格式错误的记录会传播到该账户下的所有设备。因此绝不会伪造地点记录:添加收藏时会打开 maps://,让地图自行创建记录,然后才复制该记录。无论你是否保留收藏,该地点都会留在最近浏览记录中,而通过网络解析地点可能需要几十秒。

必须启用完全磁盘访问权限

这不是可选的优化。地图没有提供脚本字典,因此没有可替代的 Apple Events 通道——未授予权限时,此 MCP 服务会返回错误,绝不会返回空列表。请将权限授予运行此 MCP 服务的应用,而不是地图。

如果列表为空,说明你没有保存此类内容。运行 apple_maps_diagnostics 即可区分这两种情况。

配置

变量默认值说明
APPLE_MAPS_STOREdiscovered显式指定存储路径,用于测试和取证副本
APPLE_MAPS_INDEX_MODEautoauto / ro / immutable / off
APPLE_MAPS_MAX_RESULTS50默认结果上限
APPLE_MAPS_SEED_TIMEOUT_MS30000add_favorite 等待 Maps 解析地点的时长
APPLE_MAPS_EXPOSE_PROMPTSon注册提示词和 cupertino://maps/* 资源
APPLE_MAPS_DEBUGoff在 stderr 上输出详细日志

APPLE_MAPS_ALLOW_WRITES(off)会注册写入内容中列出的工具。

请参阅 docs/maps.md,了解阶段 0 的测量结果,其中包括该存储有三次被宣称不存在的情况。

许可协议

MIT。

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。