Flagger MCP server: read canary status via community tools
Flagger shifts traffic to a new version step by step and promotes or rolls back on metric checks. Its verdict lives on a Canary object that general MCP servers can read.
Checked 3 October 2026 · from Flagger and Flux documentation, the Flux MCP server tool reference, and GitHub and PyPI data
One of 91 guides to monitoring and developer tools. Each covers what an AI coding agent can get out of the tool through MCP, the protocol that lets the agent query the tool directly.
Summary
The Flux project, which owns Flagger, has not published a Flagger MCP server as of 3 October 2026. An MCP server, short for Model Context Protocol, gives an AI assistant tools it can call.
Two servers still reach Flagger's state. rohitg00/kubectl-mcp-server has get_flagger_canaries and get_flagger_canary. The Flux MCP server's get_kubernetes_resources reads any resource kind, Canary included.
Flagger itself is active, with 5,416 GitHub stars and a push on 21 September 2026.
How Flagger works with MCP
Flagger automates progressive delivery on Kubernetes. It moves traffic to a new version in steps, runs metric checks at each step, then promotes or rolls back.
It works through a service mesh or ingress controller, which does the traffic splitting. Prometheus is the default metrics source in its documentation.
Flagger records its progress on a Canary custom resource, an object type Kubernetes learns from Flagger. The status holds the canary weight, failed checks, iterations and conditions.
Servers that reach Flagger
| Server | Flagger access | Status on 3 October 2026 |
|---|---|---|
rohitg00/kubectl-mcp-server | get_flagger_canaries, get_flagger_canary; read-only | About 960 stars; last push 8 April 2026 |
Flux MCP server (flux-operator-mcp) | get_kubernetes_resources with apiVersion: flagger.app/v1beta1, kind: Canary | 766 stars; last push 2 October 2026 |
kubectl-mcp-server's README lists the Flagger tools as flagger_canaries_list and flagger_canary_get. Its source registers the names in the table.
Every vendor here gets the same four checks: official, maintained, distributed and usable. Flagger passes 2 of them.
| Check | Result | Evidence |
|---|---|---|
| Official | Fail | As of 3 October 2026 the fluxcd GitHub organization, which owns Flagger, has no MCP repository. The Flux MCP server has no Flagger-specific tools. |
| Maintained | Pass | The Flux MCP server's repository, controlplaneio-fluxcd/flux-operator, was last pushed on 2 October 2026. |
| Distributed | Pass | flux-operator-mcp installs from Homebrew (controlplaneio-fluxcd/tap/flux-operator-mcp) or prebuilt binaries. kubectl-mcp-server 1.24.0 is on PyPI. |
| Usable | Unknown | Neither server documents a Flagger example; reading Canary objects follows from their generic and Flagger tools. |
| Part of the work | What Flagger has here | Can an agent reach it |
|---|---|---|
| CI & release | Canary releases, traffic shifting, automated rollback | Yes, read-only. Canary status through kubectl-mcp-server or the Flux MCP server |
| Production observability | Metric checks against Prometheus and other providers | Partial. Failed-check counts are on the Canary; the series stay with the provider |
An agent can say whether a canary promoted, how far its weight got and how many checks failed. Why a check failed is in the metrics provider and the Canary's events.
What can an AI agent do with Flagger?
The agent sees a failed canary but not why it rolled back
The Canary status records counts and conditions. Flagger writes the step-by-step reasons as Kubernetes events on the Canary.
The Flux MCP server's get_kubernetes_events tool reads those events. A server limited to the Canary object misses them.
Guard: Read the Canary's events alongside its status before reporting a rollback cause.
The Flux server applies or deletes resources
The Flux MCP server includes apply_kubernetes_manifest, patch_kubernetes_resource and delete_kubernetes_resource. Flux's documentation shows it started with --read-only so the agent can inspect but not change the cluster.
Guard: Start flux-operator-mcp with --read-only unless the agent is meant to change the cluster.
The agent calls flagger_canary_get and gets an unknown-tool error
kubectl-mcp-server's README and its registered tool names differ. The server registers get_flagger_canary.
Guard: Use the tool names your client lists after connecting.
How to configure Flagger MCP for agents
- 1
Pick one server
The Flux MCP server suits clusters already run with Flux. kubectl-mcp-server suits clusters without it.
- 2
Narrow the cluster role
Grant
get,listandwatchoncanariesin theflagger.appAPI group, plusevents. - 3
Keep Flagger's identity separate
Flagger's own service account shifts traffic and rolls back workloads; the agent should not share it.
Paste this into your agent’s instructions
When you report on a Flagger canary: - Name the canary, namespace and cluster context. - Give the canary weight, failed checks, iterations and the Promoted condition. Read the canary's events before stating why it rolled back. Do not apply, patch or delete resources unless asked.
Do you need the MCP server at all?
Without a server, kubectl get canary --all-namespaces lists each canary with its status. kubectl describe canary <name> adds the events.
Flagger's documentation shows kubectl wait canary/podinfo --for=condition=promoted for scripts that block until promotion.
For the metrics behind each check, connect Prometheus, Datadog or Grafana, whichever the Canary's metric templates query.
Read the Canary for the verdict and its events for the reason. Read the metrics provider for the evidence.
Flagger integration setup
Both servers run locally and use your kubeconfig. Nothing on the Flagger side needs installing or configuring.
Claude Code, Flux MCP server
This is the command Flux's agent-skills page documents. With --read-only, the agent can inspect but not mutate the cluster.
claude mcp add --scope user --transport stdio flux-operator-mcp \ --env KUBECONFIG=$HOME/.kube/config \ -- flux-operator-mcp serve --read-only
Cursor, kubectl-mcp-server
Install the Python package with pip install kubectl-mcp-server first. Its --read-only flag blocks every write tool on the server.
{"mcpServers":{"k8s-flagger":{
"command":"python3",
"args":["-m","kubectl_mcp_tool.mcp_server","--read-only"]}}}Every other client
Each block below is the configuration for one client, with the file path and the key that client expects.
Install the Flux MCP server
Flux's announcement post gives Homebrew as the install route. Prebuilt binaries cover Linux, macOS and Windows.
brew install controlplaneio-fluxcd/tap/flux-operator-mcp
What the vendor documents
Flux introduced its MCP server in a post by Stefan Prodan on 14 May 2025. It describes tracing issues from HelmReleases and Kustomizations down to deployments and pod logs.
Should you connect an agent to Flagger?
Yes, through a general Kubernetes or Flux MCP server, if your agent needs to report canary progress. Best for teams on Flux who already use, or plan to use, the Flux MCP server.
- Strongest fit
- Yes, through a general Kubernetes or Flux MCP server, if your agent needs to report canary progress.
- Main advantage
- Flagger keeps its whole state on one Kubernetes object, so a generic resource reader returns the verdict.
- Main weakness
- No server explains a failed check; the agent has to combine events with metric queries.
- Operational risk
- The Flux MCP server's apply, patch and delete tools are available unless it runs read-only.
From Oodle
One platform for agent traces and infrastructure
Agent traces usually sit in a different product from the rest of your telemetry, so when a slow database makes an agent slow the symptom is in one tool and the cause is in another. Oodle keeps both in one query surface.
See agent observabilityFrequently asked questions
Does Flagger have an MCP server?
Not from the Flux project as of 3 October 2026. kubectl-mcp-server and the Flux MCP server can both read Flagger's Canary objects.
Does the Flux MCP server cover Flagger?
Indirectly. Its get_kubernetes_resources tool takes any API version and kind, so it reads flagger.app/v1beta1 Canary resources.
Can an agent promote or roll back a Flagger canary?
Not through a Flagger tool. kubectl-mcp-server's two Flagger tools only read. Promotion is Flagger's decision, driven by its metric checks.
Where does Flagger record why a canary failed?
In Kubernetes events on the Canary. The status shows the failed-check count and conditions.