Read-only Model Context Protocol MCP server enabling code-driven AI analysis of Kubernetes clusters.
Connect Runs on your machine
claude mcp add kubeview -e KUBECONFIG=<KUBECONFIG> -e MCP_TRANSPORT=<MCP_TRANSPORT> -e MCP_MODE=<MCP_MODE> -e MCP_CODE_MODE_DISABLED_TOOLS=<MCP_CODE_MODE_DISABLED_TOOLS> -e MCP_ARGO_TOOLS=<MCP_ARGO_TOOLS> -e MCP_ARGOCD_TOOLS=<MCP_ARGOCD_TOOLS> -e MCP_LOG_LEVEL=<MCP_LOG_LEVEL> -e MCP_KUBE_CONTEXT=<MCP_KUBE_CONTEXT> -e MCP_K8S_SKIP_TLS_VERIFY=<MCP_K8S_SKIP_TLS_VERIFY> -e MCP_HIDE_SENSITIVE=<MCP_HIDE_SENSITIVE> -e MCP_TIMEOUT=<MCP_TIMEOUT> -e MCP_HTTP_HOST=<MCP_HTTP_HOST> -e MCP_HTTP_PORT=<MCP_HTTP_PORT> -e MCP_HTTP_PATH=<MCP_HTTP_PATH> -e MCP_HTTP_JSON_RESPONSE=<MCP_HTTP_JSON_RESPONSE> -e MCP_APPROVAL_STATE_SECRET=<MCP_APPROVAL_STATE_SECRET> -e MCP_APPROVAL_REPLAY_DIR=<MCP_APPROVAL_REPLAY_DIR> -e MCP_ALLOWED_HOSTS=<MCP_ALLOWED_HOSTS> -e MCP_ALLOWED_ORIGINS=<MCP_ALLOWED_ORIGINS> -e KUBE_MCP_FORCE_VM_SANDBOX=<KUBE_MCP_FORCE_VM_SANDBOX> -e MCP_DISABLE_KUBERNETES_PLUGIN=<MCP_DISABLE_KUBERNETES_PLUGIN> -e MCP_DISABLE_HELM_PLUGIN=<MCP_DISABLE_HELM_PLUGIN> -e MCP_DISABLE_ARGO_PLUGIN=<MCP_DISABLE_ARGO_PLUGIN> -e MCP_DISABLE_ARGOCD_PLUGIN=<MCP_DISABLE_ARGOCD_PLUGIN> -- npx -y [email protected]
{
"mcpServers": {
"kubeview": {
"command": "npx",
"args": [
"-y",
"[email protected]"
],
"env": {
"KUBECONFIG": "<KUBECONFIG>",
"MCP_TRANSPORT": "<MCP_TRANSPORT>",
"MCP_MODE": "<MCP_MODE>",
"MCP_CODE_MODE_DISABLED_TOOLS": "<MCP_CODE_MODE_DISABLED_TOOLS>",
"MCP_ARGO_TOOLS": "<MCP_ARGO_TOOLS>",
"MCP_ARGOCD_TOOLS": "<MCP_ARGOCD_TOOLS>",
"MCP_LOG_LEVEL": "<MCP_LOG_LEVEL>",
"MCP_KUBE_CONTEXT": "<MCP_KUBE_CONTEXT>",
"MCP_K8S_SKIP_TLS_VERIFY": "<MCP_K8S_SKIP_TLS_VERIFY>",
"MCP_HIDE_SENSITIVE": "<MCP_HIDE_SENSITIVE>",
"MCP_TIMEOUT": "<MCP_TIMEOUT>",
"MCP_HTTP_HOST": "<MCP_HTTP_HOST>",
"MCP_HTTP_PORT": "<MCP_HTTP_PORT>",
"MCP_HTTP_PATH": "<MCP_HTTP_PATH>",
"MCP_HTTP_JSON_RESPONSE": "<MCP_HTTP_JSON_RESPONSE>",
"MCP_APPROVAL_STATE_SECRET": "<MCP_APPROVAL_STATE_SECRET>",
"MCP_APPROVAL_REPLAY_DIR": "<MCP_APPROVAL_REPLAY_DIR>",
"MCP_ALLOWED_HOSTS": "<MCP_ALLOWED_HOSTS>",
"MCP_ALLOWED_ORIGINS": "<MCP_ALLOWED_ORIGINS>",
"KUBE_MCP_FORCE_VM_SANDBOX": "<KUBE_MCP_FORCE_VM_SANDBOX>",
"MCP_DISABLE_KUBERNETES_PLUGIN": "<MCP_DISABLE_KUBERNETES_PLUGIN>",
"MCP_DISABLE_HELM_PLUGIN": "<MCP_DISABLE_HELM_PLUGIN>",
"MCP_DISABLE_ARGO_PLUGIN": "<MCP_DISABLE_ARGO_PLUGIN>",
"MCP_DISABLE_ARGOCD_PLUGIN": "<MCP_DISABLE_ARGOCD_PLUGIN>"
}
}
}
}
{
"mcpServers": {
"kubeview": {
"command": "npx",
"args": [
"-y",
"[email protected]"
],
"env": {
"KUBECONFIG": "<KUBECONFIG>",
"MCP_TRANSPORT": "<MCP_TRANSPORT>",
"MCP_MODE": "<MCP_MODE>",
"MCP_CODE_MODE_DISABLED_TOOLS": "<MCP_CODE_MODE_DISABLED_TOOLS>",
"MCP_ARGO_TOOLS": "<MCP_ARGO_TOOLS>",
"MCP_ARGOCD_TOOLS": "<MCP_ARGOCD_TOOLS>",
"MCP_LOG_LEVEL": "<MCP_LOG_LEVEL>",
"MCP_KUBE_CONTEXT": "<MCP_KUBE_CONTEXT>",
"MCP_K8S_SKIP_TLS_VERIFY": "<MCP_K8S_SKIP_TLS_VERIFY>",
"MCP_HIDE_SENSITIVE": "<MCP_HIDE_SENSITIVE>",
"MCP_TIMEOUT": "<MCP_TIMEOUT>",
"MCP_HTTP_HOST": "<MCP_HTTP_HOST>",
"MCP_HTTP_PORT": "<MCP_HTTP_PORT>",
"MCP_HTTP_PATH": "<MCP_HTTP_PATH>",
"MCP_HTTP_JSON_RESPONSE": "<MCP_HTTP_JSON_RESPONSE>",
"MCP_APPROVAL_STATE_SECRET": "<MCP_APPROVAL_STATE_SECRET>",
"MCP_APPROVAL_REPLAY_DIR": "<MCP_APPROVAL_REPLAY_DIR>",
"MCP_ALLOWED_HOSTS": "<MCP_ALLOWED_HOSTS>",
"MCP_ALLOWED_ORIGINS": "<MCP_ALLOWED_ORIGINS>",
"KUBE_MCP_FORCE_VM_SANDBOX": "<KUBE_MCP_FORCE_VM_SANDBOX>",
"MCP_DISABLE_KUBERNETES_PLUGIN": "<MCP_DISABLE_KUBERNETES_PLUGIN>",
"MCP_DISABLE_HELM_PLUGIN": "<MCP_DISABLE_HELM_PLUGIN>",
"MCP_DISABLE_ARGO_PLUGIN": "<MCP_DISABLE_ARGO_PLUGIN>",
"MCP_DISABLE_ARGOCD_PLUGIN": "<MCP_DISABLE_ARGOCD_PLUGIN>"
}
}
}
}
{
"servers": {
"kubeview": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"[email protected]"
],
"env": {
"KUBECONFIG": "<KUBECONFIG>",
"MCP_TRANSPORT": "<MCP_TRANSPORT>",
"MCP_MODE": "<MCP_MODE>",
"MCP_CODE_MODE_DISABLED_TOOLS": "<MCP_CODE_MODE_DISABLED_TOOLS>",
"MCP_ARGO_TOOLS": "<MCP_ARGO_TOOLS>",
"MCP_ARGOCD_TOOLS": "<MCP_ARGOCD_TOOLS>",
"MCP_LOG_LEVEL": "<MCP_LOG_LEVEL>",
"MCP_KUBE_CONTEXT": "<MCP_KUBE_CONTEXT>",
"MCP_K8S_SKIP_TLS_VERIFY": "<MCP_K8S_SKIP_TLS_VERIFY>",
"MCP_HIDE_SENSITIVE": "<MCP_HIDE_SENSITIVE>",
"MCP_TIMEOUT": "<MCP_TIMEOUT>",
"MCP_HTTP_HOST": "<MCP_HTTP_HOST>",
"MCP_HTTP_PORT": "<MCP_HTTP_PORT>",
"MCP_HTTP_PATH": "<MCP_HTTP_PATH>",
"MCP_HTTP_JSON_RESPONSE": "<MCP_HTTP_JSON_RESPONSE>",
"MCP_APPROVAL_STATE_SECRET": "<MCP_APPROVAL_STATE_SECRET>",
"MCP_APPROVAL_REPLAY_DIR": "<MCP_APPROVAL_REPLAY_DIR>",
"MCP_ALLOWED_HOSTS": "<MCP_ALLOWED_HOSTS>",
"MCP_ALLOWED_ORIGINS": "<MCP_ALLOWED_ORIGINS>",
"KUBE_MCP_FORCE_VM_SANDBOX": "<KUBE_MCP_FORCE_VM_SANDBOX>",
"MCP_DISABLE_KUBERNETES_PLUGIN": "<MCP_DISABLE_KUBERNETES_PLUGIN>",
"MCP_DISABLE_HELM_PLUGIN": "<MCP_DISABLE_HELM_PLUGIN>",
"MCP_DISABLE_ARGO_PLUGIN": "<MCP_DISABLE_ARGO_PLUGIN>",
"MCP_DISABLE_ARGOCD_PLUGIN": "<MCP_DISABLE_ARGOCD_PLUGIN>"
}
}
}
}
Replace the values in angle brackets with your own. Keys stay on your machine; we never see them.
Tools
This server runs locally, so its tools are listed by your MCP client once it starts.
Environment variables
| Name | Description |
|---|---|
KUBECONFIGOptional | Path to kubeconfig file; defaults to ~/.kube/config if unset. |
MCP_TRANSPORTOptional | Transport mode: 'stdio' (default) or 'http'. The published package metadata still targets stdio by default. |
MCP_MODEOptional | Server mode: 'code' (default), compatibility alias 'all', or direct 'tools'. |
MCP_CODE_MODE_DISABLED_TOOLSOptional | Comma-separated configurable denials inside run_code. Environment overrides JSON; an empty value enables all configurable capabilities. |
MCP_ARGO_TOOLSOptional | Argo Workflows capability override: auto, on, or off. Auto uses Kubernetes API discovery. |
MCP_ARGOCD_TOOLSOptional | Argo CD capability override: auto, on, or off. Auto uses Kubernetes API discovery or explicit remote configuration. |
MCP_LOG_LEVELOptional | Logging level: 'error', 'warn', 'info' (default), or 'debug'. |
MCP_KUBE_CONTEXTOptional | Kubernetes context name to use. If unset, uses the current context from kubeconfig. |
MCP_K8S_SKIP_TLS_VERIFYOptional | Skip TLS certificate verification for Kubernetes API (use 'true' or '1'). Not recommended for production. |
MCP_HIDE_SENSITIVEOptional | Enable global sensitive data masking. Set to 'true' or '1' to mask sensitive values in responses. |
MCP_TIMEOUTOptional | Default timeout in milliseconds for operations. If unset, uses plugin-specific defaults. |
MCP_HTTP_HOSTOptional | HTTP bind host when MCP_TRANSPORT=http. Defaults to 127.0.0.1. |
MCP_HTTP_PORTOptional | HTTP port when MCP_TRANSPORT=http. Defaults to 3000. |
MCP_HTTP_PATHOptional | HTTP endpoint path when MCP_TRANSPORT=http. Defaults to /mcp. |
MCP_HTTP_JSON_RESPONSEOptional | Prefer JSON responses over SSE in HTTP mode. Set to 'true' or '1' to enable. |
MCP_APPROVAL_STATE_SECRETOptional, secret | Shared secret of at least 32 bytes for signing approval state. Required in HTTP mode and identical across replicas. |
MCP_APPROVAL_REPLAY_DIROptional | Absolute directory on writable storage shared by every HTTP replica, used to atomically prevent approval replay. |
MCP_ALLOWED_HOSTSOptional | Comma-separated Host allowlist for HTTP mode. Required when binding to 0.0.0.0 or ::. |
MCP_ALLOWED_ORIGINSOptional | Comma-separated Origin allowlist for HTTP mode. |
KUBE_MCP_FORCE_VM_SANDBOXOptional | Force the standalone code-mode runtime to use node:vm instead of isolated-vm. Set to '1' to enable. |
MCP_DISABLE_KUBERNETES_PLUGINOptional | Disable Kubernetes plugin. Set to 'true' or '1' to disable. |
MCP_DISABLE_HELM_PLUGINOptional | Disable Helm plugin. Set to 'true' or '1' to disable. |
MCP_DISABLE_ARGO_PLUGINOptional | Deprecated alias for MCP_ARGO_TOOLS=off. |
MCP_DISABLE_ARGOCD_PLUGINOptional | Deprecated alias for MCP_ARGOCD_TOOLS=off. |
Details
| Package | [email protected] (NPM, stdio) |
| First published | 17 Oct 2026 |
| Last updated | 17 Oct 2026 |
| Registry name | io.github.mikhae1/kubeview |
More developer tools servers See all
Listing data from the official MCP registry. Status and tools from NestDaddy's daily check. Browse all MCP servers.
