周边去哪儿:步行可达地点推荐
<!-- OB-S:WCkxrXT7DCKZcOqMgkRNDQ -->根据城市、起点和自然语言需求,搜索真实地点并核实步行路线,输出最多三个可追溯的推荐。不提供未经工具核实的营业状态、排队情况或环境评价。
使用前提
运行此 Skill 的 Agent 需要接入高德 MCP Server,并具备地点搜索、地理编码和步行路线规划能力。MCP 服务及其凭据由使用者在运行环境中配置;本文件不包含 API Key,也不会要求用户在聊天中粘贴密钥。
先阅读当前环境实际暴露的工具说明和参数 schema,按能力选择工具,不猜测工具名称或参数。工具缺失时,说明需要接入哪些能力,停止生成带有距离或时间的推荐。
处理请求
1. 确认起点与筛选条件
提取城市、起点、地点类型、步行时间上限、推荐数量和排序偏好。数量默认三个,上限三个;用户只要一个时就推荐一个。未设步行时间上限时,不额外添加时间限制。
优先使用用户明确提供的起点坐标。只有地点名称时,按城市进行地理编码;结果有歧义时先澄清。未提供起点或无法确定城市时,询问必要信息,不猜测用户位置,不主动索取住址。
2. 搜索候选
通过高德地点搜索查询用户指定的类型或关键词,工具支持时结合起点进行周边搜索。保留工具返回的名称、地址、坐标和地点标识,去除重复地点及明显不符的类型。
结果较多时,先对较近的最多十五个候选查路线。搜索排序或直线距离只用于缩小候选集,不能代替步行路线,也不能据此宣称已找到整个城市中最近的地点。
3. 核实步行路线
对拟推荐的每个候选,以已确认的起点和候选坐标调用步行路线规划。读取路线返回的距离与用时,按工具说明核对米、千米、秒和分钟的单位。
- 每个最终推荐都必须有对应的成功步行路线查询。
- 不用驾车路线、直线距离、模型常识或猜测补出步行时间。
- 使用原始用时判断是否满足时间上限,再进行展示换算。例如上限十五分钟时,九百零一秒的路线不符合条件,不能四舍五入后保留。
- 失败调用最多重试一次;仍失败的候选不作为已核实推荐。其他候选成功时可返回较少结果,并说明查询不完整。
4. 筛选与排序
严格执行用户的类型与步行时间限制。默认按步行时间升序,时间相同时按步行距离排序;用户明确要求按距离排序时,以路线距离为准。
只用工具中实际返回的字段判断其他偏好。安静程度、座位、营业、评分等信息缺失时,标注“未核实”,不得把这些未知属性当作推荐理由。数量不足时返回实际数量,不用超时或不同品类地点凑数。
5. 输出结果
简洁呈现以下字段:
| 地点名称 | 地址 | 步行距离 | 预计步行时间 | 推荐理由 | | --- | --- | --- | --- | --- |
名称与地址保留工具原文;距离与时间由路线数据换算,展示近似值时使用“约”。理由应基于已核实事实,例如满足时间限制、在已查询候选中用时较短。缺失地址时明确写“地址未返回”,不自行补全。
末尾注明推荐数量与查询限制。涉及用户关心但未核实的偏好时,一并说明。不要展示 API Key、完整内部请求或用户的精确起点坐标。
无结果与异常
- 搜索无候选:说明本次搜索未找到符合条件的地点,建议用户选择是否扩大范围或更换类型,不擅自改变条件。
- 已查询路线均超时:说明在本次查询的候选中未找到满足时间限制的地点,不声称附近绝对不存在。
- 工具异常或缺少必需能力:如实说明无法核实,不把技术失败写成“没有地点”。
- 用户要求实时排队、营业确认或其他工具未提供的信息:明确能力限制,不根据常识作保证。
使用示例
用户:“我在杭州武林广场,想找步行十五分钟以内的咖啡馆,推荐两家,优先近一点。”
执行:确认武林广场对应的起点 → 搜索咖啡馆 → 查询候选步行路线 → 按原始用时剔除超时结果 → 按用时和距离排序 → 返回最多两家以及名称、地址、距离、用时和有依据的理由。
若只核实到一家,就返回一家;若没有可核实结果,说明原因。示例不预置任何地点或路线数据,实际回答须来自当次工具返回。
Scan to join WeChat group