Overview

Product video
PodWatcher MCP Server exposes live Kubernetes incident data to AI agents over the Model Context Protocol. It is built for platform teams, SREs and managed service providers who want an agent to answer operational questions about a cluster reliably: what is broken, in which namespace, since when, and whether it is getting worse.
The difference is the quality of what the agent receives. PodWatcher has already classified, deduplicated and ranked the incidents server-side, so the agent is handed a short list of what actually needs action, not raw logs it must parse for itself.
PRE-TRIAGED DATA, NOT RAW CLUSTER NOISE
Incidents arrive classified by container exit code and Kubernetes condition rather than by keyword matching. P1 covers CrashLoopBackOff, OOMKilled, SIGSEGV, SIGILL, ImagePullBackOff, ErrImagePull, Evicted, Node NotReady and exceeded Job backoff limits. P2 covers CPU throttling, memory pressure, CoreDNS degradation, HPA scale ceilings and workload availability breaches. Because the ranking is done in the cluster, an agent spends its context on the three things that matter instead of several hundred objects that do not.
NOISE SUPPRESSION THAT HAS BEEN MEASURED
A per workload cooldown of 300 seconds suppresses duplicate reports of the same crash loop, and is bypassed immediately when the exit code changes because that indicates a new failure rather than a repeat. Multi pod P2 events are batched into a single item, and application level noise is muted while an infrastructure event is in progress. In a load test on Amazon EKS, PodWatcher absorbed 120 simultaneous crash events across three waves over a 20 minute window while staying at 87Mi of its 512Mi memory limit, with no memory growth, no restarts and no watch stream errors. Deduplication reduced those 120 events to a small batch.
FOUR TOOLS WITH DECLARED SCHEMAS
check_readiness confirms PodWatcher has established its Kubernetes API watch loop, and distinguishes an unreachable instance from one that timed out, so an agent never reasons over absent data.
get_incidents returns open and recently resolved incidents as structured JSON carrying reason, restart count, namespace, workload, pod, node and event timestamp. Filter by priority for immediate action items, or by namespace to scope a single application or migration wave.
get_metrics parses the Prometheus endpoint into a key/value dictionary, including podwatcher_alerts_dispatched_total, podwatcher_p1_alerts_dispatched_total, podwatcher_webhook_failures_total, podwatcher_alert_queue_depth and podwatcher_leader_election_is_leader.
get_entitlement_status reports the AWS Marketplace entitlement state for PodWatcher on the cluster as ACTIVE, NOT_SUBSCRIBED, TRIAL_LIMIT_REACHED or UNAVAILABLE.
SIGNALS FOR AI AND INFERENCE WORKLOADS
PodWatcher discovers inference engines automatically by image pattern, including vLLM, Triton Inference Server, Text Generation Inference, Ray and KServe, with no labels or annotations required. It exposes time to first token, token throughput, success rate and discovered workload counts, so an agent can monitor the health of the AI workloads running alongside standard applications.
POST MIGRATION STABILIZATION
Incident volume peaks in the period just after a workload lands on Kubernetes, and an unattended crash loop can turn a completed cutover into a rollback. Namespace filtering scopes triage to the wave currently in flight, priority filtering surfaces only what needs action now, and the Prometheus counters give a quantitative view of whether the cluster is stabilising. That is evidence a migration exit criterion can actually be written against.
SECURITY AND ACCESS MODEL
Access is read-only. The server issues no writes to the Kubernetes API and holds no cluster credentials of its own. It reads podwatcher over cluster-internal HTTP, by default targeting service address podwatcher-svc:8080, which is not exposed outside the cluster. Every tool returns a readable error object on failure rather than raising. Responses are produced on request rather than streamed. The server is deployed as a Helm chart into the same namespace as podwatcher with its own ServiceAccount. Any MCP-compliant client can connect.
REQUIREMENTS
This MCP server is free. It requires a running PodWatcher deployment in the target cluster, reachable over cluster-internal HTTP. PodWatcher runs on Amazon EKS, AKS, GKE, GKE and on-premises clusters, and is available separately on AWS Marketplace.
Highlights
- Four typed MCP tools instead of kubectl scraping: readiness, incidents, metrics and entitlement status. Incidents arrive pre-classified as P1 (CrashLoopBackOff, OOMKilled, ImagePullBackOff, Evicted) or P2 (saturation, latency, node conditions), filterable by priority and namespace, so an agent gets the three things that need action now rather than 400 lines of pod output.
- Purpose-built for the post-migration window on Amazon EKS, where incident volume peaks and an unattended crash loop can force a rollback. Namespace filtering scopes triage to the migration wave in flight, and Prometheus counters -- alerts dispatched, P1 count, queue depth, webhook failures -- give a quantitative stabilisation signal you can write a migration exit criterion against.
- Read-only and fail-explicit by design. The server issues no writes to the Kubernetes API and holds no cluster credentials of its own; it reads PodWatcher's cluster-internal HTTP endpoints over a dedicated ServiceAccount. Every tool returns a readable error object on failure rather than raising, so an agent never silently reasons over missing data.
Details
Introducing multi-product solutions
You can now purchase comprehensive solutions tailored to use cases and industries.
Features and programs
Financing for AWS Marketplace purchases
Pricing
Vendor refund policy
This product is free and you need to subscribe and install podwatcher from AWS Marketplace https://aws.amazon.com/marketplace/pp/prodview-ggifdgzilupgq
Custom pricing options
How can we make this page better?
Legal
Vendor terms and conditions
Content disclaimer
Delivery details
PodWatcher MCP - Helm chart for Amazon EKS
- Amazon EKS
- Amazon EKS Anywhere
Helm chart
Helm charts are Kubernetes YAML manifests combined into a single package that can be installed on Kubernetes clusters. The containerized application is deployed on a cluster by running a single Helm install command to install the seller-provided Helm chart.
Version release notes
Initial release of PodWatcher MCP.
PodWatcher MCP is a read-only Model Context Protocol (MCP) server that exposes PodWatcher's Kubernetes incident and health data to MCP-compatible AI assistants and development environments. A developer can ask "is my cluster healthy?" or "are there any P1 incidents?" from the editor and receive an answer sourced from PodWatcher running inside their own cluster.
TOOLS
check_readiness Reports whether PodWatcher is reachable and ready. Returns a readiness flag, the HTTP status code and a status message. Takes no arguments.
get_incidents Returns the incidents PodWatcher currently holds, with the priority it assigned at dispatch time, plus namespace, pod, workload and reason. Accepts an optional priority filter (ALL, P1 or P2) and an optional namespace filter. A filtered query that matches nothing returns a zero count with an explanatory message, not an empty response.
get_metrics Returns PodWatcher's Prometheus metrics, including alert dispatch counters, webhook failure counts, alert queue depth, leader-election state, and service-level indicators for discovered GenAI inference workloads.
get_entitlement_status Reports the AWS Marketplace entitlement status for the deployment and, given a cluster count, the corresponding PodWatcher licence tier.
SCOPE
PodWatcher MCP is a read-only status surface. It has no write access to any workload and performs no remediation. The full triage narrative and the suggested remediation commands remain in the PodWatcher alert card, where an engineer reviews them before acting.
REQUIREMENTS
- PodWatcher must already be deployed and running in the target cluster. PodWatcher MCP reads from PodWatcher; it does not monitor the cluster itself.
- Kubernetes 1.24 or later.
- get_entitlement_status requires the awsMarketplace.productSku and awsMarketplace.keyFingerprint values to be set, and AWS credentials carrying license-manager:CheckoutLicense an IAM role for service accounts (IRSA) on Amazon EKS, or a Kubernetes Secret on other distributions. Left unconfigured, it reports UNAVAILABLE rather than failing. The other three tools operate without AWS credentials.
SECURITY
- Creates its own Kubernetes ServiceAccount with no Role and no ClusterRole bound, so it has no access to any Kubernetes resource.
- Runs as a non-root user (UID 10001) with a read-only root filesystem, no privilege escalation, all Linux capabilities dropped, and seccompProfile RuntimeDefault.
- The only AWS permission required is license-manager:CheckoutLicense.
- Stateless. No persistent storage; all data is processed in memory.
- The chart deploys a ClusterIP Service, so nothing is exposed outside the cluster by default.
- No customer data is sent to SAQTEK or to any third party. Outbound traffic is limited to PodWatcher inside the cluster and, for entitlement checks only, the AWS Marketplace entitlement API. That check is skipped entirely when no product SKU is configured, and it carries no cluster data.
- Container vulnerability scanning reported no CRITICAL and no HIGH severity findings on either architecture at the time of release.
PLATFORMS
linux/amd64 and linux/arm64. Validated on AWS Graviton.
CONTENTS
Helm chart 1.0.1 Container image 1.0.0
Additional details
Usage instructions
Resources
Vendor resources
Support
Vendor support
AWS infrastructure support
AWS Support is a one-on-one, fast-response support channel that is staffed 24x7x365 with experienced and technical support engineers. The service helps customers of all sizes and technical abilities to successfully utilize the products and features provided by Amazon Web Services.