Comece a usar o AgentCore Gateway
Neste guia de início rápido, você aprenderá como configurar um gateway e integrá-lo aos seus agentes usando a AgentCore CLI. Para obter guias e exemplos mais abrangentes, consulte o GitHub repositório Amazon Bedrock AgentCore Gateway
nota
A AgentCore CLI fornece comandos e um assistente TUI interativo para gerenciar AgentCore os recursos do Gateway. Para ver a referência completa da API do AWS SDK, consulte Operações do plano AgentCore de controle
Tópicos
Pré-requisitos
Antes de começar, verifique se você tem o seguinte:
-
AWS Conta com credenciais configuradas. Para configurar as credenciais, você pode instalar e usar a interface de linha de AWS comando seguindo as etapas em Introdução à AWS CLI.
-
Node.js 18+ instalados (para a AgentCore CLI).
-
Python 3.10+ instalado (para o script do agente).
-
Permissões do IAM para criar funções, funções Lambda e usar o Amazon Bedrock. AgentCore
-
Acesso ao modelo — Ative o Claude Sonnet 3.7 da Anthropic no console Amazon Bedrock (ou outro modelo para o agente de demonstração)
Etapa 1: Configurar e instalar
Instale a AgentCore CLI globalmente:
npm install -g @aws/agentcore
Crie um novo AgentCore projeto com um agente e um gateway:
exemplo
Etapa 2: Criar gateway
Adicione um gateway e um destino ao seu projeto usando a AgentCore CLI:
exemplo
Para usar a JWT-based autorização em vez disso, especifique --authorizer-type CUSTOM_JWT com sua URL de descoberta do OAuth:
exemplo
Etapa 3: executar a configuração
Implante seu projeto para AWS:
agentcore deploy
A CLI sintetiza uma pilha de AWS CDK e implanta seu gateway, destinos e agente no Amazon Bedrock. AgentCore Isso leva cerca de 2 a 3 minutos.
Etapa 4: usar o gateway com um agente
Recupere o URL do seu gateway usando a AgentCore CLI:
agentcore status
Crie um novo arquivo chamado run_agent.py e insira o código a seguir. Instale primeiro as dependências do Python:
pip install strands-agents mcp
""" Agent script to test the Gateway Run this after setup: python run_agent.py """ from strands import Agent from strands.models import BedrockModel from strands.tools.mcp.mcp_client import MCPClient from mcp.client.streamable_http import streamablehttp_client import json import sys def create_streamable_http_transport(mcp_url: str): return streamablehttp_client(mcp_url) def get_full_tools_list(client): """Get all tools with pagination support""" more_tools = True tools = [] pagination_token = None while more_tools: tmp_tools = client.list_tools_sync(pagination_token=pagination_token) tools.extend(tmp_tools) if tmp_tools.pagination_token is None: more_tools = False else: more_tools = True pagination_token = tmp_tools.pagination_token return tools def run_agent(): # Get the gateway URL from agentcore status gateway_url = "<YOUR_GATEWAY_URL>" # Replace with URL from 'agentcore status' # Model configuration - change if needed model_id = "anthropic.claude-3-7-sonnet-20250219-v1:0" print("Starting AgentCore Gateway Test Agent") print(f"Gateway URL: {gateway_url}") print(f"Model: {model_id}") print("-" * 60) # Setup Bedrock model bedrockmodel = BedrockModel( model_id=model_id, streaming=True, ) # Setup MCP client (no auth token needed for NONE authorizer) mcp_client = MCPClient(lambda: create_streamable_http_transport(gateway_url)) with mcp_client: # List available tools tools = get_full_tools_list(mcp_client) print(f"\nAvailable tools: {[tool.tool_name for tool in tools]}") print("-" * 60) # Create agent agent = Agent(model=bedrockmodel, tools=tools) # Interactive loop print("\nInteractive Agent Ready!") print("Try asking: 'What's the weather in Seattle?'") print("Type 'exit', 'quit', or 'bye' to end.\n") while True: user_input = input("You: ") if user_input.lower() in ["exit", "quit", "bye"]: print("Goodbye!") break print("\nThinking...\n") response = agent(user_input) print(f"\nAgent: {response.message.get('content', response)}\n") if __name__ == "__main__": run_agent()
Administre seu agente
Teste seu gateway executando o agente e interagindo com as ferramentas.
python run_agent.py
É isso mesmo! O agente começará e você poderá fazer perguntas como:
-
“Qual é o clima em Seattle?”
-
“Que horas são em Nova York?”
O que você construiu
Por meio deste tutorial de introdução, você criou os seguintes recursos:
-
Servidor MCP (Gateway): um endpoint gerenciado em
https://gateway-id.gateway.bedrock-agentcore.region.amazonaws.com/mcp -
Ferramentas Lambda: funções simuladas que retornam dados de teste (clima: “72°F, Sunny”, horário: "14h30”)
-
Agente de IA: Claude-powered assistente que pode descobrir e usar suas ferramentas
Solução de problemas
A tabela a seguir mostra alguns possíveis problemas e suas soluções:
| Problema | Solução |
|---|---|
|
“Nenhum módulo chamado 'strings'” |
Corra: |
|
“Modelo não ativado” |
Ative o Claude Sonnet 3.7 no console Bedrock → Acesso ao modelo |
|
"AccessDeniedException" |
Verifique as permissões do IAM para bedrock-agentcore: * |
|
O gateway não está respondendo |
Aguarde 30 a 60 segundos após a criação para a propagação do DNS |
Validação rápida
Execute os seguintes comandos em um terminal para verificar se o gateway está funcionando.
# Check your Gateway is working curl -X POST YOUR_GATEWAY_URL \ -H "Content-Type: application/json" \ -d '{"jsonrpc":"2.0","id":1,"method":"tools/list","params":{}}' # Watch live logs aws logs tail /aws/bedrock-agentcore/gateways/YOUR_GATEWAY_ID --follow
Limpeza
Para remover o gateway e seus alvos do seu projeto:
agentcore remove gateway --name TestGateway
Para remover todos os recursos e reimplantar:
agentcore remove all agentcore deploy
Próximas etapas
-
Ferramentas Lambda personalizadas: crie funções Lambda com sua lógica de negócios
-
Adicione suas próprias APIs: amplie seu gateway com especificações OpenAPI para serviços reais
-
Configuração de produção: configure endpoints de VPC, domínios personalizados e monitoramento