🚀 Spring MCP服务器(Jetty+Maven)
轻量级的 模型上下文协议(MCP)服务器 使用 Spring框架 并部署在 喷气,作为传统Java web应用程序的一部分运行。
该项目使用注释驱动的注册和基于servlet的请求管道通过MCP实现动态工具执行。
______________________________________________________________________
📌 特性
- ✅ 自定义MCP服务器实现
- ✅ 基于注释的工具定义
- ✅ 基于Servlet的请求处理(
/mcp) - ✅ Maven+Jetty集成
- ✅ 轻量级,可部署为WAR
- ✅ 易于使用新工具进行扩展
______________________________________________________________________
🛠️ 技术栈
- Java 17+
- Spring框架(基于XML的配置)
- 梅文
- 码头服务器
- Servlet API
______________________________________________________________________
📁 项目结构
src/
└── main/
├── java/com/spring/
│ ├── mcp/ # MCP core logic
│ ├── demo/ # Sample controller
│ └── ...
├── resources/
│ └── spring/ # Spring XML configs
└── webapp/
└── WEB-INF/
└── web.xml______________________________________________________________________
▶️ 本地运行
1.克隆存储库
git clone https://github.com/your-username/your-repo.git
cd your-repo______________________________________________________________________
2.建设项目
mvn clean install______________________________________________________________________
3.使用Jetty运行
mvn jetty:run______________________________________________________________________
4.访问申请
http://localhost:8080______________________________________________________________________
📡 MCP端点
POST /mcp所有MCP请求均通过以下方式处理:
McpDelegatingServlet______________________________________________________________________
🧪 添加新工具
使用注释创建方法:
@McpTool(name = "exampleTool")
public String example(
@McpToolParam(name = "input") String input
) {
return "Processed: " + input;
}就是这样——该工具将在启动时自动注册。
______________________________________________________________________
🚀 部署
📦 构建WAR文件
mvn clean packageWAR文件将在以下位置生成:
target/your-app-name.war______________________________________________________________________
🌐 在码头上部署(独立)
选项1:使用码头住宅
- 复制WAR文件:
cp target/your-app-name.war /webapps/- 启动码头:
java -jar start.jar______________________________________________________________________
选项2:使用嵌入式Jetty(已配置)
mvn jetty:run______________________________________________________________________
🐳 Docker部署(可选)
# Build image
docker build -t mcp-server .
# Run container
docker run -p 8080:8080 mcp-server______________________________________________________________________
🔗 详细解释
👉 深入了解架构、工具注册和MCP流程:
______________________________________________________________________
🔐 配置说明
- 在以下位置更新Spring配置:
- application-context.xml - dispatcher-servlet.xml
- 避免提交敏感数据
______________________________________________________________________
🧩 扩展项目
- 通过注释添加新工具
- 插件缓存(Redis/Memcached)
- 添加身份验证层
- 启用异步/流式执行
______________________________________________________________________
📄 许可证
MIT许可证
______________________________________________________________________
👨💻 作者
曼吉什·帕蒂尔 后端工程师|Java |Spring |系统设计
______________________________________________________________________
