尧图网络 高端网站定制 · 原创设计
免费咨询热线
400-888-6620
免费获取方案
Spring AI MCP Server SSE 端点无响应?3 条社区验证过的修复路径
Spring AI MCP Server SSE 端点无响应3 条社区验证过的修复路径【免费下载链接】spring-aiAn Application Framework for AI Engineering项目地址: https://gitcode.com/GitHub_Trending/spr/spring-ai服务正常启动但浏览器或 Postman 访问localhost:8080/sse始终挂住控制台一片安静。这里给出 3 条修复路径按改动成本从低到高排列第一条通常就能解决问题。症状速判SSE 端点挂起时先看这 4 项先确认你的卡点是否和这里一致预期行为实际表现访问/sse立即收到event: endpoint事件连接建立后一直等待无内容返回也无 404启动日志打印 SSE transport 初始化信息无任何报错也看不到 transport 相关日志Postman / 浏览器可直接验证两者都表现为能连通、没数据像在服务但实际没在stdio 方式启动同一组 Tool正常工作关键点在最后两项stdio 能跑说明你的 Tool 定义和 MCP Server 核心没问题问题只出在 HTTP 传输层而连得上却无响应且零报错是这类问题的典型指纹。根因拆解从版本混用看起表层原因新旧 artifact 混用。1.0.0-M6 时代的旧坐标spring-ai-mcp-server-webmvc-spring-boot-starter和 M7 起的spring-ai-starter-mcp-server-webmvc同时出现在依赖树里时自动配置类和 starter 的装配预期对不上SSE transport 的RouterFunctionBean 可能根本没被注册但启动过程完全合法、不抛错。社区多位开发者交叉验证过这一现象是社区反馈中命中率最高的原因。深层原因响应式容器与 Servlet 应用的错配。WebFlux 版 SSE transport 在源码里注册的是 WebFlux 的RouterFunctionBean见 McpServerSseWebFluxAutoConfiguration.java它需要 Netty 等响应式容器来承载。如果你的应用是默认的非响应式 Servlet 应用这个 Bean 创建后没有任何容器会去拾取它——端点自然访问不到而且全程没有异常可查。还有一层容易漏当前版本的McpServerProperties里protocol默认值是STREAMABLE见 McpServerProperties.java。SSE 传输的自动装配条件里包含protocolSSE不设这行SSE 端点同样不会挂载。修复路径从改动最小的开始把依赖换成 WebMVC 传输改动最小如果你的应用是普通 Servlet 栈、又不想动任何启动配置走这条。dependencies !-- ... 删除旧的 spring-ai-mcp-server-*-starter 坐标 -- dependency groupIdorg.springframework.ai/groupId artifactIdspring-ai-starter-mcp-server-webmvc/artifactId /dependency /dependenciesspring: ai: mcp: server: protocol: SSE # 必须显式指定默认是 STREAMABLE重启后访问/sse应立刻看到event: endpoint其 data 是消息回传地址默认/mcp/message。代价这条路径把 SSE 传输绑定在 Servlet 栈上如果你的工程未来要整体切响应式届时需要重新选择。若执行上一步后仍然无响应切换到下一条路径 →用 WebFlux 并真正启用响应式容器如果你就是想在响应式栈上跑 SSE依赖必须只留 webflux并且把整个应用切到响应式dependency groupIdorg.springframework.ai/groupId artifactIdspring-ai-starter-mcp-server-webflux/artifactId /dependencyspring: main: web-application-type: reactive ai: mcp: server: protocol: SSE type: ASYNCweb-application-type: reactive这一行是社区反馈里最容易漏的它让 Spring Boot 用 Netty 而非 Servlet 容器启动WebFlux 版RouterFunction才会真正被挂载。验证方法同上/sse应立即推送event: endpoint。代价整个应用进入响应式环境OpenFeign 客户端在此模式下不可用Spring Cloud Gateway 的转发链路也要重新评估。若上面两条都通了但你发现 MCP 客户端侧也在迁移考虑第三条路径 →顺势迁到 Streamable HTTP 传输当前代码里 SSE transport 已被标注Deprecated(since 2.0.0, forRemoval true)见上文两个自动配置类的注解而 Streamable HTTP 是默认协议。社区多位开发者反馈MCP 规范本身也把旧的 SSE 传输标记为 deprecatedStreamable HTTP 是长期方向。如果客户端版本允许直接删掉protocol配置项依赖保持spring-ai-starter-mcp-server-webmvc按 Streamable HTTP 端点验证向默认端点发initialize请求应返回协议协商响应。代价这是协议升级而非配置修复所有 MCP 客户端必须同步支持老客户端会全部失联需要灰度切换。踩坑清单❌ M6 旧坐标和 M7 新坐标混用 → 自动配置与 starter 对不上SSE 端点静默缺失❌ 忘了显式设置spring.ai.mcp.server.protocol: SSE→ 默认走 STREAMABLESSE 条件装配直接不生效❌ 同时引入 webmvc 和 webflux 两个 MCP Server starter → 两个自动配置都满足条件由加载顺序决定谁生效行为不可预期❌ 切了web-application-type: reactive后还依赖 OpenFeign → 客户端在响应式栈下无法工作调用直接失败❌ 用 Postman 普通 GET 测/sse就判定没数据 → SSE 是长连接流工具侧要开启事件流解析才能看到推送内容收尾当前版本下最省事的组合Servlet 应用 spring-ai-starter-mcp-server-webmvc 显式protocol: SSE。考虑到源码里 SSE transport 已标记移除、官方默认切向 Streamable HTTP建议客户端允许时尽早迁移届时旧路径自然退役。【免费下载链接】spring-aiAn Application Framework for AI Engineering项目地址: https://gitcode.com/GitHub_Trending/spr/spring-ai创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
RELATED

相关推荐

基于 Cloudflare Agents 与 Telnyx WebRTC 构建电话语音 Agent:从浏览器桥接到 PSTN 通话的完整实践

基于 Cloudflare Agents 与 Telnyx WebRTC 构建电话语音 Agent:从浏览器桥接到 PSTN 通话的完整实践

基于 Cloudflare Agents 与 Telnyx WebRTC 构建电话语音 Agent:从浏览器桥接到 PSTN 通话的完整实践 【免费下载链接】agents Build and deploy AI Agents on Cloudflare 项目地址: https://gitcode.com/GitHub_Trending/agents1/agents 导读 本文围绕仓库…

📅 2026/9/18 15:30:36
Storybook 自动生成的 ArgTypes:解码 Generated ArgTypes 数据结构的每个字段

Storybook 自动生成的 ArgTypes:解码 Generated ArgTypes 数据结构的每个字段

Storybook 自动生成的 ArgTypes:解码 Generated ArgTypes 数据结构的每个字段 导读 本文以 Storybook 官方文档片段 storybook-generated-argtypes.md 展示的自动生成 ArgTypes 对象为切入点,逐字段剖析 Storybook 从组件源码推断出的 argTypes 数据结…

📅 2026/9/18 15:30:36
3 步开卖数字产品:Gumroad 零门槛销售平台完整上手路径

3 步开卖数字产品:Gumroad 零门槛销售平台完整上手路径

3 步开卖数字产品:Gumroad 零门槛销售平台完整上手路径 【免费下载链接】gumroad See what sticks 项目地址: https://gitcode.com/GitHub_Trending/gumr/gumroad 刚做完一门网课,不知道挂哪儿卖?在 Gumroad 上传文件、设个价&#xf…

📅 2026/9/18 15:25:35
MORE NEWS

更多资讯

📰

告别玄学排障:从重启大法到系统化故障排查方法论

前几年我带团队接手一套别人留下的老系统,几乎每隔几天就要半夜爬起来处理一次报警。每次都是同样的症状:某个服务不响应了,上去重启一下进程,过一会儿就恢复正常。大家嘴上不说,心里都默认这系统有点"脾气"…

📰

基于Spring Boot+Vue+MyBatis的前后端分离在线考试系统实战

几乎每个学Java的开发者,在简历上都要写一个“单体架构JSPJQuery”的老旧项目。不是说这类项目没有价值,而是到了2025年,前后端分离已经是企业开发的事实标准,如果能在校招或面试时拿出一个真正按企业规范拆分的完整系统&#xff…

📰

MicroFlex e190用户手册实战:从故障码表到参数调试与接线要点

简介:这是一份ABB MicroFlex e190伺服驱动器的中文用户手册,面向自动化设备调试、电气设计与维护工程师,可解决高精度定位控制场景下的安装配置、参数整定与故障排查等问题。资源包共1个PDF文件,大小5.86MB,为官方版本…

📰

Cadence版图设计到Calibre签核的工业级实操链

简介:本资源为西北工业大学集成电路CAD课程配套实验报告,面向微电子、集成电路设计及相关专业本科生与初学者,系统覆盖版图设计、工艺验证与匹配技术等核心实践环节。报告包含四大模块:二输入与非门的电路绘制、版图实现及DRC/LVS…

📰

【ComfyUI】Qwen + Lotus 深度引导图生图

今天带来的是一个基于 ComfyUI 的工作流展示,该流程的目标是通过加载扩散模型与VAE组件,对输入图像进行潜在空间的编码与解码,再结合采样器、调度器以及条件控制实现生成与变换。效果图能够直观展现输入图像如何在潜在层级被重构与翻转,最终输出结果存储到指定目录中。 整个…

📰

Jira实战:工作流、角色权限与JQL查询深度指南

简介:Jira作为Atlassian公司主流的项目与任务管理工具,广泛应用于软件开发团队的敏捷协作与缺陷跟踪。这份操作说明书定位零基础新手,手把手讲解创建任务、权限分配、工作流状态流转、面板配置与迭代管理等核心操作,并配有截图辅助…

TODAY

今日更新

THIS WEEK

本周精选

THIS MONTH

本月热门

读完文章,想聊聊您的网站?

告诉我们您的行业与需求,资深顾问一对一梳理方案与报价,全程免费。

📞 💬