- Explore MCP Servers
- springboot-MCPserver-JUnit
Springboot Mcpserver Junit
What is Springboot Mcpserver Junit
springboot-MCPserver-JUnit is a template project that integrates Spring Boot, MCP (Model Context Protocol), and JUnit for unit testing. It supports both STDIO and SSE modes for client-server communication.
Use cases
Use cases include developing RESTful services, implementing real-time data streaming applications, and creating automated testing environments with JUnit.
How to use
To use springboot-MCPserver-JUnit, configure your Java environment to use Java 17 or higher, and Maven 3.8.1. For STDIO mode, run the command with specified arguments and environment variables. For SSE mode, connect to the SSE endpoint using the provided URL format.
Key features
Key features include support for both STDIO and SSE modes, integration with JUnit for unit testing, and customizable message and SSE endpoints.
Where to use
springboot-MCPserver-JUnit can be used in various fields such as web application development, microservices architecture, and any project requiring efficient client-server communication using the MCP protocol.
Clients Supporting MCP
The following are the main client software that supports the Model Context Protocol. Click the link to visit the official website for more information.
Overview
What is Springboot Mcpserver Junit
springboot-MCPserver-JUnit is a template project that integrates Spring Boot, MCP (Model Context Protocol), and JUnit for unit testing. It supports both STDIO and SSE modes for client-server communication.
Use cases
Use cases include developing RESTful services, implementing real-time data streaming applications, and creating automated testing environments with JUnit.
How to use
To use springboot-MCPserver-JUnit, configure your Java environment to use Java 17 or higher, and Maven 3.8.1. For STDIO mode, run the command with specified arguments and environment variables. For SSE mode, connect to the SSE endpoint using the provided URL format.
Key features
Key features include support for both STDIO and SSE modes, integration with JUnit for unit testing, and customizable message and SSE endpoints.
Where to use
springboot-MCPserver-JUnit can be used in various fields such as web application development, microservices architecture, and any project requiring efficient client-server communication using the MCP protocol.
Clients Supporting MCP
The following are the main client software that supports the Model Context Protocol. Click the link to visit the official website for more information.
Content
Springboot + MCP + JUnit 模板项目
使用springboot快速构建一个mcp项目,项目支持 JUNIT单元测试。
模式支持: STDIO 和 SSE
解说视频:
- 全网首发:从零搭建 Springboot+MCP+JUnit 项目 【搭配CherryStudio】BV1qUXkYRE6C
- 全网首发:Springboot+MCP(SSE)+JUnit 从搭建到上线 BV1rSXWYGEVz
开发环境
- 开发IDE: IDEA
- java版本: JAVA17 (Spring官方要求必须java17+)
- maven版本: 3.8.1 (太高引入项目时可能报错,请选择适当版本)
参考文档资料
- MCP官网-协议 (必读文档)
- MCP官网-编码指南
- Spring官网
客户端测试方案
1. 对于STDIO客户端配置方式:
命令(Command): java 参数(Arguments): -jar -Dfile.encoding=UTF-8 -Dspring.ai.mcp.server.stdio=true AbsolutePath/**/xxx.jar 环境(Environments): env1=xxx env2=yyy
指令是java(如果本地主环境不是17+,注意切换);
参数file.encoding指定System.in和System.out为UTF-8编码,避免编码问题;
参数spring.ai.mcp.server.stdio表示以stdio的方式启用该服务;
环境配置,是将配置写入当前系统环境,以供当前程序调取。
2. 对于SSE客户端配置方式:
SSE地址填写如下链接即可 http://主机地址:端口/sse
额外可选功能的探索
1. 修改消息端点
配置文件参见:McpServerProperties
spring.ai.mcp.server.sseMessageEndpoint=/mcp/message
2. 修改sse端点
原始的sse端点在/sse,而配置文件没有提供sse端点的配置方式,所以需要重新注入 ServerMcpTransport 来换掉原来的。
注意下面两个Bean配置都要加,因为自动注入文件 MpcWebMvcServerAutoConfiguration 中,对整个注册的注入条件是
@ConditionalOnMissingBean(ServerMcpTransport.class),导致下面两个bean都不会注入
private final String SSE_ENDPOINT = "/sse";
@Bean
@ConditionalOnMissingBean
public WebMvcSseServerTransport webMvcSseServerTransport(ObjectMapper objectMapper,
McpServerProperties serverProperties) {
return new WebMvcSseServerTransport(objectMapper, serverProperties.getSseMessageEndpoint(), SSE_ENDPOINT);
}
@Bean
public RouterFunction<ServerResponse> mvcMcpRouterFunction(WebMvcSseServerTransport transport) {
return transport.getRouterFunction();
}
3. 一服务多端点?
需要重新注入多个 McpSyncServer ,详见类 MpcServerAutoConfiguration 。
因为多端点可能会涉及到的东西非常多,感兴趣的可以自己研究,我就只提供这样的指引啦!
4. SSE授权?
在2025.03.26 的MCP官方协议文档中,更新了鉴权方案,
期待Spring的更新。
Bye.ヾ(•ω•`)o
Dev Tools Supporting MCP
The following are the main code editors that support the Model Context Protocol. Click the link to visit the official website for more information.










