Prototype · Preview: every server in the official registry, synced every 30 minutes. Reviews and accounts come in a later step.
PopNx MCPMCP servers for people who use AI · explained in plain words

Kairon

by zyvoraiversion 0.10.2i★ –iRuns on your computer
Registry nameio.github.zyvorai/kairon

Install

Overview

Description from the maker (original English)

Inspect Kairon VMs, network policy and VM-edge flows from an agent. Read-only by default.

PopNx MCP’s three pillars

These three are never merged into one score: opinions, measurements and popularity are different things.

What you can do with it

We have not written a plain-language summary for this one yet. Below are the facts we read from the registry.

  • Connection: Runs on your computer
  • Transport: stdio
  • Category: Other
  • You need to fill in: KAIRON_KUBE_URL, KAIRON_KUBE_TOKEN, KAIRON_UI_TOKEN, KAIRON_LLM_API_KEY

Install

Pick the AI app you use, then copy the settings.

Before you install

  • Basic checks: 1 of 1 passed
  • Runs on your computer with your user’s permissions (files, network, apps).
  • You fill in yourself: KAIRON_KUBE_URL, KAIRON_KUBE_TOKEN, KAIRON_KUBE_CA, KAIRON_KUBE_INSECURE, KAIRON_UI_URL, KAIRON_UI_TOKEN, KAIRON_UI_CA, KAIRON_UI_INSECURE, KAIRON_LLM_URL, KAIRON_LLM_MODEL, KAIRON_LLM_API_KEY, KAIRON_MCP_TENANT

Values marked secret are keys to your account. Never share them or paste them into a chat.

You need

Which app do you use?

Pick your app above. We remember it, so next time the button says “Install in …”.

Open Claude Desktop → Settings → Developer → Edit Config, and paste this into claude_desktop_config.json

{
  "mcpServers": {
    "kairon": {
      "command": "docker",
      "args": [
        "run",
        "-i",
        "--rm",
        "-e",
        "KAIRON_KUBE_URL",
        "-e",
        "KAIRON_KUBE_TOKEN",
        "-e",
        "KAIRON_KUBE_CA",
        "-e",
        "KAIRON_KUBE_INSECURE",
        "-e",
        "KAIRON_UI_URL",
        "-e",
        "KAIRON_UI_TOKEN",
        "-e",
        "KAIRON_UI_CA",
        "-e",
        "KAIRON_UI_INSECURE",
        "-e",
        "KAIRON_LLM_URL",
        "-e",
        "KAIRON_LLM_MODEL",
        "-e",
        "KAIRON_LLM_API_KEY",
        "-e",
        "KAIRON_MCP_TENANT",
        "ghcr.io/zyvorai/kairon-mcp:v0.10.2"
      ],
      "env": {
        "KAIRON_KUBE_URL": "your-value",
        "KAIRON_KUBE_TOKEN": "your-value",
        "KAIRON_KUBE_CA": "your-value",
        "KAIRON_KUBE_INSECURE": "your-value",
        "KAIRON_UI_URL": "your-value",
        "KAIRON_UI_TOKEN": "your-value",
        "KAIRON_UI_CA": "your-value",
        "KAIRON_UI_INSECURE": "your-value",
        "KAIRON_LLM_URL": "your-value",
        "KAIRON_LLM_MODEL": "your-value",
        "KAIRON_LLM_API_KEY": "your-value",
        "KAIRON_MCP_TENANT": "your-value"
      }
    }
  }
}

Run this in your terminal

claude mcp add kairon --env KAIRON_KUBE_URL=your-value --env KAIRON_KUBE_TOKEN=your-value --env KAIRON_KUBE_CA=your-value --env KAIRON_KUBE_INSECURE=your-value --env KAIRON_UI_URL=your-value --env KAIRON_UI_TOKEN=your-value --env KAIRON_UI_CA=your-value --env KAIRON_UI_INSECURE=your-value --env KAIRON_LLM_URL=your-value --env KAIRON_LLM_MODEL=your-value --env KAIRON_LLM_API_KEY=your-value --env KAIRON_MCP_TENANT=your-value -- docker run -i --rm -e KAIRON_KUBE_URL -e KAIRON_KUBE_TOKEN -e KAIRON_KUBE_CA -e KAIRON_KUBE_INSECURE -e KAIRON_UI_URL -e KAIRON_UI_TOKEN -e KAIRON_UI_CA -e KAIRON_UI_INSECURE -e KAIRON_LLM_URL -e KAIRON_LLM_MODEL -e KAIRON_LLM_API_KEY -e KAIRON_MCP_TENANT ghcr.io/zyvorai/kairon-mcp:v0.10.2

Fill in the empty values before running it.

Open in Cursor

Or copy the settings yourself

Paste into .cursor/mcp.json in your project, or ~/.cursor/mcp.json

{
  "mcpServers": {
    "kairon": {
      "command": "docker",
      "args": [
        "run",
        "-i",
        "--rm",
        "-e",
        "KAIRON_KUBE_URL",
        "-e",
        "KAIRON_KUBE_TOKEN",
        "-e",
        "KAIRON_KUBE_CA",
        "-e",
        "KAIRON_KUBE_INSECURE",
        "-e",
        "KAIRON_UI_URL",
        "-e",
        "KAIRON_UI_TOKEN",
        "-e",
        "KAIRON_UI_CA",
        "-e",
        "KAIRON_UI_INSECURE",
        "-e",
        "KAIRON_LLM_URL",
        "-e",
        "KAIRON_LLM_MODEL",
        "-e",
        "KAIRON_LLM_API_KEY",
        "-e",
        "KAIRON_MCP_TENANT",
        "ghcr.io/zyvorai/kairon-mcp:v0.10.2"
      ],
      "env": {
        "KAIRON_KUBE_URL": "your-value",
        "KAIRON_KUBE_TOKEN": "your-value",
        "KAIRON_KUBE_CA": "your-value",
        "KAIRON_KUBE_INSECURE": "your-value",
        "KAIRON_UI_URL": "your-value",
        "KAIRON_UI_TOKEN": "your-value",
        "KAIRON_UI_CA": "your-value",
        "KAIRON_UI_INSECURE": "your-value",
        "KAIRON_LLM_URL": "your-value",
        "KAIRON_LLM_MODEL": "your-value",
        "KAIRON_LLM_API_KEY": "your-value",
        "KAIRON_MCP_TENANT": "your-value"
      }
    }
  }
}

Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.

Open in VS Code

Or copy the settings yourself

Paste into .vscode/mcp.json in your project

{
  "servers": {
    "kairon": {
      "type": "stdio",
      "command": "docker",
      "args": [
        "run",
        "-i",
        "--rm",
        "-e",
        "KAIRON_KUBE_URL",
        "-e",
        "KAIRON_KUBE_TOKEN",
        "-e",
        "KAIRON_KUBE_CA",
        "-e",
        "KAIRON_KUBE_INSECURE",
        "-e",
        "KAIRON_UI_URL",
        "-e",
        "KAIRON_UI_TOKEN",
        "-e",
        "KAIRON_UI_CA",
        "-e",
        "KAIRON_UI_INSECURE",
        "-e",
        "KAIRON_LLM_URL",
        "-e",
        "KAIRON_LLM_MODEL",
        "-e",
        "KAIRON_LLM_API_KEY",
        "-e",
        "KAIRON_MCP_TENANT",
        "ghcr.io/zyvorai/kairon-mcp:v0.10.2"
      ],
      "env": {
        "KAIRON_KUBE_URL": "your-value",
        "KAIRON_KUBE_TOKEN": "your-value",
        "KAIRON_KUBE_CA": "your-value",
        "KAIRON_KUBE_INSECURE": "your-value",
        "KAIRON_UI_URL": "your-value",
        "KAIRON_UI_TOKEN": "your-value",
        "KAIRON_UI_CA": "your-value",
        "KAIRON_UI_INSECURE": "your-value",
        "KAIRON_LLM_URL": "your-value",
        "KAIRON_LLM_MODEL": "your-value",
        "KAIRON_LLM_API_KEY": "your-value",
        "KAIRON_MCP_TENANT": "your-value"
      }
    }
  }
}

Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.

This one runs on your computer, and ChatGPT can only connect to servers on the internet. Pick another app.

Your choice stays on this device in a cookie; no account needed.

Values you fill in

  • KAIRON_KUBE_URL required env
    Kubernetes API server URL, e.g. https://k8s.example:6443. The server only offers read tools unless --allow-write is appended to the container arguments; the image never sets it.
  • KAIRON_KUBE_TOKEN secret required env
    Bearer token for the Kubernetes API. Bind it to a Role with only the verbs the agent needs (get/list on machines for read-only use).
  • KAIRON_KUBE_CA env
    Path, inside the container, of the CA bundle for the Kubernetes API (mount it). Leave unset to use system roots.
  • KAIRON_KUBE_INSECURE env
    Set to "true" to skip TLS verification of the Kubernetes API. Lab use only.
  • KAIRON_UI_URL env
    Base URL of kairon-ui; needed by the machine_network tool (network flows, drops, capture sessions).
  • KAIRON_UI_TOKEN secret env
    Bearer token for kairon-ui.
  • KAIRON_UI_CA env
    Path, inside the container, of the CA certificate for a self-signed kairon-ui (mount it).
  • KAIRON_UI_INSECURE env
    Set to "true" to skip TLS verification of kairon-ui. Lab use only.
  • KAIRON_LLM_URL env
    OpenAI-compatible endpoint for the optional ask tool and the summary in diagnose.
  • KAIRON_LLM_MODEL env
    Model name sent to KAIRON_LLM_URL.
  • KAIRON_LLM_API_KEY secret env
    API key for KAIRON_LLM_URL.
  • KAIRON_MCP_TENANT env
    Scope the claim tools, diagnose and ask to this tenant.

These settings are generated from the maker’s registry entry. If the README says otherwise, follow the README.

What it can do

Runs on your computer; the tool list appears in your AI app after you install it.

Basic checksi

We check information anyone can see; we have not read the code. Checks that do not apply are left out of the count. · Checked Nov 9, 2026

  • ✓ Pass

    Maker matches the repo

    The registry name was verified with the GitHub account zyvorai, which owns the repo

  • … Not checked yet

    Still maintained

    We have not read this repo from GitHub yet

  • … Not checked yet

    Has a licence

    We have not read this repo from GitHub yet

  • – Not applicable

    Endpoint responds

    This one runs on your computer; there is no internet endpoint

  • – Not applicable

    Sign-in with OAuth

    Runs on your computer and uses local settings instead

  • … Not checked yet

    No hidden instructions in tool descriptions

    Runs on your computer; we can only read tool lists from internet endpoints

Compared with others in Otheri

  • More stars than 0% of the other 18676 servers in this category
  • Published to the registry more recently than 66% of the other 18676 servers in this category
  • Basic checks equal to or better than 100% of the other 18676 servers in this category

Compared with every active server in this category in the registry. Stars count only when the publisher owns the repo.

Common questions

Is Kairon safe?

It passed 1 of 1 applicable basic checks. We have not read the code. Before adding a key or token, see what access the server asks for and use a key with only the permissions you need.

What keys or codes does it need?

You need to fill in: KAIRON_KUBE_URL, KAIRON_KUBE_TOKEN, KAIRON_UI_TOKEN, KAIRON_LLM_API_KEY

Does it run on my computer or in the cloud?

It runs on your computer. Your AI app starts it when needed, and data does not pass through the maker’s servers (unless it calls an online service itself).

Is it still maintained?

The GitHub repo last changed –, and the latest version (0.10.2) reached the registry 22 days ago.

Which apps can use it?

Apps that support MCP, such as Claude Desktop, Claude Code, Cursor and VS Code. You also need Docker on your computer.

What can I use instead?

In the same category: Spec Driven Development, Remote Desktop Commander, Mcphost

Alternatives

Servers in the same category from other makers, sorted by stars.

Reading a card:↓ Downloads per weeki★ GitHub starsiThree pillars: reviews · checks · usageiUpdated = latest version published to the registryi

Spec Driven Development

MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.

by formulahendryEarly↓ 66/wk★ 440Updated 14 months ago

Runs on your computer

Remote Desktop Commander

Remote Desktop Commander: use files, terminal and processes on your own computers from any AI app.

by desktop-commanderGrowing★ 211Updated 4 days ago

Runs in the cloud✓ desktopcommander.app

Mcphost

Hosted MCP runtime where your agent publishes its own tools by tool call and keeps working.

by j0yenEarlyUpdated today

Runs in the cloud✓ mcphost.dev

README from the maker

Open the README

Copied from the maker’s repo as written. PopNx MCP has not reviewed or endorsed it. HTML, images and scripts are removed. Links lead off this site.

Kairon

VMs that don't pretend to be Pods.

Real virtual machines, scheduled by Kubernetes, run straight on KVM. No virt-launcher pod per VM, no libvirt in the hot path, no operator zoo. A Machine is desired state, kairon-controller places it, and kairon-node runs it on FluxVM with QEMU, Cloud Hypervisor, Firecracker or FluxVM's own hypervisor.

Zero pods per VM · Four hypervisors, one CRD · eBPF on every VM edge · No silent split-brain · AI agents built in (MCP)

Dashboard tour captured against the local sample-data stack ( how ), not a production cluster.


What's new

Experimental operations: Kairon Rehearsal tests upgrades on isolated CSI copies. Advanced operations adds health-gated configuration change plans, application recovery verification, traffic/RTT placement recommendations, and incident reproduction with fix verification. Includes runnable scenarios and failure-path tests. VM/CSI and host-isolation hardware qualification is still pending.

New since v0.6.0 (latest tag: v0.10.2; the rows down to incident bundles are new in v0.10.0):

Agent sessions (experimental)An AgentSession is a FluxVM agent session: a sandbox VM with a git workspace, a compiled egress/filesystem/process policy, budgets, checkpoints, live forks and an event ledger, scheduled and quota-counted like a Machine. Commands can wait for an admin's approval; chunked uploads, an interactive shell, credential grants the guest never sees, and the Mac guest's screen. kaironctl session, session_* MCP tools, both SDKs and a dashboard page. Mac nodes on FluxVM 0.4.8+. Guide →
Coming from virtctlkaironctl covers virtctl's verbs: console and VNC (with screenshots), restart/soft-reboot, exports and memory dumps, guest info, SSH keys and passwords, expose, freeze, guestfs, cdrom, create clone, objectgraph, --dry-run -o yaml, wait. CLI →
Self-test: is it all working?kaironctl selftest (or the dashboard's Self-test page) boots a tiny CirrOS VM and proves power, network, hotplug, snapshot-restore and more, with live coloured logs and a PASS / FAIL / SKIP table. deploy-remote.sh --self-test runs it right after a deploy. Guide →
Deploy without building locallydeploy-remote.sh --remote-build copies a small source tarball and compiles on the host, so a laptop needs no Go, no Node and no build cache. Fastest path →
HTTPS by defaultThe dashboard and the VNC console relay serve TLS out of the box (generated or bring-your-own certificate); plain HTTP is a named opt-out. Dashboard guide →
Mac Fabric (experimental)Several Macs as one pool: each publishes its chip, macOS, Rosetta, nested virtualization and Thunderbolt Bridge; spec.apple places vz Machines by them, and a MacNetwork gives Machines on different Macs one private network over Thunderbolt. Run against simulated Macs so far. Guide →
Cross-cluster DR (experimental)A MachineProtectionPlan replicates a group of Machines to S3 and keeps their specs and restore points on a second cluster, with RPO and RTO objectives. kaironctl dr failover brings them up there in dependency order, --planned with nothing lost; kaironctl dr test restores copies into an isolated network while production runs, also on a schedule. Machines keep their VirtualNetwork addresses and DNS names follow the active site through external-dns. Guide →
vGPU profiles and GPU health (experimental)spec.devices[].profile gives a Machine a slice of a GPU (NVIDIA vGPU or MIG-backed profile) instead of a whole one, scheduled by free instances and GPU memory, created when the Machine starts and returned when it stops; unhealthy GPUs are skipped. Guide →
Accelerator profiles (experimental)A cluster-scoped MachineAcceleratorProfile names an accelerator shape (count, vendor or vGPU profile, memory per device, one PCIe root for peer to peer, one NUMA node, an RDMA NIC next to the GPUs); Machines ask for it with spec.accelerators. The profile's status says how many more Machines fit on each node. Guide →
Node maintenance and DRS (experimental)kaironctl node maintenance enter NODE cordons a node, migrates its Machines away, and stops or hibernates the ones with nowhere to go; exit puts everything back. DRS (`-drs-mode recommendautomatic) evens out reserved CPU and memory across nodes, or moves Machines off nodes whose measured CPU, memory or IO pressure (PSI) is high, and kaironctl drs plan` previews it. Guide →
Per-disk I/O QoSIOPS and bandwidth limits on a Machine's root and data disks (io.throttle), with bursts, enforced by QEMU and changed live on a running Machine. Guide →
NVMe-oF storage (experimental)Kairon's CSI driver provisions nvme-tcp and nvme-rdma volumes through the kernel NVMe target with native multipath; raw Block volumes boot Machines in place and attach as data disks with per-disk QEMU I/O. Guide →
Hibernate (experimental)spec.powerState: Hibernated saves RAM and device state to disk and frees the node; resume continues the same boot, on its own node or a compatible one with shared storage. Guide →
Virtual networks (experimental)VirtualNetwork: isolated IPv4 networks routed in eBPF with a Geneve overlay, per-network gateway, egress SNAT and floating IPs. Guide →
Elastic memory (experimental)Run more Machine memory than the node has: guaranteed minimums, a virtio-balloon reclaim loop and a KaironMemoryPressure signal the scheduler respects. Guide →
Topology-aware placement (experimental)NUMA, GPU, NIC and NVMe locality: the scheduler picks the node, exact CPUs, NUMA memory and PCI devices together. Guide →
Incident bundles (experimental)kaironctl diagnose machine --deep: one redacted tar.gz with the Machine's cluster state plus QMP, cgroup, console, dataplane and pcap from its node, and an opt-in guest memory dump. Guide →
Lifecycle, diagnostics and namespaces (v0.9)kaironctl doctor, connectivity test, logs, events, sysdump, config, history/rollback; kaironctl upgrade keeps your previous Helm values. The dashboard has a namespace selector, an all-namespaces Machines view and bulk Start/Stop. Release notes →
`v1` API and new dashboardkairon.zyvor.dev/v1 is the storage version (v1beta1/v1alpha1 served, deprecated). The dashboard is redesigned and gains Storage (Atlas), Pools & claims, Images and Backups pages; kairon-ui now listens on :18082. Guide →
Native macOS nodekairon-node registers an Apple silicon Mac as a Node and runs backend: vz Machines through FluxVM. Verified on an M4; multi-Mac clusters not yet. Guide → · Mac cluster →
Developer ecosystem kitPython and TypeScript SDKs, digest-pinned recipes, disposable-VM GitHub Actions, Terraform composition. Kit →
Fleet automation (experimental)Opt-in Redfish fencing, balancing, autoscaling, backup and recovery plans, template claims, usage CSV and a Fleet dashboard. Guide →
Kairon vs KubeVirt benchmarkSame node, same guest, one script driving both; method and raw JSON in docs/benchmarks.
Import from VMwarekaironctl import ova streams an OVA once, reads vCPU, memory and firmware from the OVF, and FluxVM converts and repairs the disk. Guide →
Warm pools and claimsMachinePool keeps booted Machines ready; a MachineClaim binds one in a single reconcile tick, with per-claim egress allowlists. Guide →
VM forkkaironctl fork and the MCP fork_machine tool fork a running Machine through FluxVM. Guide →
Agent sandboxes (experimental)spec.lifecycle pauses idle Machines and wakes them on connect, deletes them after a max lifetime; paused warm pools, per-claim usage, and Sandbox classes in both SDKs. Guide →
BackupsMachineBackup and MachineBackupRestore with guest filesystem freeze, plus Atlas S3 backup jobs for Atlas volumes. Incremental S3 backups with policies and GFS retention (experimental). Guide →
Live disks and NICsHot-attach PVC disks and hot-add or remove extra NICs on running Machines (kaironctl disk, kaironctl nic). Guide →
Tenant fencekairon.zyvor.dev/tenant-fence turns spec.tenant into an east-west deny of other tenants' guest addresses in the namespace. Guide →
Preemption by HaltAn opted-in high-priority Machine that can't be placed halts an opted-in lower-priority one, and it resumes when the preemptor leaves. Guide →

| Hotplug survives restart | A stop/start boots at the hotplugged CPU and memory; hotplug-persist writes it back into spec.

Only the beginning is shown; read the rest in the repo

Ask PopNx