构建AI智能体:四十六、Codebuddy MCP 实践:用高德地图搭建旅游攻略系统
一、前情概要
前面有两篇文章分别讲了高德API的使用和MCP的详细说明,今天正好基于此做一个智能的旅游攻略助手,旅游是生活中习以为常的事情了,短期近程、长期远程,规划是个很重要的事情,我们或多或少的经历过旅游过程中的各种不好的体验,当前旅游信息市场也存在严重的碎片化问题,一般我们在规划行程时,需要同时查阅携程、美团、马蜂窝、小红书等多个平台,每个平台的信息维度各不相同,整合成本极高,往往我们在第一步在攻略的时候就要花费大量的时间。
同信息时效性是另一个核心痛点,景点的开放时间、门票价格、特殊活动等信息变更频繁,但传统攻略内容更新滞后。更重要的是,过时的攻略信息给我们参考时,特别容易碰到与实际不符,季节性的改变,临时的闭园等等都会影响我们当下的判断和出行。大众化的推荐也无法满足不同群体的需求,家庭游客需要婴儿车通道和休息区信息,商务旅客关注会议设施和交通效率,摄影爱好者则追求最佳拍摄时间和机位。
基于此,基于目前大模型的爆发趋势,基于MCP协议的开放,我们是否能整合一个方便的初筛系统,先满足我们的第一步,我们再去做进一步的筛选。
二、技术融合
Codebuddy MCP与高德地图的结合,为旅游攻略系统带来了革命性的改变。MCP协议的标准化接口能力,使得系统可以无缝集成多源数据,同时保持架构的简洁性。
实时数据优势体现在多个维度:高德地图提供的实时交通数据可以动态调整路线规划,天气API能够预警极端天气,POI更新确保商家信息的准确性。这种实时性将旅游规划从"静态参考"升级为"动态指导"。
个性化算法通过多维度用户画像实现。系统不仅考虑显性偏好(如用户输入的预算、时间),还分析隐性需求(如步行承受能力、餐饮偏好),甚至结合情境因素(如节假日拥挤度、季节性景观变化)。
整体架构图:
三、系统定位
本系统的核心价值在于打造智能旅游决策引擎,而非简单的信息聚合平台,体系三大差异化能力:
- 预测性规划基于历史数据和实时信息,预测景点拥挤度、排队时间,甚至推荐最佳游览时段。比如系统会建议用户早晨参观热门博物馆以避免人流高峰。
- 多模态交互支持自然语言对话、地图可视化、时间轴展示等多种交互方式。用户可以用"我想找个人少、适合拍照的地方"这样的自然语言表达需求。
- 连续性学习系统会从用户的反馈中不断优化推荐策略,形成个性化的旅游偏好模型,使推荐越来越精准。
数据流集成:
四、MCP协议的核心枢纽作用
Codebuddy MCP在架构中扮演智能路由层的角色,其核心价值在于标准化工具调用和统一错误处理。
- 协议适配层将不同数据源的API差异封装起来,对外提供统一的工具接口。无论是高德地图的REST API还是本地数据库查询,都通过相同的MCP工具格式暴露。
- 会话管理机制维护用户交互的上下文信息。当用户说"附近的餐厅"时,系统能自动关联之前的定位查询,无需用户重复输入位置信息。
- 工具组合能力支持复杂操作的原子化执行。例如"规划明天西湖一日游"的请求,会被分解为天气查询、景点推荐、路线规划、餐厅筛选等多个工具调用,但用户感知为单一连贯操作。
五、高德地图API集成
地理智能层在基础地理编码之上,增加了景点边界识别、游览区域划分、最佳观景点计算等高级功能。例如系统能自动识别西湖景区的核心游览区与周边辅助区域。
时空分析层结合时间维度进行空间分析。系统不仅能找到"附近的餐厅",还能预测"一小时后行程终点附近的餐厅",并考虑营业时间因素。
语义理解层将自然语言需求转化为地图查询参数。当用户搜索"适合看日落的地方"时,系统会自动计算西向视野开阔的观景点,并结合日落时间推荐。
1. 导航路径规划流程
流程说明:
- 第一步:需求接收与解析
- 用户通过自然语言或表单提交旅行需求,MCP网关负责解析和标准化请求参数,包括目的地定位、时间范围识别、偏好标签提取等。
- 第二步:数据准备
- 路线规划服务并行调用地理数据服务和景点数据库,获取基础地理信息和景点详情数据,为路线优化提供完整的输入数据支撑。
- 第三步:路线计算
- 基于获取的数据,执行多目标优化算法,平衡时间效率、体验价值、体力消耗等关键因素,生成最优路线方案。
- 第四步:结果展示
- 将优化结果以多模态形式展示给用户,包括可视化地图、详细时间轴、景点介绍等,提供完整的旅行规划解决方案。
2. 旅游攻略规划流程
流程说明:
- 第一步:需求理解与数据准备
- 输入接收与解析,系统接收用户输入的旅行需求,可能包含:
- 目的地信息(城市、区域、具体景点)
- 时间约束(旅行天数、具体日期)
- 偏好标签(文化、美食、自然、购物等)
- 特殊需求(家庭游、商务、摄影等)
- 数据获取阶段,基于解析出的需求,系统并行获取多维度数据:
- 地理数据:景点坐标、区域边界、交通网络
- 景点信息:开放时间、门票价格、游览时长
- 环境因素:季节特性、天气预测、特殊事件
- 用户画像:历史偏好、体力水平、兴趣标签
- 输入接收与解析,系统接收用户输入的旅行需求,可能包含:
- 第二步:候选方案生成
- 景点筛选与评分,系统根据评分权重计算每个景点的适合度:
- - 用户偏好匹配度:40%
- - 季节适宜性:20%
- - 地理位置集中度:15%
- - 口碑评价:15%
- - 特殊事件加成:10%
- 初始路线构建,采用贪心算法生成初始路线方案:
- 选择评分最高的景点作为起点
- 基于距离和时间成本选择下一个景点
- 重复直到满足时间约束或景点数量限制
- 生成3-5个差异化初始方案
- 景点筛选与评分,系统根据评分权重计算每个景点的适合度:
- 第三步:路线优化与验证
- 多目标优化处理,系统平衡四个关键优化目标:
- 时间效率:最小化交通时间,最大化游览时间
- 体验价值:确保景点组合的多样性和吸引力
- 体力合理:控制每日步行距离,安排合理休息
- 成本控制:在预算范围内优化体验
- 约束条件检查,验证路线满足所有硬性约束:
- 时间约束:总时长不超过用户指定
- 开放时间:景点在计划时间确实开放
- 体力限制:每日活动量在合理范围内
- 顺序要求:某些景点必须按特定顺序游览
- 多目标优化处理,系统平衡四个关键优化目标:
- 第四步:方案生成与展示
- 详细行程编排,将优化后的路线转化为可执行的每日日程安排:
- - 早晨:精力充沛时段安排核心景点
- - 中午:用餐休息,避开高温时段
- - 下午:次要景点或室内活动
- - 晚上:夜景或休闲活动
- 多模态展示优化,根据不同设备和使用场景优化展示方式:
- 地图视图:空间关系的直观展示
- 时间轴:每日行程的时间分配
- 清单模式:关键信息的快速浏览
- 打印版本:离线使用的简化版
- 详细行程编排,将优化后的路线转化为可执行的每日日程安排:
- 第五步:反馈与迭代
- 用户反馈收集,系统提供多种反馈渠道:
- explicit反馈:评分、点赞/点踩
- implicit反馈:方案采纳率、修改行为
- 结构化反馈:具体修改建议收集
- 模型持续优化,基于反馈数据更新推荐模型:
- 短期优化:调整当前用户的偏好权重
- 中期学习:更新景点评分和关联规则
- 长期演进:优化算法参数和特征工程
- 用户反馈收集,系统提供多种反馈渠道:
六、系统初始化与构建
1. 申请高德API KEY
1.1 打开高德开放平台,注册后登录;
1.2 打开【应用管理】-> 【我的应用】-> 【创建新应用】,输入【应用名称】和【应用类型】-> 然后点击【新建】,即产生了我们要用的Key
2. CODEBUDDY配置高德MCP
打开左侧Codebuddy插件图标,在点击顶部右侧导航栏的“MCP Marketplace”图标,选择已安装tab,点击“配置MCP Server”按钮;
第一次打开时是空的配置:
讲高德地图的MCP直接复制进去即可,注意key要替换成我们自己申请的key,保存后左侧会生成高德的MCP服务,并展示工具集:
这样,Codebuddy的MCP服务就配置好了;
2.1 导航路线规划
我们尝试发送一个指令:“帮我查询,从武汉到杭州的行车路线,提供备选,生成到md中”;指令发送后,首先调用了高德MCP的驾车路径规划 API (maps_direction_driving),可以根据用户起终点经纬度坐标规划以小客车、轿车通勤出行的方案,并且返回通勤方案的数据。
这份路线指南包括了路线概览、主要道路、主要途径点、详细路线指引、注意事项以及备选路线建议;
2.2 旅游攻略规划
根据我的提示指令生成一个旅游攻略的页面,提示词“帮我规划一个杭州4日游的攻略的html,推荐美食、景点、住宿、以及各景点中间的接驳方案,界面风格采用江南水乡的风格、同时要有青春、旅行的元素,支持移动端观看”;
查看生成的界面图:
整体的感觉很清新,细节很明了,形成了一个初步的旅游攻略;
3. 临时的发布与共享
由于我们生成的是html文档,直接发送给同行伙伴属实会有点不上档次,我们可以短暂的发布到线上,发送一个临时的网络地址进行共享,这样就很高大上了;
接下来,我们将采用 EdgeOne Pages来进行简单部署;简单介绍EdgeOne Pages,它是基于 Tencent EdgeOne 基础设施打造的全栈开发部署平台,提供从前端页面到动态 API 的无服务器部署体验,适用于构建营销网站、AI 应用等现代 Web 项目。通过边缘网络全球加速,确保应用获得快速、稳定的访问体验。
3 打开EdgeOne Pages首页,进行登录
按以下路径创建一个API Token
点击【创建项目】,按类型选择,我们现在只有一个html文件,选择【直接上传】即可;
选中要上传的文件,直接拖入到上传的窗口;
输入项目名称后,点击【开始部署】
名称不能包含中文,要调整;
接下来就是等待,构建成功后会有撒花的提示;
定位到“构建产物”的tab,点击【查看】按钮就可以看到发布的页面了;
七、总结
Codebuddy MCP与高德地图的此次联合,不仅打造了一个智能旅游攻略系统,更重要的是为AI技术在传统行业的应用提供了可复制的技术框架和商业模式参考,具有重要的行业示范意义。
与传统旅游攻略平台相比,此种方式实现了从"静态参考"到"动态规划"的转变。用户无需在不同平台间切换,通过自然语言交互即可获得完整的个性化旅行方案,大大降低了旅行规划的时间成本和认知负担。
同时也展示了AI技术与传统旅游服务的深度融合可能,为行业数字化转型提供了可复制的技术方案。智能路线规划、个性化推荐等核心能力将成为旅游科技产品的标准配置。