Skip to main content
mcpSource-backedReview first Safety Privacy
AWS Labs logo

Amazon ECS MCP Server

Official AWS Labs MCP server for Amazon ECS that helps AI assistants containerize applications, deploy them to ECS, troubleshoot deployments, and explore ECS and ECR resources across the container application lifecycle.

by AWS Labs·added 2026-06-21·
HarnessClaude CodeCodexCursorClaude Desktop
Review first review before installing

Open the source and read safety notes before installing.

Citation facts

Source-backed facts for citing this resource, derived directly from the registry — also available as plain text for AI assistants.

Source URLs
https://github.com/awslabs/mcp/blob/main/src/ecs-mcp-server/README.md, https://github.com/awslabs/mcp, https://awslabs.github.io/mcp/
Brand
AWS Labs
Brand domain
aws.amazon.com
Brand asset source
brandfetch
Safety notes
The configuration above is read-only. Setting `ALLOW_WRITE=true` lets the server create and modify infrastructure (ECR repos, CloudFormation stacks, ECS services) and `ALLOW_SENSITIVE_DATA=true` exposes logs; enable these only deliberately., AWS documents this server as primarily for development, testing, and non-critical environments; keep write/sensitive-data disabled for production accounts and prefer non-production targets while evaluating it., This server acts on real infrastructure with your AWS credentials; scope the profile to the intended account, region, and resources, and run it only on a trusted host.
Privacy notes
Cluster, service, task, task-definition, and ECR metadata plus account/region identifiers can be returned through tool calls and exposed to the model., With sensitive-data access enabled, logs and deployment details may be returned; keep account identifiers, credentials, and log contents out of public prompts, issues, and screenshots.
Author
AWS Labs
Submitted by
jaso0n0818
Claim status
unclaimed
Last verified
2026-06-21

Safety notes

  • The configuration above is read-only. Setting `ALLOW_WRITE=true` lets the server create and modify infrastructure (ECR repos, CloudFormation stacks, ECS services) and `ALLOW_SENSITIVE_DATA=true` exposes logs; enable these only deliberately.
  • AWS documents this server as primarily for development, testing, and non-critical environments; keep write/sensitive-data disabled for production accounts and prefer non-production targets while evaluating it.
  • This server acts on real infrastructure with your AWS credentials; scope the profile to the intended account, region, and resources, and run it only on a trusted host.

Privacy notes

  • Cluster, service, task, task-definition, and ECR metadata plus account/region identifiers can be returned through tool calls and exposed to the model.
  • With sensitive-data access enabled, logs and deployment details may be returned; keep account identifiers, credentials, and log contents out of public prompts, issues, and screenshots.

Prerequisites

  • An AWS account with Amazon ECS/ECR and permissions to view (and, if enabled, deploy) the target resources.
  • Docker or Finch for containerization and local image builds.
  • Python 3.10 or newer and `uv` / `uvx` installed (Astral) to run the package.
  • AWS credentials configured locally (for example via `aws configure` or `AWS_PROFILE`) scoped to the intended account, region, and resources.
  • An MCP client that supports stdio servers; the server runs locally on the same host as the client.

Schema details

Install type
cli
Troubleshooting
No
Source repository stats
Scope
Source repo
Collection metadata
Estimated setup
15 minutes
Difficulty
advanced
Tool listing metadata
Pricing
open-source
Disclosure
editorial
Application category
DeveloperApplication
Operating system
Cross-platform
Full copyable content
{
  "awslabs.ecs-mcp-server": {
    "command": "uvx",
    "args": ["--from", "awslabs-ecs-mcp-server", "ecs-mcp-server"],
    "env": {
      "AWS_PROFILE": "${AWS_PROFILE}",
      "AWS_REGION": "us-east-1",
      "FASTMCP_LOG_LEVEL": "ERROR",
      "ALLOW_WRITE": "false",
      "ALLOW_SENSITIVE_DATA": "false"
    }
  }
}

About this resource

Overview

Amazon ECS MCP Server is an official AWS Labs Model Context Protocol server that helps AI assistants work with the full lifecycle of containerized applications on Amazon ECS — from containerizing an application, through deploying it to ECS, to troubleshooting deployments and exploring ECS/ECR resources.

It runs locally over stdio via uvx from the published awslabs.ecs-mcp-server Python package and uses your local AWS credentials. The configuration shown is read-only; write and sensitive-data access are opt-in environment toggles.

Features

  • Containerization guidance — best-practice guidance for containerizing web applications.
  • Deployment — deploy containerized apps with ECS Express Mode and automatic infrastructure provisioning (write mode).
  • ECR integration — create ECR repositories and build/push Docker images (write mode).
  • Resource management — list and explore ECS clusters, services, tasks, and task definitions, plus ECR images.
  • Troubleshooting — diagnose and resolve common ECS deployment problems.

Use Cases

  • Containerize an existing web application with AWS best practices.
  • Deploy a container to ECS Express Mode with provisioned infrastructure (write).
  • Inspect the live state of ECS clusters, services, and tasks.
  • Troubleshoot a failing ECS deployment.

Installation

Claude Code

  1. Install Python 3.10+, uv, and Docker or Finch.
  2. Configure an AWS profile and region scoped to the target account.
  3. Add the server with the read-only stdio configuration above. To enable deployments, set ALLOW_WRITE=true (and ALLOW_SENSITIVE_DATA=true for logs) — only when you intend those operations.
  4. Verify it is connected with claude mcp list.

Claude Desktop / Cursor / Kiro / VS Code

Add the configSnippet above to your client's MCP configuration and set AWS_PROFILE/AWS_REGION. The first run downloads the package via uvx.

Source And Trust

This entry is based on the official AWS Labs awslabs/mcp repository and the published PyPI package (Apache-2.0). AWS positions this server for development, testing, and non-critical environments; it can act on real infrastructure when write access is enabled, so keep the write/sensitive-data toggles off by default, scope credentials tightly, and verify the configuration against the linked source before using it in automated workflows.

Source citations

Add this badge to your README

Show that Amazon ECS MCP Server is listed on HeyClaude. Paste this Markdown into your README — it renders the badge and links back to this page.

Listed on HeyClaude
[![Listed on HeyClaude](https://heyclau.de/badge/mcp/aws-ecs-mcp-server.svg)](https://heyclau.de/entry/mcp/aws-ecs-mcp-server)

How it compares

Amazon ECS MCP Server side by side with 3 alternatives on trust, install, platform support, and disclosed safety notes — all from reviewed registry metadata.

Field

Official AWS Labs MCP server for Amazon ECS that helps AI assistants containerize applications, deploy them to ECS, troubleshoot deployments, and explore ECS and ECR resources across the container application lifecycle.

Open dossier

Official AWS Labs MCP server for Amazon EKS that gives AI code assistants real-time cluster state visibility and Kubernetes/EKS resource management, from cluster setup through deployment, troubleshooting, and optimization.

Open dossier

Official AWS Labs MCP server for Amazon Location Service that gives AI assistants place search, geocoding, reverse geocoding, nearby and open-now search, and route calculation with waypoint optimization.

Open dossier

Official AWS Labs MCP server for Amazon SNS and SQS that lets AI assistants list and manage SNS topics, subscriptions, and SQS queues and send/receive messages, with resource tagging so it only modifies what it created.

Open dossier
Trust
Install riskReview firstReview firstReview firstReview first
Notes Safety Privacy Safety Privacy Safety Privacy Safety Privacy
BrandAWS Labs logoAWS LabsAWS Labs logoAWS LabsAWS Labs logoAWS LabsAWS Labs logoAWS Labs
Categorymcpmcpmcpmcp
Sourcesource-backedsource-backedsource-backedsource-backed
AuthorAWS LabsAWS LabsAWS LabsAWS Labs
Added2026-06-212026-06-212026-06-212026-06-21
Platforms
Claude CodeCodexCursorClaude Desktop
Claude CodeClaude Desktop
Claude CodeClaude Desktop
Claude CodeClaude Desktop
Source repo
Safety notesThe configuration above is read-only. Setting `ALLOW_WRITE=true` lets the server create and modify infrastructure (ECR repos, CloudFormation stacks, ECS services) and `ALLOW_SENSITIVE_DATA=true` exposes logs; enable these only deliberately. AWS documents this server as primarily for development, testing, and non-critical environments; keep write/sensitive-data disabled for production accounts and prefer non-production targets while evaluating it. This server acts on real infrastructure with your AWS credentials; scope the profile to the intended account, region, and resources, and run it only on a trusted host.The configuration above is read-only. Adding the `--allow-write` flag lets the server create, update, patch, and delete EKS/Kubernetes resources (including creating clusters via CloudFormation) and `--allow-sensitive-data-access` exposes logs and events; enable these only deliberately. This server acts on real infrastructure with your AWS credentials; scope the profile to the intended account, region, and clusters, and prefer non-production targets while evaluating it. Run it only on a trusted host, and review any generated manifests or CloudFormation actions before applying them.This server calls Amazon Location Service place and route APIs with your AWS credentials; scope the profile to Location Service access and the intended account and region. The tools are query-oriented (search, geocode, route) rather than resource-mutating, but Amazon Location Service API calls may incur AWS usage costs. Run it only on a trusted host, since it uses the local machine's AWS credentials to reach your account.Resource creation/deletion is gated by the `--allow-resource-creation` flag (default off); without it, create/delete tools are hidden. Enable it only deliberately, and grant `AmazonSNSFullAccess`/`AmazonSQSFullAccess` only when you intend mutations. The server tags resources it creates and will only modify resources carrying that tag, which prevents it from changing pre-existing topics/queues it did not create. This server acts on real messaging infrastructure with your AWS credentials; scope the profile to the intended account and region and run it only on a trusted host.
Privacy notesCluster, service, task, task-definition, and ECR metadata plus account/region identifiers can be returned through tool calls and exposed to the model. With sensitive-data access enabled, logs and deployment details may be returned; keep account identifiers, credentials, and log contents out of public prompts, issues, and screenshots.Cluster state, resource manifests, ARNs, and account/region metadata can be returned through tool calls and exposed to the model. With sensitive-data access enabled, pod logs and Kubernetes events may be returned; keep account identifiers, credentials, and log contents out of public prompts, issues, and screenshots.Place queries, coordinates, addresses, and waypoints you ask about are sent to Amazon Location Service using your configured credentials. Returned place details, addresses, and route geometry are exposed to the model; keep account identifiers and credentials out of public prompts, issues, and screenshots.Topic/queue names, ARNs, subscription details, and account/region metadata can be returned through tool calls and exposed to the model. Message send/receive tools can read and write message payloads; keep sensitive message contents, account identifiers, and credentials out of public prompts, issues, and screenshots.
Prerequisites
  • An AWS account with Amazon ECS/ECR and permissions to view (and, if enabled, deploy) the target resources.
  • Docker or Finch for containerization and local image builds.
  • Python 3.10 or newer and `uv` / `uvx` installed (Astral) to run the package.
  • AWS credentials configured locally (for example via `aws configure` or `AWS_PROFILE`) scoped to the intended account, region, and resources.
  • An AWS account with Amazon EKS and permissions to view (and, if enabled, manage) the target clusters.
  • Python 3.10 or newer and `uv` / `uvx` installed (Astral) to run the package.
  • AWS credentials configured locally (for example via `aws configure` or `AWS_PROFILE`) scoped to the intended account, region, and clusters.
  • An MCP client that supports stdio servers; the server runs locally on the same host as the client.
  • An AWS account with Amazon Location Service enabled in your chosen region.
  • Python 3.10 or newer and `uv` / `uvx` installed (Astral) to run the package.
  • AWS credentials configured locally (for example via `aws configure` or `AWS_PROFILE`) with permissions for Amazon Location Service place and route APIs.
  • An MCP client that supports stdio servers; the server runs locally on the same host as the client.
  • An AWS account with Amazon SNS and SQS, and permissions for the topics/queues you intend to inspect or manage.
  • Python 3.10 or newer and `uv` / `uvx` installed (Astral) to run the package.
  • AWS credentials configured locally (for example via `aws configure` or `AWS_PROFILE`); AWS recommends a least-privilege role with `AmazonSNSReadOnlyAccess` and `AmazonSQSReadOnlyAccess`.
  • An MCP client that supports stdio servers; the server runs locally on the same host as the client.
Install
uvx --from awslabs-ecs-mcp-server ecs-mcp-server
uvx awslabs.eks-mcp-server@latest
uvx awslabs.aws-location-mcp-server@latest
uvx awslabs.amazon-sns-sqs-mcp-server@latest
Config
{
  "mcpServers": {
    "awslabs.ecs-mcp-server": {
      "command": "uvx",
      "args": ["--from", "awslabs-ecs-mcp-server", "ecs-mcp-server"],
      "env": {
        "AWS_PROFILE": "${AWS_PROFILE}",
        "AWS_REGION": "us-east-1",
        "FASTMCP_LOG_LEVEL": "ERROR",
        "ALLOW_WRITE": "false",
        "ALLOW_SENSITIVE_DATA": "false"
      },
      "type": "stdio"
    }
  }
}
{
  "mcpServers": {
    "awslabs.eks-mcp-server": {
      "command": "uvx",
      "args": ["awslabs.eks-mcp-server@latest"],
      "env": {
        "AWS_PROFILE": "${AWS_PROFILE}",
        "AWS_REGION": "us-east-1",
        "FASTMCP_LOG_LEVEL": "ERROR"
      },
      "type": "stdio"
    }
  }
}
{
  "mcpServers": {
    "awslabs.aws-location-mcp-server": {
      "command": "uvx",
      "args": ["awslabs.aws-location-mcp-server@latest"],
      "env": {
        "AWS_PROFILE": "${AWS_PROFILE}",
        "AWS_REGION": "us-east-1",
        "FASTMCP_LOG_LEVEL": "ERROR"
      },
      "type": "stdio"
    }
  }
}
{
  "mcpServers": {
    "awslabs.amazon-sns-sqs-mcp-server": {
      "command": "uvx",
      "args": ["awslabs.amazon-sns-sqs-mcp-server@latest"],
      "env": {
        "AWS_PROFILE": "${AWS_PROFILE}",
        "AWS_REGION": "us-east-1",
        "FASTMCP_LOG_LEVEL": "ERROR"
      },
      "type": "stdio"
    }
  }
}
Citations
ClaimUnclaimedUnclaimedUnclaimedUnclaimed

Related guides

Signals

Loading live community signals…

More like this, weekly

A short, calm digest of reviewed Claude resources. Unsubscribe any time.