hybrid server
The server is able to function both locally and remotely, depending on the configuration or use case.
Integrations
Provides tools for listing available S3 buckets, listing objects within a bucket, and retrieving object contents from AWS S3 storage.
S3 MCP 服务器
提供与 S3 存储桶和对象交互的工具的 Amazon S3 模型上下文协议 (MCP) 服务器。
https://github.com/user-attachments/assets/d05ff0f1-e2bf-43b9-8d0c-82605abfb666
概述
此 MCP 服务器允许 Claude 等大型语言模型 (LLM) 与 AWS S3 存储进行交互。它提供以下工具:
- 列出可用的 S3 存储桶
- 列出存储桶内的对象
- 检索对象内容
该服务器使用 TypeScript 和 MCP SDK 构建,为 LLM 与 S3 接口提供了一种安全且标准化的方式。
安装
先决条件
- Node.js 18 或更高版本
- npm 或 yarn
- 配置 AWS 凭证(通过环境变量或 AWS 凭证文件)
设置
- 通过 npm 安装:
- 如果从源代码构建:
- 配置 AWS 凭证和 S3 访问:
使用您的 AWS 配置创建一个.env
文件:
或者将这些设置为环境变量。
配置
可以使用以下环境变量配置服务器:
多变的 | 描述 | 默认 |
---|---|---|
AWS_REGION | 您的 S3 存储桶所在的 AWS 区域 | us-east-1 |
S3_BUCKETS | 允许的 S3 存储桶名称的逗号分隔列表 | (空的) |
S3_MAX_BUCKETS | 列表中返回的最大存储桶数量 | 5 |
AWS_ACCESS_KEY_ID | AWS 访问密钥(如果不使用默认凭证) | (来自 AWS 配置) |
AWS_SECRET_ACCESS_KEY | AWS 密钥(如果不使用默认凭证) | (来自 AWS 配置) |
运行服务器
您可以使用 Node.js 运行服务器:
连接到 Claude Desktop
要将此服务器与 Claude Desktop 一起使用:
- 编辑您的 Claude Desktop 配置文件:
- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json
- Windows:
%APPDATA%\Claude\claude_desktop_config.json
- macOS:
- 将 S3 MCP 服务器添加到配置中:
重要提示:使用上述配置时请注意以下事项
- 将
AWS_ACCESS_KEY_ID
和AWS_SECRET_ACCESS_KEY
替换为您的实际凭证S3_BUCKETS
应包含您想要允许访问的存储桶的逗号分隔列表AWS_REGION
应设置为您的存储桶所在的区域
💣 如果 Claude Desktop 出现错误
如果在 Claude Desktop 中遇到上述配置错误,请尝试使用绝对路径,如下所示:
可用工具
列表桶
列出服务器有权访问的可用 S3 存储桶。此工具遵循S3_BUCKETS
配置,该配置限制显示哪些存储桶。
**参数:**无
示例输出:
列表对象
列出指定 S3 存储桶中的对象。
参数:
bucket
(必填):列出对象的 S3 bucket 的名称prefix
(可选):过滤对象的前缀(如文件夹路径)maxKeys
(可选):要返回的最大对象数
示例输出:
获取对象
从指定的 S3 存储桶中检索对象。文本文件将以纯文本形式返回,而二进制文件将返回包含有限详细信息的信息。
参数:
bucket
(必填):S3 bucket 的名称key
(必需):要检索的对象的键(路径)
文本输出示例:
二进制输出示例:
安全注意事项
- 服务器将仅访问
S3_BUCKETS
环境变量中指定的存储桶 - AWS 凭证必须具有对存储桶的适当权限
- 配置 AWS 权限时使用最小特权原则
- 对于生产用途,请考虑使用具有特定 S3 权限的 IAM 角色
与 Claude 一起使用
在桌面应用程序中与 Claude 交互时,您可以要求它执行以下 S3 操作:
- “列出我的所有 S3 存储桶”
- “显示我的图片存储桶的内容”
- “从 my-documents-bucket 获取 README.txt 文件”
Claude 将使用适当的 MCP 工具来执行请求并向您展示结果。
执照
麻省理工学院
You must be authenticated.
Amazon S3 模型上下文协议服务器允许 Claude 等大型语言模型与 AWS S3 存储交互,提供列出存储桶、列出对象和检索对象内容的工具。