Kubernetes-native VM orchestration without KubeVirt or libvirt. Kubernetes declares. Kairon orchestrates. FluxVM executes.
Setup
Choose your client, copy the config, then fill in any required environment variables.
claude mcp add kairon --env KAIRON_KUBE_URL='<KAIRON_KUBE_URL>' --env KAIRON_KUBE_TOKEN='<KAIRON_KUBE_TOKEN>' --env KAIRON_UI_TOKEN='<KAIRON_UI_TOKEN>' --env KAIRON_LLM_API_KEY='<KAIRON_LLM_API_KEY>' -- docker run -i --rm -e KAIRON_KUBE_URL -e KAIRON_KUBE_TOKEN -e KAIRON_UI_TOKEN -e KAIRON_LLM_API_KEY ghcr.io/zyvorai/kairon-mcp:v0.10.2~/.codex/config.toml
[mcp_servers.kairon]
command = "docker"
args = ["run", "-i", "--rm", "-e", "KAIRON_KUBE_URL", "-e", "KAIRON_KUBE_TOKEN", "-e", "KAIRON_UI_TOKEN", "-e", "KAIRON_LLM_API_KEY", "ghcr.io/zyvorai/kairon-mcp:v0.10.2"]
env = { KAIRON_KUBE_URL = "<KAIRON_KUBE_URL>", KAIRON_KUBE_TOKEN = "<KAIRON_KUBE_TOKEN>", KAIRON_UI_TOKEN = "<KAIRON_UI_TOKEN>", KAIRON_LLM_API_KEY = "<KAIRON_LLM_API_KEY>" }
# codex mcp add kairon --env KAIRON_KUBE_URL='<KAIRON_KUBE_URL>' --env KAIRON_KUBE_TOKEN='<KAIRON_KUBE_TOKEN>' --env KAIRON_UI_TOKEN='<KAIRON_UI_TOKEN>' --env KAIRON_LLM_API_KEY='<KAIRON_LLM_API_KEY>' -- docker run -i --rm -e KAIRON_KUBE_URL -e KAIRON_KUBE_TOKEN -e KAIRON_UI_TOKEN -e KAIRON_LLM_API_KEY ghcr.io/zyvorai/kairon-mcp:v0.10.2~/.cursor/mcp.json
{
"mcpServers": {
"kairon": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"KAIRON_KUBE_URL",
"-e",
"KAIRON_KUBE_TOKEN",
"-e",
"KAIRON_UI_TOKEN",
"-e",
"KAIRON_LLM_API_KEY",
"ghcr.io/zyvorai/kairon-mcp:v0.10.2"
],
"env": {
"KAIRON_KUBE_URL": "<KAIRON_KUBE_URL>",
"KAIRON_KUBE_TOKEN": "<KAIRON_KUBE_TOKEN>",
"KAIRON_UI_TOKEN": "<KAIRON_UI_TOKEN>",
"KAIRON_LLM_API_KEY": "<KAIRON_LLM_API_KEY>"
}
}
}
}.vscode/mcp.json
{
"servers": {
"kairon": {
"type": "stdio",
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"KAIRON_KUBE_URL",
"-e",
"KAIRON_KUBE_TOKEN",
"-e",
"KAIRON_UI_TOKEN",
"-e",
"KAIRON_LLM_API_KEY",
"ghcr.io/zyvorai/kairon-mcp:v0.10.2"
],
"env": {
"KAIRON_KUBE_URL": "<KAIRON_KUBE_URL>",
"KAIRON_KUBE_TOKEN": "<KAIRON_KUBE_TOKEN>",
"KAIRON_UI_TOKEN": "<KAIRON_UI_TOKEN>",
"KAIRON_LLM_API_KEY": "<KAIRON_LLM_API_KEY>"
}
}
}
}~/.gemini/settings.json
{
"mcpServers": {
"kairon": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"KAIRON_KUBE_URL",
"-e",
"KAIRON_KUBE_TOKEN",
"-e",
"KAIRON_UI_TOKEN",
"-e",
"KAIRON_LLM_API_KEY",
"ghcr.io/zyvorai/kairon-mcp:v0.10.2"
],
"env": {
"KAIRON_KUBE_URL": "<KAIRON_KUBE_URL>",
"KAIRON_KUBE_TOKEN": "<KAIRON_KUBE_TOKEN>",
"KAIRON_UI_TOKEN": "<KAIRON_UI_TOKEN>",
"KAIRON_LLM_API_KEY": "<KAIRON_LLM_API_KEY>"
}
}
}
}claude_desktop_config.json
{
"mcpServers": {
"kairon": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"KAIRON_KUBE_URL",
"-e",
"KAIRON_KUBE_TOKEN",
"-e",
"KAIRON_UI_TOKEN",
"-e",
"KAIRON_LLM_API_KEY",
"ghcr.io/zyvorai/kairon-mcp:v0.10.2"
],
"env": {
"KAIRON_KUBE_URL": "<KAIRON_KUBE_URL>",
"KAIRON_KUBE_TOKEN": "<KAIRON_KUBE_TOKEN>",
"KAIRON_UI_TOKEN": "<KAIRON_UI_TOKEN>",
"KAIRON_LLM_API_KEY": "<KAIRON_LLM_API_KEY>"
}
}
}
}.trae/mcp.json
{
"mcpServers": {
"kairon": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"KAIRON_KUBE_URL",
"-e",
"KAIRON_KUBE_TOKEN",
"-e",
"KAIRON_UI_TOKEN",
"-e",
"KAIRON_LLM_API_KEY",
"ghcr.io/zyvorai/kairon-mcp:v0.10.2"
],
"env": {
"KAIRON_KUBE_URL": "<KAIRON_KUBE_URL>",
"KAIRON_KUBE_TOKEN": "<KAIRON_KUBE_TOKEN>",
"KAIRON_UI_TOKEN": "<KAIRON_UI_TOKEN>",
"KAIRON_LLM_API_KEY": "<KAIRON_LLM_API_KEY>"
}
}
}
}Environment variables
KAIRON_KUBE_URLKAIRON_KUBE_TOKENKAIRON_UI_TOKENKAIRON_LLM_API_KEY
Replace the placeholders with your own credentials and keep them out of version control.