Provides tools to upload, list, and manage 3D model files within AWS S3 buckets, including support for generating pre-signed URLs.
Supports uploading and managing 3D assets on Backblaze B2 through its S3-compatible storage API.
Enables storage of 3D files in Cloudflare R2, supporting file uploads, management, and the generation of interactive 3D model viewers.
Allows for the storage and management of 3D model files using DigitalOcean Spaces.
Enables 3D file storage and management for self-hosted or local MinIO instances using the S3 API.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@S3-Compatible 3D Storage MCP Serverupload this GLB model and generate an interactive 3D viewer link"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
🎨 S3-Compatible 3D Storage MCP Server
一个部署在 Vercel 上的 MCP 服务器,使用 S3 兼容 API 存储和发布 3D 文件。支持 Cloudflare R2、AWS S3、MinIO 等所有 S3 兼容存储。
✨ 特性
✅ S3 兼容存储: 支持 Cloudflare R2、AWS S3、MinIO、DigitalOcean Spaces 等
✅ 简单易用: 基于标准 S3 API,无需复杂配置
✅ 自动生成预览: 自动创建交互式 3D 模型查看器
✅ 预签名 URL: 支持生成临时访问链接
✅ 文件管理: 列出、上传、获取文件
🚀 快速开始
1. 安装依赖
2. 配置 S3 存储
创建 .env.local 文件并配置 S3 凭据:
使用 Cloudflare R2(推荐)
使用 AWS S3
3. 本地测试
访问 http://localhost:3000 查看服务器信息
4. 部署到 Vercel
重要:部署后在 Vercel 项目设置中添加环境变量:
进入项目 Settings → Environment Variables
添加
R2_ENDPOINT、R2_ACCESS_KEY_ID、R2_SECRET_ACCESS_KEY等重新部署
📡 MCP 端点
部署后的 MCP 服务器地址:
🛠️ 可用工具
1. s3_upload_file
上传 3D 模型文件到 S3 兼容存储
参数:
返回:
2. s3_list_files
列出 S3 存储中的所有文件
参数:
返回:
3. s3_get_presigned_url
获取文件的预签名 URL(临时访问链接)
参数:
返回:
4. generate_3d_viewer
生成 3D 模型预览网页
参数:
🔧 MCP 客户端配置
在 Cursor 或其他 MCP 客户端中配置:
💡 使用示例
Agent 调用示例
完整工作流
🌍 支持的 S3 兼容存储
✅ Cloudflare R2 - 免费 10GB 存储,无流量费用
✅ AWS S3 - 业界标准
✅ MinIO - 自托管方案
✅ DigitalOcean Spaces - 简单易用
✅ Backblaze B2 - 低成本
✅ 阿里云 OSS - 支持 S3 兼容模式
✅ 腾讯云 COS - 支持 S3 兼容模式
🔐 安全配置
Cloudflare R2 自定义域名(推荐)
在 R2 Bucket 设置中绑定自定义域名
配置
S3_PUBLIC_URL环境变量文件将通过自定义域名公开访问
AWS S3 公开访问
配置 Bucket Policy 允许公开读取
或使用预签名 URL(
s3_get_presigned_url)
📚 技术栈
Framework: Next.js 14 + App Router
Storage: AWS SDK S3 Client (支持所有 S3 兼容存储)
Protocol: Model Context Protocol (MCP)
Deployment: Vercel
🐛 故障排除
上传失败:403 Forbidden
检查 Access Key 和 Secret Key 是否正确
确认 Bucket 存在且有写入权限
文件无法访问
配置 S3_PUBLIC_URL 环境变量
或使用
s3_get_presigned_url生成临时链接
部署失败
确保在 Vercel 项目设置中添加了所有环境变量
查看 Vercel 部署日志定位问题
📖 相关文档
🎯 为什么选择 S3 兼容存储?
灵活性: 可以随时切换存储提供商
成本: Cloudflare R2 提供免费额度,无流量费用
简单: 标准 S3 API,易于集成
可靠: 业界标准,久经考验
功能强大: 支持预签名 URL、元数据、生命周期管理等
📝 开发路线图
支持多文件批量上传
添加文件删除功能
支持文件夹管理
集成 CDN 加速
添加使用统计