AWS-maintained proxy and Python library that lets MCP clients and agent frameworks connect to IAM-secured MCP servers on AWS by signing requests with AWS SigV4 credentials.
MCP Proxy for AWS signs MCP requests with local AWS credentials, so tool calls can inherit the AWS permissions of the selected profile or role., Multi-profile mode injects an `aws_profile` parameter into auth-requiring tools; restrict the profile list to accounts and roles an agent may safely use., The `--read-only` flag disables tools that require write permissions when the upstream tool annotations identify them, but it is not a substitute for IAM least privilege., The `--skip-auth` option can bypass request signing when credentials are unavailable; avoid it unless the endpoint is intentionally unauthenticated., Docker examples mount AWS credential directories read-only; keep mounts scoped and avoid sharing long-lived credentials with untrusted containers.
Privacy notes
The proxy may process AWS access keys, session tokens, profile names, regions, SigV4 headers, MCP endpoint URLs, metadata, prompts, tool names, tool arguments, tool results, logs, telemetry, and framework session data., AWS profile names and metadata can reveal account structure, environment names, regions, and service ownership., Logs from clients, containers, or frameworks can expose endpoint URLs, selected profiles, tool arguments, and AWS error details., Store AWS credentials through standard credential providers or IAM roles, rotate temporary sessions, and avoid committing MCP client configs with real endpoints or profile names.
Author
aws
Submitted by
oktofeesh1
Claim status
unclaimed
Last verified
2026-06-06
Decision playbook
Review trust signals before you adopt
Signals are present but mixed. Use the checklist below to confirm the source and operational safety for your environment.
Compare context
Selected
0
Current score
63
Baseline
—
Delta
No baseline selected
No major trust-signal divergence detected in the current selection.
Source and provenance checks
Needs review
Confirm ownership and provenance before trusting install instructions.
Source link availableRequired
Open the canonical repository and verify ownership.
Done
Source provenance statusRequired
Marked as source-backed.
Done
Metadata reviewed
No reviewed flag detected in metadata.
Pending
Safety and privacy checks
Complete
Validate risk disclosures before installation or API wiring.
Safety notes presentRequired
Review the listed safety guidance before running commands.
Done
Privacy notes presentRequired
Review data handling notes before connecting accounts or secrets.
Done
Trust level risk gateRequired
Trust level does not block evaluation.
Done
Package and install checks
Needs review
Check package metadata and artifact integrity signals.
Install payload available
Install or copy payload is available for review.
Done
Package verification flag
No package verification flag provided.
Pending
Checksum metadata
No checksum provided for downloaded artifact.
Pending
Compare-driven decision checks
Needs review
Use compare context to validate trade-offs before adoption.
Compare tray has multiple entries
Add at least one more entry to compare trust differences.
5 safety and 4 privacy notes across 4 risk areas. Review closely: credentials & tokens, permissions & scopes, network access.
4 areas
SafetyCredentials & tokensMCP Proxy for AWS signs MCP requests with local AWS credentials, so tool calls can inherit the AWS permissions of the selected profile or role.
SafetyPermissions & scopesMulti-profile mode injects an `aws_profile` parameter into auth-requiring tools; restrict the profile list to accounts and roles an agent may safely use.
SafetyPermissions & scopesThe `--read-only` flag disables tools that require write permissions when the upstream tool annotations identify them, but it is not a substitute for IAM least privilege.
SafetyCredentials & tokensThe `--skip-auth` option can bypass request signing when credentials are unavailable; avoid it unless the endpoint is intentionally unauthenticated.
SafetyCredentials & tokensDocker examples mount AWS credential directories read-only; keep mounts scoped and avoid sharing long-lived credentials with untrusted containers.
PrivacyLocal filesAWS profile names and metadata can reveal account structure, environment names, regions, and service ownership.
PrivacyNetwork accessLogs from clients, containers, or frameworks can expose endpoint URLs, selected profiles, tool arguments, and AWS error details.
PrivacyCredentials & tokensStore AWS credentials through standard credential providers or IAM roles, rotate temporary sessions, and avoid committing MCP client configs with real endpoints or profile names.
Safety notes
MCP Proxy for AWS signs MCP requests with local AWS credentials, so tool calls can inherit the AWS permissions of the selected profile or role.
Multi-profile mode injects an `aws_profile` parameter into auth-requiring tools; restrict the profile list to accounts and roles an agent may safely use.
The `--read-only` flag disables tools that require write permissions when the upstream tool annotations identify them, but it is not a substitute for IAM least privilege.
The `--skip-auth` option can bypass request signing when credentials are unavailable; avoid it unless the endpoint is intentionally unauthenticated.
Docker examples mount AWS credential directories read-only; keep mounts scoped and avoid sharing long-lived credentials with untrusted containers.
Privacy notes
The proxy may process AWS access keys, session tokens, profile names, regions, SigV4 headers, MCP endpoint URLs, metadata, prompts, tool names, tool arguments, tool results, logs, telemetry, and framework session data.
AWS profile names and metadata can reveal account structure, environment names, regions, and service ownership.
Logs from clients, containers, or frameworks can expose endpoint URLs, selected profiles, tool arguments, and AWS error details.
Store AWS credentials through standard credential providers or IAM roles, rotate temporary sessions, and avoid committing MCP client configs with real endpoints or profile names.
Prerequisites
Python 3.10+ and `uv`, or Docker for the public ECR image path.
AWS credentials configured through AWS CLI profiles, environment variables, or IAM roles.
The SigV4-protected MCP endpoint URL, AWS region, and optional AWS service name for signing.
Least-privilege AWS profiles prepared before enabling multi-profile switching for agents.
A decision on read-only mode, retries, timeouts, logging level, and telemetry settings before use.
MCP Proxy for AWS is an AWS-maintained proxy and Python library for connecting
MCP clients and agent frameworks to MCP servers on AWS that use IAM SigV4
authentication. It handles request signing with local AWS credentials so
standard MCP clients do not need to implement SigV4 support themselves.
The package can run as a stdio bridge for clients such as Claude Desktop and
Kiro CLI, or it can be imported as a library for Python agent frameworks such
as LangChain, LlamaIndex, Strands Agents, and Microsoft Agent Framework.
These sources were reviewed on 2026-06-06. Prefer the live repository,
README, package metadata, server implementation, SigV4 helper, client library,
PyPI JSON, public ECR gallery page, and license file for current install,
credential, profile, signing, and integration behavior.
Features
Sign MCP requests to AWS-hosted MCP endpoints with SigV4.
Resolve AWS credentials from profiles, environment variables, shared credential files, or IAM roles.
Run as a stdio bridge for MCP clients that cannot sign AWS IAM requests.
Use multi-profile switching so agents can call allowed AWS profiles per tool call.
Infer or accept the AWS service name used for SigV4 signing.
Inject metadata such as region into MCP requests.
Enable read-only mode for tools that are annotated as write-capable by the upstream server.
Configure retries, connect/read/write timeouts, tool-call timeout, and log level.
Run from PyPI with uvx, from source with uv, or from the public AWS ECR image.
Import the Python client helpers in LangChain, LlamaIndex, Strands Agents, or Microsoft Agent Framework workflows.
Installation
Run the proxy with uvx and the SigV4-protected MCP endpoint:
For multiple allowed profiles, pass profiles on the command line or set
AWS_MCP_PROXY_PROFILES. The first profile is the default, and later profiles
can be selected per call through the injected aws_profile parameter.
Use --read-only when the agent should avoid write-capable tools, and combine
it with least-privilege IAM credentials. The README also documents a public ECR
image for Docker-based MCP client configs.
Use Cases
Connect Claude to an MCP server on AWS that requires IAM SigV4 signing.
Let Kiro CLI or another MCP client use AWS credentials without custom signing code.
Bridge Bedrock AgentCore-style MCP endpoints into local MCP clients.
Give an agent a constrained set of AWS profiles for cross-account inspection.
Use read-only mode while still enforcing least privilege through IAM.
Build Python agents that call IAM-secured MCP servers through framework-specific client helpers.
Run the proxy in Docker with a read-only AWS credential mount for local development.
Safety and Privacy
MCP Proxy for AWS makes AWS credentials usable by agent tool calls. Keep IAM
permissions narrow, prefer short-lived credentials, and restrict multi-profile
mode to profiles that are appropriate for the task. The --read-only flag helps
filter write-capable tools when annotations are available, but IAM permissions
remain the real enforcement boundary.
Avoid --skip-auth unless the upstream MCP endpoint is intentionally public or
protected by another control. Be careful with Docker credential mounts and
framework logs; profile names, endpoint URLs, AWS errors, SigV4 metadata, tool
arguments, and tool results can all reveal sensitive account or workload data.
Treat MCP client configs, .env files, AWS credential directories, session
tokens, endpoint URLs, telemetry, and logs as sensitive. Rotate credentials and
avoid giving agents profiles that can modify production systems unless the host
workflow includes explicit approval.
Duplicate Check
No aws/mcp-proxy-for-aws source entry, MCP Proxy for AWS entry, or matching
source URL was found in content/mcp. Existing AWS Labs MCP coverage is
distinct from this SigV4 proxy and Python client bridge for IAM-secured MCP
servers on AWS.
Show that MCP Proxy for AWS is listed on HeyClaude. Paste this Markdown into your README — it renders the badge and links back to this page.
[](https://heyclau.de/entry/mcp/aws-mcp-proxy-for-aws)
How it compares
MCP Proxy for AWS side by side with 3 alternatives on trust, install, platform support, and disclosed safety notes — all from reviewed registry metadata.
3 trust signals differ across this comparison (Package trust, Source provenance, Submitter).
AWS-maintained proxy and Python library that lets MCP clients and agent frameworks connect to IAM-secured MCP servers on AWS by signing requests with AWS SigV4 credentials.
Official AWS Labs MCP server for AWS Identity and Access Management that lets AI assistants inspect and manage IAM users, roles, groups, policies, and access keys, with policy simulation and an opt-in read-only mode.
Open-source AI gateway that can connect to downstream MCP servers and expose their aggregated tools through a single HTTP or SSE MCP endpoint for Claude Desktop, Cursor, and other MCP clients.
✓MCP Proxy for AWS signs MCP requests with local AWS credentials, so tool calls can inherit the AWS permissions of the selected profile or role.
Multi-profile mode injects an `aws_profile` parameter into auth-requiring tools; restrict the profile list to accounts and roles an agent may safely use.
The `--read-only` flag disables tools that require write permissions when the upstream tool annotations identify them, but it is not a substitute for IAM least privilege.
The `--skip-auth` option can bypass request signing when credentials are unavailable; avoid it unless the endpoint is intentionally unauthenticated.
Docker examples mount AWS credential directories read-only; keep mounts scoped and avoid sharing long-lived credentials with untrusted containers.
✓Run with the `--readonly` flag (shown above) to block all mutating operations. Without it the server can create and delete IAM users, roles, groups, policies, and access keys — high-impact identity changes — so enable write access only deliberately and with scoped permissions.
IAM controls account-wide access; a misused write operation can grant or revoke permissions broadly. Prefer non-production accounts while evaluating, and use policy simulation to test changes before applying them.
This server acts on real IAM with your AWS credentials; scope the profile tightly and run it only on a trusted host.
✓Scope AWS credentials to the intended accounts, regions, and services because infrastructure actions can affect production resources.
✓Bifrost can expose all selected downstream MCP tools through one `/mcp` gateway endpoint, so treat the endpoint like an access layer for every connected tool.
The docs state that default LLM tool calls are suggestions until an explicit tool execution API call is made, but agent mode can enable configured automatic execution.
Gateway-mode auto-approval is controlled by the external MCP host, such as Claude Desktop, Cursor, Cline, or a custom client, not by Bifrost's `tools_to_auto_execute` setting.
Stdio connections spawn local commands inside the Bifrost runtime; Docker deployments need images that include the requested executables.
Use virtual keys, per-tool allowlists, auth headers, OAuth, per-user credentials, and network controls to limit which clients can reach high-impact tools.
Privacy notes
✓The proxy may process AWS access keys, session tokens, profile names, regions, SigV4 headers, MCP endpoint URLs, metadata, prompts, tool names, tool arguments, tool results, logs, telemetry, and framework session data.
AWS profile names and metadata can reveal account structure, environment names, regions, and service ownership.
Logs from clients, containers, or frameworks can expose endpoint URLs, selected profiles, tool arguments, and AWS error details.
Store AWS credentials through standard credential providers or IAM roles, rotate temporary sessions, and avoid committing MCP client configs with real endpoints or profile names.
✓IAM user/role/group names, ARNs, policy documents, and account metadata can be returned through tool calls and exposed to the model.
Access key IDs and other identity material may appear in responses; never expose secret access keys, and keep account identifiers and policy contents out of public prompts, issues, and screenshots.
✓AWS resource names, configuration, metrics, logs, ARNs, and account metadata may be exposed through tool calls and responses.
✓Bifrost may process provider prompts, model responses, MCP tool names, tool arguments, tool results, headers, virtual keys, OAuth tokens, per-user credentials, logs, traces, metrics, and downstream server metadata.
Per-user auth stores credentials against a signed-in user, virtual key, or session identity; review credential lifecycle, revocation, and orphaned-session behavior.
Logs, config stores, provider settings, MCP sessions, and gateway analytics can contain sensitive operational or user data.
Keep real provider keys, virtual keys, OAuth secrets, MCP endpoint URLs, and upstream service credentials in environment variables or secret stores, not committed config.
Prerequisites
Python 3.10+ and `uv`, or Docker for the public ECR image path.
AWS credentials configured through AWS CLI profiles, environment variables, or IAM roles.
The SigV4-protected MCP endpoint URL, AWS region, and optional AWS service name for signing.
Least-privilege AWS profiles prepared before enabling multi-profile switching for agents.
An AWS account with IAM access and permissions for the IAM read (and, if write is enabled, manage) operations you intend to use.
Python 3.10 or newer and `uv` / `uvx` installed (Astral) to run the package.
AWS credentials configured locally (for example via `aws configure` or `AWS_PROFILE`) scoped least-privilege; read-only IAM permissions are enough for the recommended `--readonly` mode.
An MCP client that supports stdio servers; the server runs locally on the same host as the client.
AWS account with active credentials and appropriate IAM permissions
AWS credentials configured via one of: IAM access keys (AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY), AWS profile (~/.aws/credentials), or IAM role (for EC2/ECS)
Node.js with `npx`, Docker, or another supported Bifrost Gateway deployment path.
Bifrost Gateway version `v1.4.0-prerelease1` or newer for MCP gateway mode.
Downstream MCP server commands or HTTP/SSE endpoint URLs prepared before registering clients.
Provider API keys, virtual keys, gateway auth settings, and governance policies reviewed before sharing the endpoint.