Want to turbocharge your Kubernetes game with AI? The Amazon EKS MCP Server is your new best friend, letting AI assistants like Cline manage your EKS clusters with natural language. I got it running in ~15 minutes, and it’s a total game-changer! In this tutorial, we’ll install the Amazon EKS MCP Server using Cline in VS Code, create a cluster, deploy NGINX, and troubleshoot pods—all with a conversational vibe. Let’s dive into the Amazon EKS MCP Server magic!
Want an integrated, All-in-One platform for your Developer Team to work together with maximum productivity?
Apidog delivers all your demands, and replaces Postman at a much more affordable price!
What is the Amazon EKS MCP Server?
The Amazon EKS MCP Server is an open-source tool that empowers AI code assistants (like Cline, Amazon Q, or Cursor) to manage Amazon Elastic Kubernetes Service (EKS) clusters via the Model Context Protocol (MCP). It provides real-time cluster insights and automates tasks like cluster creation, deployments, and troubleshooting. Key features:
- Cluster Management: Create and manage EKS clusters with auto-configured VPCs and IAM roles.
- Resource Control: Handle Kubernetes resources (pods, services, deployments) via YAML or natural language.
- Monitoring: Access pod logs, CloudWatch metrics, and events for debugging.
- Security: Runs in read-only mode by default, with configurable write access.
The eks mcp server is a “Kubernetes superpower” for AI-driven DevOps. Ready to try it? Let’s go
Why Use the Amazon EKS MCP Server?
The Amazon EKS MCP Server simplifies complex EKS workflows, making it perfect for:
- Beginners: No need to master
kubectl
oreksctl
—Cline does the heavy lifting. - Pros: Automate repetitive tasks and focus on innovation.
- Teams: Streamline deployments with consistent best practices.
- AI Fans: Leverage LLMs for natural language DevOps.
I used it to spin up a cluster and deploy NGINX in minutes—zero manual YAML tweaking!

How to Install and Use Amazon EKS MCP Server: Step-by-Step Guide
We’ll focus on installing the Amazon EKS MCP Server with Cline in VS Code, but I’ll briefly touch on manual setup. You’ll need Python 3.10+, AWS CLI, and VS Code. Let’s get started!
1. Prerequisites
- Python: 3.10+ (
python3 --version
). - AWS CLI: Configured with EKS permissions (
aws sts get-caller-identity
). - VS Code: Latest version with Cline extension.
- AWS Account: With IAM roles for EKS, VPC, and CloudFormation.
- kubectl: For viewing pods (
kubectl version
). - uv: Python package manager (
pip install uv
).
2. Manual Installation (Quick Overview)
For a manual setup, clone the repo and install via uv
:
git clone https://github.com/awslabs/mcp.git
cd mcp/src/eks-mcp-server
uv pip install awslabs.eks-mcp-server
uv run main.py
Configure AWS credentials in ~/.aws/credentials
and run the server. But let’s use Cline for a smoother ride
3. Install Cline in VS Code
- Open VS Code, go to Extensions (Ctrl+Shift+X), and install Cline.
- Verify Cline is active: Open the Cline chat panel (Ctrl+Shift+P, search “Cline: Open Chat”).
- Set up an LLM provider (e.g., AWS Bedrock or OpenAI) in Cline’s settings (gear icon > API Provider).

I used AWS Bedrock for seamless AWS integration—took ~2 minutes!
4. Install Amazon EKS MCP Server with Cline
- Open Cline’s chat panel in VS Code.
- Prompt Cline:
# Prompt 1 (Basic)
Install eks-mcp-server from awslabs
# Prompt 2 (In detail)
Install the MCP server named awslabs.eks-mcp-server for Cline. Use uvx to run the server and update mcp settings.
- Approve Cline’s actions (e.g., running
uvx awslabs.eks-mcp-server@latest
). - Cline updates
~/.aws/amazonq/mcp.json
with:
{
"mcpServers": {
"awslabs.eks-mcp-server": {
"command": "uvx",
"args": ["awslabs.eks-mcp-server@latest", "--allow-write"],
"env": {
"AWS_PROFILE": "default",
"AWS_REGION": "us-east-1",
"FASTMCP_LOG_LEVEL": "ERROR"
}
}
}
}
- Verify: Run
/tools
in Cline’s chat to list EKS MCP tools (e.g.,create_eks_cluster
,apply_yaml
).

If you hit errors (e.g., “docker not found”), add --allow-write
to args
and ensure eksctl
is installed (brew install eksctl
on macOS).
- To give cline access to your aws account: Run
aws configure
in your terminal and input your credentials.

Occasionally it would help to have a web-search mcp server (e.g. firecraw) installed in your in your cline just in case cline runs into any errors and needs to browse the web to get some help. You can easily install these via the cline mcp marketplace in cline.

5. Create a New EKS Cluster with Cline
- In Cline’s chat, prompt:
# prompt 1 (basic)
Help create a new EKS cluster
# prompt 2 (specifying parameters)
Help create a new EKS cluster named 'my-ai-cluster' in us-east-1 using the Amazon EKS MCP Server.
- Cline uses the
create_eks_cluster
tool, auto-configuring VPC, subnets, and IAM roles. - Approve actions (e.g., running
eksctl create cluster
). - Wait ~10 minutes for cluster creation. Check status:
eksctl get cluster --name my-ai-cluster --region us-east-1
- Output:
my-ai-cluster
isACTIVE
.
My cluster was up in 12 minutes—Cline handled everything!

6. Deploy NGINX with Cline
- Prompt Cline:
# Eample prompt
Prepare a deployment file for NGINX. Create a comprehensive Kubernetes manifest that includes both a deployment and a service for NGINX using the Amazon EKS MCP Server.
- Cline generates a manifest using the
generate_app_manifest
tool:
apiVersion: apps/v1
kind: Deployment
metadata:
name: nginx-deployment
namespace: default
spec:
replicas: 3
selector:
matchLabels:
app: nginx
template:
metadata:
labels:
app: nginx
spec:
containers:
- name: nginx
image: nginx:latest
ports:
- containerPort: 80
---
apiVersion: v1
kind: Service
metadata:
name: nginx-service
namespace: default
spec:
selector:
app: nginx
ports:
- protocol: TCP
port: 80
targetPort: 80
type: LoadBalancer
- Cline applies it with the
apply_yaml
tool. Approve the action. - Verify pods:
kubectl get pods -A
- Example output:
NAMESPACE NAME READY STATUS RESTARTS AGE
default nginx-deployment-abc123-xyz 1/1 Running 0 2m
Cline’s YAML was spot-on, and my NGINX service was live in ~3 minutes!
7. Troubleshoot Pod Issues with Cline
- If pods show errors (e.g.,
CrashLoopBackOff
):
kubectl get pods -A
Output:
NAMESPACE NAME READY STATUS RESTARTS AGE
default nginx-deployment-abc123-xyz 0/1 CrashLoopBackOff 3 5m
- Prompt Cline:
# Example prompt
Figure out the issue with my pods and fix it using the Amazon EKS MCP Server.
- Cline uses tools like
get_pod_logs
andget_k8s_events
to diagnose (e.g., missing image tag). - Cline suggests fixes (e.g., update image to
nginx:1.25
) and reapplies the manifest.

- Re-check pods:
kubectl get pods -A
Output:
NAMESPACE NAME READY STATUS RESTARTS AGE
default nginx-deployment-abc123-xyz 1/1 Running 0 1m
Cline fixed my pod crash in seconds—pure AI wizardry!
Troubleshooting Amazon EKS MCP Server Issues
- Cline Errors: Ensure
mcp.json
has correctAWS_PROFILE
and--allow-write
for write operations. - Permission Issues: Verify IAM roles have EKS, VPC, and CloudFormation permissions.
- Port Conflicts: Check port 3000:
lsof -i :3000
kill -9 [PID]
- Pod Failures: Use Cline’s
search_eks_troubleshoot_guide
tool or check logs:
kubectl logs [pod-name]
- Need Help? Check awslabs.github.io/mcp for tips.
Customizing and Extending Amazon EKS MCP Server
Level up your setup:
- Multi-Region: Configure multiple
AWS_REGION
inmcp.json
. - Custom Tools: Add tools to the server via the MCP repo (github.com/awslabs/mcp).
- Production Use: Enable read-only mode (
ALLOW_WRITE=false
) for safety. - Integration: Combine with AWS CDK or Terraform MCP Servers for IaC.
I tweaked my server for us-west-2
—took ~5 minutes!
Why Amazon EKS MCP Server is a DevOps Dream
The Amazon EKS MCP Server makes EKS management feel like chatting with a DevOps guru. Its AI-driven workflows outshine manual eksctl
setups, though Cline’s setup can be finicky for newbies. Compared to raw Kubernetes, it’s a massive time-saver. The AWS MCP docs are a lifesaver.
Ready to rock the Amazon EKS MCP Server? Fire up Cline, deploy that NGINX, and share your creations!
Want an integrated, All-in-One platform for your Developer Team to work together with maximum productivity?
Apidog delivers all your demands, and replaces Postman at a much more affordable price!