news 2026/2/7 6:49:18

70_Spring AI 干货笔记之 STDIO 与 SSE MCP 服务器

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
70_Spring AI 干货笔记之 STDIO 与 SSE MCP 服务器

一、STDIO 与 SSE MCP 服务器

STDIO 和 SSE MCP 服务器支持多种传输机制,每种都有专门的启动器。

使用 STDIO 客户端或 SSE 客户端连接 STDIO 和 SSE 服务器。

1.1 STDIO MCP 服务器

支持完整 MCP 服务器功能,采用 STDIO 服务器传输。

<dependency><groupId>org.springframework.ai</groupId><artifactId>spring-ai-starter-mcp-server</artifactId></dependency>
  • 适合命令行和桌面工具

  • 无需额外 Web 依赖

  • 基本服务器组件配置

  • 处理工具、资源和提示规范

  • 管理服务器能力和变更通知

  • 支持同步和异步服务器实现

1.2 SSE WebMVC 服务器

支持完整 MCP 服务器功能,采用基于 Spring MVC 的 SSE(服务器发送事件)服务器传输,并可选 STDIO 传输。

<dependency><groupId>org.springframework.ai</groupId><artifactId>spring-ai-starter-mcp-server-webmvc</artifactId></dependency>
  • 基于 HTTP 的传输,使用 Spring MVC(WebMvcSseServerTransportProvider)

  • 自动配置的 SSE 端点

  • 可选的 STDIO 传输(通过设置 spring.ai.mcp.server.stdio=true 启用)

  • 包含 spring-boot-starter-web 和 mcp-spring-webmvc 依赖项

1.3 SSE WebFlux 服务器

支持完整 MCP 服务器功能,采用基于 Spring WebFlux 的 SSE(服务器发送事件)服务器传输,并可选 STDIO 传输。

<dependency><groupId>org.springframework.ai</groupId><artifactId>spring-ai-starter-mcp-server-webflux</artifactId></dependency>

此启动器激活 McpWebFluxServerAutoConfiguration 和 McpServerAutoConfiguration 自动配置,提供:

  • 响应式传输,使用 Spring WebFlux(WebFluxSseServerTransportProvider)

  • 自动配置的响应式 SSE 端点

  • 可选的 STDIO 传输(通过设置 spring.ai.mcp.server.stdio=true 启用)

  • 包含 spring-boot-starter-webflux 和 mcp-spring-webflux 依赖项

由于 Spring Boot 的默认行为,当类路径中同时存在 org.springframework.web.servlet.DispatcherServlet 和 org.springframework.web.reactive.DispatcherHandler 时,Spring Boot 将优先使用 DispatcherServlet。因此,如果您的项目使用 spring-boot-starter-web,建议使用 spring-ai-starter-mcp-server-webmvc 而非 spring-ai-starter-mcp-server-webflux。

二、配置属性

2.1 通用属性

所有通用属性前缀为 spring.ai.mcp.server:

2.2 MCP 注解属性

MCP 服务器注解提供了一种使用 Java 注解实现 MCP 服务器处理程序的声明式方法。

服务器 mcp 注解属性前缀为 spring.ai.mcp.server.annotation-scanner:

2.3 SSE 属性

所有 SSE 属性前缀为 spring.ai.mcp.server:

出于向后兼容性原因,SSE 属性没有额外的后缀(如 .sse)。

三、特性和能力

MCP 服务器启动器允许服务器向客户端公开工具、资源和提示。它会根据服务器类型自动将注册为 Spring Bean 的自定义能力处理程序转换为同步/异步规范:

3.1 工具

允许服务器公开语言模型可调用的工具。MCP 服务器启动器提供:

  • 变更通知支持

  • Spring AI 工具根据服务器类型自动转换为同步/异步规范

  • 通过 Spring Bean 自动生成工具规范:

@BeanpublicToolCallbackProvidermyTools(...){List<ToolCallback>tools=...returnToolCallbackProvider.from(tools);}

或使用底层 API:

@BeanpublicList<McpServerFeatures.SyncToolSpecification>myTools(...){List<McpServerFeatures.SyncToolSpecification>tools=.
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/2/7 6:48:02

基于STM32单片机智能低压断路器交流电压电流温度检测设计24-259(设计源文件+万字报告+讲解)(支持资料、图片参考_相关定制)_文章底部可以扫码

基于STM32单片机智能低压断路器交流电压电流温度检测设计24-259(设计源文件万字报告讲解)&#xff08;支持资料、图片参考_相关定制&#xff09;_文章底部可以扫码 24-259、STM32智能低压断路器设计-TFT1.44-交流电压电流互感器-DS18B20-KEY-BELL 产品功能描述&#xff1a; 本设…

作者头像 李华
网站建设 2026/2/3 13:17:19

基于51/STM32单片机录音笔语音录放存储音频ISD4004无线APP设计(设计源文件+万字报告+讲解)(支持资料、图片参考_相关定制)_文章底部可以扫码

基于51/STM32单片机录音笔语音录放存储音频ISD4004无线APP设计 51-C284段录音4段播放ISD4004模块麦克音频放大OLED屏按键(无线方式选择)51-C028N无无线-无APP版: 51-C028B蓝牙无线-APP版: 51-C028W-WIFI无线-APP版: 51-C028CAN-视频监控WIFI无线-APP版: 产品功能描述&#xff1…

作者头像 李华
网站建设 2026/2/6 5:27:40

我们的系统经常遇到d3dx10_36.dll丢失找不到问题 免费下载方法分享

在使用电脑系统时经常会出现丢失找不到某些文件的情况&#xff0c;由于很多常用软件都是采用 Microsoft Visual Studio 编写的&#xff0c;所以这类软件的运行需要依赖微软Visual C运行库&#xff0c;比如像 QQ、迅雷、Adobe 软件等等&#xff0c;如果没有安装VC运行库或者安装…

作者头像 李华
网站建设 2026/2/6 14:55:54

Flink 核心算子详解:map / flatMap / filter / process

文章目录一、算子能力对照表二、测试数据三、map&#xff1a;一进一出四、filter&#xff1a;只负责“要不要”五、flatMap&#xff1a;一进多出六、process&#xff1a;最底层、最强大的算子七、如何选择算子&#xff1f;八、总结在学习 Flink 的过程中&#xff0c;map、flatM…

作者头像 李华
网站建设 2026/1/30 13:41:31

基于大数据的淘宝月季销售预测数据可视化系统 爬虫

目录爬虫技术摘要数据处理与分析系统价值开发技术路线相关技术介绍核心代码参考示例结论源码lw获取/同行可拿货,招校园代理 &#xff1a;文章底部获取博主联系方式&#xff01;爬虫技术摘要 淘宝月季销售预测数据可视化系统的爬虫模块旨在高效获取商品销售、评价及用户行为数据…

作者头像 李华
网站建设 2026/2/6 16:15:57

基于python框架的房产交易服务平台的设计与实现

目录房产交易服务平台的设计与实现摘要开发技术路线相关技术介绍核心代码参考示例结论源码lw获取/同行可拿货,招校园代理 &#xff1a;文章底部获取博主联系方式&#xff01;房产交易服务平台的设计与实现摘要 该平台基于Python框架开发&#xff0c;旨在为用户提供高效、安全的…

作者头像 李华