AWS
Manage AWS infrastructure and services.
MCP Tools with Fallbacks
Prefer MCP tools (mcp__aws__*) when available. If MCP tools are not available (tool not found errors), fall back to the aws CLI.
| Operation |
MCP Tool |
CLI Fallback |
| Search documentation |
mcp__aws__aws___search_documentation |
N/A (no CLI equivalent) |
| Read documentation page |
mcp__aws__aws___read_documentation |
N/A |
| Execute API call |
mcp__aws__aws___call_aws |
aws <service> <command> |
| List resources |
mcp__aws__aws___call_aws |
aws <service> list-* / aws <service> describe-* |
| List regions |
mcp__aws__aws___list_regions |
aws ec2 describe-regions |
| Regional availability |
mcp__aws__aws___get_regional_availability |
N/A |
The AWS MCP server provides access to 15,000+ AWS APIs. The aws CLI provides equivalent access for all services.
Common CLI examples:
# EC2
aws ec2 describe-instances --query 'Reservations[].Instances[].{ID:InstanceId,State:State.Name,Type:InstanceType}'
# S3
aws s3 ls
aws s3 ls s3://bucket-name/
# Lambda
aws lambda list-functions --query 'Functions[].FunctionName'
# CloudWatch (BSD/GNU date — works on macOS and Linux)
START_TS="$(date -u -v-1H +%Y-%m-%dT%H:%M:%S 2>/dev/null || date -u -d '1 hour ago' +%Y-%m-%dT%H:%M:%S)"
aws cloudwatch get-metric-statistics --namespace AWS/EC2 --metric-name CPUUtilization --period 3600 --statistics Average --start-time "$START_TS" --end-time "$(date -u +%Y-%m-%dT%H:%M:%S)"
# RDS
aws rds describe-db-instances --query 'DBInstances[].{ID:DBInstanceIdentifier,Status:DBInstanceStatus,Engine:Engine}'
Note: The aws CLI requires credentials via aws configure or env vars (AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY, AWS_REGION). Set AWS_PROFILE to select a specific named profile (e.g., export AWS_PROFILE=production). Both the MCP server and CLI respect this variable. If any MCP call or CLI command fails, exits non-zero, or returns output that does not parse, stop, report the exact error text to the user, and never present an empty or partial result as an answer — do not retry or substitute another region, profile or command.
Usage
- Understand the request — What service and operation? (EC2, S3, Lambda, RDS, etc.)
- Execute — Use MCP tools (preferred) or CLI fallback
- Present results — Format resource info clearly with IDs, statuses, and regions
Important Rules
- Never create, modify, or delete resources without user confirmation
- Cost awareness — Warn before operations that incur costs (launching instances, creating resources)
- Region awareness — Always specify or confirm the AWS region
- Use
--query with CLI — Filter output with JMESPath to avoid overwhelming results
1---2name: aws3description: Manage AWS infrastructure, services, or resources. Use when the user wants to manage any AWS service including EC2, S3, Lambda, RDS, DynamoDB, ECS, EKS, IAM, CloudWatch, CloudFront, Route53, SQS, SNS, API Gateway, CloudFormation, Secrets Manager, VPC, ELB, or any other AWS service. Also use for searching AWS documentation, checking costs, or running any AWS CLI command.4allowed-tools: Bash(aws:*), Bash(curl:*), Bash(jq:*), Bash(echo:*), mcp__aws__*5---67# AWS89Manage AWS infrastructure and services.1011## MCP Tools with Fallbacks1213**Prefer MCP tools** (`mcp__aws__*`) when available. If MCP tools are not available (tool not found errors), **fall back to the `aws` CLI**.1415| Operation | MCP Tool | CLI Fallback |16| --- | --- | --- |17| Search documentation | `mcp__aws__aws___search_documentation` | N/A (no CLI equivalent) |18| Read documentation page | `mcp__aws__aws___read_documentation` | N/A |19| Execute API call | `mcp__aws__aws___call_aws` | `aws <service> <command>` |20| List resources | `mcp__aws__aws___call_aws` | `aws <service> list-*` / `aws <service> describe-*` |21| List regions | `mcp__aws__aws___list_regions` | `aws ec2 describe-regions` |22| Regional availability | `mcp__aws__aws___get_regional_availability` | N/A |2324The AWS MCP server provides access to 15,000+ AWS APIs. The `aws` CLI provides equivalent access for all services.2526**Common CLI examples:**2728```bash29# EC230aws ec2 describe-instances --query 'Reservations[].Instances[].{ID:InstanceId,State:State.Name,Type:InstanceType}'31# S332aws s3 ls33aws s3 ls s3://bucket-name/34# Lambda35aws lambda list-functions --query 'Functions[].FunctionName'36# CloudWatch (BSD/GNU date — works on macOS and Linux)37START_TS="$(date -u -v-1H +%Y-%m-%dT%H:%M:%S 2>/dev/null || date -u -d '1 hour ago' +%Y-%m-%dT%H:%M:%S)"38aws cloudwatch get-metric-statistics --namespace AWS/EC2 --metric-name CPUUtilization --period 3600 --statistics Average --start-time "$START_TS" --end-time "$(date -u +%Y-%m-%dT%H:%M:%S)"39# RDS40aws rds describe-db-instances --query 'DBInstances[].{ID:DBInstanceIdentifier,Status:DBInstanceStatus,Engine:Engine}'41```4243**Note:** The `aws` CLI requires credentials via `aws configure` or env vars (`AWS_ACCESS_KEY_ID`, `AWS_SECRET_ACCESS_KEY`, `AWS_REGION`). Set `AWS_PROFILE` to select a specific named profile (e.g., `export AWS_PROFILE=production`). Both the MCP server and CLI respect this variable. If any MCP call or CLI command fails, exits non-zero, or returns output that does not parse, stop, report the exact error text to the user, and never present an empty or partial result as an answer — do not retry or substitute another region, profile or command.4445## Usage46471. **Understand the request** — What service and operation? (EC2, S3, Lambda, RDS, etc.)482. **Execute** — Use MCP tools (preferred) or CLI fallback493. **Present results** — Format resource info clearly with IDs, statuses, and regions5051## Important Rules5253- **Never create, modify, or delete resources without user confirmation**54- **Cost awareness** — Warn before operations that incur costs (launching instances, creating resources)55- **Region awareness** — Always specify or confirm the AWS region56- **Use `--query` with CLI** — Filter output with JMESPath to avoid overwhelming results