AI对象存储服务

基于Spring Boot和Spring AI的Model Context Protocol (MCP)服务器实现,提供与Cloudflare R2对象存储服务的集成。

  • by lskun
  • Java
  • 本地部署
  • 1 星标
  • 更新于
在 GitHub 查看 lskun/spring-boot-ai-cloudflare-r2-mcp-server

使用说明

Spring Boot AI Cloudflare R2 MCP服务器

英语| 简体中文

引言

Spring Boot AI Cloudflare R2 MCP Server是基于Spring Boot和Spring AI的模型上下文协议(MCP)服务器实现,提供与Cloudflare R2对象存储服务的集成。

项目结构

src/main/java/com/lskun/mcp/
├── SpringBootAiCloudflareR2McpServerApplication.java (Application entry)
├── config/
│   └── McpConfiguration.java (MCP configuration class)
└── service/
    └── R2ServiceClient.java (R2 service client)

特性

  • 完整的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}

快速开始

  1. 克隆存储库:
git clone https://github.com/lskun/spring-boot-ai-cloudflare-r2-mcp-server.git
  1. 设置环境变量:
export R2_ACCESS_KEY_ID=your_access_key_id
export R2_SECRET_ACCESS_KEY=your_secret_access_key
export R2_ENDPOINT=your_r2_endpoint
  1. 构建项目:
mvn clean package
  1. 运行集成测试:
# Run all tests in R2ServiceClientTest
mvn test -Dtest=R2ServiceClientTest

# Or run a specific test method
mvn test -Dtest=R2ServiceClientTest#testListBuckets

该测试套件包括对所有R2操作的全面测试:

  • Bucket操作(列表、创建、删除)
  • 对象操作(上传、下载、列表、删除)
  • 内容格式处理(文本、base64、文件路径)
  • 对象元数据管理

api参考

该服务提供以下主要功能:

  • 列出桶
  • 创建/删除bucket
  • 上传/下载对象
  • 列出bucket中的对象
  • 获取对象元数据
  • 删除对象

发展

该项目使用Spring Boot 3.4.4和Spring AI 1.0.0-M6。主要部件包括:

  • R2ServiceClient:R2操作的核心服务类
  • McpConfiguration:MCP工具配置
  • 所有操作的集成测试

贡献

  1. 分叉存储库
  2. 创建功能分支
  3. 提交您的更改
  4. 推到分支
  5. 创建新的Pull请求

许可证

此项目根据MIT许可证获得许可-有关详细信息,请参阅许可证文件。

联系

如果您有任何问题或建议,请随时创建问题。