开始使用 Amazon ECS MCP 服务器 - Amazon Elastic Container Service
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

开始使用 Amazon ECS MCP 服务器

本指南将指导您完成通过 AI 代码助手设置和使用 Amazon ECS MCP 服务器的步骤。您将了解如何配置环境、连接到服务器以及通过自然语言交互开始管理 Amazon ECS 集群。

注意

Amazon ECS MCP 服务器目前为预览版,可能会发生变化。

先决条件

在开始之前,请确保您满足以下条件:

设置

验证 先决条件

检查您的 Python 版本是否为 3.10 或更高版本

python3 --version

检查 uv 安装

uv --version

验证 Amazon CLI 配置

aws configure list

设置 IAM 权限

您需要拥有 IAM 权限才能向 Amazon 服务发出只读请求并与 MCP 服务器进行交互。您可以利用 Amazon 托管策略,也可以使用单个自定义策略来实现更精细的控制。

选项 1:组合托管策略和自定义策略

  1. 附加 Amazon 托管策略 ReadOnlyAccess,以获得对所有 Amazon 服务的只读访问权限

  2. 针对 MCP 权限创建并附加一个额外自定义策略(请参阅下面的 MCP 权限 JSON)

{ "Version": "2012-10-17", "Statement": [ { "Sid": "MCPServerAccess", "Effect": "Allow", "Action": [ "ecs-mcp:InvokeReadOnlyTools", "ecs-mcp:UseMcp" ], "Resource": "*" } ] }

选项 2:单个自定义策略(最精细的控制)

或者,您可以创建并附加一个包含 Amazon 服务权限和 MCP 权限的自定义 JSON 策略。

{ "Version": "2012-10-17", "Statement": [ { "Sid": "MCPServerAccess", "Effect": "Allow", "Action": [ "ecs-mcp:InvokeReadOnlyTools", "ecs-mcp:UseMcp" ], "Resource": "*" }, { "Sid": "ECSReadOnlyAccess", "Effect": "Allow", "Action": [ "ecs:ListAccountSettings", "ecs:ListClusters", "ecs:ListContainerInstances", "ecs:ListTaskDefinitions", "ecs:ListServices", "ecs:ListServiceDeployments", "ecs:ListTasks", "ecs:DescribeClusters", "ecs:DescribeCapacityProviders", "ecs:DescribeContainerInstances", "ecs:DescribeTaskDefinition", "ecs:DescribeServices", "ecs:DescribeServiceDeployments", "ecs:DescribeServiceRevisions", "ecs:DescribeTaskSets", "ecs:DescribeTasks" ], "Resource": "*" }, { "Sid": "CloudWatchLogsReadOnlyAccess", "Effect": "Allow", "Action": [ "logs:DescribeLogGroups", "logs:DescribeLogStreams", "logs:GetLogEvents", "logs:FilterLogEvents" ], "Resource": "*" }, { "Sid": "ELBReadOnlyAccess", "Effect": "Allow", "Action": [ "elasticloadbalancing:DescribeLoadBalancers", "elasticloadbalancing:DescribeTargetGroups", "elasticloadbalancing:DescribeListeners" ], "Resource": "*" }, { "Sid": "EC2ReadOnlyAccess", "Effect": "Allow", "Action": [ "ec2:DescribeVpcs", "ec2:DescribeSubnets", "ec2:DescribeSecurityGroups", "ec2:DescribeRouteTables", "ec2:DescribeNetworkInterfaces" ], "Resource": "*" }, { "Sid": "ECRReadOnlyAccess", "Effect": "Allow", "Action": [ "ecr:DescribeRepositories", "ecr:DescribeImages" ], "Resource": "*" } ] }

选择和配置 AI 助手

安装与 MCP 兼容的 AI 助手或任何与 MCP 兼容的工具。例如,您可以使用 KiroClineCursorClaude Code。然后设置您的 AI 代码助手,以通过 MCP Proxy for Amazon 使用 Amazon ECS MCP 服务器,这是安全、经过身份验证地访问 Amazon ECS MCP 服务器所必需的。该代理充当客户端桥梁,使用您的本地 Amazon 凭证处理 Amazon SigV4 身份验证。以下示例使用 Kiro CLI。点击此链接了解关于在 Kiro 中设置 MCP 的更多信息。

找到 MCP 配置文件

  • macOS/Linux:

    ~/.kiro/settings/mcp.json
  • (Windows)

    %USERPROFILE%\.kiro\settings\mcp.json

如果配置文件不存在,请创建该文件。

添加 MCP 服务器配置

请务必将区域占位符 ({region}) 替换为您所需的区域(例如 us-west-2)。有关完整的区域列表,请参阅 Amazon Fargate 上的 Linux 容器。此外,请务必将 {profile} 占位符替换为您的 Amazon CLI CLI 配置文件名称(例如 default)。

对于 Mac/Linux:

{ "mcpServers": { "ecs-mcp": { "disabled": false, "type": "stdio", "command": "uvx", "args": [ "mcp-proxy-for-aws@latest", "https://ecs-mcp.{region}.api.aws/mcp", "--service", "ecs-mcp", "--profile", "{profile}", "--region", "{region}" ] } } }

对于 Windows:

{ "mcpServers": { "ecs-mcp": { "disabled": false, "type": "stdio", "command": "uvx", "args": [ "--from", "mcp-proxy-for-aws@latest", "mcp-proxy-for-aws.exe", "https://ecs-mcp.{region}.api.aws/mcp", "--service", "ecs-mcp", "--profile", "{profile}", "--region", "{region}" ] } } }

验证配置

重启 Kiro CLI kiro-cli,验证 MCP 服务器是否已加载 /mcp,并检查可用工具 /tools

验证您的设置

测试连接

向您的 AI 助手提一个简单问题来验证连接:

List all ECS clusters in my AWS account

您应该会看到您的 Amazon ECS 集群列表。

与使用 Amazon ECS MCP 服务器的 AI 助手进行对话

示例 1:监控部署

Check deployment status for my web-service in production-cluster Show me the ALB URL for my deployed service Get service events for the last hour

示例 2:调查容器运行状况

Show me all tasks that failed in the last 2 hours Why are my containers failing health checks? Display container logs for my api-service

示例 3:排查故障

Analyze task failures in my production cluster Check for image pull errors in the last 30 minutes Why is my task definition stuck in DELETE_IN_PROGRESS state?

示例 4:检查配置

Show me the network configuration for my web-service What security groups are attached to my service? List all VPC and subnet details for my ECS service

常见配置和最佳实践

多份 Amazon 配置文件

如果您使用多个 Amazon 账户,请创建单独的 MCP 服务器配置。

对于 Mac/Linux:

{ "mcpServers": { "ecs-mcp-prod": { "disabled": false, "type": "stdio", "command": "uvx", "args": [ "mcp-proxy-for-aws@latest", "https://ecs-mcp.{region}.api.aws/mcp", "--service", "ecs-mcp", "--profile", "production", "--region", "us-west-2" ] }, "ecs-mcp-dev": { "disabled": false, "type": "stdio", "command": "uvx", "args": [ "mcp-proxy-for-aws@latest", "https://ecs-mcp.{region}.api.aws/mcp", "--service", "ecs-mcp", "--profile", "development", "--region", "us-east-1" ] } } }

安全最佳实践

请勿通过允许的输入机制传递密钥或敏感信息:

  • 请勿在任何配置文件中包含密钥或凭证

  • 请勿在提示中将敏感信息直接传递给模型

  • 请勿在任务定义或服务配置中包含密钥

  • 避免在应用程序日志中记录敏感信息

  • 使用 Parameter Store 来存储敏感信息

工具配置

有关工具和配置的完整列表,请参阅 Amazon ECS MCP 服务器工具配置