article
README
🚀 Spring Boot AI 云flare R2 MCP 服务器
Spring Boot AI 云flare R2 MCP 服务器是基于 Spring Boot 和 Spring AI 的 Model Context Protocol (MCP) 服务器实现,它集成了 Cloudflare R2 对象存储服务,为相关操作提供便利。
🚀 快速开始
- 克隆仓库:
git clone https://github.com/lskun/spring-boot-ai-cloudflare-r2-mcp-server.git
- 设置环境变量:
export R2_ACCESS_KEY_ID=your_access_key_id
export R2_SECRET_ACCESS_KEY=your_secret_access_key
export R2_ENDPOINT=your_r2_endpoint
- 构建项目:
mvn clean package
- 运行集成测试:
# 运行 R2ServiceClientTest 中的所有测试
mvn test -Dtest=R2ServiceClientTest
# 或运行特定的测试方法
mvn test -Dtest=R2ServiceClientTest#testListBuckets
测试套件涵盖了所有 R2 操作的全面测试:
- 桶操作(列出、创建、删除)
- 对象操作(上传、下载、列出、删除)
- 内容格式处理(文本、Base64、文件路径)
- 对象元数据管理
✨ 主要特性
- 完全支持 Cloudflare R2 对象存储操作
- 整合 Spring AI 的 MCP 服务器
- 支持多种文件类型(文本、二进制等)
- 具备全面的测试覆盖
- 易于配置和部署
📦 安装指南
先决条件
- JDK 17 或更高版本
- Maven 3.6 或更高版本
- Cloudflare R2 账户及凭证
配置
在 application.properties 文件中添加或修改以下内容,以设置您的 R2 凭证:
r2.access-key-id=${R2_ACCESS_KEY_ID}
r2.secret-access-key=${R2_SECRET_ACCESS_KEY}
r2.endpoint=${R2_ENDPOINT}
📚 详细文档
API 参考
该服务提供以下主要功能:
- 列出桶
- 创建/删除桶
- 上传/下载对象
- 列出桶中的对象
- 获取对象元数据
- 删除对象
开发信息
项目使用 Spring Boot 3.4.4 和 Spring AI 1.0.0 - M6。主要组件包括:
R2ServiceClient:执行 R2 操作的核心服务类McpConfiguration:MCP 工具配置- 所有操作的集成测试
🔧 技术细节
项目结构
src/main/java/com/lskun/mcp/
├── SpringBootAiCloudflareR2McpServerApplication.java(应用程序入口)
├── config/
│ └── McpConfiguration.java(MCP 配置类)
└── service/
└── R2ServiceClient.java(R2 服务客户端)
🤝 贡献指南
- 叉仓库
- 创建功能分支
- 提交您的更改
- 推送到分支
- 创建新的 Pull Request
📄 许可证
本项目根据 MIT License 许可证发布,具体内容请参阅 LICENSE 文件。
📞 联系方式
如果您有任何问题或建议,请随时创建一个问题。
微信扫一扫