mcpField
S
Spring MCP Bridge

Spring MCP Bridge

本地服务
github.com/brunosantoslab开发工具580 周前更新

关于 Spring MCP Bridge

Spring MCP Bridge 扫描 Spring Boot 项目中的 REST 端点,并生成将请求转发至原 API 的 Python/FastAPI MCP 服务。适用于希望将现有 Java API 提供给 MCP 客户端的开发者;无需修改原项目代码。

主要功能

  1. 01扫描 REST 控制器与端点
  2. 02提取参数、模型和返回类型
  3. 03将 Java 类型转换为 JSON Schema
  4. 04生成 Python/FastAPI 服务
  5. 05从 Javadoc 提取工具说明
  6. 06生成 README 和使用说明

适用场景

  1. 01为现有 Spring Boot API 生成 MCP 服务
  2. 02将 API 端点提供给 MCP 客户端调用
  3. 03基于现有 Javadoc生成工具描述

MCP 相关

生成的服务将 Spring REST 请求映射为 MCP 调用,并转发至 Spring Boot 应用。服务提供 MCP schema,供兼容的客户端连接。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

暂未收录安装方式

我们还没有获取到这个服务的安装包或远程地址,请按项目 README 中的说明安装。

代码仓库

工具

还没有获取到工具列表

本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。

详细介绍

Spring MCP Bridge

License Python Spring

Spring MCP Bridge 是一款工具,可自动将 Spring Boot 应用中的 REST 端点转换为 MCP(Message Conversation Protocol)服务,让 Claude、Cursor 等 AI 助手及其他兼容 MCP 的工具能够直接与你的 API 交互。

*目前不包含身份验证。如果你的 Spring Boot API 需要身份验证,则需要修改处理程序代码,以添加适当的标头或令牌。

📖 概述

将现有 API 集成到 AI 助手通常需要手动编写代码或进行复杂配置。Spring MCP Bridge 会自动扫描你的 Spring Boot 项目,并生成可直接使用的 MCP 服务,从而消除这些复杂步骤。

✨ 功能
  • 自动扫描:发现所有 REST 端点(@RestController、@GetMapping 等)
  • 零配置:无需修改现有 Spring Boot 代码
  • 保留模型:将请求和响应模型作为 MCP 工具保留
  • 提取 Javadoc:使用现有文档完善 MCP 工具描述
  • 完整文档:生成 README 和清晰的使用说明

🚀 安装

# Clone the repository
git clone https://github.com/brunosantos/spring-mcp-bridge.git

# Enter the directory
cd spring-mcp-bridge

🛠️ 使用方法

  1. 扫描 Spring Boot 项目:
python spring_boot_mcp_converter.py --project /path/to/spring-project --output ./mcp_server --name MyAPI
  1. 运行生成的 MCP 服务:
cd mcp_server
pip install -r requirements.txt
python main.py
  1. 通过 MCP 客户端连接:
    • 配置 MCP 客户端(Claude、Cursor 等),使用 http://localhost:8000
    • MCP 架构将在 http://localhost:8000/.well-known/mcp-schema.json 提供

📋 参数

参数描述默认值
--projectSpring Boot 项目的路径(必需)
--output输出目录./mcp_server
--name应用名称SpringAPI
--debug启用调试日志False

💻 示例

python spring_mcp_bridge.py --project ~/projects/my-spring-api --output ./mcp_server --name MyAPI

该工具将:

  1. 扫描 Spring Boot 项目中的 REST 控制器
  2. 识别模型类型、参数和返回类型
  3. 生成功能完整的 Python/FastAPI MCP 服务
  4. 创建描述所有端点的兼容 MCP 架构

🔄 工作原理

  1. 扫描:分析 Java 源代码,提取 REST 端点的元数据
  2. 转换:将 Java 类型转换为 JSON Schema 类型,以兼容 MCP
  3. 生成:创建 FastAPI 应用,将 MCP 调用映射为 Spring REST 调用
  4. 转发:将 MCP 客户端发出的请求路由到 Spring Boot 应用

🔍 支持的 Spring Boot 功能

  • REST 控制器(@RestController、@Controller)
  • HTTP 方法(@GetMapping、@PostMapping、@PutMapping、@DeleteMapping、@PatchMapping)
  • 请求参数(@RequestParam)
  • 路径变量(@PathVariable)
  • 请求体(@RequestBody)
  • Java 模型和 DTO

⚙️ 配置

可以通过编辑 main.py 文件配置生成的 MCP 服务:

# The Spring Boot base URL - modify this to match your target API
SPRING_BASE_URL = "http://localhost:8080"

🧪 测试

测试 MCP 服务:

  1. 确保 Spring Boot 应用正在运行
  2. 启动 MCP 服务
  3. 访问 http://localhost:8000/docs 查看 FastAPI 文档
  4. 查看 http://localhost:8000/.well-known/mcp-schema.json 中的 MCP 架构
  5. 使用 Claude 等 MCP 客户端连接

🤝 参与贡献

欢迎贡献!请随时提交 Pull Request。

  1. Fork 此仓库
  2. 创建功能分支(git checkout -b feature/amazing-feature)
  3. 提交更改(git commit -m 'Add some amazing feature')
  4. 将更改推送到分支(git push origin feature/amazing-feature)
  5. 创建 Pull Request

📄 许可证

本项目基于 MIT License 授权,详情请参阅 LICENSE 文件。

👨‍💻 作者

Bruno Santos

🙏 致谢

  • 灵感来源于 FastAPI-MCP 以及不断发展的 MCP 兼容工具生态
  • 感谢 Spring Boot 和 FastAPI 社区

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。