Spring MCP服务器
模型上下文协议是一个开放标准,使开发人员能够在其数据源和AI驱动的工具之间建立安全的双向连接。 该架构很简单:开发人员可以通过MCP服务器公开他们的数据,也可以构建连接到这些服务器的AI应用程序(MCP客户端)。
先决条件
- Java 21
- Maven 3.9.9
- 弹簧靴3.4.4
- 春季AI 0.4.0
- Spring模型上下文协议服务器
- Claude桌面应用程序
入门指南
在这个例子中,我们将创建一个简单的Spring Boot应用程序,作为MCP服务器。
1.创建Spring Boot应用程序
使用Spring Initializr或您喜欢的方法创建新的Spring Boot应用程序。 您可以使用以下依赖项:
- Spring模型上下文协议服务器
创建记录
创建一个记录类,该类将表示您希望通过MCP服务器公开的信息。
package org.sehn.spring_mcp;
public record Info(String title, String url) {
}创建服务
创建一个服务类,该类将提供您希望通过MCP服务器公开的信息。
package org.sehn.spring_mcp;
import jakarta.annotation.PostConstruct;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.ai.tool.annotation.Tool;
import org.springframework.stereotype.Service;
import java.util.ArrayList;
import java.util.List;
@Service
public class InfoService {
private static final Logger logger = LoggerFactory.getLogger(InfoService.class);
private List information = new ArrayList<>();
@Tool(name = "dr_get_information", description = "Get a list of information about Deepanshu Rawat")
public List getInformation() {
return information;
}
@Tool(name = "dr_get_info", description = "Get a specific information about Deepanshu Rawat")
public Info getInfo(String title) {
return information.stream().filter(info -> info.title().equals(title)).findFirst().orElse(null);
}
@PostConstruct
public void init() {
information.addAll(List.of(
new Info("Portfolio", "https://bento.me/deepanshu-rawat6"),
new Info("GitHub", "https://github.com/deepanshu-rawat6"),
new Info("LinkedIn", "https://www.linkedin.com/in/deepanshu-rawat6/"),
new Info("Twitter", "https://twitter.com/deepanshuurawat")
));
}
}创建工具回调
在 SpringMCPApplication 或者您的主应用程序类,创建一个工具回调来处理来自MCP服务器的请求。
@Bean
public List deepanshuTools(InfoService infoService) {
return List.of(ToolCallbacks.from(infoService));
}添加配置
创建一个配置类来配置MCP服务器。
spring.application.name=spring_mcp
spring.main.web-application-type=none
spring.ai.mcp.server.name=spring_mcp
spring.ai.mcp.server.version=0.0.1
spring.main.banner-mode=off
logging.pattern.console=2.构建应用程序
只需运行以下命令即可构建应用程序:
mvn clean package -DskipTests3.进一步配置
现在,为了使用MCP服务器,您需要在您的 claude_desktop_config.json:
{
"mcpServers": {
"": {
"command": "java",
"args": [
"-jar",
"
"
]
}
}
}替换 ` 使用您的MCP服务器的名称和 ` 其中包含构建应用程序后创建的jar文件的路径。
例如,我的MCP服务器的名称是 spring_mcp.
4.测试MCP服务器
现在,开始 Claude Desktop 提示区域下方将出现一些新内容:
已安装的MCP服务器
可用的MCP工具
现在,在点击提示后,例如: Get me the information about Deepanshu Rawat,您将收到以下警报 third-party 正在使用的工具,只需接受当前聊天的提醒。 然后你会得到这样的回应:


