AWS Builder Center
Kiro Powers: o que são e por que não usar só MCP

Kiro Powers: o que são e por que não usar só MCP

O que são os Kiro Powers, como se diferenciam de servidores MCP e como eles carregam ferramentas e boas práticas só quando a tarefa precisa.

Developer Advocate @ AWS
Por padrão, o agente do Kiro trabalha com as coisas que ele pode acessar: seu código, seu terminal, seus arquivos. Mas e quando você precisa abrir uma issue no GitHub, buscar informação na documentação mais recente de uma biblioteca, ou criar recursos na sua conta da AWS?
É aí que entram o MCP e os Powers. Neste post você vai ver o que cada um é, como conectar o Kiro ao MCP do GitHub, e como guardar seus secrets do jeito certo.

O que é MCP

MCP, ou Model Context Protocol , é um padrão aberto que define como um agente de IA se conecta a ferramentas externas:
  • Um servidor MCP expõe ferramentas: criar uma issue, consultar um banco de dados, buscar documentação.
  • O cliente (no nosso caso, o Kiro) se conecta a esse servidor e passa a poder usar essas ferramentas.
  • A configuração fica em um arquivo JSON.
Por ser um padrão aberto, o mesmo servidor MCP funciona com qualquer agente compatível. Se você já usa MCP com outra ferramenta, a configuração que você tem funciona no Kiro também.

Conectando o Kiro ao MCP do GitHub

O GitHub tem um servidor MCP oficial  que dá ao agente acesso a repositórios, issues e pull requests. Vamos conectar em três passos: criar um token de acesso, guardar ele como variável de ambiente, e configurar o Kiro.
1. Crie um token de acesso. Crie um fine-grained personal access token  na sua conta do GitHub. O token funciona como uma credencial de acesso à sua conta do GitHub, então selecione só os repositórios e permissões que você quer usar com o servidor MCP.
2. Guarde como variável de ambiente.
Caso você também goste de versionar seus arquivos de configuração , não pode deixar o token visível na configuração do MCP. Para isso, configure o access token em uma variável de ambiente adicionando esta linha no arquivo de configuração do seu shell (eu uso ~/.zshrc.local):
1
export GITHUB_PERSONAL_ACCESS_TOKEN="seu-token-aqui"
Assim o token vive só na sua máquina, e a config do MCP vai referenciar a variável pelo nome.
3. Configure o Kiro. No painel lateral, em MCP Servers, edite a configuração e cole:
1
2
3
4
5
6
7
8
9
10
{
"mcpServers": {
"github": {
"url": "https://api.githubcopilot.com/mcp/",
"headers": {
"Authorization": "Bearer ${GITHUB_PERSONAL_ACCESS_TOKEN}"
}
}
}
}
Salve o arquivo mcp.json, e o GitHub aparece no painel de MCP com todas as ferramentas dele.
Agora é só usar. Você pode pedir direto para o Kiro coisas como:
Cria uma issue no GitHub neste repo com o título "Add dark mode"
O Kiro chama as ferramentas do GitHub e devolve o link direto para a issue.

O problema de ter muitas ferramentas

Servidores MCP deixam nossos agentes fazerem mais coisas, mas o problem é que cada servidor traz suas próprias ferramentas, e todas ficam carregadas no contexto do agente o tempo todo.
Cada prompt que você manda precisa considerar todas essas ferramentas, mesmo as que não têm nada a ver com a tarefa. Você pergunta algo simples sobre o seu código e o agente está ali carregando as ferramentas do GitHub, do Figma, do banco de dados. Isso ocupa a janela de contexto do agente sem necessidade e pode deixar as respostas mais lentas e com menor qualidade.
E se a gente pudesse carregar só o que faz sentido para cada tarefa?

O que são os Kiro Powers

Um Power é um pacote que fica no seu diretório home, em ~/.kiro/powers/, com três coisas dentro:
  • mcp.json: a configuração dos servidores MCP que o Power usa, as ferramentas em si.
  • Arquivos de steering: instruções com as boas práticas daquele domínio, separadas por assunto.
  • POWER.md: o arquivo principal, que diz quando esse Power deve ser carregado.
O servidor MCP dá as ferramentas, e os steerings ensinam o agente a usar elas do jeito certo, seguindo os padrões documentados em vez de tentar adivinhar. E o POWER.md é o que resolve o problema do contexto: em vez de ficar carregado o tempo todo, um Power só é ativado quando a tarefa tem a ver com ele.
O Kiro tem um marketplace  com Powers do Postman, Figma, Datadog, Stripe e vários outros. E se o que você precisa não existe no marketplace, dá para criar o seu , empacotando as suas ferramentas e convenções.
O Power do AWS Amplify , por exemplo:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
aws-amplify
├── POWER.md
├── mcp.json
└── steering
├── auth-backend.md
├── auth-mobile.md
├── auth-web.md
├── data-backend.md
├── data-mobile.md
├── data-web.md
├── deployment.md
├── storage-backend.md
├── storage-web.md
└── ...
Você menciona Amplify no prompt e o Power ativa sozinho. Os arquivos de steering separam as instruções por assunto (auth, data, storage, deployment) e por plataforma (web, mobile, backend), então quando você pede pra migrar um app web, o Kiro lê só os arquivos de auth e data pra web, não o guia inteiro.

Próximos passos

Com MCP  você conecta o Kiro a ferramentas externas, e com Powers  o agente ganha o conhecimento de como e quando usar cada uma, carregado só na hora que precisa.
Se você quer ver na prática, nesse vídeo a gente usa o Power do Amplify para migrar uma aplicação que salvava tudo no localStorage para a nuvem, com login, dados por usuário e deploy em produção:
Para começar: conecta um servidor MCP de algo que você já usa (tipo o GitHub), e procura no marketplace de Powers do Kiro  um Power de algo da sua stack pra testar numa tarefa de verdade.
Any opinions in this article are those of the individual author and may not reflect the opinions of AWS.
Enjoyed reading this content? Let the author know!

Your likes, comments, shares, and saves help creators reach more builders.

Loading recommendations

Loading article