MCP ExplorerExplorer

Spring Boot Ai Cloudflare R2 Mcp Server

@lskunon 9 months ago
1 MIT
FreeCommunity
AI Systems
# Spring Boot AI Cloudflare R2 MCP Server An implementation of a Cloudflare R2 object storage MCP (Multi-Cloud Provider) server based on Spring Boot and Spring AI.

Overview

What is Spring Boot Ai Cloudflare R2 Mcp Server

The spring-boot-ai-cloudflare-r2-mcp-server is a Model Context Protocol (MCP) server implementation built on Spring Boot and Spring AI, designed to integrate with Cloudflare R2 object storage service.

Use cases

Use cases include managing file uploads and downloads, creating and deleting storage buckets, and retrieving object metadata in applications that leverage Cloudflare R2 for data storage.

How to use

To use the server, clone the repository, set up your Cloudflare R2 credentials as environment variables, build the project using Maven, and run tests to ensure functionality.

Key features

Key features include complete support for Cloudflare R2 object storage operations, integration with Spring AI’s MCP server, support for various file types, comprehensive test coverage, and easy configuration and deployment.

Where to use

This server can be used in cloud storage applications, data management systems, and any service that requires efficient object storage and retrieval using Cloudflare R2.

Content

Spring Boot AI Cloudflare R2 MCP Server

English | 简体中文

Introduction

Spring Boot AI Cloudflare R2 MCP Server is a Model Context Protocol (MCP) server implementation based on Spring Boot and Spring AI, providing integration with Cloudflare R2 object storage service.

Project Structure

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

Features

  • Complete Cloudflare R2 object storage operation support
  • Integration with Spring AI’s MCP server
  • Support for various file types (text, binary, etc.)
  • Comprehensive test coverage
  • Easy configuration and deployment

Prerequisites

  • JDK 17 or above
  • Maven 3.6 or above
  • Cloudflare R2 account and credentials

Configuration

Create or modify application.properties with your R2 credentials:

r2.access-key-id=${R2_ACCESS_KEY_ID}
r2.secret-access-key=${R2_SECRET_ACCESS_KEY}
r2.endpoint=${R2_ENDPOINT}

Quick Start

  1. Clone the repository:
git clone https://github.com/lskun/spring-boot-ai-cloudflare-r2-mcp-server.git
  1. Set up environment variables:
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. Build the project:
mvn clean package
  1. Run integration tests:
# Run all tests in R2ServiceClientTest
mvn test -Dtest=R2ServiceClientTest

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

The test suite includes comprehensive tests for all R2 operations:

  • Bucket operations (list, create, delete)
  • Object operations (upload, download, list, delete)
  • Content format handling (text, base64, file path)
  • Object metadata management

API Reference

The service provides the following main functionalities:

  • List buckets
  • Create/Delete buckets
  • Upload/Download objects
  • List objects in bucket
  • Get object metadata
  • Delete objects

Development

The project uses Spring Boot 3.4.4 and Spring AI 1.0.0-M6. Main components include:

  • R2ServiceClient: Core service class for R2 operations
  • McpConfiguration: MCP tool configuration
  • Integration tests for all operations

Contributing

  1. Fork the repository
  2. Create your feature branch
  3. Commit your changes
  4. Push to the branch
  5. Create a new Pull Request

License

This project is licensed under the MIT License - see the LICENSE file for details.

Contact

If you have any questions or suggestions, please feel free to create an issue.

Tools

No tools

Comments

Recommend MCP Servers

View All MCP Servers