mcpField
G
google-maps

google-maps

github.com/aws-samples其他19796 次安装3 周前更新
代码仓库

关于 google-maps

面向位置查询的 Google Maps 技能,可搜索地点、获取详情、转换地址与坐标、规划路线并显示交互式地图。适用于需要地图呈现的位置类请求。

主要功能

  1. 01文本与附近地点搜索
  2. 02地点详情、评价和营业时间
  3. 03地址与坐标地理编码
  4. 04多种出行方式的路线规划
  5. 05显示地点和路线的交互式地图

适用场景

  1. 01查找附近的餐厅或酒店
  2. 02查看营业时间和评价
  3. 03规划避开收费路段的路线
  4. 04在地图上展示搜索地点

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/aws-samples/sample-strands-agent-with-agentcore --skill google-maps

安装后在 Claude Code 中输入/google-maps确认已加载。

详细介绍

Google Maps

可用工具

  • search_places(query, location?, radius?, type?, open_now?, language?):使用文本查询搜索地点。

    • query(字符串,必填):搜索文本(例如,“首尔的餐厅”)
    • location(字符串,可选):中心位置,格式为 "lat,lng"(例如,"37.5665,126.9780")
    • radius(整数,可选):搜索半径,单位为米(最大 50,000)
    • type(字符串,可选):地点类型筛选条件(例如,"restaurant"、"tourist_attraction"、"hotel")
    • open_now(布尔值,可选,默认值:false):仅返回当前营业的地点
    • language(字符串,可选,默认值:"en"):语言代码
  • search_nearby_places(location, radius, keyword?, type?, rank_by?, open_now?, language?):搜索指定坐标附近的地点。

    • location(字符串,必填):中心位置,格式为 "lat,lng"(例如,"37.5665,126.9780")
    • radius(整数,必填):搜索半径,单位为米(最大 50,000)
    • keyword(字符串,可选):搜索关键词
    • type(字符串,可选):地点类型筛选条件
    • rank_by(字符串,可选,默认值:"prominence"):"prominence" 或 "distance"
    • open_now(布尔值,可选,默认值:false):仅返回营业中的地点
    • language(字符串,可选,默认值:"en"):语言代码
  • get_place_details(place_id, language?):获取地点详细信息,包括评论和营业时间。

    • place_id(字符串,必填):搜索结果中的地点 ID
    • language(字符串,可选,默认值:"en"):语言代码
  • get_directions(origin, destination, mode?, alternatives?, avoid?, language?):获取两个地点之间的路线。

    • origin(字符串,必填):起点(地址或 "lat,lng")
    • destination(字符串,必填):目的地(地址或 "lat,lng")
    • mode(字符串,可选,默认值:"driving"):"driving"、"walking"、"bicycling"、"transit"
    • alternatives(布尔值,可选,默认值:false):返回备选路线
    • avoid(字符串,可选):"tolls"、"highways" 或 "ferries"
    • language(字符串,可选,默认值:"en"):语言代码
  • geocode_address(address, language?, region?):将文本地址转换为地理坐标。

    • address(字符串,必填):要进行地理编码的地址
    • language(字符串,可选,默认值:"en"):语言代码
    • region(字符串,可选):用于区域偏向的国家代码
  • reverse_geocode(latlng, language?):将坐标转换为易读的地址。

    • latlng(字符串,必填):坐标,格式为 "lat,lng"(例如,"37.5665,126.9780")
    • language(字符串,可选,默认值:"en"):语言代码
  • show_on_map(map_type, markers?, directions?, center?, zoom?):在交互式地图上显示地点或路线。

    • map_type(字符串,必填):"markers"(地点标记)、"directions"(路线)或 "area"(区域)
    • markers(数组,"markers" 必填):标记对象列表,每个对象包含 lat、lng
    • directions(对象,"directions" 必填):包含起点和目的地的路线数据
    • center(对象,可选):地图中心 {lat, lng}
    • zoom(整数,可选):缩放级别 1-20

使用指南

  • 收集地点数据后,务必调用 show_on_map — 可视化地图是主要价值所在。
  • 保留搜索结果中的 place_id,以便与 get_place_details 搭配使用。
  • 根据上下文推断交通方式(长距离用驾车,短距离用步行)。
  • 每张地图显示 1-5 个最相关的地点。

响应模式

遵循 文本 -> 地图 -> 文本 的顺序。不要与其他工具调用并行调用 show_on_map。

  1. 文本:介绍要展示的内容
  2. 地图:调用 show_on_map 显示结果
  3. 文本:说明结果

多个类别:依次使用单独的地图 — 绝不要并行调用。

输出规则

地图会根据工具结果以可视化形式呈现——切勿在文本回复中复述或转述原始 map_data JSON(类型、中心点、缩放级别、标记、纬度/经度)。只能用自然语言描述地点(名称、评分、简短备注)。用户已经能看到地图;不要重复其中的内容。

界面指南(来自 tools-config)

使用时机:

  • 收集到地点数据后,始终调用 show_on_map——可视化地图是主要价值所在
  • 适用于:搜索结果、路线、比较或任何基于地点的查询

回复模式(不要并行调用 show_on_map):

  1. 文本:介绍将要展示的内容(“以下是评分最高的餐厅:”)
  2. show_on_map:显示地图
  3. 文本:说明结果(“这些餐厅的评分均在 4.5 星以上。”)

示例:

  • “我来为你展示江南区的餐厅:” → show_on_map(restaurants) → “以上 5 家餐厅的评价都很出色。”
  • 多个类别:文本 → 地图 1 → 文本 → 地图 2(按顺序调用,不要并行调用)

地图整理方式:

  • 不同类别分别使用地图(餐厅与酒店分开)
  • 每张地图展示 1-5 个最相关的地点

工具选择:

  • search_places:文本查询;search_nearby_places:坐标查询
  • 保留 place_id 以便获取详情;根据上下文推断路线模式

输出规则:

  • 界面会根据工具结果以可视化形式呈现地图。切勿在文本回复中复述、转述或包含原始 map_data JSON(坐标、标记、缩放级别、类型)。
  • 只能用自然语言描述地点(名称、评分、简短备注)。用户已经能看到地图——不要重复其中的内容。

评论

支持 Markdown