30 of November, AWS announces the AWS MCP Server, a managed remote Model Context Protocol (MCP) server that helps AI agents and AI-native IDEs perform real-world, multi-step tasks across one or more AWS services. The AWS MCP Server consolidates capabilities from the existing AWS API MCP and AWS Knowledge servers into a unified interface, providing access to AWS documentation, generating and executing calls to over 15,000 AWS APIs, including those for newly released services, and following pre-built workflows called Agent standard operating procedures (SOPs) that guide AI agents through common tasks on AWS.
(C) https://aws.amazon.com/about-aws/whats-new/2025/11/aws-mcp-server/
You can list or review existing resources, or ask to create new resources if you want to.
Let’s test it out!
Prerequisites:
- AWS CLI > aws-cli/2.32.7 version
- Existing AWS account with administrator role
And let’s get started with the setup:
- Delete any of the existing AWS MCP servers (You know about https://awslabs.github.io/mcp/ right? :) ), for kiro, for example, from ~/.kiro/settings/mcp.json
- And add aws-mcp-server:
{
"mcpServers": {
"aws-mcp": {
"command": "uvx",
"timeout": 100000,
"transport": "stdio",
"args": [
"mcp-proxy-for-aws@latest",
"https://aws-mcp.us-east-1.api.aws/mcp",
"--metadata", "AWS_REGION=us-west-2"
]
}
}
}
- And install uvtool
For Linux and macOS:
$ curl -LsSf https://astral.sh/uv/install.sh | bash
- Install kiro-cli, the latest installation steps you can check in the official documentation: https://kiro.dev/cli/
curl -fsSL https://cli.kiro.dev/install | bash
- And the final step is to authorise our CLI in AWS. AWS CLI > 2.32 supports this functionality. Read more. You don’t need to export AWS Access and Secret keys anymore
$ aws login
And confirm in the UI
Voila! We are ready to test it now
❯ kiro-cli 18:38:17
⚠ 0 of 1 mcp servers initialized. Servers still loading:
- aws-mcp
⠀⠀⠀⠀⠀⠀⠀
⠀⠀⠀⠀⠀⠀⠀ ⢀⣴⣶⣶⣦⡀⠀⠀⠀⢀⣴⣶⣦⣄⡀⠀⠀⢀⣴⣶⣶⣦⡀⠀⠀⢀⣴⣶⣶⣶⣶⣶⣶⣶⣶⣶⣦⣄⡀⠀⠀⠀⠀⠀⠀⢀⣠⣴⣶⣶⣶⣶⣶⣦⣄⡀⠀⠀⠀⠀⠀⠀⠀⠀⠀
⠀⠀⠀⠀⠀⠀⠀ ⢰⣿⠋⠁⠈⠙⣿⡆⠀⢀⣾⡿⠁⠀⠈⢻⡆⢰⣿⠋⠁⠈⠙⣿⡆⢰⣿⠋⠁⠀⠀⠀⠀⠀⠀⠀⠀⠈⠙⠻⣦⠀⠀⠀⠀⣴⡿⠟⠋⠁⠀⠀⠀⠈⠙⠻⢿⣦⠀⠀⠀⠀⠀⠀⠀
⠀⠀⠀⠀⠀⠀⠀ ⢸⣿⠀⠀⠀⠀⣿⣇⣴⡿⠋⠀⠀⠀⢀⣼⠇⢸⣿⠀⠀⠀⠀⣿⡇⢸⣿⠀⠀⠀⢠⣤⣤⣤⣤⣄⠀⠀⠀⠀⣿⡆⠀⠀⣼⡟⠀⠀⠀⠀⣀⣀⣀⠀⠀⠀⠀⢻⣧⠀⠀⠀⠀⠀
⠀⠀⠀⠀⠀⠀⠀ ⢸⣿⠀⠀⠀⠀⣿⡿⠋⠀⠀⠀⢀⣾⡿⠁⠀⢸⣿⠀⠀⠀⠀⣿⡇⢸⣿⠀⠀⠀⢸⣿⠉⠉⠉⣿⡇⠀⠀⠀⣿⡇⠀⣼⡟⠀⠀⠀⣰⡿⠟⠛⠻⢿⣆⠀⠀⠀⢻⣧⠀⠀⠀⠀
⠀⠀⠀⠀⠀⠀⠀ ⢸⣿⠀⠀⠀⠀⠙⠁⠀⠀⢀⣼⡟⠁⠀⠀⠀⢸⣿⠀⠀⠀⠀⣿⡇⢸⣿⠀⠀⠀⢸⣿⣶⣶⡶⠋⠀⠀⠀⠀⣿⠇⢰⣿⠀⠀⠀⢰⣿⠀⠀⠀⠀⠀⣿⡆⠀⠀⠀⣿⡆
⠀⠀⠀⠀⠀⠀⠀ ⢸⣿⠀⠀⠀⠀⠀⠀⠀⠀⠹⣷⡀⠀⠀⠀⠀⢸⣿⠀⠀⠀⠀⣿⡇⢸⣿⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣠⣼⠟⠀⢸⣿⠀⠀⠀⢸⣿⠀⠀⠀⠀⠀⣿⡇⠀⠀⠀⣿⡇
⠀⠀⠀⠀⠀⠀⠀ ⢸⣿⠀⠀⠀⠀⠀⣠⡀⠀⠀⠹⣷⡄⠀⠀⠀⢸⣿⠀⠀⠀⠀⣿⡇⢸⣿⠀⠀⠀⠀⣤⣄⠀⠀⠀⠀⠹⣿⡅⠀⠀⠸⣿⠀⠀⠀⠸⣿⠀⠀⠀⠀⠀⣿⠇⠀⠀⠀⣿⠇
⠀⠀⠀⠀⠀⠀⠀ ⢸⣿⠀⠀⠀⠀⣾⡟⣷⡀⠀⠀⠘⣿⣆⠀⠀⢸⣿⠀⠀⠀⠀⣿⡇⢸⣿⠀⠀⠀⠀⣿⡟⣷⡀⠀⠀⠀⠘⣿⣆⠀⠀⢻⣧⠀⠀⠀⠹⣷⣦⣤⣤⣾⠏⠀⠀⠀⣼⡟
⠀⠀⠀⠀⠀⠀⠀ ⢸⣿⠀⠀⠀⠀⣿⡇⠹⣷⡀⠀⠀⠈⢻⡇⠀⢸⣿⠀⠀⠀⠀⣿⡇⢸⣿⠀⠀⠀⠀⣿⡇⠹⣷⡀⠀⠀⠀⠈⢻⡇⠀⠀⢻⣧⠀⠀⠀⠀⠉⠉⠉⠀⠀⠀⠀⣼⡟
⠀⠀⠀⠀⠀⠀⠀ ⠸⣿⣄⡀⢀⣠⣿⠇⠀⠙⣷⡀⠀⢀⣼⠇⠀⠸⣿⣄⡀⢀⣠⣿⠇⠸⣿⣄⡀⢀⣠⣿⠇⠀⠙⣷⡀⠀⠀⢀⣼⠇⠀⠀⠀⠻⣷⣦⣄⡀⠀⠀⠀⢀⣠⣴⣾⠟
⠀⠀⠀⠀⠀⠀⠀ ⠀⠈⠻⠿⠿⠟⠁⠀⠀⠀⠈⠻⠿⠿⠟⠁⠀⠀⠈⠻⠿⠿⠟⠁⠀⠀⠈⠻⠿⠿⠟⠁⠀⠀⠀⠈⠻⠿⠿⠟⠁⠀⠀⠀⠀⠀⠈⠙⠻⠿⠿⠿⠿⠟⠋⠁
╭─────────────────────────────── Did you know? ────────────────────────────────╮
│ │
│ Enable workspace checkpoints to snapshot & restore changes. Just run │
│ kiro-cli settings chat.enableCheckpoint true │
│ │
╰──────────────────────────────────────────────────────────────────────────────╯
Model: Auto (/model to change) | Plan: KIRO FREE (/usage for more detail)
> list my lambda functions in eu-central-1 region
Running aws cli command (using tool: aws):
Service name: lambda
Operation name: list-functions
Parameters:
Region: eu-central-1
Label: List Lambda functions in eu-central-1
Allow this action? Use 't' to trust (always allow) this tool for the session. [y/n/t]:
> y
- Completed in 0.869s
> You have 6 Lambda functions in eu-central-1:
1. sm-ps-demo - Python 3.13, arm64, 128MB
2. step-funtion1 - Node.js 22.x, arm64, 128MB
3. step-function3 - Node.js 22.x, arm64, 128MB
4. latency-check - Node.js 22.x, arm64, 128MB
5. StepFunctionsSample-TransferDataRe-SeedingFunction-1RO9X79DBreo - Node.js 18.x, x86_64, 128MB
6. step-function2 - Node.js 22.x, arm64, 128MB
▸ Credits: 0.08 • Time: 19s
Just asked to list existing resources, and it works. Let’s try a more complicated task:
> what is my ecs task resources utilisation ? Is it under or overprovisioned?
> I'll check your ECS tasks and their resource utilization.
Running aws cli command (using tool: aws):
Service name: ecs
Operation name: list-clusters
Parameters:
Region: eu-central-1
Label: List ECS clusters
Allow this action? Use 't' to trust (always allow) this tool for the session. [y/n/t]:
> y
- Completed in 1.44s
> You don't have any ECS clusters in eu-central-1. Let me check other regions where you might have ECS resources.
Running aws cli command (using tool: aws):
Service name: ecs
Operation name: list-clusters
Parameters:
Region: us-east-1
Label: List ECS clusters in us-east-1
Allow this action? Use 't' to trust (always allow) this tool for the session. [y/n/t]:
> y
- Completed in 1.241s
Running aws cli command (using tool: aws):
Service name: ecs
Operation name: describe-clusters
Parameters:
- clusters: ["hope-therapeutic-cluster"]
- include: ["STATISTICS"]
Region: us-east-1
Label: Describe ECS cluster details
Allow this action? Use 't' to trust (always allow) this tool for the session. [y/n/t]:
>
y
Running aws cli command (using tool: aws):
Service name: ecs
Operation name: list-services
Parameters:
- cluster: "hope-therapeutic-cluster"
Region: us-east-1
Label: List ECS services in cluster
Allow this action? Use 't' to trust (always allow) this tool for the session. [y/n/t]:
> y
Running aws cli command (using tool: aws):
Service name: ecs
Operation name: list-tasks
Parameters:
- cluster: "hope-therapeutic-cluster"
Region: us-east-1
Label: List ECS tasks in cluster
Allow this action? Use 't' to trust (always allow) this tool for the session. [y/n/t]:
> y
- Completed in 0.895s
- Completed in 0.876s
- Completed in 0.924s
Running aws cli command (using tool: aws):
Service name: ecs
Operation name: describe-tasks
Parameters:
- tasks: ["arn:aws:ecs:us-east-1:1234567891011:task/hope-therapeutic-cluster/74c7a4e16bb34062a31b378f63e917c2"]
- cluster: "hope-therapeutic-cluster"
- include: ["TAGS"]
Region: us-east-1
Label: Get task details and resource allocation
Allow this action? Use 't' to trust (always allow) this tool for the session. [y/n/t]:
> y
Running aws cli command (using tool: aws):
Service name: ecs
Operation name: describe-services
Parameters:
- services: ["hope-therapeutic-service"]
- cluster: "hope-therapeutic-cluster"
Region: us-east-1
Label: Get service details
Allow this action? Use 't' to trust (always allow) this tool for the session. [y/n/t]:
> y
- Completed in 0.915s
- Completed in 0.905s
> Now let me get the task definition details and check CloudWatch metrics for actual CPU and memory utilization:
Running aws cli command (using tool: aws):
Service name: ecs
Operation name: describe-task-definition
Parameters:
- taskDefinition: "HopeTherapeuticStackHopeTherapeuticServiceTaskDef7242D9E8:9"
Region: us-east-1
Label: Get task definition details
Allow this action? Use 't' to trust (always allow) this tool for the session. [y/n/t]:
> y
Running aws cli command (using tool: aws):
Service name: cloudwatch
Operation name: get-metric-statistics
Parameters:
- Period: 3600
- Statistics: ["Average","Maximum"]
- Namespace: "AWS/ECS"
- Dimensions: [{"Name":"ServiceName","Value":"hope-therapeutic-service"},{"Name":"ClusterName","Value":"hope-therapeutic-cluster"}]
- StartTime: "2025-11-24T18:43:13Z"
- MetricName: "CPUUtilization"
- EndTime: "2025-12-01T18:43:13Z"
Region: us-east-1
Label: Get CPU utilization metrics
Allow this action? Use 't' to trust (always allow) this tool for the session. [y/n/t]:
> y
Running aws cli command (using tool: aws):
Service name: cloudwatch
Operation name: get-metric-statistics
Parameters:
- StartTime: "2025-11-24T18:43:13Z"
- Statistics: ["Average","Maximum"]
- Namespace: "AWS/ECS"
- MetricName: "MemoryUtilization"
- Dimensions: [{"Name":"ServiceName","Value":"hope-therapeutic-service"},{"Name":"ClusterName","Value":"hope-therapeutic-cluster"}]
- EndTime: "2025-12-01T18:43:13Z"
- Period: 3600
Region: us-east-1
Label: Get memory utilization metrics
Allow this action? Use 't' to trust (always allow) this tool for the session. [y/n/t]:
> y
- Completed in 0.916s
- Completed in 1.576s
- Completed in 1.321s
> Based on the data, your ECS task is significantly overprovisioned:
Resource Allocation:
- CPU: 1024 (1 vCPU)
- Memory: 2048 MB (2 GB)
- Launch Type: Fargate
Actual Utilization (last 7 days):
- **Memory**: ~2.1% average (max 2.15%)
- Using only ~43 MB out of 2048 MB allocated
- **CPU**: ~0.01% average (max 6.18% spike)
- Essentially idle most of the time
Recommendations:
You can safely reduce to the smallest Fargate configuration:
- CPU: 256 (.25 vCPU) - 75% reduction
- Memory: 512 MB - 75% reduction
This would:
- Save approximately 75% on Fargate costs
- Still provide 10x headroom over current usage
- Handle traffic spikes comfortably (your max spike was only 6% CPU)
The task is running a Node.js web application on port 3000 with very light load. Even with the minimum Fargate configuration, you'd have plenty of capacity for growth.
As you see from the thinking process, it tries the current region - nothing was found, it tries us-east-1 region and found a cluster, after it found a task definition, service and went to CloudWatch metrics to fetch resources utilisation with the final recommendations to reduce resources given for this task. It’s an impressive start, isn’t it?
What about resource creation?
> Create me a python function to list existing ecs tasks in us-east-1 region, deploy this function with required permissions to us-east-1 region and give me lambda arn to test it
> I'll create a minimal Python Lambda function to list ECS tasks, deploy it, and give you the ARN.
I'll create the following file: /tmp/list_ecs_tasks.py (using tool: write)
+ 1: import boto3
+ 2: import json
+ 3:
+ 4: ecs = boto3.client('ecs', region_name='us-east-1')
+ 5:
+ 6: def lambda_handler(event, context):
+ 7: clusters = ecs.list_clusters()['clusterArns']
+ 8:
+ 9: result = []
+ 10: for cluster in clusters:
+ 11: tasks = ecs.list_tasks(cluster=cluster)['taskArns']
+ 12: if tasks:
+ 13: result.append({
+ 14: 'cluster': cluster.split('/')[-1],
+ 15: 'tasks': [t.split('/')[-1] for t in tasks]
+ 16: })
+ 17:
+ 18: return {
+ 19: 'statusCode': 200,
+ 20: 'body': json.dumps(result)
+ 21: }
Allow this action? Use 't' to trust (always allow) this tool for the session. [y/n/t]:
> y
Creating: /tmp/list_ecs_tasks.py
- Completed in 0.3s
I will run the following command: cd /tmp && zip -q list_ecs_tasks.zip list_ecs_tasks.py (using tool: shell)
Purpose: Create deployment package
Allow this action? Use 't' to trust (always allow) this tool for the session. [y/n/t]:
> y
- Completed in 0.19s
Running aws cli command (using tool: aws):
Service name: iam
Operation name: create-role
Parameters:
- RoleName: "list-ecs-tasks-lambda-role"
- AssumeRolePolicyDocument: "{\"Version\":\"2012-10-17\",\"Statement\":[{\"Effect\":\"Allow\",\"Principal\":{\"Service\":\"lambda.amazonaws.com\"},\"Action\":\"sts:AssumeRole\"}]}"
Region: us-east-1
Label: Create IAM role for Lambda - Completed in 1.124s
Running aws cli command (using tool: aws):
Service name: iam
Operation name: put-role-policy
Parameters:
- PolicyDocument: "{\"Version\":\"2012-10-17\",\"Statement\":[{\"Effect\":\"Allow\",\"Action\":[\"ecs:ListClusters\",\"ecs:ListTasks\",\"logs:CreateLogGroup\",\"logs:CreateLogStream\",\"logs:PutLogEvents\"],\"Resource\":\"*\"}]}"
- RoleName: "list-ecs-tasks-lambda-role"
- PolicyName: "ecs-list-policy"
Region: us-east-1
Label: Attach ECS permissions to role - Completed in 1.56s
I will run the following command: sleep 10 (using tool: shell)
Purpose: Wait for IAM role propagation
Allow this action? Use 't' to trust (always allow) this tool for the session. [y/n/t]:
> y
- Completed in 10.15s
Running aws cli command (using tool: aws):
Service name: lambda
Operation name: create-function
Parameters:
- Timeout: 30
- Architectures: ["arm64"]
- FunctionName: "list-ecs-tasks"
- MemorySize: 128
- Runtime: "python3.13"
- Handler: "list_ecs_tasks.lambda_handler"
- Code: {"ZipFile":""}
- Role: "arn:aws:iam::1234567891011:role/list-ecs-tasks-lambda-role"
Region: us-east-1
Label: Create Lambda function ⋮
● Execution failed after 0.506s:
ZipFile cannot be provided as part of the --code argument. Please use the '--zip-file' option instead to specify a zip file.
I will run the following command: aws lambda create-function \
--function-name list-ecs-tasks \
--runtime python3.13 \
--role arn:aws:iam::1234567891011:role/list-ecs-tasks-lambda-role \
--handler list_ecs_tasks.lambda_handler \
--zip-file fileb:///tmp/list_ecs_tasks.zip \
--timeout 30 \
--memory-size 128 \
--architectures arm64 \
--region us-east-1 (using tool: shell)
Purpose: Create Lambda function using AWS CLI
Allow this action? Use 't' to trust (always allow) this tool for the session. [y/n/t]:
> y
{
"FunctionName": "list-ecs-tasks",
"FunctionArn": "arn:aws:lambda:us-east-1:1234567891011:function:list-ecs-tasks",
"Runtime": "python3.13",
"Role": "arn:aws:iam::1234567891011:role/list-ecs-tasks-lambda-role",
"Handler": "list_ecs_tasks.lambda_handler",
"CodeSize": 452,
"Description": "",
"Timeout": 30,
"MemorySize": 128,
"LastModified": "2025-12-01T19:33:13.454+0000",
"CodeSha256": "5dXUTTD2iVvNLCut/rS28zPz6uUjuGVN7JDcApySmkI=",
"Version": "$LATEST",
"TracingConfig": {
"Mode": "PassThrough"
},
"RevisionId": "492972d1-be8a-4512-9102-6f140c4a8480",
"State": "Pending",
"StateReason": "The function is being created.",
"StateReasonCode": "Creating",
"PackageType": "Zip",
"Architectures": [
"arm64"
],
"EphemeralStorage": {
"Size": 512
},
"SnapStart": {
"ApplyOn": "None",
"OptimizationStatus": "Off"
},
"RuntimeVersionConfig": {
"RuntimeVersionArn": "arn:aws:lambda:us-east-1::runtime:3e3a3605cfe7da866e05663426b7d097356b064d47290ddfe6189c3540e8b1c8"
},
"LoggingConfig": {
"LogFormat": "Text",
"LogGroup": "/aws/lambda/list-ecs-tasks"
}
}
- Completed in 1.295s
> Perfect! Your Lambda function has been deployed successfully.
Lambda ARN: arn:aws:lambda:us-east-1:1234567891011:function:list-ecs-tasks
To test it, run:
bash
aws lambda invoke --function-name list-ecs-tasks --region us-east-1 /tmp/output.json && cat /tmp/output.json
The function will:
- List all ECS clusters in us-east-1
- For each cluster, list all running tasks
- Return cluster names and task IDs in a clean format
Permissions granted:
- ecs:ListClusters
- ecs:ListTasks
- CloudWatch Logs (for function logging)
▸ Credits: 2.09 • Time: 2m 7s
It has created a new function with a role to only list clusters and tasks.
Let’s try one more example:
> generate a static website with a feedback form. I want to deploy it to aws to s3 bucket and cloudfront, and as an api I want to have a lambda function, which will send email from this feedback form to [email protected]. The function needs to be written using python or nodejs.
> I'll create a minimal static website with a feedback form, Lambda function, and deployment configuration for S3/CloudFront.
I'll create the following file: /Users/username/work/work/fastapi/static-site/index.html (using tool: write)
Purpose: Create minimal HTML feedback form
.....
<removed huge output with generated html/css code>
.....
Changeset created successfully. arn:aws:cloudformation:us-east-1:1234567891011:changeSet/samcli-deploy1764629712/efd6412c-fde3-46d2-8fe6-658ac02df375
2025-12-01 22:55:19 - Waiting for stack create/update to complete
CloudFormation events from stack operations (refresh every 5.0 seconds)
-------------------------------------------------------------------------------------------------
ResourceStatus ResourceType LogicalResourceId ResourceStatusReason
-------------------------------------------------------------------------------------------------
CREATE_IN_PROGRESS AWS::CloudFormation::S feedback-site User Initiated
tack
CREATE_IN_PROGRESS AWS::IAM::Role FeedbackFunctionRole -
CREATE_IN_PROGRESS AWS::S3::Bucket WebsiteBucket -
CREATE_IN_PROGRESS AWS::CloudFront::Origi CloudFrontOAC -
nAccessControl
CREATE_IN_PROGRESS AWS::CloudFront::Origi CloudFrontOAC Resource creation
nAccessControl Initiated
CREATE_IN_PROGRESS AWS::IAM::Role FeedbackFunctionRole Resource creation
Initiated
CREATE_IN_PROGRESS AWS::S3::Bucket WebsiteBucket Resource creation
Initiated
CREATE_COMPLETE AWS::CloudFront::Origi CloudFrontOAC -
nAccessControl
CREATE_COMPLETE AWS::S3::Bucket WebsiteBucket -
CREATE_IN_PROGRESS AWS::CloudFront::Distr CloudFrontDistribution -
ibution
CREATE_COMPLETE AWS::IAM::Role FeedbackFunctionRole -
CREATE_IN_PROGRESS AWS::CloudFront::Distr CloudFrontDistribution Resource creation
ibution Initiated
CREATE_IN_PROGRESS AWS::Lambda::Function FeedbackFunction -
CREATE_IN_PROGRESS - AWS::CloudFront::Distr CloudFrontDistribution Eventual consistency
CONFIGURATION_COMPLETE ibution check initiated
CREATE_IN_PROGRESS AWS::Lambda::Function FeedbackFunction Resource creation
Initiated
CREATE_IN_PROGRESS - AWS::Lambda::Function FeedbackFunction Eventual consistency
CONFIGURATION_COMPLETE check initiated
CREATE_IN_PROGRESS AWS::ApiGateway::RestA FeedbackApi -
pi
CREATE_IN_PROGRESS AWS::ApiGateway::RestA FeedbackApi Resource creation
pi Initiated
CREATE_COMPLETE AWS::ApiGateway::RestA FeedbackApi -
pi
CREATE_IN_PROGRESS AWS::ApiGateway::Deplo FeedbackApiDeployment8 -
yment 6a2dc2f75
CREATE_IN_PROGRESS AWS::Lambda::Permissio FeedbackFunctionApiPer -
n missionprod
CREATE_IN_PROGRESS AWS::Lambda::Permissio FeedbackFunctionApiPer Resource creation
n missionprod Initiated
CREATE_IN_PROGRESS AWS::ApiGateway::Deplo FeedbackApiDeployment8 Resource creation
yment 6a2dc2f75 Initiated
CREATE_COMPLETE AWS::Lambda::Permissio FeedbackFunctionApiPer -
n missionprod
CREATE_COMPLETE AWS::ApiGateway::Deplo FeedbackApiDeployment8 -
yment 6a2dc2f75
CREATE_COMPLETE AWS::Lambda::Function FeedbackFunction -
CREATE_IN_PROGRESS AWS::ApiGateway::Stage FeedbackApiprodStage -
CREATE_IN_PROGRESS AWS::ApiGateway::Stage FeedbackApiprodStage Resource creation
Initiated
CREATE_COMPLETE AWS::ApiGateway::Stage FeedbackApiprodStage -
CREATE_COMPLETE AWS::CloudFront::Distr CloudFrontDistribution -
ibution
CREATE_IN_PROGRESS AWS::S3::BucketPolicy BucketPolicy -
CREATE_IN_PROGRESS AWS::S3::BucketPolicy BucketPolicy Resource creation
Initiated
CREATE_COMPLETE AWS::S3::BucketPolicy BucketPolicy -
CREATE_COMPLETE AWS::CloudFormation::S feedback-site -
tack
-------------------------------------------------------------------------------------------------
CloudFormation outputs from deployed stack
-------------------------------------------------------------------------------------------------
Outputs
-------------------------------------------------------------------------------------------------
Key ApiURL
Description -
Value https://te04qk76t0.execute-api.us-east-1.amazonaws.com/prod/feedback
Key BucketName
Description -
Value feedback-site-websitebucket-5ymcd07pohsv
Key WebsiteURL
Description -
Value da7da5qshdkp7.cloudfront.net
-------------------------------------------------------------------------------------------------
Successfully created/updated stack - feedback-site in us-east-1
- Completed in 253.820s
> Perfect! The stack deployed successfully
And the page itself:
With minimal knowledge, just using prompts, I have a simple website and infrastructure.
With the MCP Server, you can provision new resources, review and analyse your AWS environment, and quickly troubleshoot or resolve issues across your infrastructure.
