

# Conceitos básicos do servidor MCP do Amazon ECS
<a name="ecs-mcp-getting-started"></a>

Este guia apresenta as etapas para configurar e usar o servidor MCP do Amazon ECS com assistentes de código de IA. Você aprenderá a configurar seu ambiente, conectar-se ao servidor e começar a gerenciar seus clusters do Amazon ECS por meio de interações de linguagem natural.

**nota**  
O servidor MCP do Amazon ECS está em fase de pré-visualização e sujeito a alterações.

## Pré-requisitos
<a name="ecs-mcp-prerequisites"></a>

Antes de começar, verifique se você tem:
+ [Criada uma conta da AWS com acesso ao Amazon ECS](https://aws.amazon.com/resources/create-account/)
+ [Instalada e configurada a AWS CLI com credenciais](https://docs.aws.amazon.com/cli/latest/userguide/cli-chap-configure.html)
+ [Instalado o Python 3.10\$1](https://www.python.org/)
+ [Instalado o uv](https://docs.astral.sh/uv/getting-started/installation/)

## Configuração
<a name="ecs-mcp-setup"></a>

### Verifique os pré-requisitos do
<a name="ecs-mcp-verify-prerequisites"></a>

Verifique se a versão do Python é 3.10 ou superior.

```
python3 --version
```

Verifique a instalação do uv

```
uv --version
```

Verifique a configuração da AWS CLI

```
aws configure list
```

### Configurar permissões do IAM
<a name="ecs-mcp-iam-permissions"></a>

Você precisará de permissões do [IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/introduction.html) para fazer solicitações somente leitura aos serviços da AWS e interagir com o servidor MCP. Você pode aproveitar as [políticas gerenciadas da AWS](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_managed-vs-inline.html) ou uma única política personalizada para um controle mais granular.

**Opção 1: política gerenciada e personalizada combinadas**

1. Anexe a política gerenciada pela AWS **ReadOnlyAccess** para acesso somente leitura a todos os serviços da AWS

1. Crie e anexe uma política personalizada adicional para permissões MCP (consulte JSON de permissões MCP abaixo)

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

**Opção 2: política personalizada única (controle mais granular)**

Se preferir, crie e anexe uma única política JSON personalizada que inclua permissões de serviços da AWS e permissões MCP:

```
{
  "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": "*"
    }
  ]
}
```

### Escolher e configurar um assistente de IA
<a name="ecs-mcp-configure-assistant"></a>

Instale assistentes de IA compatíveis com MCP ou qualquer ferramenta compatível com MCP. Por exemplo, você pode usar [Kiro](https://kiro.dev/), [Cline](https://cline.bot/), [Cursor](https://cursor.com/) ou [Claude Code](https://www.claude.com/product/claude-code). Em seguida, configure seu assistente de código de IA para usar o servidor MCP do Amazon ECS por meio do MCP Proxy para AWS, que é necessário para acesso seguro e autenticado ao servidor MCP do Amazon ECS. O proxy age como ponte no lado do cliente, manipulando a autenticação AWS SigV4 com o uso das credenciais locais da AWS. O exemplo abaixo usa a CLI do Kiro. Siga este [link](https://kiro.dev/docs/cli/mcp/) para saber mais sobre como configurar o MCP no Kiro.

#### Localizar o arquivo de configuração do MCP
<a name="ecs-mcp-kiro-config-file"></a>
+ **macOS/Linux:**

  ```
  ~/.kiro/settings/mcp.json
  ```
+ **Windows:**

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

Crie o arquivo de configuração, caso ele não exista.

#### Adicionar a configuração do servidor MCP
<a name="ecs-mcp-kiro-add-config"></a>

Certifique-se de substituir o espaço reservado da região (`{region}`) pela região desejada (por exemplo, `us-west-2`). Consulte [Contêineres do Linux no AWS Fargate](AWS_Fargate-Regions.md#linux-regions) para obter uma lista completa de regiões. Além disso, certifique-se de substituir o espaço reservado `{profile}` pelo seu [nome do perfil da AWS CLI](https://docs.aws.amazon.com/cli/latest/userguide/getting-started-quickstart.html), por exemplo, `default`.

**Para 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}"
      ]
    }
  }
}
```

**Para 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}"
      ]
    }
  }
}
```

#### Verificar a configuração
<a name="ecs-mcp-kiro-verify"></a>

Reinicie a CLI do Kiro, `kiro-cli`, verifique se o servidor MCP está carregado, `/mcp`, e verifique as ferramentas disponíveis `/tools`.

#### Verificar sua configuração
<a name="ecs-mcp-verify-setup"></a>

**Testar conexão**

Faça uma pergunta simples ao seu assistente de IA para verificar a conexão:

```
List all ECS clusters in my AWS account
```

Veja uma lista dos clusters do Amazon ECS.

#### Conversar com seu assistente de IA que usa o servidor MCP do Amazon ECS
<a name="ecs-mcp-first-tasks"></a>

**Exemplo 1: monitorar implantações**

```
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
```

**Exemplo 2: investigar a integridade do contêiner**

```
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
```

**Exemplo 3: solucionar problemas de falhas**

```
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?
```

**Exemplo 4: inspecionar configurações**

```
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
```

## Configurações comuns e práticas recomendadas
<a name="ecs-mcp-common-configs"></a>

### Vários perfis AWS
<a name="ecs-mcp-multiple-profiles"></a>

Se você trabalha com várias contas da AWS, crie configurações do servidor MCP separadas.

**Para 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"
      ]
    }
  }
}
```

### Práticas recomendadas de segurança
<a name="ecs-mcp-security-best-practices"></a>

Não transmita segredos ou informações confidenciais por meio de mecanismos de entrada permitidos:
+ Não inclua segredos ou credenciais em nenhum arquivo de configuração
+ Não transmita informações confidenciais diretamente em prompts para o modelo
+ Não inclua segredos nas definições de tarefas ou nas configurações de serviços
+ Evite registrar informações confidenciais nos logs da aplicação
+ Use nosso Parameter Store para armazenar informações confidenciais

## Configuração de ferramentas
<a name="ecs-mcp-next-steps"></a>

Para obter uma lista completa de ferramentas e configurações, consulte [Configurações de ferramentas do servidor MCP do Amazon ECS](ecs-mcp-tool-configurations.md).