核心用法
本技能是一个基于 TypeScript 的 MCP 工具,用于将文件上传至云存储服务并生成安全、有时效限制的下载链接。支持 Cloudflare R2、AWS S3 以及任何 S3 兼容的存储服务(如 MinIO)。用户通过 YAML 配置文件管理多桶配置,执行上传后可获得自动生成的预签名 URL,默认 5 分钟后失效。
主要功能
- 多平台兼容:原生支持 R2、S3、MinIO 等 S3 兼容存储
- 智能路径管理:自动添加 UUID 前缀防止文件名冲突,保留原始文件名
- 灵活过期控制:支持
--expires参数自定义链接有效期(5分钟到数天) - 内容类型自动识别:根据文件扩展名自动设置 Content-Type
- 多桶管理:通过配置文件支持多个存储桶快速切换
显著优点
1. 安全性设计:预签名 URL 机制确保文件不公开暴露,过期即失效
2. 零运维成本:R2 提供免费出口流量,适合个人和小团队
3. 配置简洁:单 YAML 文件管理所有凭证和桶配置
4. 交互式引导:首次使用提供清晰的 R2/S3 配置指引
潜在局限
- 依赖凭证安全:Access Key 和 Secret Key 需妥善保管,泄露风险高
- 无服务端加密说明:文档未提及客户端加密或 SSE 支持
- 单点故障:配置文件损坏或丢失会导致服务中断
- 地域限制:R2 目前仅支持 Cloudflare 全球节点,部分区域访问延迟可能较高
适合人群
- 需要临时安全分享文件的技术团队
- 使用 Cloudflare 生态的开发者
- 寻求低成本对象存储替代方案的个人用户
- 构建内部文件流转系统的运维人员
常规风险
- 凭证泄露风险:YAML 文件以明文存储密钥,需严格设置文件权限(建议 600)
- 链接传播风险:虽然有过期时间,但一旦链接被截获,在有效期内仍可下载
- 配置错误风险:错误的 endpoint 或 region 可能导致上传失败或数据写入非预期位置
- 无审计日志:内置工具未提供操作审计功能,难以追踪谁上传了哪些文件