关于 Spring Boot Sample MCP Server
面向开发者的 Spring Boot MCP 服务示例,用于构建和测试与 AI 助手的集成。它展示基础服务配置,并可通过 MCP Inspector 检查和调试。
主要功能
- 01Spring Boot MCP 服务示例
- 02通过 REST API 交互
- 03包含单元测试
- 04使用 MCP Inspector 测试和调试
适用场景
- 01学习基础 Spring Boot MCP 配置
- 02用 MCP Inspector 测试服务请求
- 03在 IDE 中调试运行中的服务
MCP 相关
它向 MCP 客户端提供服务能力,供支持 MCP 的助手使用。MCP Inspector 可发送请求并查看响应和数据流。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
我们还没有获取到这个服务的安装包或远程地址,请按项目 README 中的说明安装。
工具
本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。
详细介绍
这是一个使用 Spring Boot 实现的 Model Context Protocol(MCP)服务示例。该服务旨在与 Model Context Protocol Inspector 配合使用,以便进行测试和调试。它提供了一个简单的 REST API,用于与服务交互,并演示如何搭建基本的 Spring Boot 应用程序。项目中还包含单元测试,用于验证服务的功能。
📋 目录
🧠 什么是 MCP?
Model Context Protocol(MCP)是一项开放标准,定义了 AI 模型与外部工具和数据源的通信方式。它为 Claude 等 AI 助手访问以下内容提供了标准化方式:
- 🌐 实时信息
- 📊 自定义数据库
- 🔄 API 和服务
- 📁 文件系统
可以将 MCP 理解为“面向 AI 的 USB 标准”——它提供了一个通用接口,使任何 AI 模型都能通过一致的协议与各种工具交互。 在 Spring Boot 中使用 MCP 的优势:
- 🔄 无缝集成:轻松向 AI 助手开放应用程序功能
- 🛠️ 工具定义:使用简单的注解定义自定义工具
- 🚀 Spring Boot 的简洁性:利用 Spring 的依赖注入和配置管理
- 📈 增强 AI 能力:让 AI 模型访问组织的实时数据和服务
要求
- Java 17+
- Maven
- MCP Inspector(可选,用于测试)
例如:Claude Desktop 配置
{
"mcpServers": {
"sample-mcp-server": {
"command": "java",
"args": [
"-jar",
"sample-mcp-server-0.0.1-SNAPSHOT.jar",
"--port",
"8080",
"--host",
"localhost"
],
"env": {
"JAVA_TOOL_OPTIONS": "-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=*:5005"
}
}
}
}
注意:JAVA_TOOL_OPTIONS 环境变量用于设置远程调试的 JVM 选项。可按需更改地址和端口。
💻 开发
调试
安装 MCP Inspector
npm -g install @modelcontextprotocol/inspector
运行 MCP Inspector 进行测试
构建 MCP 服务
mvn clean package
运行 MCP Inspector
npx @modelcontextprotocol/inspector \
-e JAVA_TOOL_OPTIONS=-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=*:5005 \
java -jar target/sample-mcp-server-<version>-SNAPSHOT.jar \
--port 8080 --host localhost
注意:JAVA_TOOL_OPTIONS 环境变量用于设置远程调试的 JVM 选项。可按需更改地址和端口。
现在,你可以使用 MCP Inspector 测试和调试 Spring Boot MCP 服务。Inspector 提供了一个易于使用的界面(浏览器),可与服务交互并直观呈现交换的数据。你可以使用 Inspector 向服务发送请求、查看响应,并分析客户端与服务之间的数据流。
要调试服务,可以在代码中设置断点,并使用 IDE 中的调试器逐步执行代码、检查变量。使用 JAVA_TOOL_OPTIONS 环境变量中指定的远程调试选项,将调试器连接到正在运行的服务。
Spring AI 扩展了 MCP Java SDK,提供了生产力增强功能,让构建 MCP 服务变得简单直接 [1]。
🔧 在 Claude Desktop 中使用此服务
此示例服务可与 Claude Desktop 或其他支持 MCP 的 AI 助手集成。在 AI 助手中配置服务后:
- 启动此 Spring Boot MCP 服务
- 打开 Claude Desktop,并在设置中启用该服务
- 向 Claude 提出需要使用此服务所提供工具的问题
- 查看 Claude 如何无缝使用该服务访问数据并执行操作
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。