Voltar para o blog
Machine Learning

Amazon Bedrock AgentCore Runtime ganha capacidades stateful para clientes MCP e amplia interatividade com LLMs

9 de abril de 2026
13:15
Computação em Nuvemmachine learningAWSLLMAmazon Bedrock AgentCoreInteligência ArtificialMCP StatefulAgentes InterativosFluxos Multi-turno
Amazon Bedrock AgentCore Runtime ganha capacidades stateful para clientes MCP e amplia interatividade com LLMs

A Amazon Web Services (AWS) anunciou a introdução das capacidades stateful para clientes MCP (Model Context Protocol) no Amazon Bedrock AgentCore Runtime. Essa atualização permite a criação de servidores MCP stateful que suportam fluxos de trabalho interativos e multi-turno, superando limitações das implementações anteriores, que eram stateless e não conseguiam manter contexto entre requisições.

Do modelo stateless ao stateful: o que muda?

Até então, os servidores MCP hospedados no AgentCore Runtime operavam em modo stateless, onde cada solicitação HTTP era tratada de forma independente, sem manter histórico ou contexto entre chamadas. Isso dificultava interações que exigem pausas para pedir esclarecimentos ao usuário, geração dinâmica de conteúdo via LLM (Large Language Model) ou atualizações de progresso em tarefas longas.

Com o modo stateful ativado (configurando stateless_http=False no servidor), o AgentCore cria um microVM dedicado para cada sessão de usuário. Essa microVM persiste durante toda a sessão (até 8 horas ou 15 minutos de inatividade) e mantém isolamento de CPU, memória e sistema de arquivos entre sessões. O protocolo utiliza o cabeçalho Mcp-Session-Id para garantir a continuidade da sessão entre chamadas.

RecursoStatelessStateful
Isolamento de sessãoNãoMicroVM dedicada por sessão
Duração da sessãoAté 8h; timeout de 15min inatividadeAté 8h; timeout de 15min inatividade
Capacidades do clienteNão suportadasElicitação, amostragem, notificações de progresso
Indicado paraServidores de ferramentas simplesFluxos interativos multi-turno

Novas capacidades client-side no protocolo MCP

O modo stateful habilita três capacidades importantes do cliente MCP, que permitem um diálogo bidirecional e rico entre cliente e servidor:

  • Elicitação: possibilita que o servidor pause a execução para solicitar entrada estruturada do usuário via cliente, como preferências ou confirmações.
  • Amostragem (Sampling): o servidor pode requisitar diretamente ao cliente uma geração de conteúdo feita por um LLM, sem precisar possuir credenciais ou integração direta com o modelo.
  • Notificações de progresso: permite que o servidor envie atualizações em tempo real sobre tarefas longas, melhorando a experiência do usuário.

Como funciona a elicitação na prática?

A elicitação é um mecanismo para coletar dados do usuário durante a execução da ferramenta. O servidor envia uma requisição elicitation/create contendo uma mensagem e um esquema JSON que define a estrutura esperada da resposta. O cliente apresenta um formulário ou prompt para o usuário, que pode aceitar, recusar ou cancelar a solicitação.

Existem dois modos de elicitação:

  • Form mode: coleta estruturada diretamente no cliente MCP, adequada para preferências e confirmações não sensíveis.
  • URL mode: redireciona o usuário para uma URL externa para interações que não devem passar pelo cliente, como autenticações OAuth ou inserção de credenciais.

Um exemplo prático é a ferramenta add_expense_interactive, que interage com o usuário em quatro etapas para registrar uma despesa no Amazon DynamoDB, solicitando valor, descrição, categoria e confirmação final.

Exemplo simplificado do servidor para elicitação

mcp.run(
  transport="streamable-http",
  host="0.0.0.0",
  port=8000,
  stateless_http=False  # ativa modo stateful
)

Sampling: geração dinâmica de conteúdo via LLM no cliente

Com a capacidade de amostragem, o servidor MCP pode solicitar que o cliente execute uma chamada a um LLM para gerar conteúdo, como resumos personalizados ou recomendações, sem que o servidor precise ter credenciais ou integrar diretamente o modelo. O cliente encaminha o prompt para o modelo conectado e retorna a resposta ao servidor.

Por exemplo, a ferramenta analyze_spending obtém transações do DynamoDB, constrói um prompt e pede ao cliente que gere uma análise financeira resumida.

Notificações de progresso para operações longas

Em processos que demandam tempo, o servidor pode emitir atualizações incrementais usando ctx.report_progress(progress, total). O cliente pode exibir barras de progresso ou indicadores, mantendo o usuário informado e evitando experiências frustrantes.

Como começar a usar o Amazon Bedrock AgentCore Runtime com capacidades stateful MCP

  1. Crie uma conta AWS: https://signin.aws.amazon.com/signup?request_type=register
  2. Configure seu ambiente de desenvolvimento com FastMCP e AgentCore Runtime.
  3. Implemente seu servidor MCP com stateless_http=False para ativar o modo stateful.
  4. Implemente handlers para as capacidades de elicitação, amostragem e progresso no cliente MCP.
  5. Teste e implante seu servidor no Amazon Bedrock AgentCore Runtime.

Documentação e exemplos oficiais

Com essa atualização, a AWS amplia significativamente as possibilidades para desenvolvedores criarem agentes inteligentes mais interativos, dinâmicos e responsivos, utilizando o protocolo aberto MCP para integrar LLMs e ferramentas externas com maior fluidez e controle.