boto3’s Bedrock clients so calls to Amazon Bedrock are
policy-checked and audited the same way OpenAI / Anthropic / Google
calls are. Two boto3 services are covered:
bedrock-runtime—Converse,ConverseStream, plus the legacyInvokeModelshapes. The agentic loop runs in Python, so the SDK can intercept every turn.bedrock-agent-runtime—InvokeAgentfor managed Bedrock Agents whose Action Groups execute on AWS-managed infrastructure.
egisai.init() runs, both clients are patched in place on every
new boto3.client(…) instance.
Supported surface
Install
Use — Bedrock Converse
Streaming
Tool use
When the model returnstoolUse blocks, the SDK runs output-side
policies (deny_tool_call, deny_mcp_call, semantic_guard,
deny_bash_command, deny_db_query, deny_financial_action) against
them before they return to your dispatch code. A blocked tool call
either raises PermissionError or returns a refusal-shaped response,
depending on on_block. Tool results you feed back in the next call’s
messages are scanned by the input phase, so PII in a CRM or database
lookup gets caught before the model is shown it.
Use — managed Bedrock Agents
When a call is blocked
By default a blocked call raisesPermissionError. Switch modes at init
if you’d rather receive a refusal-shaped Converse response:
Converse / ConverseStream /
InvokeAgent response shape so your existing code keeps working.
What’s next
Claude Agent SDK
Tier 3 framework with PreToolUse + PostToolUse enforcement.
Agent frameworks
Other agent frameworks supported by the SDK.