SuperAPI AI 工具集

atlasfetch-mcp

AtlasFetch MCP 服务器把 AtlasFetch 的反向地理编码、街道定位、地理围栏和路线规划能力封装为 AI 助手可直接调用的工具。你可以询问某组坐标属于哪个国家、地区或市镇,得到带 ISO 3166 编码的结果,而不是依赖模型记忆。它还支持把坐标与你自有的 GeoJSON 边界集进行匹配,用于配送区域、服务范围、辖区检查等场景。仓库注明目前反向地理编码与地址地理编码主要面向南非,街道图层则为全球可选。无需注册即可用共享演示密钥试用,但全站共享配额每月 1000 次查询;注册后可获得自己的限额。该服务器可通过 MCP 配置接入 Claude Desktop、Cursor、VS Code 等客户端,需要 Node 20 或更新版本。

访问官网

工具介绍

AtlasFetch MCP 是一个面向 AtlasFetch 服务的 MCP 服务器,把反向地理编码、街道查询、地理围栏与路线规划做成 AI 助手可以直接调用的工具。它的定位是让模型通过真实的点落在多边形内的查询来回答位置问题,而不是凭记忆作答。

用途

  • 反向地理编码到行政区:把坐标解析为国家、地区、市镇,返回 ISO 3166 编码。
  • 街道定位:可选开启街道图层后,回答还会包含最近的街道,以及在已测绘情况下的门牌号;该图层为全球范围、需主动开启,不属于默认的国家/地区/市镇返回内容。
  • 地理围栏:把自己的 GeoJSON 边界集与坐标或路线进行匹配,用于配送区域、服务区域、辖区与区域检查、给位置数据打区域码等。
  • 地址地理编码:把地址转成坐标,支持一行输入或已拆分好的地址各部分。
  • 路线:get_route 返回 2 到 25 个坐标之间的距离、时长和逐向步骤,支持 car、bike、foot、truck 四种方式。

主要能力与需要留意的点

  • 反向地理编码结果始终提供三个答案,分别对应 5 米、20 米和不限距离的搜索半径,因为“最近的街道”取决于你愿意搜索多远。
  • 两种 null 含义不同:“street”: null 表示该国没有街道数据;而条目中各字段为 null 表示该半径内没有任何结果。streetNumber 和 postcode 是字符串(如 44A、12-14、0181),门牌号在测绘完善的地区以外较罕见。
  • 地址精确度需先读清楚再使用:address 表示房屋;interpolated 表示在两侧门牌号之间估算;intersection 表示街角;site 表示购物中心、办公园区或医院等命名地点(需把店铺或单元号转告司机);street 表示街道正确但非房屋;locality 仅表示郊区。结果行会给出 API 自身的配送建议:仅在房屋、街角或不含歧义的站点级结果上派单;街道级结果需向收件人索取定位;歧义时需询问客户。在南非,多数答案是街道级,因为 OpenStreetMap 的街道名中约有 13% 带有门牌号。
  • 路线计费:一条路线消耗 10 次查询额度,而不是 1 次,返回的所有内容都包含在内。
  • 路线时长是自由流通时长,即路网按自身限速运行,不含实时或历史交通数据,因此不是 ETA。如需 ETA,应使用具备交通感知的服务。
  • 路线几何默认关闭(geometry: "none")。编码折线有数千字符,助手无法阅读;只有需要绘制时才请求 polyline6 或 geojson。
  • 自有区域在路线中的用法:avoidSets 指定要绕行的边界集;exposureSets 指定要测量的集合,不改变路线,只报告路线在各区域内的米数。若某区域包含该路线中的一个位置点,则该路线无法避开该区域,系统会跳过并在答案中说明。
  • 方案限制:免费方案 2 个位置,Pro 最多 25 个位置;truck 仅限 Pro;备选路线必须恰好为 2 个位置。超过上限返回 403 且不计费;附近无道路的位置返回 422 且会计费,因为路线已被尝试。
  • 地址地理编码:geocode_address 一次调用处理一个地址,每次 1 次查询额度,无论是否找到。这是有意设计:配送清单逐行处理时可以看到每次消耗。数千行的程序应直接调用 API 的 POST /geocode/batch。目前仅支持南非。

使用方式

需要 Node 20 或更新版本。将服务器加入你的 MCP 配置(如 claude_desktop_config.json、.cursor/mcp.json 或客户端对应文件)。

无需注册即可试用:不带密钥时会回退到共享的公共演示密钥,全站所有匿名用户合计每月上限 1000 次查询。演示密钥由互联网上每个匿名用户共享,只有一份池化配额和速率限制,适合初次体验,不适合任何正式用途。

创建自己的密钥:在 atlasfetch.xyz/dashboard 创建,并设置 ATLASFETCH_API_KEY。免费 Personal 方案无需信用卡。你可以随时从仪表盘复制密钥,因此请在其中把它限制到你自己的域名。2026 年 10 月 12 日之前创建的密钥已被吊销;若你的密钥停止工作,请复制一个有效的。

有两个容易让人意外的地方:

  • municipal 是可用的最细单元,但不是一致的事物类型。洛杉矶返回城市;堪萨斯农村返回县;某些地方返回区。当某国的细层级不完整时,会由更粗的完整层级作答,因为对多数用途而言县总比 null 好。不要假定该值一定命名的是城市。
  • 无法从这里让新的边界集变得可查询。集合创建时是关闭的,且未授予任何密钥,而授权按 API 密钥 id 寻址,只有登录的浏览器会话才能列出。因此本服务器可以创建集合并填充,但最后一步要在仪表盘完成。create_boundary_set 会在响应中说明这一点,而不是留下一个静默匹配不到任何东西的集合。

计费口径:一次查询或一个地理编码后的地址算一次查询;标准方案下一条路线算 10 次。一次查询只计一次,无论它触及多少图层、集合或网格码。计量发生在匹配之前,因此匹配不到任何结果的查询仍会计数。被判定为无效或受速率限制而拒绝的请求不计费。

适用场景

  • 反向地理编码到行政区。
  • 查明某点所在街道。
  • 针对自有配送区域或服务区域做地理围栏。
  • 辖区与区域检查。
  • 给位置数据打上区域编码标签。
  • 在南非对配送地址进行地理编码。
  • 规划避开指定区域的路线。

限制

  • 截至目前,反向地理编码与地址地理编码均不支持南非以外的地区。
  • 不支持按名称搜索地点、交通感知 ETA、距离矩阵、等时圈、地图瓦片,也不支持下载边界几何。
  • 路线时长不含交通数据,不能当作 ETA。
  • 新的边界集无法从本服务器直接变为可查询,最后一步需在仪表盘完成。
  • 演示密钥为全站共享池化配额,不适合正式使用。

其他信息

本服务器采用 MIT 许可。参考边界派生自 OpenStreetMap,遵循 ODbL,署名与相同方式共享义务会传递给你。你查询的坐标不会被存储。文档、OpenAPI 规范、llms.txt 以及无需注册的 Playground 可在其站点获取。