使用说明
AWS S3 MCP服务器
一个简单的模型上下文协议(MCP)服务器,提供与Amazon S3交互的工具。此服务器允许您列出AWS帐户中的所有S3存储桶。
特性
- list_s3_buckets:从您的AWS帐户中获取所有S3存储桶及其名称和创建日期
先决条件
- Node.js 18+
- TypeScript
- 已配置AWS凭据(请参阅AWS配置部分)
安装
- 克隆或下载此项目
- 安装依赖项:
npm install
AWS配置
在使用此MCP服务器之前,您需要配置AWS凭据。您可以通过多种方式做到这一点:
选项1:AWS凭据文件
创建或更新 ~/.aws/credentials:
[default]
aws_access_key_id = YOUR_ACCESS_KEY_ID
aws_secret_access_key = YOUR_SECRET_ACCESS_KEY
选项2:环境变量
export AWS_ACCESS_KEY_ID=your_access_key_id
export AWS_SECRET_ACCESS_KEY=your_secret_access_key
export AWS_REGION=us-east-1 # Optional, defaults to us-east-1
选项3:AWS配置文件
export AWS_PROFILE=your_profile_name
建立和运行
-
构建TypeScript代码:
npm run build -
启动服务器:
npm start或者用于自动重建的开发:
npm run dev
与MCP客户端一起使用
此服务器通过stdio进行通信,可以与任何兼容MCP的客户端一起使用。服务器提供以下工具:
list_s3_buckets
描述:列出AWS帐户中的所有S3存储桶
输入:不需要参数
输出:JSON对象包含:
buckets:桶对象数组name和creationDatetotal:桶总数message:摘要消息
输出示例:
{
"buckets": [
{
"name": "my-bucket-1",
"creationDate": "2023-01-15T10:30:00.000Z"
},
{
"name": "my-bucket-2",
"creationDate": "2023-02-20T14:45:00.000Z"
}
],
"total": 2,
"message": "Found 2 S3 bucket(s)"
}
使用Claude Desktop进行配置
要将此服务器与Claude Desktop一起使用,请将以下内容添加到您的 claude_desktop_config.json:
{
"mcpServers": {
"aws-s3": {
"command": "node",
"args": ["/path/to/your/aws-s3-mcp-server/dist/index.js"],
"env": {
"AWS_REGION": "us-east-1",
"AWS_REGION": "AWS_REGION",
"AWS_ACCESS_KEY_ID": "AWS_ACCESS_KEY_ID",
"AWS_SECRET_ACCESS_KEY": "AWS_SECRET_ACCESS_KEY"
}
}
}
}
安全说明
- 切勿将AWS凭据提交到版本控制
- 使用具有最低所需权限的IAM角色
- 在EC2上运行应用程序时,考虑使用AWS IAM角色
- 服务器只需要
s3:ListAllMyBucketslist_s3_buckets工具的权限
发展
npm run build:将TypeScript编译为JavaScriptnpm run dev:构建并运行服务器npm run watch:监视更改并自动重建
许可证
MIT许可证