您现在的位置是:首页 > 文章详情

🔥 MCP Server Java 开发的体验比较(Spring MCP 和 Solon MCP)

日期:2025-04-23点击:88

目前已知的两个 mcp-server java 应用开发框架(ID类的,封装后体验都比较简洁):

  • spring-ai-mcp,支持 java17 或以上
  • solon-ai-mcp,支持 java8 或以上(也支持集成到 springboot2, jfinal, vert.x 等第三方框架)

下面分别用两个框架,构建一个天气查询的 mcp 工具服务。

1、spring ai mcp server(支持 java17 或以上)

添加关键的依赖包(版本号与 springboot 各自独立)

 <dependency> <groupId>org.springframework.ai</groupId> <artifactId>spring-ai-mcp-server-spring-boot-starter</artifactId> <version>1.0.0-M6</version> </dependency> 

添加配置(为服务端点命名)

 spring.ai.mcp.server.name: jdbc-mcp-server 

示例代码(构建服务,然后发布为 ToolCallbackProvider)

 @Service public class JdbcQueryService { @Tool(description = "查询天气预报") public String getWeather(@ToolParam(description = "城市位置") String location) { return "晴,14度"; } } @Configuration public class McpConfig { @Bean ToolCallbackProvider jdbcQueryTools(JdbcQueryService jdbcQueryService) { return MethodToolCallbackProvider .builder() .toolObjects(jdbcQueryService) .build(); } } 

2、solon ai mcp server(支持 java8 或以上)

添加关键的依赖包(版本号随 solon 一致)

 <dependency> <groupId>org.noear</groupId> <artifactId>solon-ai-mcp</artifactId> <version>3.2.0</version> </dependency> 

示例代码(跟 mvc 的开发非常像)

 @McpServerEndpoint(name="mcp-case1", sseEndpoint = "/case1/sse") public class McpServerTool { @ToolMapping(description = "查询天气预报") public String getWeather(@ToolParam(description = "城市位置") String location) { return "晴,14度"; } } 

solon ai mcp server 支持多端点。就是一个服务就可提供多组工具(供不同的场景使用,灵活性更好):

  • 可以有一组关于天气的工具
  • 可以再有一组关于地图的工具

3、总结

开发体验比较

比较 srping-ai-mcp solon-ai-mcp
开发 基于组件开发 基于组件开发
配置 通过 yaml 配置 组件,即是配置(也可引用 yaml 配置)
发布 通过配置器发布为 ToolCallbackProvider 组件,即是发布
jdk要求 jdk17或以上 jdk8或以上
端点支持 好像只能一个(一个服务内) 支持多端点(一个服务内)

solon-ai-mcp 的开发相对更简洁,三位一体。且支持多端点。

原文链接:https://www.oschina.net/news/346208
关注公众号

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。

持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。

转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。

文章评论

共有0条评论来说两句吧...

文章二维码

扫描即可查看该文章

点击排行

推荐阅读

最新文章