【附源码】用Spring AI通杀所有MCP客户端,简直离谱!

在上一章节中,我们讲解了MCP服务,并以Spring AI作为客户端和服务端进行示例说明。然而,当前市面上已经存在众多成熟的MCP客户端和服务端实现。那么,Spring AI在这些现有方案中的适配程度究竟如何?接下来,我们将深入探讨这一问题。

Spring AI客户端-第三方MCP

MCP市场

我们先看下目前流行的MCP服务都有哪些,当然我们不必去手动实现已有的服务端,现在有很多MCP市场,比如腾讯云、阿里都有这些市场,我们都来实验一下,在Spring AI客户端中的是否可以真正的使用起来。那么这里我们就以腾讯云为例开始演示。地址在这里:https://cloud.tencent.com/developer/mcp

腾讯位置服务 MCP Server

今天我们就举一个最常见的案例------地图服务,我们找到腾讯位置服务,然后根据他的文档快速的申请一下相关的秘钥信息等。

准备工作完成之后,我们开始接入,在配置文件中,我们引入必要的配置信息,如下:

properties 复制代码
spring.ai.mcp.client.sse.connections.server2.url=https://mcp.map.qq.com
spring.ai.mcp.client.sse.connections.server2.sse-endpoint=/sse?key=<申请的key>&format=0

OK。就这么简单,我们直接启动项目进行实时对话直接查看是否成功,效果如下:

新闻服务

除了常规使用SSE URL方式进行通信的MCP服务可以正常兼容外,在Studio模式下同样能够良好运行和适配。接下来,我们将以一个新闻服务的快速接入为示例进行演示。如图所示:

按照其配置说明添加在Spring AI项目的配置目录下。具体配置如下:

properties 复制代码
spring.ai.mcp.client.stdio.servers-configuration=classpath:mcp-servers.json

我们只需要将此文件内容换成官方的命令即可。随后我们正常启动项目,效果如下:

服务端常用的两种模式,这里全部正常。我们再看下第三方MCP客户端和Spring AI 服务端是否也可以正常兼容。

第三方MCP客户端-Spring AI 服务端

Claude Desktop

首先,我们要介绍的是当前最为流行的客户端工具之一 ------ Claude Desktop。该工具支持本地运行,用户只需在本地下载安装完成后,便可通过选择相应的配置文件,直接加载并对接Spring AI所提供的MCP服务,实现快速接入与调试。具体操作流程如下图所示:

文件内容如下所示:

json 复制代码
"spring-ai-mcp-weather": {
      "command": "java",
      "args": [
        "-Dspring.ai.mcp.server.stdio=true",
        "-Dspring.main.web-application-type=none",
        "-Dlogging.pattern.console=",
        "-Dmybatis-plus.global-config.banner=false",
        "-jar",
        "D:/project/spring-ai-courses/08-course-mcp/course-mcp-server/target/course-mcp-server-1.0-SNAPSHOT.jar"
      ]
    }

配置完成后,请注意需要重启应用,使刚才的设置生效。

我们这边的 Spring AI 服务无需单独运行,只需打好 JAR 包即可被加载使用。下面我们直接来做一个简单的测试:

首先他会进行一次提示,询问是否调用MCP服务,说明基本成功了。我们再看下能够成功调用,效果如下:

n8n

接下来,我们将继续测试另一个近期非常热门的工具 ------ n8n。该自动化平台原生支持与 MCP 服务的集成,且采用的是基于 SSE(Server-Sent Events)的通信模式。

如果本地尚未安装 n8n,可通过宝塔面板轻松获取并完成部署。只需在面板应用市场中搜索 "n8n",即可一键安装并开始配置。如下图所示:

接下来要做的,是让 n8n 能访问到我们本地的 Spring AI 服务。你有两个选择:要么把服务部署到线上;要么就像我这样,用内网穿透把本地服务暴露出来。

我这里用的是内网穿透的方式,接下来我们就来配置一下:

这里的 /sse 是 Spring AI 默认提供的接口后缀,我们直接填这个就行了。如果你在服务端做了修改,那也可以用自定义的路径。

现在我们来看下最终的效果,看看能不能成功触发调用。如下图所示:

Codebuddy

最后一个环节是 IDE 插件的集成配置,这里我们以腾讯云出品的 Codebuddy 插件为例进行演示。

首先,在本地 IDE(如 IntelliJ IDEA 或 VS Code)中安装好 Codebuddy 插件。然后登录自己的腾讯云账号,登录完成后点击左侧的 "MCP 管理" 菜单,进入插件的 MCP 配置界面,如下图所示:

紧接着写好我们的配置文件内容,可以写sse模式也可以写studio模式的配置,这里以studio模式为例。如图所示:

一切调用成功。

小结

本文系统演示了如何在 Spring AI 架构下集成主流 MCP 服务和客户端工具,包括腾讯云地图、新闻服务、Claude Desktop、n8n 以及 Codebuddy 插件,全面验证了 Spring AI 的良好兼容性与扩展性。

本文源码已提交至 GitHub 仓库,可直接下载使用:https://github.com/StudiousXiaoYu/spring-ai-courses

相关推荐
Qlittleboy2 小时前
手机、电脑屏幕的显示坏点检测和成像原理
经验分享·笔记
Demonsong_9 小时前
2025.8.22周五 在职老D渗透日记day24:burp+mumu抓包 安卓7.0以上证书配置
经验分享·笔记
省四收割者1 天前
Go语言入门(10)-数组
数据结构·经验分享·笔记·vscode·算法·golang
Loving_enjoy1 天前
智能合约漏洞检测技术综述:守护区块链世界的“自动售货机”
经验分享·机器学习·课程设计·facebook
雪下的新火1 天前
Unity-HDRP场景搭建-那山
经验分享·笔记·unity·游戏引擎·场景搭建
小强先森java1 天前
疯狂星期四文案网第47天运营日记
经验分享·新媒体运营·网站运营·疯狂星期四·疯狂星期四文案
天意生信云1 天前
生信分析自学攻略 | R语言数据筛选和修改
数据结构·经验分享·r语言
草莓熊Lotso1 天前
【C语言强化训练16天】--从基础到进阶的蜕变之旅:Day10
c语言·开发语言·经验分享·算法·强化
源代码•宸2 天前
网络流量分析——基础知识(二)(Tcpdump 基础知识)
运维·开发语言·网络·c++·经验分享·tcpdump
计算机小手2 天前
基于 Flask 与 Milvus 构建高效图片搜索引擎,可通过API接入,支持Docker一键部署
经验分享·docker·flask·开源软件·milvus