尧图网络科技YAOTU DIGITAL 获取报价
获取报价
首页 / 资讯中心 / 文章详情

掌握Spring AI + MCP,轻松让AI接入高德地图实现实时查询

发布时间:2026/9/26 11:10:07

资讯中心
01
ARTICLE

掌握Spring AI + MCP,轻松让AI接入高德地图实现实时查询

掌握Spring AI + MCP,轻松让AI接入高德地图实现实时查询
本文介绍了如何通过Spring AI和MCP协议让AI应用能够实时调用高德地图服务解决传统RAG知识库无法处理实时数据的问题。文章详细阐述了接入高德地图MCP的步骤包括申请API-Key、配置MCP连接参数、工具绑定与日志监听等并通过实例展示了接入后的效果验证。对于想要提升AI应用实时数据处理能力的开发者来说本文提供了实用的指导和方法。上篇文章搞定了长期记忆持久化、 RAG 知识库让 AI 能翻公司文档了。但遇到新问题你问它“今天武汉天气怎么样”它还是不知道。RAG 管不了实时数据。天气、路况——这些信息每分每秒在变总不能让 AI 每次都去翻“昨天的天气文档”吧写到这儿我突然想上次我不信邪把天气存向量库结果第二天武汉降温10度AI 还推荐我穿短袖出行直接给我整笑了以前要手动写Function Calling代码量不小。Spring AI MCP 可以直接让AI自己调高德接口少写一堆对接代码。下面是接入过程。一、先搞清楚什么是 MCPMCP是Anthropic发起的协议让AI应用能通过统一方式调用外部工具。高德提供MCP服务端Spring AI作为客户端连上去就能直接使用高德暴露的工具。在这套方案中Spring AI 充当 MCP Client通过 SSEServer-Sent Events 协议实时连接高德地图的 MCP Serverhttps://mcp.amap.com。搞个图捋一捋DeepSeek 大模型高德地图 (MCP Server)Spring AI 应用 (MCP Client)DeepSeek 大模型高德地图 (MCP Server)Spring AI 应用 (MCP Client)用户1. 建立 SSE 长连接自动初始化获取高德工具列表 (Weather/Direction等)12. 发起提问“武汉市天气怎么样”23. 发送 Prompt 高德地图工具定义 (Tools Schema)34. 判断需要调用高德工具返回 Tool Call 请求 (maps_weather)45. 触发 MCP Tool 远程回调调用高德 API56. 返回武汉实时天气 JSON 数据 (温度、风力、天气现象)67. 将天气 JSON 结果透传回大模型78. 大模型整合天气数据生成自然语言回答89. 流式吐回结果9用户二、准备工作申请高德 API-Key在调用高德地图 MCP 服务之前得先拿到高德开放平台的 API-Key。三步搞定1. 登录 高德开放平台完成账号注册与认证2. 创建应用服务平台选择「Web服务」3. 生成 API-Key保存好备用。三、先看个对比不接 MCP 会怎样没集成 MCP 的时候问“武汉市天气怎么样”DeepSeek 的回答大概是这样——乍一看像模像样实际全是编的。后端日志里也看不到任何工具调用的痕迹就是普通的对话处理流程。四、实战Spring AI 接入高德地图 MCP搭建SpringBoot项目、添加SpringAI依赖、配置大模型api-key请大家直接看Spring AI聊天机器人这篇。废话不多说下面开干。Spring AI 接入高德地图主要有三个步骤。1. 引入 Maven 依赖在项目pom.xml中添加spring-ai-starter-mcp-client依赖!-- 引入 mcp client 依赖用于调用高德地图的 MCP 服务器 -- dependency groupIdorg.springframework.ai/groupId artifactIdspring-ai-starter-mcp-client/artifactId /dependency2. 配置文件新增 MCP 连接参数在application.properties中添加高德地图 MCP 的 SSE 服务端配置# mcp客户端配置去连接高德地图的MCP服务器 # amap MCP spring.ai.mcp.client.sse.connections.server1.urlhttps://mcp.amap.com # 填写自己注册的高德地图MCP的key spring.ai.mcp.client.sse.connections.server1.sse-endpoint/sse?key${MCP_SERVER_KEY}这里MCP_SERVER_KEY强烈建议配在环境变量里——不对不是“建议”是“必须”千万别随手 commit 进开源仓库把 key 暴露了不然哪天高德额度被刷爆了真没地方哭去。Spring AI 在启动时会自动向该 SSE 节点建立连接并握手获取工具元数据。3. 工具绑定与日志监听(1) 在 Controller 中挂载 MCP 工具回调修改ChatController.java注入 Spring AI 自动配置好的SyncMcpToolCallbackProvider并将其挂载到ChatClient请求中RestController RequestMapping(/chat) public class ChatController { private final ChatClient chatClient; private final VectorStore vectorStore; private final SyncMcpToolCallbackProvider toolCallbackProvider; // 1. 注入 MCP 工具提供者 Autowired private ChatHistoryTitleRepository chatHistoryTitleRepository; public ChatController(ChatClient deepseekChatClient, VectorStore vectorStore, SyncMcpToolCallbackProvider toolCallbackProvider) { this.chatClient deepseekChatClient; this.vectorStore vectorStore; this.toolCallbackProvider toolCallbackProvider; } RequestMapping(value /stream, produces text/html;charsetutf-8) public FluxString stream(String prompt, String chatId) { chatHistoryTitleRepository.save(chatId, prompt); // 2. 在 ChatClient 中通过 toolCallbacks 动态挂载高德 MCP 工具 ChatClient.ChatClientRequestSpec requestSpec chatClient.prompt() .user(prompt) .advisors(spec - spec.param(ChatMemory.CONVERSATION_ID, chatId)) .advisors(new ToolSimpleLoggerAdvisor()) .toolCallbacks(toolCallbackProvider); // 挂载 MCP 工具列表 return requestSpec.stream().content(); } }(2) 编写 ToolCalling 观测监听器为了排查工具调用细节利用 Micrometer 的ObservationHandler机制写一个监听器ToolCallingObservationHandler.java打印请求和响应参数package org.example.spring_chat_box.config; import com.fasterxml.jackson.core.JsonProcessingException; import com.fasterxml.jackson.databind.ObjectMapper; import io.micrometer.observation.Observation; import io.micrometer.observation.ObservationHandler; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.ai.tool.observation.ToolCallingObservationContext; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Component; / * 自定义 ToolCalling 观测监听处理器用于打印工具调用详情 */ Component public class ToolCallingObservationHandler implements ObservationHandlerToolCallingObservationContext { private static final Logger logger LoggerFactory.getLogger(ToolCallingObservationHandler.class); Autowired private ObjectMapper objectMapper; Override public void onStop(ToolCallingObservationContext context) { try { logger.info(/n my defined,tool calling completion: /n 工具定义{} /n 请求参数{} /n 响应内容{}, objectMapper.writeValueAsString(context.getToolDefinition()), context.getToolCallArguments(), context.getToolCallResult()); } catch (JsonProcessingException e) { throw new RuntimeException(e); } } Override public boolean supportsContext(Observation.Context context) { return context instanceof ToolCallingObservationContext; } }五、效果验证代码和配置完成后重启项目再次测试。1. 对话验证再次提问“武汉市天气怎么样”截图里能看到气温、天气状况和风力数据都对得上当天实际情况。2. 日志验证日志是下面这样应用启动建立 SSE 连接后自动同步了高德暴露的工具集天气查询、路径规划等。DeepSeek 分析意图后触发调用高德天气工具传入city武汉市并拿到实时响应。六、最后说两句两个需要注意的地方1、API Key 别忘了拼参数。高德 MCP 的 SSE 地址要带?keyxxx漏了就连不上启动时看一眼日志报 401 基本是这个问题。2、工具列表会一股脑全挂上。MCP 会把高德所有工具都塞给大模型如果只用到天气可以配置只加载需要的工具省点 Token。接入 MCP 之后不用再为每个第三方 API 单独写对接代码。改一行配置以 spring.ai.mcp.client 为前缀进行配置就能让 AI 接入对应的工具服务。代码已经传到仓库了切过去就能跑。要是跑不通大概率是高德的 key 没配对——别问我怎么知道的如何学习大模型 AI 由于新岗位的生产效率要优于被取代岗位的生产效率所以实际上整个社会的生产效率是提升的。但是具体到个人只能说是“最先掌握AI的人将会比较晚掌握AI的人有竞争优势”。这句话放在计算机、互联网、移动互联网的开局时期都是一样的道理。我在一线科技企业深耕十二载见证过太多因技术卡位而跃迁的案例。那些率先拥抱 AI 的同事早已在效率与薪资上形成代际优势我意识到有很多经验和知识值得分享给大家也可以通过我们的能力和经验解答大家在大模型的学习中的很多困惑。我们整理出这套AI 大模型突围资料包✅ 从零到一的 AI 学习路径图✅ 大模型调优实战手册附医疗/金融等大厂真实案例✅ 百度/阿里专家闭门录播课✅ 大模型当下最新行业报告✅ 真实大厂面试真题✅ 2026 最新岗位需求图谱所有资料 ⚡️ 朋友们如果有需要《AI大模型入门进阶学习资源包》下方扫码获取~① 全套AI大模型应用开发视频教程包含提示工程、RAG、LangChain、Agent、模型微调与部署、DeepSeek等技术点② 大模型系统化学习路线作为学习AI大模型技术的新手方向至关重要。 正确的学习路线可以为你节省时间少走弯路方向不对努力白费。这里我给大家准备了一份最科学最系统的学习成长路线图和学习规划带你从零基础入门到精通③ 大模型学习书籍文档学习AI大模型离不开书籍文档我精选了一系列大模型技术的书籍和学习文档电子版它们由领域内的顶尖专家撰写内容全面、深入、详尽为你学习大模型提供坚实的理论基础。④ AI大模型最新行业报告2025最新行业报告针对不同行业的现状、趋势、问题、机会等进行系统地调研和评估以了解哪些行业更适合引入大模型的技术和应用以及在哪些方面可以发挥大模型的优势。⑤ 大模型项目实战配套源码学以致用在项目实战中检验和巩固你所学到的知识同时为你找工作就业和职业发展打下坚实的基础。⑥ 大模型大厂面试真题面试不仅是技术的较量更需要充分的准备。在你已经掌握了大模型技术之后就需要开始准备面试我精心整理了一份大模型面试题库涵盖当前面试中可能遇到的各种技术问题让你在面试中游刃有余。以上资料如何领取为什么大家都在学大模型最近科技巨头英特尔宣布裁员2万人传统岗位不断缩减但AI相关技术岗疯狂扩招有3-5年经验大厂薪资就能给到50K*20薪不出1年“有AI项目经验”将成为投递简历的门槛。风口之下与其像“温水煮青蛙”一样坐等被行业淘汰不如先人一步掌握AI大模型原理应用技术项目实操经验“顺风”翻盘这些资料真的有用吗这份资料由我和鲁为民博士(北京清华大学学士和美国加州理工学院博士)共同整理现任上海殷泊信息科技CEO其创立的MoPaaS云平台获Forrester全球’强劲表现者’认证服务航天科工、国家电网等1000企业以第一作者在IEEE Transactions发表论文50篇获NASA JPL火星探测系统强化学习专利等35项中美专利。本套AI大模型课程由清华大学-加州理工双料博士、吴文俊人工智能奖得主鲁为民教授领衔研发。资料内容涵盖了从入门到进阶的各类视频教程和实战项目无论你是小白还是有些技术基础的技术人员这份资料都绝对能帮助你提升薪资待遇转行大模型岗位。以上全套大模型资料如何领取
02
RELATED NEWS

相关资讯

更多网站建设与数字化升级内容

03
WHY YAOTU

想打造同款高转化官网?

懂行业、懂生意,从建站到增长一站式陪跑

◈

场景化定制

不做模板站,围绕你的业务场景量身设计,小众不撞款。

◐

营销型架构

以转化目标组织内容与路径,让官网真正带来询盘。

▲

全周期服务

设计、开发、运营、运维一体,上线只是开始。

免费获取你的建站方案

留下需求,专属顾问 24 小时内为你输出方案建议。