【Spring AI】基于 sse 实现 MCP Server
一、maven 依赖
在 pom.xml 文件中增加 spring-boot-starter-web 和 spring-ai-mcp-server-webmvc-spring-boot-starter 依赖,如下:
<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId><version>3.2.0</version>
</dependency><dependency><groupId>org.springframework.ai</groupId><artifactId>spring-ai-mcp-server-webmvc-spring-boot-starter</artifactId><version>1.0.0-M6</version>
</dependency>
二、application.yml
在 application.yml 中增加如下配置:
spring:ai:mcp:server:name: my-mcp-server # MCP Server 的名称version: 0.0.1
三、代码
- 定义 MyMcpService,代码如下:
@Service
public class MyMcpService {@Tool(description = "打招呼")public String hello(@ToolParam(description = "name") String name) {return name + ",您好!欢迎使用 MCP Server";}
}
- 将 MyMcpService 注册到 MCP Tool 中,代码如下:
@SpringBootApplication
public class Application {@BeanToolCallbackProvider whatcellTools(MyMcpService myMcpService) {return MethodToolCallbackProvider.builder().toolObjects(myMcpService).build();}public static void main(String[] args) {SpringApplication.run(Application.class, args);}
}
四、使用 MCP Inspector 测试连接
假设 MCP Server 是在本机上的 9000 端口上运行,那么 MCP Inspector 如下:
5、如何将已有的 MCP Server 从 sse 升级到 streamableHttp
可参考 《【Spring AI】MCP Server 从 sse 升级到 streamableHttp》