S3工具箱MCP服务器

一个基于Spring AI MCP的服务器,通过自然语言交互简化AWS S3桶操作,适用于自动化任务和交互式开发。

  • by dvindas
  • Java
  • 本地部署
  • 1 星标
  • 更新于
在 GitHub 查看 dvindas/s3-toolbox-mcp-server

使用说明

S3工具箱MCP服务器

一个模型上下文协议(MCP)服务器,使与AWS S3存储桶的交互变得轻而易举。使用 春季AI MCP,它使用STDIO传输进行无缝通信,使其非常适合与Cursor IDE和AI代理等现代开发工具集成。此服务器弥合了开发环境和S3操作之间的差距,为自动化任务和交互式开发提供了自然语言交互。

它做什么

S3 Toolbox MCP服务器通过一个简单的MCP接口公开核心AWS S3操作,利用Spring AI的模型上下文协议实现。这意味着AI代理可以使用简单的语言与您的S3存储桶自然交互,同时保持对操作的精确控制。

可用工具

服务器提供以下S3操作:

  • 列出Buckets (list_s3_buckets)
    • 列出您帐户中所有可用的S3存储桶
    • 无需参数
  • 列出文件 (list_s3_files)
    • 列出特定存储桶中的对象
    • 参数:
      • bucketName:目标存储桶名称
      • prefix:可选文件夹路径筛选器
  • 上传文件 (put_s3_object)
    • 使用元数据将文件上传到 S3
    • 参数:
      • bucketName:目标存储桶名称
      • fileName:S3中文件的名称
      • contentType:MIME类型(例如,“application/pdf”、“image/png”)
      • prefix:bucket中的可选路径前缀/文件夹
      • base64Content:以Base64格式编码的文件内容
  • 下载文件 (get_s3_object)
    • 从S3下载文件
    • 参数:
      • bucketName:源桶
      • key:S3中的文件路径
  • 获取元数据 (get_s3_object_metadata)
    • 检索文件元数据
    • 参数:
      • bucketName:目标桶
      • key:S3中的文件路径
  • 删除文件 (delete_s3_object)
    • 从S3中删除文件
    • 参数:
      • bucketName:目标桶
      • key:要删除的文件

设置

先决条件

  • Java 21
  • 已配置AWS凭据
  • Maven(或使用附带的包装器)

快速开始

  1. 克隆仓库:

  2. 构建JAR:

使用Maven Wrapper(推荐):

# For Windows
./mvnw.cmd clean package

# For Linux/Mac
./mvnw clean package

或者,如果你安装了Maven:

mvn clean package

JAR将在 target 目录为 s3-toolbox-mcp-server-1.0.0.jar

  1. 通过创建配置文件(例如。, mcp-config.json):
{
    "mcpServers": {
      "s3-toolbox-mcp-server": {
            "command": "java",
            "args": [
              "-jar",
              "path/to/s3-toolbox-mcp-server-1.0.0.jar"
            ],
            "env": {
              "AWS_ACCESS_KEY_ID": "your-access-key",
              "AWS_SECRET_ACCESS_KEY": "your-secret-key",
              "AWS_REGION": "us-east-1"
            }
      }
    }
}

替换以下内容:

  • path/to/s3-toolbox-mcp-server-1.0.0.jar:构建的JAR文件的完整路径(例如。, C:\Users\YourUser\s3-toolbox-mcp-server\target\s3-toolbox-mcp-server-1.0.0.jar)
  • your-access-key:您的AWS访问密钥ID
  • your-secret-key:您的AWS秘密访问密钥
  • us-east-1:您想要的AWS区域

服务器使用STDIO传输与MCP客户端通信,使其易于与任何兼容MCP的客户端集成。配置后,您可以使用客户端通过自然语言命令与S3存储桶进行交互。

我想弥合人工智能代理和S3操作之间的差距。虽然AWS提供了出色的SDK,但将其与AI系统集成通常需要复杂的映射和严格的命令结构。S3 Toolbox MCP Server通过利用MCP协议使这种集成变得自然,允许AI代理通过直观的语言执行S3操作,同时保持对底层AWS操作的精确控制。

技术细节

内置:

服务器使用Spring AI实现模型上下文协议(MCP)规范,通过STDIO传输进行通信,以实现可靠高效的数据交换。这种方法允许AI代理使用自然语言命令与服务器无缝交互,同时服务器将这些命令转换为精确的AWS S3操作。每个操作都经过精心设计,遵循AWS最佳实践,确保易用性和操作可靠性。

许可证

该项目根据MIT许可证获得许可。

作者

迭戈·佩雷斯五世。