AWS MCP server

Prebuilt SnapLogic agentic-tool pipelines that let an LLM read from and act on AWS, callable as MCP tools via Pipeline Execute. Published in the SnapLogic pattern catalog.

Overview

This pack gives an agent read and write access to a broad set of AWS services, covering compute, containers, databases, security, event streaming, and DNS. Use it to monitor and manage an AWS account without leaving the conversation.

For setup instructions, see SnapLogic MCP Server quickstart.

Example Prompts

  • What budgets are set up on account 123456789012?
  • Are we tracking against any AWS budgets this month?
  • Show me the first 5 budgets for our production account
  • List the budget limits and actual spend for account 123456789012
  • Describe the networking-prod stack
  • What are the outputs of the api-gateway stack?
  • Why is the payments stack in UPDATE_ROLLBACK_COMPLETE?
  • Show me the parameters the vpc-core stack was deployed with
  • What CloudFormation stacks exist in us-east-1?
  • Show me any stacks in ROLLBACK_FAILED or UPDATE_ROLLBACK_FAILED

Tools

Tool Name Functions
AWSBudgetsDescribe List the AWS Budgets defined on an account.
AWSCloudFormationDescribeStack Describe a CloudFormation stack and its outputs.
AWSCloudFormationListStacks List CloudFormation stacks, optionally filtered by status.
AWSCloudTrailLookupEvents Look up CloudTrail events by attribute and time window.
AWSCloudWatchDescribeAlarms List CloudWatch alarms, filtered by state or name prefix.
AWSCloudWatchGetMetrics Query a CloudWatch metric series over a time window.
AWSCloudWatchLogsQuery Filter events from a CloudWatch Logs log group.
AWSCodePipelineGetState Get the current stage-by-stage state of a CodePipeline.
AWSCostExplorerGetCost Query AWS spend from Cost Explorer over a date range.
AWSECSDescribeServices Describe named ECS services in a cluster.
AWSECSListServices List the ECS services in a cluster.
AWSECSUpdateServiceCount Set the desired task count on an ECS service.
AWSEc2Describe List and inspect EC2 instances in a region.
AWSEc2Manage Start, stop, or reboot EC2 instances.
AWSElastiCacheDescribeClusters Describe ElastiCache clusters, optionally with node detail.
AWSEventBridgePutEvents Publish a custom event to an EventBridge bus.
AWSGlueGetCrawlers List the AWS Glue crawlers in the account.
AWSGlueStartCrawler Start a named AWS Glue crawler.
AWSIAMListUsers List IAM users, optionally scoped to a path prefix.
AWSKMSEncryptDecrypt Encrypt or decrypt a value with KMS.
AWSKinesisDescribeStream Describe a Kinesis data stream's summary.
AWSKinesisPutRecord Write one record to a Kinesis data stream.
AWSLambdaInvoke Invoke a Lambda function with a JSON payload.
AWSLambdaListFunctions List Lambda functions in a region.
AWSRDSCreateSnapshot Create a manual snapshot of an RDS instance.
AWSRDSDescribeInstances Describe RDS database instances in a region.
AWSRoute53ListRecords List the DNS records in a Route 53 hosted zone.
AWSRoute53UpsertRecord Create or replace a DNS record in a Route 53 hosted zone.
AWSSecretsManagerGetSecret Retrieve a secret value from Secrets Manager.
AWSSecurityHubGetFindings Retrieve Security Hub findings by severity, resource type, or compliance status.
AWSStepFunctionsDescribeExecution Describe a Step Functions execution by ARN.
AWSStepFunctionsStartExecution Start a Step Functions state machine execution.

Set up the MCP Server tools

  1. Download aws_tools.zip.
  2. In SnapLogic Designer, open the target project space (or create one), then choose Import Project / Import Pipelines and select the downloaded aws_tools.zip. Designer unpacks each pipeline into the project.
  3. Attach the required account to the connectivity snaps (see Connection Setup).
  4. Expose the project as an MCP server — each pipeline becomes a tool named after its label. New to this? Start with the MCP quickstart, then use the MCP Server Pipeline Builder to generate the server from the imported pipelines.

Configure account

Attach an API Suite account (OAuth 2.0 or Bearer token) to the HTTP Client snap in Designer after import.

These pipelines ship without credentials by design — attach a valid account in Designer before the tools will execute.

See the SnapLogic account documentation for this connector: API Suite Account Configuration.

Important: These pipelines ship without credentials by design — attach a valid account in Designer before the tools will execute. Credentials live in the SnapLogic account store, never in the pipeline JSON.

AWSBudgetsDescribe

Lists the AWS Budgets defined on an account so you can check budget limits and track spend against them. Pair it with AWSCostExplorerGetCost when a user wants to know not just what they spent, but whether they are over plan.

Parameter Type Default Description
account_id* string

12-digit AWS account ID whose budgets are listed.

budget_name string

Declared on the tool but not sent in the request — the tool always lists budgets rather than fetching one by name.

max_results string 20

Maximum budgets to return (default 20).

region string us-east-1

AWS region to target (default us-east-1).

* Required parameter.

Try asking:

  • What budgets are set up on account 123456789012?
  • Are we tracking against any AWS budgets this month?
  • Show me the first 5 budgets for our production account
  • List the budget limits and actual spend for account 123456789012

AWSCloudFormationDescribeStack

Fetches the status, outputs, and parameters for one CloudFormation stack, or for every stack in the region if no name is given. Use it to read a stack's outputs or to investigate why an update failed.

Parameter Type Default Description
stack_name string

Stack name or ARN to describe. Omit to describe all stacks in the region.

region string us-east-1

AWS region to target (default us-east-1).

Try asking:

  • Describe the networking-prod stack
  • What are the outputs of the api-gateway stack?
  • Why is the payments stack in UPDATE_ROLLBACK_COMPLETE?
  • Show me the parameters the vpc-core stack was deployed with

AWSCloudFormationListStacks

Lists CloudFormation stacks in a region, optionally filtered by one or more stack statuses. Use it to survey what is deployed or to find stacks stuck in a bad state.

Parameter Type Default Description
stack_status_filter string

Comma-separated stack statuses to filter on, e.g. CREATE_COMPLETE,UPDATE_COMPLETE. Omit for all stacks.

region string us-east-1

AWS region to target (default us-east-1).

Try asking:

  • What CloudFormation stacks exist in us-east-1?
  • Show me any stacks in ROLLBACK_FAILED or UPDATE_ROLLBACK_FAILED
  • List the stacks that are CREATE_COMPLETE in eu-west-1
  • Are any stacks currently updating?

AWSCloudTrailLookupEvents

Searches CloudTrail management events by attribute, such as event name, username, or resource, within an optional time window. Use it for audit questions like who changed a resource and when.

Parameter Type Default Description
lookup_attribute_key string

CloudTrail lookup attribute key, e.g. EventName, Username, ResourceName. Must be paired with a value.

lookup_attribute_value string

Value for the lookup attribute key.

start_time string

Start of the lookup window.

end_time string

End of the lookup window.

max_results string 50

Maximum events to return (default 50).

region string us-east-1

AWS region to target (default us-east-1).

Try asking:

  • Who terminated EC2 instances in the last 24 hours?
  • Show me CloudTrail events with EventName TerminateInstances
  • What did the user deploy-bot do yesterday?
  • Find all CloudTrail activity on resource prod-db-01 last week

AWSCloudWatchDescribeAlarms

Lists CloudWatch metric alarms in a region, optionally filtered by state or name prefix. Use it at the start of an incident triage to quickly see which alarms are firing.

Parameter Type Default Description
state_value string

Filter by alarm state: ALARM, OK, or INSUFFICIENT_DATA. Omit for all states.

alarm_name_prefix string

Return only alarms whose name starts with this prefix.

max_records string 50

Maximum alarms to return (default 50).

region string us-east-1

AWS region to target (default us-east-1).

Try asking:

  • What CloudWatch alarms are firing right now?
  • Show me all alarms in ALARM state in eu-west-1
  • List the alarms whose names start with prod-
  • Are there any alarms with insufficient data in us-east-1?

AWSCloudWatchGetMetrics

Queries a CloudWatch metric over a time window and returns the aggregated datapoint series. Use it whenever a user asks for a number over time, such as CPU utilization, request latency, or queue depth.

Parameter Type Default Description
namespace* string

CloudWatch namespace, e.g. AWS/EC2 or AWS/RDS.

metric_name* string

Metric to query, e.g. CPUUtilization.

dimensions object

Map of dimension name to value narrowing the metric to one resource, e.g. {InstanceId: i-0abc123}.

stat string Average

Statistic to apply — Average, Sum, Maximum, Minimum (default Average).

period string 300

Aggregation period in seconds (default 300).

start_time* string

Start of the query window.

end_time* string

End of the query window.

region string us-east-1

AWS region to target (default us-east-1).

* Required parameter.

Try asking:

  • What was average CPU on instance i-0abc123 over the last 6 hours?
  • Chart the maximum ApproximateNumberOfMessagesVisible for the orders queue yesterday
  • Get AWS/RDS FreeStorageSpace for prod-db-01 at 5-minute resolution this week
  • Show me the sum of Lambda Invocations in AWS/Lambda for the last day

AWSCloudWatchLogsQuery

Searches a CloudWatch Logs log group by filter pattern and time window, returning matching log events. Use it to pull the error lines behind an alarm or to answer 'what did the service log at 3am' questions.

Parameter Type Default Description
log_group_name* string

Log group to search, e.g. /aws/lambda/my-function.

filter_pattern string

CloudWatch Logs filter pattern. Omit to return all events in the window.

start_time string

Window start, epoch milliseconds.

end_time string

Window end, epoch milliseconds.

limit string 100

Maximum log events to return (default 100).

region string us-east-1

AWS region to target (default us-east-1).

* Required parameter.

Try asking:

  • Find ERROR lines in /aws/lambda/order-processor from the last hour
  • Search the /ecs/checkout log group for 'timeout'
  • Show me the last 50 events in /aws/lambda/notify-oncall
  • What did /aws/rds/instance/prod-db-01/error log between those timestamps?

AWSCodePipelineGetState

Fetches the current stage-by-stage state of a named CodePipeline, showing whether each stage succeeded or failed. Use it to confirm a deployment went through and to pinpoint which stage broke.

Parameter Type Default Description
pipeline_name* string

Name of the CodePipeline to inspect.

region string us-east-1

AWS region to target (default us-east-1).

* Required parameter.

Try asking:

  • What's the state of the api-deploy pipeline?
  • Did the last run of frontend-release succeed?
  • Which stage is the payments pipeline stuck on?
  • Show me the stage states for the infra-deploy pipeline in eu-west-1

AWSCostExplorerGetCost

Queries AWS Cost Explorer spend over a date range, with optional grouping by service, region, or linked account. Use it for any 'what did we spend' or 'which service costs the most' question.

Parameter Type Default Description
start_date* string

Start of the cost period, YYYY-MM-DD.

end_date* string

End of the cost period, YYYY-MM-DD.

granularity string MONTHLY

MONTHLY, DAILY, or HOURLY (default MONTHLY).

group_by string

Single dimension to group by, e.g. SERVICE, LINKED_ACCOUNT, REGION. Omit for an ungrouped total.

metrics string UnblendedCost

Cost metric to return, e.g. UnblendedCost (default) or AmortizedCost.

region string us-east-1

AWS region to target (default us-east-1).

* Required parameter.

Try asking:

  • What did we spend on AWS last month?
  • Break down July costs by SERVICE
  • Show me daily spend for the last two weeks
  • Which linked account cost the most in Q2?
  • Give me unblended cost grouped by REGION for June

AWSECSDescribeServices

Fetches details for one or more named ECS services in a cluster, including task counts, deployment state, and current status. Use it after AWSECSListServices to check whether a service is healthy or whether a deployment has settled.

Parameter Type Default Description
cluster* string

Name or ARN of the ECS cluster.

services* string

Comma-separated service names or ARNs to describe.

region string us-east-1

AWS region to target (default us-east-1).

* Required parameter.

Try asking:

  • Is the checkout service healthy in the production cluster?
  • Describe the api and worker services in staging-cluster
  • How many tasks are actually running for the payments service?
  • Show me the current task definition for the web service in prod

AWSECSListServices

Lists the ECS services running in a named cluster, giving you the service identifiers needed to describe or scale them. Use it as the discovery step before calling AWSECSDescribeServices or AWSECSUpdateServiceCount.

Parameter Type Default Description
cluster* string

Name or ARN of the ECS cluster.

max_results string 10

Maximum service ARNs to return (default 10).

region string us-east-1

AWS region to target (default us-east-1).

* Required parameter.

Try asking:

  • What services are running in the production ECS cluster?
  • List the services in cluster staging-cluster
  • How many ECS services do we have in prod in eu-west-1?
  • Show me the first 25 services in the batch cluster

AWSECSUpdateServiceCount

Sets the desired task count on an ECS service, scaling it up, down, or to zero on demand. Use it to handle traffic surges or to pause a service for maintenance.

Parameter Type Default Description
cluster* string

Name or ARN of the ECS cluster.

service* string

Name or ARN of the service to scale.

desired_count* string

Target number of running tasks.

region string us-east-1

AWS region to target (default us-east-1).

* Required parameter.

Try asking:

  • Scale the checkout service to 6 tasks in the production cluster
  • Take the batch-worker service down to zero for the weekend
  • Bump the api service in staging-cluster up to 3 tasks
  • Scale the web service back to 2 in eu-west-1

AWSEc2Describe

Lists and inspects EC2 instances in a region, optionally scoped to specific instance IDs. Use it first when a user asks what is running, what state a box is in, or to confirm an instance exists before acting on it.

Parameter Type Default Description
filters string

Declared on the tool but not applied to the request — filtering is not implemented; narrow with instance_ids instead.

instance_ids string

Comma-separated instance IDs to describe. Omit to describe all instances in the region.

max_results string

Cap on the number of instances returned. Omit for no cap.

region string us-east-1

AWS region to target (default us-east-1).

Try asking:

  • What EC2 instances are running in eu-west-1?
  • Describe instance i-0abc123def456 for me
  • Show me the state and instance type of i-0aaa111, i-0bbb222
  • Give me the first 10 EC2 instances in us-east-1

AWSEc2Manage

Starts, stops, or reboots one or more EC2 instances by instance ID. Use AWSEc2Describe to find the instance first, then this tool to act on it.

Parameter Type Default Description
action* string

One of start, stop, or reboot. Anything else is treated as a describe.

instance_ids* string

Comma-separated instance IDs to act on.

region string us-east-1

AWS region to target (default us-east-1).

* Required parameter.

Try asking:

  • Stop instance i-0abc123def456
  • Reboot the two web servers i-0aaa111 and i-0bbb222
  • Start the dev instances back up in us-west-2
  • Shut down i-0deadbeef in eu-central-1

AWSElastiCacheDescribeClusters

Describes ElastiCache clusters in a region, optionally scoped to one cluster, with per-node detail included by default. Use it to check cluster health, engine version, or node configuration.

Parameter Type Default Description
cache_cluster_id string

Single cluster ID to describe. Omit to list all.

show_node_info string true

Include per-node detail, true or false (default true).

max_records string 20

Maximum clusters to return (default 20).

region string us-east-1

AWS region to target (default us-east-1).

Try asking:

  • What ElastiCache clusters are running in us-east-1?
  • Show me the nodes in the session-cache cluster
  • Is the redis-prod cluster available?
  • List our cache clusters in eu-west-1 without the node detail

AWSEventBridgePutEvents

Publishes a custom event to an EventBridge bus with a specified source, detail type, and JSON payload. Use it to trigger downstream rules and workflows from a conversation.

Parameter Type Default Description
source* string

Event source string, e.g. com.acme.orders.

detail_type* string

Detail type of the event, e.g. OrderCreated.

detail object {}

JSON detail payload of the event (default {}).

event_bus_name string default

Event bus to publish on (default 'default').

region string us-east-1

AWS region to target (default us-east-1).

* Required parameter.

Try asking:

  • Publish an order.created event with the order ID A-1042
  • Send a deployment.finished event on the default bus from source ci.pipeline
  • Emit an alert event to the ops-bus event bus
  • Fire a custom EventBridge event so the downstream rule picks it up

AWSGlueGetCrawlers

Lists the AWS Glue crawlers defined in the account along with their configuration and current state. Use it to discover what crawlers exist before starting one, or to answer 'what is cataloguing this data' questions.

Parameter Type Default Description
max_results string 20

Maximum crawlers to return (default 20).

region string us-east-1

AWS region to target (default us-east-1).

Try asking:

  • What Glue crawlers do we have?
  • List our crawlers and their current state
  • Show me the first 10 Glue crawlers in eu-west-1
  • Which crawler is responsible for the sales data catalog?

AWSGlueStartCrawler

Starts a named AWS Glue crawler so the Data Catalog picks up new partitions or schema changes. Use AWSGlueGetCrawlers first to confirm the crawler name, then this to kick it off.

Parameter Type Default Description
crawler_name* string

Name of the Glue crawler to start.

region string us-east-1

AWS region to target (default us-east-1).

* Required parameter.

Try asking:

  • Start the sales-data crawler
  • Re-run the s3-events crawler so the new partitions show up
  • Kick off the customer-catalog Glue crawler in eu-west-1
  • New files landed in the bucket — run the crawler

AWSIAMListUsers

Lists IAM users in the account, optionally scoped to a path prefix to narrow results by team or environment. Use it for access reviews and 'who has an account' questions.

Parameter Type Default Description
path_prefix string /

IAM path prefix to scope the listing, e.g. /engineering/ (default /).

max_items string 100

Maximum users to return (default 100).

region string us-east-1

AWS region to target (default us-east-1).

Try asking:

  • How many IAM users do we have?
  • List the IAM users under the /engineering/ path
  • Show me all IAM users so I can run an access review
  • Give me the first 25 IAM users in the account

AWSKMSEncryptDecrypt

Encrypts or decrypts a value using a KMS key, selected by an operation parameter. Use it to protect sensitive values before storing them, or to read back values that were encrypted earlier.

Parameter Type Default Description
operation* string

Either encrypt or decrypt; anything other than encrypt is treated as decrypt.

key_id string

KMS key ID, ARN, or alias. Required for encrypt; ignored for decrypt.

plaintext string

Base64-encoded plaintext to encrypt. Encrypt only.

ciphertext_blob string

Base64-encoded ciphertext returned by a previous encrypt. Decrypt only.

region string us-east-1

AWS region to target (default us-east-1).

* Required parameter.

Try asking:

  • Encrypt this API token with the alias/app-secrets KMS key
  • Decrypt this ciphertext blob for me
  • Use KMS key 1234abcd-12ab-34cd-56ef-1234567890ab to encrypt that value
  • Can you decrypt the blob we stored earlier and show me the plaintext?

AWSKinesisDescribeStream

Fetches the summary for a Kinesis data stream, including status, shard count, and retention settings. Use it to verify a stream is active before writing to it, or to answer capacity questions.

Parameter Type Default Description
stream_name* string

Name of the Kinesis data stream.

region string us-east-1

AWS region to target (default us-east-1).

* Required parameter.

Try asking:

  • Is the clickstream Kinesis stream active?
  • How many shards does the events stream have?
  • Describe the telemetry-stream in eu-west-1
  • What's the retention period on our orders stream?

AWSKinesisPutRecord

Writes a single JSON record to a Kinesis data stream using a partition key to determine the target shard. Use it to inject events into a streaming pipeline from a conversation.

Parameter Type Default Description
stream_name* string

Target Kinesis data stream.

data object {}

JSON record payload; base64-encoded by the tool before sending (default {}).

partition_key* string

Partition key determining the shard the record lands on.

region string us-east-1

AWS region to target (default us-east-1).

* Required parameter.

Try asking:

  • Put a record on the clickstream with partition key user-42
  • Write this order payload to the orders stream
  • Send a test event to telemetry-stream partitioned by device-7
  • Inject one record into the events stream so I can check the consumer

AWSLambdaInvoke

Invokes a Lambda function synchronously or asynchronously with a JSON payload and returns the function's response. Use it when a user wants a function actually run, not just described.

Parameter Type Default Description
function_name* string

Name or ARN of the Lambda function to invoke.

payload string {}

JSON payload passed to the function (default {}).

invocation_type string RequestResponse

RequestResponse to wait for the result (default), or Event to invoke asynchronously.

region string us-east-1

AWS region to target (default us-east-1).

* Required parameter.

Try asking:

  • Invoke the order-reprocessor Lambda with {"orderId": "A-1042"}
  • Run the nightly-cleanup function and tell me what it returned
  • Fire the notify-oncall Lambda asynchronously
  • Call the price-check function in eu-west-1 with an empty payload

AWSLambdaListFunctions

Lists Lambda functions deployed in a region, with options to limit results or include all published versions. Use it to discover what functions exist before invoking one, or to answer inventory questions.

Parameter Type Default Description
max_items string 50

Maximum functions to return (default 50).

function_version string

Set to ALL to include every published version; omit for the latest only.

region string us-east-1

AWS region to target (default us-east-1).

Try asking:

  • What Lambda functions do we have in us-east-1?
  • How many Lambdas are deployed in eu-west-1?
  • List all published versions of our Lambda functions
  • Show me the first 20 functions so I can find the invoice one

AWSRDSCreateSnapshot

Takes a manual snapshot of an RDS database instance, given the source instance identifier and a name for the new snapshot. Use it before a risky migration or schema change, or when a user asks for an ad-hoc backup outside the automated schedule.

Parameter Type Default Description
db_instance_identifier* string

Identifier of the source DB instance.

db_snapshot_identifier* string

Name to give the new snapshot.

region string us-east-1

AWS region to target (default us-east-1).

* Required parameter.

Try asking:

  • Snapshot prod-db-01 before we run the migration, call it pre-migration-0804
  • Take a backup of orders-db named orders-db-manual
  • Create an RDS snapshot of staging-db in eu-west-1
  • I need a restore point for reporting-db before tonight's deploy

AWSRDSDescribeInstances

Describes RDS database instances in a region, optionally scoped to a single instance. Use it to check whether a database is available, find its endpoint, or take an inventory before a maintenance window.

Parameter Type Default Description
db_instance_identifier string

Single DB instance identifier to describe. Omit to list all.

max_records string 20

Maximum instances to return (default 20).

region string us-east-1

AWS region to target (default us-east-1).

Try asking:

  • What RDS instances do we have in us-east-1?
  • Is prod-db-01 available right now?
  • Show me the endpoint and engine version for orders-db
  • List the first 5 RDS databases in eu-west-1

AWSRoute53ListRecords

Lists the DNS records in a Route 53 hosted zone, optionally filtered by record type. Use it to check what a name currently resolves to before changing it with AWSRoute53UpsertRecord.

Parameter Type Default Description
hosted_zone_id* string

Route 53 hosted zone ID to list records from.

record_type string

Record type to begin the listing at, e.g. A, CNAME, TXT.

max_items string 100

Maximum record sets to return (default 100).

region string us-east-1

AWS region to target (default us-east-1).

* Required parameter.

Try asking:

  • What DNS records are in hosted zone Z123456ABCDEFG?
  • Show me the A records in our production hosted zone
  • List the CNAMEs in zone Z0987654ZYXWVU
  • What does api.example.com currently point to?

AWSRoute53UpsertRecord

Creates or replaces a DNS record in a Route 53 hosted zone; the record is created if absent and overwritten if present. Use AWSRoute53ListRecords first to see the current value before making changes.

Parameter Type Default Description
hosted_zone_id* string

Route 53 hosted zone ID containing the record.

record_name* string

Fully qualified record name, e.g. api.example.com.

record_type* string

Record type, e.g. A, CNAME, TXT.

record_value* string

Value the record resolves to.

ttl string 300

Time to live in seconds (default 300).

region string us-east-1

AWS region to target (default us-east-1).

* Required parameter.

Try asking:

  • Point api.example.com at 203.0.113.10 in zone Z123456ABCDEFG
  • Update the CNAME for www.example.com to the new load balancer
  • Add a TXT record for _acme-challenge.example.com with a 60 second TTL
  • Change the A record for staging.example.com and keep the TTL at 300

AWSSecretsManagerGetSecret

Fetches a secret value from AWS Secrets Manager by name or ARN, with an option to read the current or previous version. Use it when a workflow needs a credential stored in Secrets Manager.

Parameter Type Default Description
secret_id* string

Secret name or ARN to retrieve.

version_stage string AWSCURRENT

Version stage to read, e.g. AWSCURRENT (default) or AWSPREVIOUS.

region string us-east-1

AWS region to target (default us-east-1).

* Required parameter.

Try asking:

  • Get the value of the prod/db/password secret
  • What's the current API key stored in payments/stripe-key?
  • Fetch the previous version of the prod/db/password secret
  • Read the secret arn:aws:secretsmanager:eu-west-1:123456789012:secret:svc-token

AWSSecurityHubGetFindings

Retrieves Security Hub findings, filterable by severity, resource type, and compliance status. Use it for security posture questions, such as outstanding critical issues, failed compliance checks, or findings against a specific resource class.

Parameter Type Default Description
severity_label string

Exact severity to match, e.g. CRITICAL, HIGH, MEDIUM, LOW, INFORMATIONAL.

resource_type string

Exact resource type to match, e.g. AwsS3Bucket, AwsEc2Instance.

compliance_status string

Exact compliance status to match, e.g. PASSED, FAILED, WARNING.

max_results string 25

Maximum findings to return (default 25).

region string us-east-1

AWS region to target (default us-east-1).

Try asking:

  • Show me all CRITICAL Security Hub findings
  • What compliance checks are FAILED right now?
  • List HIGH severity findings on AwsS3Bucket resources
  • Are there any critical failed findings in eu-west-1?

AWSStepFunctionsDescribeExecution

Fetches the status, input, and output for a Step Functions execution by ARN. Use it to check whether a workflow succeeded, read back its result, or investigate a failure.

Parameter Type Default Description
execution_arn* string

ARN of the execution to describe.

region string us-east-1

AWS region to target (default us-east-1).

* Required parameter.

Try asking:

  • Did that state machine execution succeed?
  • What was the output of execution arn:aws:states:us-east-1:123456789012:execution:etl:run-42?
  • Show me the input and status for the execution we just started
  • Is the nightly ETL run still in progress?

AWSStepFunctionsStartExecution

Starts an execution of a Step Functions state machine with an optional JSON input and execution name. Pair it with AWSStepFunctionsDescribeExecution to follow the run to completion.

Parameter Type Default Description
state_machine_arn* string

ARN of the state machine to execute.

input string {}

JSON input document passed to the execution (default {}).

name string

Optional execution name; AWS generates one if omitted.

region string us-east-1

AWS region to target (default us-east-1).

* Required parameter.

Try asking:

  • Kick off the order-fulfilment state machine with {"orderId": "A-1042"}
  • Start the nightly ETL workflow now
  • Run the onboarding state machine and name the execution onboard-jordan
  • Trigger the reconciliation workflow in eu-west-1 with no input