动态

详情 返回 返回

【附源碼】用Spring AI通殺所有MCP客户端,簡直離譜! - 动态 详情

在上一章節中,我們講解了MCP服務,並以Spring AI作為客户端和服務端進行示例説明。然而,當前市面上已經存在眾多成熟的MCP客户端和服務端實現。那麼,Spring AI在這些現有方案中的適配程度究竟如何?接下來,我們將深入探討這一問題。

Spring AI客户端-第三方MCP

MCP市場

我們先看下目前流行的MCP服務都有哪些,當然我們不必去手動實現已有的服務端,現在有很多MCP市場,比如騰訊雲、阿里都有這些市場,我們都來實驗一下,在Spring AI客户端中的是否可以真正的使用起來。那麼這裏我們就以騰訊云為例開始演示。地址在這裏:https://cloud.tencent.com/developer/mcp

image

騰訊位置服務 MCP Server

今天我們就舉一個最常見的案例——地圖服務,我們找到騰訊位置服務,然後根據他的文檔快速的申請一下相關的秘鑰信息等。

image

準備工作完成之後,我們開始接入,在配置文件中,我們引入必要的配置信息,如下:

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。就這麼簡單,我們直接啓動項目進行實時對話直接查看是否成功,效果如下:

image

新聞服務

除了常規使用SSE URL方式進行通信的MCP服務可以正常兼容外,在Studio模式下同樣能夠良好運行和適配。接下來,我們將以一個新聞服務的快速接入為示例進行演示。如圖所示:

image

按照其配置説明添加在Spring AI項目的配置目錄下。具體配置如下:

spring.ai.mcp.client.stdio.servers-configuration=classpath:mcp-servers.json

我們只需要將此文件內容換成官方的命令即可。隨後我們正常啓動項目,效果如下:

image

服務端常用的兩種模式,這裏全部正常。我們再看下第三方MCP客户端和Spring AI 服務端是否也可以正常兼容。

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

Claude Desktop

首先,我們要介紹的是當前最為流行的客户端工具之一 —— Claude Desktop。該工具支持本地運行,用户只需在本地下載安裝完成後,便可通過選擇相應的配置文件,直接加載並對接Spring AI所提供的MCP服務,實現快速接入與調試。具體操作流程如下圖所示:

image

文件內容如下所示:

"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 包即可被加載使用。下面我們直接來做一個簡單的測試:

image

首先他會進行一次提示,詢問是否調用MCP服務,説明基本成功了。我們再看下能夠成功調用,效果如下:

image

n8n

接下來,我們將繼續測試另一個近期非常熱門的工具 —— n8n。該自動化平台原生支持與 MCP 服務的集成,且採用的是基於 SSE(Server-Sent Events)的通信模式。

如果本地尚未安裝 n8n,可通過寶塔面板輕鬆獲取並完成部署。只需在面板應用市場中搜索 “n8n”,即可一鍵安裝並開始配置。如下圖所示:

image

接下來要做的,是讓 n8n 能訪問到我們本地的 Spring AI 服務。你有兩個選擇:要麼把服務部署到線上;要麼就像我這樣,用內網穿透把本地服務暴露出來。

我這裏用的是內網穿透的方式,接下來我們就來配置一下:

image

這裏的 /sse 是 Spring AI 默認提供的接口後綴,我們直接填這個就行了。如果你在服務端做了修改,那也可以用自定義的路徑。

現在我們來看下最終的效果,看看能不能成功觸發調用。如下圖所示:

image

Codebuddy

最後一個環節是 IDE 插件的集成配置,這裏我們以騰訊雲出品的 Codebuddy 插件為例進行演示。

首先,在本地 IDE(如 IntelliJ IDEA 或 VS Code)中安裝好 Codebuddy 插件。然後登錄自己的騰訊雲賬號,登錄完成後點擊左側的 “MCP 管理” 菜單,進入插件的 MCP 配置界面,如下圖所示:

image

緊接着寫好我們的配置文件內容,可以寫sse模式也可以寫studio模式的配置,這裏以studio模式為例。如圖所示:

image

一切調用成功。

小結

本文系統演示瞭如何在 Spring AI 架構下集成主流 MCP 服務和客户端工具,包括騰訊雲地圖、新聞服務、Claude Desktop、n8n 以及 Codebuddy 插件,全面驗證了 Spring AI 的良好兼容性與擴展性。

本文源碼已提交至 GitHub 倉庫,可直接下載使用:https://github.com/StudiousXiaoYu/spring-ai-courses

user avatar ludangxin 头像 yunpan-plus 头像 weizwz 头像 OBCE666 头像
点赞 4 用户, 点赞了这篇动态!
点赞

Add a new 评论

Some HTML is okay.