🗂️ 简单S3 MCP服务器
此服务器通过模型上下文协议(MCP)将AWS S3接口作为LLM代理的工具公开。
✅ 可用工具
| 工具 | 说明 |
|---|---|
list_files | 列出bucket中的所有对象键 |
list_keys_with_metadata | 列出具有存储类和区域的键 |
get_file_content | 返回UTF-8的内容 .txt 文件 |
upload_text | 将文本字符串上传为文件 |
upload_file | 按路径上传本地文件 |
upload_report | 上传多行报告 .txt |
delete_file | 从S3中删除文件 |
download_and_preview | 下载和打印 .txt 或 .pdf |
check_authorization | 检查AWS凭据是否有效 |
create_bucket | 创建新的S3存储桶 |
______________________________________________________________________
⚠️ 常见问题及解决方法
1. ❌ SSE connection not established 或 500 Internal Server Error
- 原因:由于文件较大或UTF-8内容无效,工具崩溃
- 修复:使用
get_file_content仅适用于小型.txt文件
______________________________________________________________________
2. ❌ MCP error -32001: Request timed out
- 原因:工具(例如。
get_file_content)耗时太长或文件太大 - 修复:使用截断的预览或将内容限制在前几KB
______________________________________________________________________
3. ❌ Invalid bucket name 或 The specified key does not exist
- 修复:确保输入字段中没有尾随空格
- 解决方案:所有工具自动应用
.strip()输入
______________________________________________________________________
4.🧠 JSON格式问题 upload_report
- 修复:必须输入
lines作为有效的JSON数组:
[
"Line 1",
"Line 2"
]- 创建并激活虚拟环境
- python3-m venv-venv
- 源venv/bin/activate
- 安装依赖项
- pip安装-r要求.txt
- 创建.env文件
- AWS_ACCESS_KEY_ID=your_ACCESS_KEY
- AWS_SECRET_ACCESS_KEY=您的密钥
- AWS_DEFAULT_REGION=us-east-1
🧪 在开发模式下运行MCP服务器
- mcp-dev s3_mcp_server.py
