Skip to main content
Glama
biswasbiplob

mwaa-mcp-server

by biswasbiplob

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
AWS_REGIONNoAWS region for API callsus-east-1
AWS_PROFILENoAWS CLI profile name. If not set, uses the default credential chain.
MWAA_ENVIRONMENTNoDefault MWAA environment name (avoids per-call specification). If not set, auto-detect.
FASTMCP_LOG_LEVELNoLog level (ERROR, WARNING, INFO, DEBUG).WARNING

Capabilities

Features and capabilities supported by this server

CapabilityDetails
tools
{
  "listChanged": false
}
prompts
{
  "listChanged": false
}
resources
{
  "subscribe": false,
  "listChanged": false
}
experimental
{}

Tools

Functions exposed to the LLM to take actions

NameDescription
list-environmentsA

List all MWAA environments in the specified region.

    Returns a list of environment names available in your AWS account for the given region.
    Use get-environment to retrieve detailed information about a specific environment.

    IMPORTANT: Use this tool instead of 'aws mwaa list-environments' CLI command.

    Args:
        ctx: The MCP context.
        region: AWS region override.
        profile_name: AWS CLI profile name override.

    Returns:
        CallToolResult with list of environment names.
    
get-environmentB

Get detailed information about an MWAA environment.

    Returns comprehensive details including environment status, Airflow version,
    execution role, network configuration, logging settings, and more.

    IMPORTANT: Use this tool instead of 'aws mwaa get-environment' CLI command.

    Args:
        ctx: The MCP context.
        environment_name: Name of the MWAA environment.
        region: AWS region override.
        profile_name: AWS CLI profile name override.

    Returns:
        CallToolResult with environment details.
    
create-environmentA

Create a new MWAA environment.

    Creates an Amazon MWAA environment with the specified configuration. This operation
    is asynchronous — the environment status will be CREATING until ready.

    Requires the --allow-write flag.

    Args:
        ctx: The MCP context.
        environment_name: Name for the new environment.
        dag_s3_path: S3 path to the DAGs folder.
        execution_role_arn: IAM execution role ARN.
        source_bucket_arn: S3 bucket ARN for DAGs and plugins.
        network_configuration: VPC network configuration.
        airflow_version: Optional Airflow version.
        environment_class: Optional environment size class.
        max_workers: Optional maximum worker count.
        region: AWS region override.
        profile_name: AWS CLI profile name override.

    Returns:
        CallToolResult with the created environment ARN.
    
update-environmentA

Update an existing MWAA environment.

    Updates the specified MWAA environment configuration. Only provided parameters
    will be updated. This operation is asynchronous.

    Requires the --allow-write flag.

    Args:
        ctx: The MCP context.
        environment_name: Name of the environment to update.
        airflow_version: Optional new Airflow version.
        environment_class: Optional new environment class.
        max_workers: Optional new max workers.
        dag_s3_path: Optional new DAG S3 path.
        execution_role_arn: Optional new execution role ARN.
        source_bucket_arn: Optional new source bucket ARN.
        region: AWS region override.
        profile_name: AWS CLI profile name override.

    Returns:
        CallToolResult with the update confirmation.
    
delete-environmentA

Delete an MWAA environment.

    Permanently deletes the specified MWAA environment and all associated resources.
    This operation is irreversible and asynchronous.

    Requires the --allow-write flag.

    Args:
        ctx: The MCP context.
        environment_name: Name of the environment to delete.
        region: AWS region override.
        profile_name: AWS CLI profile name override.

    Returns:
        CallToolResult confirming deletion was initiated.
    
list-dagsA

List all DAGs in an MWAA environment.

    Returns a list of DAGs with their metadata including DAG ID, description,
    schedule interval, paused status, and more.

    Args:
        ctx: The MCP context.
        environment_name: Name of the MWAA environment.
        limit: Maximum number of results.
        offset: Pagination offset.
        paused: Filter by paused status.
        region: AWS region override.
        profile_name: AWS CLI profile name override.

    Returns:
        CallToolResult with the list of DAGs.
    
get-dagB

Get details of a specific DAG.

    Returns detailed information about a DAG including its schedule, owners,
    tags, and configuration.

    Args:
        ctx: The MCP context.
        environment_name: Name of the MWAA environment.
        dag_id: The DAG identifier.
        region: AWS region override.
        profile_name: AWS CLI profile name override.

    Returns:
        CallToolResult with DAG details.
    
get-dag-sourceA

Get the source code of a DAG file.

    Returns the Python source code of the DAG. Works on both Airflow 2.x
    and 3.x environments: on 3.x the source is fetched by DAG ID directly;
    on 2.x the server resolves the DAG's file token first.

    Args:
        ctx: The MCP context.
        environment_name: Name of the MWAA environment.
        dag_id: The DAG identifier.
        region: AWS region override.
        profile_name: AWS CLI profile name override.

    Returns:
        CallToolResult with the DAG source code.
    
list-dag-runsB

List DAG runs for a specific DAG.

    Returns a list of DAG runs with their execution dates, states, and run IDs.
    Results are sorted by execution date descending (newest first) by default.

    Args:
        ctx: The MCP context.
        environment_name: Name of the MWAA environment.
        dag_id: The DAG identifier.
        limit: Maximum number of results.
        offset: Pagination offset.
        state: Filter by run state.
        order_by: Sort order (default: "-execution_date", newest first).
        execution_date_gte: Filter runs on or after this date (ISO 8601).
        execution_date_lte: Filter runs on or before this date (ISO 8601).
        region: AWS region override.
        profile_name: AWS CLI profile name override.

    Returns:
        CallToolResult with the list of DAG runs.
    
get-dag-runA

Get details of a specific DAG run.

    Returns detailed information about a DAG run including its state, execution date,
    start date, end date, and configuration.

    Args:
        ctx: The MCP context.
        environment_name: Name of the MWAA environment.
        dag_id: The DAG identifier.
        dag_run_id: The DAG run identifier.
        region: AWS region override.
        profile_name: AWS CLI profile name override.

    Returns:
        CallToolResult with DAG run details.
    
list-task-instancesA

List task instances for a specific DAG run.

    Returns all task instances within a DAG run, including their states,
    start/end times, and execution details.

    Args:
        ctx: The MCP context.
        environment_name: Name of the MWAA environment.
        dag_id: The DAG identifier.
        dag_run_id: The DAG run identifier.
        region: AWS region override.
        profile_name: AWS CLI profile name override.

    Returns:
        CallToolResult with the list of task instances.
    
get-task-instanceA

Get details of a specific task instance.

    Returns detailed information about a task instance including its state,
    start/end dates, duration, try number, and execution details.

    For dynamically mapped tasks, pass map_index to get a specific mapped instance.
    Without map_index, returns the parent task summary.

    Args:
        ctx: The MCP context.
        environment_name: Name of the MWAA environment.
        dag_id: The DAG identifier.
        dag_run_id: The DAG run identifier.
        task_id: The task identifier.
        map_index: Map index for mapped task instances (must be >= 0).
        region: AWS region override.
        profile_name: AWS CLI profile name override.

    Returns:
        CallToolResult with task instance details.
    
list-mapped-task-instancesA

List all mapped instances for a dynamically mapped task.

    Returns all mapped task instances for a task that uses Airflow's dynamic
    task mapping (expand()). Each instance includes its map_index, state,
    start/end times, and execution details.

    Use this to discover which map indices exist and their states before
    fetching logs with get-task-logs or details with get-task-instance.

    Args:
        ctx: The MCP context.
        environment_name: Name of the MWAA environment.
        dag_id: The DAG identifier.
        dag_run_id: The DAG run identifier.
        task_id: The mapped task identifier.
        limit: Maximum number of mapped instances to return.
        offset: Number of mapped instances to skip for pagination.
        region: AWS region override.
        profile_name: AWS CLI profile name override.

    Returns:
        CallToolResult with the list of mapped task instances.
    
get-task-logsA

Get logs for a specific task instance try.

    Returns the execution logs for a task instance at a specific try number.
    Useful for debugging failed or problematic task executions.

    Supports pagination for large logs via the full_content and token parameters.
    If the request times out (common with large logs >80MB), automatically retries
    with chunked mode (full_content=false) and returns the first chunk with a
    continuation token for fetching subsequent chunks.

    Args:
        ctx: The MCP context.
        environment_name: Name of the MWAA environment.
        dag_id: The DAG identifier.
        dag_run_id: The DAG run identifier.
        task_id: The task identifier.
        try_number: The try number (starts at 1).
        full_content: Whether to return full content or paginated chunks.
        token: Continuation token for fetching subsequent log chunks.
        map_index: Map index for mapped task instances.
        region: AWS region override.
        profile_name: AWS CLI profile name override.

    Returns:
        CallToolResult with the task logs.
    
list-connectionsA

List Airflow connections in an MWAA environment.

    Returns a list of connections with sensitive fields (password, extra) redacted.

    Args:
        ctx: The MCP context.
        environment_name: Name of the MWAA environment.
        limit: Maximum number of results.
        offset: Pagination offset.
        region: AWS region override.
        profile_name: AWS CLI profile name override.

    Returns:
        CallToolResult with the list of connections (passwords redacted).
    
list-variablesA

List Airflow variables in an MWAA environment.

    Returns a list of Airflow variables with their keys and values.

    Args:
        ctx: The MCP context.
        environment_name: Name of the MWAA environment.
        limit: Maximum number of results.
        offset: Pagination offset.
        region: AWS region override.
        profile_name: AWS CLI profile name override.

    Returns:
        CallToolResult with the list of variables.
    
get-import-errorsA

Get DAG import errors in an MWAA environment.

    Returns a list of import/parsing errors for DAG files. Useful for diagnosing
    why DAGs are not appearing or are broken.

    Args:
        ctx: The MCP context.
        environment_name: Name of the MWAA environment.
        region: AWS region override.
        profile_name: AWS CLI profile name override.

    Returns:
        CallToolResult with import errors.
    
trigger-dag-runA

Trigger a new DAG run.

    Creates a new DAG run for the specified DAG. Optionally pass configuration
    and a logical date.

    Requires the --allow-write flag.

    Args:
        ctx: The MCP context.
        environment_name: Name of the MWAA environment.
        dag_id: The DAG identifier to trigger.
        conf: Optional configuration dict for the DAG run.
        logical_date: Optional logical date in ISO 8601 format.
        region: AWS region override.
        profile_name: AWS CLI profile name override.

    Returns:
        CallToolResult with the triggered DAG run details.
    
pause-dagA

Pause a DAG.

    Sets the DAG's paused status to true, preventing new scheduled runs.

    Requires the --allow-write flag.

    Args:
        ctx: The MCP context.
        environment_name: Name of the MWAA environment.
        dag_id: The DAG identifier to pause.
        region: AWS region override.
        profile_name: AWS CLI profile name override.

    Returns:
        CallToolResult confirming the DAG was paused.
    
unpause-dagA

Unpause a DAG.

    Sets the DAG's paused status to false, allowing scheduled runs to resume.

    Requires the --allow-write flag.

    Args:
        ctx: The MCP context.
        environment_name: Name of the MWAA environment.
        dag_id: The DAG identifier to unpause.
        region: AWS region override.
        profile_name: AWS CLI profile name override.

    Returns:
        CallToolResult confirming the DAG was unpaused.
    
clear-task-instancesA

Clear task instances for a DAG, allowing them to be re-run.

    Resets task instances to a cleared state so they can be retried. By default
    only clears failed tasks and runs in dry-run mode for safety.

    Requires the --allow-write flag.

    Args:
        ctx: The MCP context.
        environment_name: Name of the MWAA environment.
        dag_id: The DAG identifier.
        dag_run_id: Optional DAG run ID to scope the clear.
        task_ids: Optional list of task IDs to clear.
        only_failed: Only clear failed tasks (default: true).
        dry_run: Preview without clearing (default: true).
        reset_dag_runs: Set DAG runs to RUNNING (default: false).
        include_downstream: Also clear downstream tasks.
        include_upstream: Also clear upstream tasks.
        region: AWS region override.
        profile_name: AWS CLI profile name override.

    Returns:
        CallToolResult with the cleared (or previewed) task instances.
    

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/biswasbiplob/mwaa-mcp-server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server