
Overview

2025.04.14
0
PythonS3 管理文件存储文件管理
s3-mcp 是一个用于管理 Amazon S3 存储桶和对象的服务。它提供了丰富的功能,包括管理存储桶生命周期配置、设置和检索对象标签、管理存储桶策略以及配置 CORS 设置等。该服务适用于需要高效管理 S3 存储资源的开发者和团队。
View on GitHub
Overview
基本能力
产品定位
s3-mcp 是一个用于管理 Amazon S3 存储桶和对象的服务,旨在简化 S3 资源的管理和操作。
核心功能
- 存储桶管理:创建、列出、删除存储桶,以及管理存储桶策略和生命周期配置。
- 对象管理:上传、下载、删除对象,以及设置和检索对象标签。
- 高级功能:生成预签名 URL、配置 CORS 规则、复制对象等。
适用场景
- 需要自动化管理 S3 存储桶和对象的开发团队。
- 需要频繁上传、下载和管理 S3 对象的应用程序。
- 需要设置复杂存储桶策略和生命周期规则的企业用户。
工具列表
- list_buckets:列出所有 S3 存储桶。
- create_bucket:创建新的 S3 存储桶。
- list_objects:列出指定存储桶中的所有对象。
- get_object:检索指定对象的内容。
- put_object:上传对象到指定存储桶。
- delete_object:从指定存储桶中删除对象。
- generate_presigned_url:生成预签名 URL。
- set_bucket_policy:设置存储桶策略。
- get_bucket_policy:获取存储桶策略。
- delete_bucket_policy:删除存储桶策略。
- lifecycle_configuration:管理生命周期规则。
- object_tagging:设置和检索对象标签。
- cors_configuration:配置 CORS 规则。
- copy_object:复制对象。
- download_file_to_local:下载文件到本地。
- upload_local_file:上传本地文件到存储桶。
常见问题解答
- 如何设置 AWS 凭证:通过环境变量
AWS_ACCESS_KEY_ID
、AWS_SECRET_ACCESS_KEY
和AWS_REGION
设置。 - 如何指定 Docker 镜像版本:在 Docker 命令中使用特定标签代替
latest
。
使用教程
使用依赖
- 安装 Docker:确保系统已安装 Docker。
- 设置 AWS 凭证:通过环境变量设置 AWS 访问密钥和区域。
安装教程
使用 Cursor(推荐)
将以下配置添加到 Cursor MCP 配置中:
{
"mcpServers": {
"s3-mcp": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"AWS_SECRET_ACCESS_KEY=your_access_key",
"-e",
"AWS_ACCESS_KEY_ID=your_access_key",
"-e",
"AWS_REGION=your_region",
"ashgw/s3-mcp:latest"
]
}
}
}
手动使用 Docker
运行以下命令:
docker run --rm -it \
-e AWS_ACCESS_KEY_ID=your_access_key \
-e AWS_SECRET_ACCESS_KEY=your_secret_key \
-e AWS_REGION=your_region \
ashgw/s3-mcp
从源码构建
克隆仓库并构建 Docker 镜像:
docker build -t s3-mcp .
运行镜像:
docker run --rm -e AWS_ACCESS_KEY_ID=your_access_key -e AWS_SECRET_ACCESS_KEY=your_secret_key -e AWS_REGION=your_region s3-mcp
调试方式
- 确保 Docker 容器正常运行。
- 检查环境变量是否正确设置。
- 使用示例命令测试功能,如列出存储桶:
response = await tool("list_buckets")
print(response)