Supercharge Claude Code with AWS MCP Servers: 7 Must-Have Integrations to Accelerate your development

AWS MCP servers turn Claude Code from a smart autocomplete into a genuine AWS collaborator. If you build on AWS with Claude Code, you’ve probably hit the wall where the assistant knows AWS in general but doesn’t know your AWS, your account, your Lambda functions, your CloudWatch logs, your current pricing, or the latest service docs. That gap is exactly what the Model Context Protocol (MCP) closes.

The good news is you don’t have to build any of this yourself. The Open Source AWS MCP Servers catalog already ships 54 servers and counting, covering everything from documentation lookup and infrastructure deployment to cost analytics, CloudWatch observability, and niche domains like healthcare and lifesciences. You can slice the catalog by how you work (vibe coding, conversational assistants, autonomous background agents) or by what you need (essential setup, AI/ML, data, developer tools, integrations, and more), which makes it easy to find the handful that actually matter for your stack.

This post picks seven high-impact AWS MCP servers from that catalog, gives you the exact claude mcp add command for each, and shows why they change the way you work with Claude Code.

Why You Should Add AWS MCP Servers

A Claude Code session without AWS MCP servers is working blind on three things:

  1. Up-to-date AWS documentation. Base model knowledge goes stale. New services ship, APIs change, best practices evolve. Claude shouldn’t be guessing the latest IAM condition key or the newest Bedrock model ID.
  2. Your live AWS environment. Without tooling, Claude cannot see which Lambda functions exist, what a CloudFormation stack currently looks like, or what an alarm fired on last night.
  3. Grounded decisions. “What’s the cheapest instance for this workload?” or “Is this IaC safe to deploy?” should be answered against real AWS data, not educated guesses.

AWS MCP servers from AWS Labs solve all three. Each one is a narrowly-scoped, tool-calling bridge that Claude can invoke on demand.

Prerequisites

Before adding any of these AWS MCP servers, make sure you have the basics in place:

  • Claude Code installed. The claude CLI is how you’ll register each server.
  • uv / uvx. Most AWS Labs MCP servers run via uvx, which handles Python environment management for you. On macOS: brew install uv.
  • Python 3.10 or newer. Required by the AWS Labs servers. uv can manage this for you (uv python install 3.13), so you don’t need a system Python.
  • AWS CLI credentials configured. Every server except aws-knowledge-mcp-server authenticates via the standard boto3 credential chain. The examples below use the default profile; substitute your own. Run aws configure if you haven’t already.
  • IAM permissions for the services you plan to use. Pricing needs pricing:*, CloudWatch needs cloudwatch:* and logs:*, serverless needs SAM/CloudFormation permissions, and so on. Each server’s AWS Labs page lists the exact policy it expects.
  • Network egress to AWS APIs. If you’re behind a corporate proxy, make sure your shell environment has the right HTTPS_PROXY set before launching Claude Code.

Once those are in place, you can add the servers one line at a time.

The 7 AWS MCP Servers and How to Add Them

Run each command once. Configuration persists, and the server connects on the next Claude Code session.

ServerCommand to add
aws-knowledge-mcp-serverclaude mcp add --transport http aws-knowledge-mcp-server https://knowledge-mcp.global.api.aws
aws-api-mcp-serverclaude mcp add aws-api-mcp-server uvx awslabs.aws-api-mcp-server@latest -e AWS_REGION=us-east-1
aws-iac-mcp-serverclaude mcp add aws-iac-mcp-server uvx awslabs.aws-iac-mcp-server@latest -e AWS_PROFILE=default -e FASTMCP_LOG_LEVEL=ERROR
lambda-tool-mcp-serverclaude mcp add lambda-tool-mcp-server uvx awslabs.lambda-tool-mcp-server@latest -e AWS_PROFILE=default -e AWS_REGION=us-east-1
aws-pricing-mcp-serverclaude mcp add aws-pricing-mcp-server uvx awslabs.aws-pricing-mcp-server@latest -e AWS_PROFILE=default -e AWS_REGION=us-east-1 -e FASTMCP_LOG_LEVEL=ERROR
cloudwatch-mcp-serverclaude mcp add cloudwatch-mcp-server uvx awslabs.cloudwatch-mcp-server@latest -e AWS_PROFILE=default -e FASTMCP_LOG_LEVEL=ERROR
aws-serverless-mcp-serverclaude mcp add aws-serverless-mcp-server -e AWS_PROFILE=default -e AWS_REGION=us-east-1 -- uvx awslabs.aws-serverless-mcp-server@latest --allow-write --allow-sensitive-data-access

A few practical notes:

  • The aws-knowledge-mcp-server is a public HTTP endpoint. No AWS credentials, no rate-limited tokens, just remote docs lookup.
  • Everything else runs locally via uvx and uses your configured AWS profile (here, default). Make sure uv is installed.
  • The aws-serverless-mcp-server command uses -- to pass --allow-write and --allow-sensitive-data-access to the server itself rather than to claude mcp add. Those flags enable mutating operations and CloudWatch log access. Omit them if you want a read-only setup.

Managing Servers: Reconnect, List, Remove

A few commands worth knowing once your servers are wired up:

ActionCommand
List all servers and health statusclaude mcp list
Show details for one serverclaude mcp get <name>
Reconnect a server inside a sessionType /mcp in the Claude Code prompt, pick the server, choose Reconnect
Remove a serverclaude mcp remove <name>
Re-add a previously removed serverRe-run its claude mcp add ... command

/mcp is the fastest way to recover from a transient failure. It reconnects in place without restarting your session.

A Note on “Disable”

Claude Code’s CLI does not have a claude mcp disable command. There’s no way to temporarily turn a server off while keeping its config in place. Your options are:

  • claude mcp remove <name>. Drops the server entirely. Bring it back by re-running the original claude mcp add ....
  • Keep your setup commands in a shell script. Commenting out a line and re-running the script becomes your de-facto “disable” toggle, with the added benefit of reproducibility across machines.

If you find yourself flipping servers on and off often, the script approach is the cleanest pattern today.

Troubleshooting: When Servers Fail to Connect

If claude mcp list shows some of the servers stuck on ✗ Failed to connect, the culprit is almost always the same thing: Claude Code gives each MCP server 30 seconds to complete its handshake, and uvx often burns most of that budget resolving and installing packages on first launch. Turning on debug mode makes it obvious:

MCP server "aws-api-mcp-server" Server stderr: Installed 89 packages in 24.19s
Connection failed after 30076ms: connection timed out after 30000ms

The server itself is fine. It just never got a chance to start. The heavier servers (cloudwatch pulls in scipynumpypandasstatsmodels) are the most likely to trip this. A Python version mismatch between uvx‘s default interpreter and your system can make it worse if pre-built wheels aren’t available.

The cleanest fix is to stop paying that startup cost every time. Install each server once as a persistent uv tool:

uv tool install --python 3.13 awslabs.aws-api-mcp-server
uv tool install --python 3.13 awslabs.aws-iac-mcp-server
uv tool install --python 3.13 awslabs.lambda-tool-mcp-server
uv tool install --python 3.13 awslabs.aws-pricing-mcp-server
uv tool install --python 3.13 awslabs.cloudwatch-mcp-server
uv tool install --python 3.13 awslabs.aws-serverless-mcp-server

Then remove the uvx-based entries and re-add each server pointing to the installed binary at ~/.local/bin/awslabs.<server-name>. For example:

claude mcp remove cloudwatch-mcp-server
claude mcp add cloudwatch-mcp-server ~/.local/bin/awslabs.cloudwatch-mcp-server \
  -e AWS_PROFILE=default -e FASTMCP_LOG_LEVEL=ERROR

After this, startup drops from ~25 seconds to well under a second, and claude mcp list flips everything to ✓ Connected. You can still update the tools later with uv tool upgrade --all.

Benefits of Using AWS MCP Servers

Once these AWS MCP servers are wired in, the day-to-day feel of working with Claude Code on AWS changes noticeably:

  • Authoritative documentation on tap. aws-knowledge-mcp-server pulls from the current AWS docs, so Claude stops inventing flags that don’t exist and starts quoting the right ones.
  • Real API access, safely scoped. aws-api-mcp-server lets Claude make AWS API calls via your credentials. Describe resources, inspect configurations, and verify assumptions without copy-pasting CLI output back and forth.
  • IaC that actually fits your environment. aws-iac-mcp-server generates and validates CloudFormation/CDK/Terraform against your account context instead of a generic template.
  • Lambda as first-class tools. lambda-tool-mcp-server exposes your own AWS Lambda functions as callable tools, so Claude can invoke them like any other utility. Powerful for internal platforms.
  • Grounded cost conversations. aws-pricing-mcp-server gives Claude live pricing data, so “which is cheaper, Fargate or EC2 for this?” becomes a real answer, not a hand-wave.
  • Observability that closes the loop. cloudwatch-mcp-server lets Claude read CloudWatch metrics, logs, and alarms. When something breaks, the debugging loop stays inside the conversation.
  • End-to-end serverless workflows. aws-serverless-mcp-server covers AWS SAM deployments, function scaffolding, and log inspection. The full build-deploy-debug cycle.
  • Less context-switching. Each AWS MCP server replaces a tab, a CLI invocation, or a doc search. The cumulative effect is fewer interruptions and a tighter feedback loop.

Conclusion

AWS MCP servers are the difference between an AI assistant that talks about AWS and one that works with AWS. The seven servers above cover the axes that matter most for day-to-day cloud work: documentation, APIs, infrastructure-as-code, compute, cost, observability, and serverless. Each is a one-line install, and together they turn Claude Code into a teammate that can read your environment, reason about it, and act on it.

Start with the ones closest to your current workload. aws-knowledge-mcp-server and cloudwatch-mcp-server are low-risk wins. Then layer in the rest as you go. If any of them refuse to connect, switch that server from uvx to a pre-installed uv tool binary and the timeout disappears. Restart your Claude Code session after adding them, and you’re set.

If you found this tutorial insightful, please do bookmark 🔖 it! Also please do share it with your friends and colleagues!

Navule Pavan Kumar Rao

I am a Full Stack Software Engineer with the Product Development experience in Banking, Finance, Corporate Tax and Automobile domains. I use SOLID Programming Principles and Design Patterns and Architect Software Solutions that scale using C#, .NET, Python, PHP and TDD. I am an expert in deployment of the Software Applications to Cloud Platforms such as Azure, GCP and non cloud On-Premise Infrastructures using shell scripts that become a part of CI/CD. I pursued Executive M.Tech in Data Science from IIT, Hyderabad (Indian Institute of Technology, Hyderabad) and hold B.Tech in Electonics and Communications Engineering from Vaagdevi Institute of Technology & Science.

Leave a Reply