AWS Bedrock AgentCore
Build production-grade AI agents on AWS infrastructure.
Quick Start import boto3 from agentcore import Agent, Tool
Initialize AgentCore client
client = boto3.client('bedrock-agent-runtime')
Define a tool
@Tool(name="search_database", description="Search the product database") def search_database(query: str, limit: int = 10) -> dict: # Tool implementation return {"results": [...]}
Create agent
agent = Agent( model_id="anthropic.claude-3-sonnet", tools=[search_database], instructions="You are a helpful product search assistant." )
Invoke agent
response = agent.invoke("Find laptops under $1000")
AgentCore Components
AgentCore provides these primitives:
Component Purpose Runtime Serverless agent execution (framework-agnostic) Gateway Convert APIs/Lambda to MCP-compatible tools Memory Multi-strategy memory (semantic, user preference) Identity Auth with Cognito, Okta, Google, EntraID Tools Code Interpreter, Browser Tool Observability Deep analysis and tracing Lambda Tool Integration
Lambda function as tool
import json
def lambda_handler(event, context): action = event.get('actionGroup') function = event.get('function') parameters = event.get('parameters', [])
# Parse parameters
params = {p['name']: p['value'] for p in parameters}
if function == 'get_weather':
result = get_weather(params['city'])
elif function == 'book_flight':
result = book_flight(params['origin'], params['destination'])
return {
'response': {
'actionGroup': action,
'function': function,
'functionResponse': {
'responseBody': {
'TEXT': {'body': json.dumps(result)}
}
}
}
}
Agent Orchestration from agentcore import SupervisorAgent, SubAgent
Create specialized sub-agents
research_agent = SubAgent( name="researcher", model_id="anthropic.claude-3-sonnet", instructions="You research and gather information." )
writer_agent = SubAgent( name="writer", model_id="anthropic.claude-3-sonnet", instructions="You write clear, engaging content." )
Create supervisor
supervisor = SupervisorAgent( model_id="anthropic.claude-3-opus", sub_agents=[research_agent, writer_agent], routing_strategy="supervisor" # or "intent_classification" )
response = supervisor.invoke("Write a blog post about AI agents")
Guardrails Integration from agentcore import Agent, Guardrail
Define guardrail
guardrail = Guardrail( guardrail_id="my-guardrail-id", guardrail_version="1" )
agent = Agent( model_id="anthropic.claude-3-sonnet", guardrails=[guardrail], tools=[...], )
AgentCore Gateway
Convert existing APIs to MCP-compatible tools:
gateway_setup.py
from bedrock_agentcore import GatewayClient
gateway = GatewayClient()
Create gateway from OpenAPI spec
gateway.create_target( name="my-api", type="OPENAPI", openapi_spec_path="./api-spec.yaml" )
Create gateway from Lambda function
gateway.create_target( name="my-lambda-tool", type="LAMBDA", function_arn="arn:aws:lambda:us-east-1:123456789:function:my-tool" )
AgentCore Memory from agentcore import Agent, Memory
Create memory with multiple strategies
memory = Memory( name="customer-support-memory", strategies=["semantic", "user_preference"] )
agent = Agent( model_id="anthropic.claude-3-sonnet", memory=memory, tools=[...], )
Memory persists across sessions
response = agent.invoke( "What did we discuss last time?", session_id="user-123" )
Official Use Cases Repository
AWS provides production-ready implementations:
Repository: https://github.com/awslabs/amazon-bedrock-agentcore-samples
Available Use Cases (02-use-cases/) Use Case Description A2A Multi-Agent Incident Response Agent-to-Agent with Strands + OpenAI SDK Customer Support Assistant Memory, Knowledge Base, Google OAuth Market Trends Agent LangGraph with browser tools DB Performance Analyzer PostgreSQL integration Device Management Agent IoT with Cognito auth Enterprise Web Intelligence Browser tools for research Text to Python IDE AgentCore Code Interpreter Video Games Sales Assistant Amplify + CDK deployment Quick Start with Use Cases git clone https://github.com/awslabs/amazon-bedrock-agentcore-samples.git cd amazon-bedrock-agentcore-samples/02-use-cases/customer-support-assistant
Follow README for deployment
Resources Official Samples: https://github.com/awslabs/amazon-bedrock-agentcore-samples Use Cases: https://github.com/awslabs/amazon-bedrock-agentcore-samples/tree/main/02-use-cases Tutorials: https://github.com/awslabs/amazon-bedrock-agentcore-samples/tree/main/01-tutorials