使用说明
mcp服务器aws
MCP(模型上下文协议)服务器,提供与AWS服务交互的工具,包括EC2、S3、Lambda、CloudWatch、IAM和STS。
建筑
graph TB
subgraph Client
style Client fill:#4A90D9,stroke:#2E6BA6,color:#FFFFFF
MCP_Client["MCP Client"]
end
subgraph Server["mcp-server-aws"]
style Server fill:#2ECC71,stroke:#1A9B52,color:#FFFFFF
Index["index.ts<br/>MCP Server Entry"]
subgraph Tools
style Tools fill:#F39C12,stroke:#C67D0A,color:#FFFFFF
T1["ec2_list_instances"]
T2["s3_list_buckets"]
T3["s3_get_object"]
T4["lambda_invoke"]
T5["cloudwatch_get_metrics"]
T6["iam_list_roles"]
T7["sts_get_caller_identity"]
end
end
subgraph AWS["AWS Services"]
style AWS fill:#E74C3C,stroke:#B83A2E,color:#FFFFFF
EC2["EC2"]
S3["S3"]
Lambda["Lambda"]
CW["CloudWatch"]
IAM["IAM"]
STS["STS"]
end
MCP_Client -- "stdio transport" --> Index
Index --> T1 & T2 & T3 & T4 & T5 & T6 & T7
T1 --> EC2
T2 --> S3
T3 --> S3
T4 --> Lambda
T5 --> CW
T6 --> IAM
T7 --> STS
安装
npm install
npm run build
配置
通过设置以下环境变量或配置AWS凭据 ~/.aws/credentials:
| 变量 | 描述 | 必填 |
|---|---|---|
AWS_ACCESS_KEY_ID |
AWS访问密钥ID | 是(如果不使用配置文件) |
AWS_SECRET_ACCESS_KEY |
AWS秘密访问密钥 | 是(如果不使用配置文件) |
AWS_REGION |
AWS区域(默认值: us-east-1) |
没有 |
AWS_PROFILE |
AWS配置文件名称 | 否 |
用法
独立
npm start
发展
npm run dev
码头工人
docker build -t mcp-server-aws .
docker run -e AWS_ACCESS_KEY_ID=xxx -e AWS_SECRET_ACCESS_KEY=xxx mcp-server-aws
MCP客户端配置
{
"mcpServers": {
"aws": {
"command": "node",
"args": ["dist/index.js"],
"env": {
"AWS_REGION": "us-east-1"
}
}
}
}
工具参考
| 工具 | 说明 | 参数 |
|---|---|---|
ec2_list_instances |
列出EC2实例 | region?, filters? |
s3_list_buckets |
列出S3存储桶 | 无 |
s3_get_object |
从S3获取对象 | bucket, key |
lambda_invoke |
调用Lambda函数 | function_name, payload? |
cloudwatch_get_metrics |
获取CloudWatch指标 | namespace, metric_name, dimensions?, period?, start_time, end_time |
iam_list_roles |
列出IAM角色 | path_prefix?, max_items? |
sts_get_caller_identity |
获取呼叫者身份 | 无 |
许可证
麻省理工学院
