网易首页 > 网易号 > 正文 申请入驻

Spring AI再进化:支持MCP对话外部世界

0
分享至

随着 AI 技术的快速发展,如何让 AI 系统高效地获取和处理外部数据成为一个关键挑战。今天为大家介绍 Spring AI 最新支持的 MCP 协议,它将为 AI 应用打开一个全新的数据互联世界。
MCP:AI 与外部世界的"万能翻译官"

想象一下,如果你的 AI 应用需要同时读取数据库、访问文件系统、调用 API,以前你可能需要为每个数据源写一个专门的接口。而现在,Model Context Protocol (MCP)的出现彻底改变了这一切。

为什么 MCP 这么特别?

  • 统一标准:一次开发,到处运行。MCP 就像一个"万能适配器",让 AI 应用可以用同一种方式与各种数据源对话。

  • 全面兼容:无论是结构化的数据库表,还是非结构化的文本文件,MCP 都能轻松应对。

  • 即插即用:想在聊天界面中直接查看 GitHub 代码或 Google 文档?MCP 让这一切变得自然而流畅。

MCP vs Function Calling:不止是简单的函数调用

很多开发者可能会问:这和 Function Calling 有什么不同?关键区别在于:

  • Function Calling 更像是"一次性订制":完成特定任务,但难以复用

  • MCP 则是"通用翻译官":为不同系统搭建沟通的桥梁,让数据和功能自由流动

Spring AI + MCP:几行代码搞定数据互联

让我们通过一个实际例子,看看如何在 Spring AI 中使用 MCP:让 AI 帮你优化文章

有了 MCP 的支持,我们可以让 AI 直接读取本地文档,数据库,各种数据源,这种能力让 AI 应用的实用性大大提升,为内容创作、文档处理等场景带来新的可能。

1. 添加依赖

首先在 pom.xml 中添加必要的依赖:


     

 org.springframework.experimental groupId>     

 spring-ai-mcp artifactId>     

 0.4.1 version> dependency>



2. 基础配置

在 application.properties 中配置 AI 服务:

spring.ai.openai.base-url=your-api-base-url
spring.ai.openai.api-key=your-api-key
3. 核心实现

@Bean
 public CommandLineRunner predefinedQuestions(ChatClient.Builder chatClientBuilder,    List  functionCallbacks, ConfigurableApplicationContext context)  {

  return args -> {
   var chatClient = chatClientBuilder
     .defaultFunctions(functionCallbacks.toArray(new McpFunctionCallback[0]))
     .build();
   String question1 = "mcp.txt 这篇文档有什么建议吗?方便公众号传播推广";
   System.out.println("ASSISTANT: " + chatClient.prompt(question1).call().content());
   context.close();
  };
 }

 @Bean
 public List   functionCallbacks (McpSyncClient mcpClient)  {

        return mcpClient.listTools(null)
                .tools()
                .stream()
                .map(tool -> new McpFunctionCallback(mcpClient, tool))
                .toList();
 }

 @Bean(destroyMethod = "close")
 public McpSyncClient mcpClient() {
  var stdioParams = ServerParameters.builder("npx")
    .args("-y", "@modelcontextprotocol/server-filesystem", getDbPath())
    .build();

  var mcpClient = McpClient.using(new StdioClientTransport(stdioParams))
    .requestTimeout(Duration.ofSeconds(10)).sync();

  var init = mcpClient.initialize();

  System.out.println("MCP Initialized: " + init);

  return mcpClient;

 }

 private static String getDbPath() {
  return Paths.get(System.getProperty("user.dir"), "target").toString();
 }
测试执行

运行以下命令来启动 Spring Boot 应用,测试 MCP 功能:

mvn springboot:run

如果您对 Java AI 应用开发感兴趣,可以学习一下笔者录制的这个系列视频:Java AI应用开发(https://javaai.pig4cloud.com),当然是开源免费的啦。当然如果对Java AI 开发感兴趣可以加入我们社群:

特别声明:以上内容(如有图片或视频亦包括在内)为自媒体平台“网易号”用户上传并发布,本平台仅提供信息存储服务。

Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.

相关推荐
热点推荐
又有两所985高校任免副校长,涉及中山大学、中国科学技术大学

又有两所985高校任免副校长,涉及中山大学、中国科学技术大学

百家论大学
2026-10-18 20:10:05
轰20咋迟迟不亮相?美专家想明白了:不是技术问题,中国无法弥补

轰20咋迟迟不亮相?美专家想明白了:不是技术问题,中国无法弥补

柏拉图的诉说1
2026-10-18 21:18:29
中国房价在 2030 年前很大可能发生四大转变,大家要做好准备!

中国房价在 2030 年前很大可能发生四大转变,大家要做好准备!

专业聊房君
2026-09-23 19:27:19
女性高潮的秘密:高质量性生活不可或缺的一课

女性高潮的秘密:高质量性生活不可或缺的一课

精彩分享快乐
2026-10-15 21:00:04
真是没想到!29岁樊振东低调回国仅1天,重返国乒风波再起!回不回国家队,王励勤早已把话挑明,球迷直呼看懂了

真是没想到!29岁樊振东低调回国仅1天,重返国乒风波再起!回不回国家队,王励勤早已把话挑明,球迷直呼看懂了

锐评利物浦
2026-10-18 13:09:56
太离谱!皇马奇兵打脸穆里尼奥!38 分钟狂轰 3 球

太离谱!皇马奇兵打脸穆里尼奥!38 分钟狂轰 3 球

奶盖熊本熊
2026-10-18 07:55:31
定居美国13年后选择回国复出,登台现场竟被观众当众怒怼

定居美国13年后选择回国复出,登台现场竟被观众当众怒怼

东方不败然多多
2026-10-19 01:28:01
手握万亿资本,不去攻坚科研,却来抢小贩菜钱:值得我们认真反思

手握万亿资本,不去攻坚科研,却来抢小贩菜钱:值得我们认真反思

乌克兰小静
2026-09-29 08:38:08
大二女生吐槽校园同居现实!同居是甜蜜靠近还是矛盾放大

大二女生吐槽校园同居现实!同居是甜蜜靠近还是矛盾放大

枫红染山径
2026-10-19 01:46:15
交易浓眉?NBA要被颠覆了……

交易浓眉?NBA要被颠覆了……

体育新角度
2026-10-18 21:15:21
焚烧车辆、打砸商铺、闯入政府机构纵火,法国多地爆发示威抗议;驻法大使馆:中国公民特别是游客,避免前往游行示威区域,远离冲突地区

焚烧车辆、打砸商铺、闯入政府机构纵火,法国多地爆发示威抗议;驻法大使馆:中国公民特别是游客,避免前往游行示威区域,远离冲突地区

南方都市报
2026-10-18 19:21:14
高志凯:建议“移民局”恢复名称为“出入境管理局”,中国不是移民国家

高志凯:建议“移民局”恢复名称为“出入境管理局”,中国不是移民国家

山中虎说
2026-10-17 22:59:46
疯狂小杨哥新号“庆杨”粉丝被清零

疯狂小杨哥新号“庆杨”粉丝被清零

21世纪经济报道
2026-10-18 16:18:54
我国越来越多的人患糖尿病?建议:停止食用“8物”,保护胰岛

我国越来越多的人患糖尿病?建议:停止食用“8物”,保护胰岛

任医生聊健康
2026-10-18 18:55:11
晚年毛主席原谅了很多人,为何唯独不原谅潘汉年?主席对他寒了心

晚年毛主席原谅了很多人,为何唯独不原谅潘汉年?主席对他寒了心

温读
2025-03-13 18:28:10
懂车帝真的在意消费者的死活吗?

懂车帝真的在意消费者的死活吗?

文案的闲话
2026-10-17 11:31:05
乌克兰摧毁俄罗斯最大的苏尔古特油气加工厂!轮到天然气了?

乌克兰摧毁俄罗斯最大的苏尔古特油气加工厂!轮到天然气了?

项鹏飞
2026-10-17 20:09:32
气血不足百病生!提醒中老年,少吃花生红枣,多吃3样,气血双补

气血不足百病生!提醒中老年,少吃花生红枣,多吃3样,气血双补

江江食研社
2026-10-14 17:30:11
1929年,胡适提出“五鬼扰中华”观点,时至今日,仍是我们最大的敌人

1929年,胡适提出“五鬼扰中华”观点,时至今日,仍是我们最大的敌人

文史达观
2026-10-16 09:06:46
谁还记得芜湖方特一期?一年挣5亿,如今荒得让人认不出

谁还记得芜湖方特一期?一年挣5亿,如今荒得让人认不出

GA环球建筑
2026-10-17 14:02:35
2026-10-19 04:00:49
开源中国 incentive-icons
开源中国
每天为开发者推送最新技术资讯
7840文章数 34558关注度
往期回顾 全部

科技要闻

王江舟院士:6G到底是不是骗局 是不是收割

头条要闻

披旭日旗留学生被指是南京人 有明显"精日"与"台独"倾向

头条要闻

披旭日旗留学生被指是南京人 有明显"精日"与"台独"倾向

体育要闻

别在我的地盘夺冠!海港队史首次双杀蓉城

娱乐要闻

郭麒麟被传领证,女方戳破谣言

财经要闻

马斯克:美债问题只能靠AI和机器人解决

汽车要闻

星瑞L PLUS限时售价10.97万元起 开启智混3L时代

态度原创

健康
游戏
教育
数码
房产

看着很健康的人,怎么会突然猝死?

崩铁史学家发力?玩家通过解读月下奇谭内容,竟推测出4.7结局

教育要闻

两周收到40封举报信举报老师!校园举报乱象,谁在买单?

数码要闻

古尔曼:苹果计划为HomeView智能家庭中枢配备电动机械臂,最早2027年推出

房产要闻

利好密集落地+现房好房断档,广州楼市买入窗口,正在倒计时!

无障碍浏览 进入关怀版