kubeview-mcp 1.3.0 → 1.4.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +25 -2
- package/README.md +80 -232
- package/TODO.md +1 -1
- package/bin/kubeview-mcp.js +4 -1
- package/bin/setup.js +4 -3
- package/dist/src/agent/codegen/ToolDescriptionBuilder.d.ts +0 -1
- package/dist/src/agent/codegen/ToolDescriptionBuilder.d.ts.map +1 -1
- package/dist/src/agent/codegen/ToolDescriptionBuilder.js +22 -20
- package/dist/src/agent/codegen/ToolDescriptionBuilder.js.map +1 -1
- package/dist/src/agent/config/CodeModeConfig.d.ts +9 -12
- package/dist/src/agent/config/CodeModeConfig.d.ts.map +1 -1
- package/dist/src/agent/config/CodeModeConfig.js +9 -2
- package/dist/src/agent/config/CodeModeConfig.js.map +1 -1
- package/dist/src/agent/runtime/ivm/IVMSandboxManager.d.ts +3 -0
- package/dist/src/agent/runtime/ivm/IVMSandboxManager.d.ts.map +1 -1
- package/dist/src/agent/runtime/ivm/IVMSandboxManager.js +131 -0
- package/dist/src/agent/runtime/ivm/IVMSandboxManager.js.map +1 -1
- package/dist/src/agent/runtime/vm/VmSandboxManager.d.ts +5 -5
- package/dist/src/agent/runtime/vm/VmSandboxManager.d.ts.map +1 -1
- package/dist/src/agent/runtime/vm/VmSandboxManager.js +97 -39
- package/dist/src/agent/runtime/vm/VmSandboxManager.js.map +1 -1
- package/dist/src/cli/code-mode.js +7 -18
- package/dist/src/cli/code-mode.js.map +1 -1
- package/dist/src/index.d.ts +5 -4
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +70 -13
- package/dist/src/index.js.map +1 -1
- package/dist/src/server/MCPServer.d.ts +31 -0
- package/dist/src/server/MCPServer.d.ts.map +1 -1
- package/dist/src/server/MCPServer.js +170 -29
- package/dist/src/server/MCPServer.js.map +1 -1
- package/dist/src/tools/RunCodeTool.d.ts +22 -15
- package/dist/src/tools/RunCodeTool.d.ts.map +1 -1
- package/dist/src/tools/RunCodeTool.js +354 -227
- package/dist/src/tools/RunCodeTool.js.map +1 -1
- package/dist/src/tools/kubernetes/KubeListTool.d.ts.map +1 -1
- package/dist/src/tools/kubernetes/KubeListTool.js +47 -29
- package/dist/src/tools/kubernetes/KubeListTool.js.map +1 -1
- package/dist/src/utils/CodeModeConfig.d.ts +0 -3
- package/dist/src/utils/CodeModeConfig.d.ts.map +1 -1
- package/dist/src/utils/CodeModeConfig.js +0 -1
- package/dist/src/utils/CodeModeConfig.js.map +1 -1
- package/dist/src/utils/toolNamespaces.d.ts +9 -0
- package/dist/src/utils/toolNamespaces.d.ts.map +1 -0
- package/dist/src/utils/toolNamespaces.js +29 -0
- package/dist/src/utils/toolNamespaces.js.map +1 -0
- package/dist/src/version.d.ts +1 -1
- package/dist/src/version.d.ts.map +1 -1
- package/dist/src/version.js +2 -2
- package/dist/src/version.js.map +1 -1
- package/dist/tests/agent/ToolDescriptionBuilder.test.js +7 -7
- package/dist/tests/agent/ToolDescriptionBuilder.test.js.map +1 -1
- package/dist/tests/index.test.js +2 -2
- package/dist/tests/index.test.js.map +1 -1
- package/dist/tests/tools/RunCodeTool.test.js +99 -33
- package/dist/tests/tools/RunCodeTool.test.js.map +1 -1
- package/dist/tests/tools/kubernetes/KubeListTool.test.d.ts +2 -0
- package/dist/tests/tools/kubernetes/KubeListTool.test.d.ts.map +1 -0
- package/dist/tests/tools/kubernetes/KubeListTool.test.js +45 -0
- package/dist/tests/tools/kubernetes/KubeListTool.test.js.map +1 -0
- package/package.json +3 -5
- package/.prettierrc.json +0 -11
- package/dist/agent/bridge/MCPBridge.d.ts +0 -41
- package/dist/agent/bridge/MCPBridge.d.ts.map +0 -1
- package/dist/agent/bridge/MCPBridge.js +0 -127
- package/dist/agent/bridge/MCPBridge.js.map +0 -1
- package/dist/agent/codegen/CodegenManager.d.ts +0 -26
- package/dist/agent/codegen/CodegenManager.d.ts.map +0 -1
- package/dist/agent/codegen/CodegenManager.js +0 -222
- package/dist/agent/codegen/CodegenManager.js.map +0 -1
- package/dist/agent/codegen/SchemaToTypeScriptMapper.d.ts +0 -13
- package/dist/agent/codegen/SchemaToTypeScriptMapper.d.ts.map +0 -1
- package/dist/agent/codegen/SchemaToTypeScriptMapper.js +0 -54
- package/dist/agent/codegen/SchemaToTypeScriptMapper.js.map +0 -1
- package/dist/agent/codegen/ToolDescriptionBuilder.d.ts +0 -67
- package/dist/agent/codegen/ToolDescriptionBuilder.d.ts.map +0 -1
- package/dist/agent/codegen/ToolDescriptionBuilder.js +0 -201
- package/dist/agent/codegen/ToolDescriptionBuilder.js.map +0 -1
- package/dist/agent/codegen/ToolSchemaIntrospector.d.ts +0 -10
- package/dist/agent/codegen/ToolSchemaIntrospector.d.ts.map +0 -1
- package/dist/agent/codegen/ToolSchemaIntrospector.js +0 -72
- package/dist/agent/codegen/ToolSchemaIntrospector.js.map +0 -1
- package/dist/agent/codegen/types.d.ts +0 -31
- package/dist/agent/codegen/types.d.ts.map +0 -1
- package/dist/agent/codegen/types.js +0 -2
- package/dist/agent/codegen/types.js.map +0 -1
- package/dist/agent/config/CodeModeConfig.d.ts +0 -70
- package/dist/agent/config/CodeModeConfig.d.ts.map +0 -1
- package/dist/agent/config/CodeModeConfig.js +0 -34
- package/dist/agent/config/CodeModeConfig.js.map +0 -1
- package/dist/agent/runtime/code-executor/CodeExecutor.d.ts +0 -25
- package/dist/agent/runtime/code-executor/CodeExecutor.d.ts.map +0 -1
- package/dist/agent/runtime/code-executor/CodeExecutor.js +0 -95
- package/dist/agent/runtime/code-executor/CodeExecutor.js.map +0 -1
- package/dist/agent/runtime/code-executor/NodeVmCodeExecutor.d.ts +0 -21
- package/dist/agent/runtime/code-executor/NodeVmCodeExecutor.d.ts.map +0 -1
- package/dist/agent/runtime/code-executor/NodeVmCodeExecutor.js +0 -89
- package/dist/agent/runtime/code-executor/NodeVmCodeExecutor.js.map +0 -1
- package/dist/agent/runtime/createSandboxManager.d.ts +0 -4
- package/dist/agent/runtime/createSandboxManager.d.ts.map +0 -1
- package/dist/agent/runtime/createSandboxManager.js +0 -28
- package/dist/agent/runtime/createSandboxManager.js.map +0 -1
- package/dist/agent/runtime/ivm/IVMSandboxManager.d.ts +0 -21
- package/dist/agent/runtime/ivm/IVMSandboxManager.d.ts.map +0 -1
- package/dist/agent/runtime/ivm/IVMSandboxManager.js +0 -189
- package/dist/agent/runtime/ivm/IVMSandboxManager.js.map +0 -1
- package/dist/agent/runtime/types.d.ts +0 -12
- package/dist/agent/runtime/types.d.ts.map +0 -1
- package/dist/agent/runtime/types.js +0 -2
- package/dist/agent/runtime/types.js.map +0 -1
- package/dist/agent/runtime/vm/VmSandboxManager.d.ts +0 -23
- package/dist/agent/runtime/vm/VmSandboxManager.d.ts.map +0 -1
- package/dist/agent/runtime/vm/VmSandboxManager.js +0 -168
- package/dist/agent/runtime/vm/VmSandboxManager.js.map +0 -1
- package/dist/agent/security/PIITokenizer.d.ts +0 -15
- package/dist/agent/security/PIITokenizer.d.ts.map +0 -1
- package/dist/agent/security/PIITokenizer.js +0 -54
- package/dist/agent/security/PIITokenizer.js.map +0 -1
- package/dist/cli/cli.d.ts +0 -3
- package/dist/cli/cli.d.ts.map +0 -1
- package/dist/cli/cli.js +0 -23
- package/dist/cli/cli.js.map +0 -1
- package/dist/cli/code-mode.d.ts +0 -3
- package/dist/cli/code-mode.d.ts.map +0 -1
- package/dist/cli/code-mode.js +0 -225
- package/dist/cli/code-mode.js.map +0 -1
- package/dist/index.d.ts +0 -14
- package/dist/index.d.ts.map +0 -1
- package/dist/index.js +0 -125
- package/dist/index.js.map +0 -1
- package/dist/kubernetes/BaseResourceOperations.d.ts +0 -155
- package/dist/kubernetes/BaseResourceOperations.d.ts.map +0 -1
- package/dist/kubernetes/BaseResourceOperations.js +0 -136
- package/dist/kubernetes/BaseResourceOperations.js.map +0 -1
- package/dist/kubernetes/CircuitBreaker.d.ts +0 -182
- package/dist/kubernetes/CircuitBreaker.d.ts.map +0 -1
- package/dist/kubernetes/CircuitBreaker.js +0 -369
- package/dist/kubernetes/CircuitBreaker.js.map +0 -1
- package/dist/kubernetes/ConnectionManager.d.ts +0 -60
- package/dist/kubernetes/ConnectionManager.d.ts.map +0 -1
- package/dist/kubernetes/ConnectionManager.js +0 -77
- package/dist/kubernetes/ConnectionManager.js.map +0 -1
- package/dist/kubernetes/ConnectionPool.d.ts +0 -183
- package/dist/kubernetes/ConnectionPool.d.ts.map +0 -1
- package/dist/kubernetes/ConnectionPool.js +0 -437
- package/dist/kubernetes/ConnectionPool.js.map +0 -1
- package/dist/kubernetes/ErrorHandler.d.ts +0 -172
- package/dist/kubernetes/ErrorHandler.d.ts.map +0 -1
- package/dist/kubernetes/ErrorHandler.js +0 -328
- package/dist/kubernetes/ErrorHandler.js.map +0 -1
- package/dist/kubernetes/ErrorHandling.d.ts +0 -148
- package/dist/kubernetes/ErrorHandling.d.ts.map +0 -1
- package/dist/kubernetes/ErrorHandling.js +0 -304
- package/dist/kubernetes/ErrorHandling.js.map +0 -1
- package/dist/kubernetes/KubernetesClient.d.ts +0 -178
- package/dist/kubernetes/KubernetesClient.d.ts.map +0 -1
- package/dist/kubernetes/KubernetesClient.js +0 -524
- package/dist/kubernetes/KubernetesClient.js.map +0 -1
- package/dist/kubernetes/ResourceOperations.d.ts +0 -69
- package/dist/kubernetes/ResourceOperations.d.ts.map +0 -1
- package/dist/kubernetes/ResourceOperations.js +0 -99
- package/dist/kubernetes/ResourceOperations.js.map +0 -1
- package/dist/kubernetes/RetryStrategy.d.ts +0 -137
- package/dist/kubernetes/RetryStrategy.d.ts.map +0 -1
- package/dist/kubernetes/RetryStrategy.js +0 -282
- package/dist/kubernetes/RetryStrategy.js.map +0 -1
- package/dist/kubernetes/RetryableOperation.d.ts +0 -118
- package/dist/kubernetes/RetryableOperation.d.ts.map +0 -1
- package/dist/kubernetes/RetryableOperation.js +0 -233
- package/dist/kubernetes/RetryableOperation.js.map +0 -1
- package/dist/kubernetes/index.d.ts +0 -18
- package/dist/kubernetes/index.d.ts.map +0 -1
- package/dist/kubernetes/index.js +0 -28
- package/dist/kubernetes/index.js.map +0 -1
- package/dist/kubernetes/resources/ConfigMapOperations.d.ts +0 -60
- package/dist/kubernetes/resources/ConfigMapOperations.d.ts.map +0 -1
- package/dist/kubernetes/resources/ConfigMapOperations.js +0 -307
- package/dist/kubernetes/resources/ConfigMapOperations.js.map +0 -1
- package/dist/kubernetes/resources/CustomResourceOperations.d.ts +0 -55
- package/dist/kubernetes/resources/CustomResourceOperations.d.ts.map +0 -1
- package/dist/kubernetes/resources/CustomResourceOperations.js +0 -363
- package/dist/kubernetes/resources/CustomResourceOperations.js.map +0 -1
- package/dist/kubernetes/resources/DeploymentOperations.d.ts +0 -66
- package/dist/kubernetes/resources/DeploymentOperations.d.ts.map +0 -1
- package/dist/kubernetes/resources/DeploymentOperations.js +0 -234
- package/dist/kubernetes/resources/DeploymentOperations.js.map +0 -1
- package/dist/kubernetes/resources/IngressOperations.d.ts +0 -60
- package/dist/kubernetes/resources/IngressOperations.d.ts.map +0 -1
- package/dist/kubernetes/resources/IngressOperations.js +0 -224
- package/dist/kubernetes/resources/IngressOperations.js.map +0 -1
- package/dist/kubernetes/resources/MetricOperations.d.ts +0 -251
- package/dist/kubernetes/resources/MetricOperations.d.ts.map +0 -1
- package/dist/kubernetes/resources/MetricOperations.js +0 -1377
- package/dist/kubernetes/resources/MetricOperations.js.map +0 -1
- package/dist/kubernetes/resources/NamespaceOperations.d.ts +0 -38
- package/dist/kubernetes/resources/NamespaceOperations.d.ts.map +0 -1
- package/dist/kubernetes/resources/NamespaceOperations.js +0 -101
- package/dist/kubernetes/resources/NamespaceOperations.js.map +0 -1
- package/dist/kubernetes/resources/PersistentVolumeClaimOperations.d.ts +0 -109
- package/dist/kubernetes/resources/PersistentVolumeClaimOperations.d.ts.map +0 -1
- package/dist/kubernetes/resources/PersistentVolumeClaimOperations.js +0 -383
- package/dist/kubernetes/resources/PersistentVolumeClaimOperations.js.map +0 -1
- package/dist/kubernetes/resources/PersistentVolumeOperations.d.ts +0 -97
- package/dist/kubernetes/resources/PersistentVolumeOperations.d.ts.map +0 -1
- package/dist/kubernetes/resources/PersistentVolumeOperations.js +0 -321
- package/dist/kubernetes/resources/PersistentVolumeOperations.js.map +0 -1
- package/dist/kubernetes/resources/PodOperations.d.ts +0 -99
- package/dist/kubernetes/resources/PodOperations.d.ts.map +0 -1
- package/dist/kubernetes/resources/PodOperations.js +0 -333
- package/dist/kubernetes/resources/PodOperations.js.map +0 -1
- package/dist/kubernetes/resources/SecretOperations.d.ts +0 -71
- package/dist/kubernetes/resources/SecretOperations.d.ts.map +0 -1
- package/dist/kubernetes/resources/SecretOperations.js +0 -261
- package/dist/kubernetes/resources/SecretOperations.js.map +0 -1
- package/dist/kubernetes/resources/ServiceOperations.d.ts +0 -64
- package/dist/kubernetes/resources/ServiceOperations.d.ts.map +0 -1
- package/dist/kubernetes/resources/ServiceOperations.js +0 -232
- package/dist/kubernetes/resources/ServiceOperations.js.map +0 -1
- package/dist/kubernetes/utils/ResourceUtils.d.ts +0 -238
- package/dist/kubernetes/utils/ResourceUtils.d.ts.map +0 -1
- package/dist/kubernetes/utils/ResourceUtils.js +0 -439
- package/dist/kubernetes/utils/ResourceUtils.js.map +0 -1
- package/dist/package.json +0 -90
- package/dist/plugins/ArgoCDToolsPlugin.d.ts +0 -19
- package/dist/plugins/ArgoCDToolsPlugin.d.ts.map +0 -1
- package/dist/plugins/ArgoCDToolsPlugin.js +0 -74
- package/dist/plugins/ArgoCDToolsPlugin.js.map +0 -1
- package/dist/plugins/ArgoToolsPlugin.d.ts +0 -19
- package/dist/plugins/ArgoToolsPlugin.d.ts.map +0 -1
- package/dist/plugins/ArgoToolsPlugin.js +0 -73
- package/dist/plugins/ArgoToolsPlugin.js.map +0 -1
- package/dist/plugins/BaseToolsPlugin.d.ts +0 -37
- package/dist/plugins/BaseToolsPlugin.d.ts.map +0 -1
- package/dist/plugins/BaseToolsPlugin.js +0 -114
- package/dist/plugins/BaseToolsPlugin.js.map +0 -1
- package/dist/plugins/HelmToolsPlugin.d.ts +0 -19
- package/dist/plugins/HelmToolsPlugin.d.ts.map +0 -1
- package/dist/plugins/HelmToolsPlugin.js +0 -73
- package/dist/plugins/HelmToolsPlugin.js.map +0 -1
- package/dist/plugins/KubernetesToolsPlugin.d.ts +0 -54
- package/dist/plugins/KubernetesToolsPlugin.d.ts.map +0 -1
- package/dist/plugins/KubernetesToolsPlugin.js +0 -194
- package/dist/plugins/KubernetesToolsPlugin.js.map +0 -1
- package/dist/plugins/SamplePlugin.d.ts +0 -12
- package/dist/plugins/SamplePlugin.d.ts.map +0 -1
- package/dist/plugins/SamplePlugin.js +0 -51
- package/dist/plugins/SamplePlugin.js.map +0 -1
- package/dist/plugins/index.d.ts +0 -5
- package/dist/plugins/index.d.ts.map +0 -1
- package/dist/plugins/index.js +0 -5
- package/dist/plugins/index.js.map +0 -1
- package/dist/server/MCPServer.d.ts +0 -108
- package/dist/server/MCPServer.d.ts.map +0 -1
- package/dist/server/MCPServer.js +0 -496
- package/dist/server/MCPServer.js.map +0 -1
- package/dist/src/agent/runtime/SandboxManager.d.ts +0 -24
- package/dist/src/agent/runtime/SandboxManager.d.ts.map +0 -1
- package/dist/src/agent/runtime/SandboxManager.js +0 -181
- package/dist/src/agent/runtime/SandboxManager.js.map +0 -1
- package/dist/src/cli/run-command.d.ts +0 -3
- package/dist/src/cli/run-command.d.ts.map +0 -1
- package/dist/src/cli/run-command.js +0 -379
- package/dist/src/cli/run-command.js.map +0 -1
- package/dist/src/tools/CodeModeTool.d.ts +0 -18
- package/dist/src/tools/CodeModeTool.d.ts.map +0 -1
- package/dist/src/tools/CodeModeTool.js +0 -86
- package/dist/src/tools/CodeModeTool.js.map +0 -1
- package/dist/src/tools/helm/HelmReleaseTool.d.ts +0 -10
- package/dist/src/tools/helm/HelmReleaseTool.d.ts.map +0 -1
- package/dist/src/tools/helm/HelmReleaseTool.js +0 -44
- package/dist/src/tools/helm/HelmReleaseTool.js.map +0 -1
- package/dist/src/version.cjs +0 -10
- package/dist/src/version.cjs.map +0 -1
- package/dist/src/version.d.cts +0 -2
- package/dist/src/version.d.cts.map +0 -1
- package/dist/tests/tools/CodeModeTool.test.d.ts +0 -2
- package/dist/tests/tools/CodeModeTool.test.d.ts.map +0 -1
- package/dist/tests/tools/CodeModeTool.test.js +0 -19
- package/dist/tests/tools/CodeModeTool.test.js.map +0 -1
- package/dist/tools/RunCodeTool.d.ts +0 -68
- package/dist/tools/RunCodeTool.d.ts.map +0 -1
- package/dist/tools/RunCodeTool.js +0 -511
- package/dist/tools/RunCodeTool.js.map +0 -1
- package/dist/tools/argo/ArgoCronListTool.d.ts +0 -10
- package/dist/tools/argo/ArgoCronListTool.d.ts.map +0 -1
- package/dist/tools/argo/ArgoCronListTool.js +0 -70
- package/dist/tools/argo/ArgoCronListTool.js.map +0 -1
- package/dist/tools/argo/ArgoGetTool.d.ts +0 -10
- package/dist/tools/argo/ArgoGetTool.d.ts.map +0 -1
- package/dist/tools/argo/ArgoGetTool.js +0 -80
- package/dist/tools/argo/ArgoGetTool.js.map +0 -1
- package/dist/tools/argo/ArgoListTool.d.ts +0 -10
- package/dist/tools/argo/ArgoListTool.d.ts.map +0 -1
- package/dist/tools/argo/ArgoListTool.js +0 -133
- package/dist/tools/argo/ArgoListTool.js.map +0 -1
- package/dist/tools/argo/ArgoLogsTool.d.ts +0 -10
- package/dist/tools/argo/ArgoLogsTool.d.ts.map +0 -1
- package/dist/tools/argo/ArgoLogsTool.js +0 -117
- package/dist/tools/argo/ArgoLogsTool.js.map +0 -1
- package/dist/tools/argo/BaseTool.d.ts +0 -60
- package/dist/tools/argo/BaseTool.d.ts.map +0 -1
- package/dist/tools/argo/BaseTool.js +0 -51
- package/dist/tools/argo/BaseTool.js.map +0 -1
- package/dist/tools/argo/index.d.ts +0 -6
- package/dist/tools/argo/index.d.ts.map +0 -1
- package/dist/tools/argo/index.js +0 -5
- package/dist/tools/argo/index.js.map +0 -1
- package/dist/tools/argocd/ArgoCDAppGetTool.d.ts +0 -10
- package/dist/tools/argocd/ArgoCDAppGetTool.d.ts.map +0 -1
- package/dist/tools/argocd/ArgoCDAppGetTool.js +0 -97
- package/dist/tools/argocd/ArgoCDAppGetTool.js.map +0 -1
- package/dist/tools/argocd/ArgoCDAppHistoryTool.d.ts +0 -10
- package/dist/tools/argocd/ArgoCDAppHistoryTool.d.ts.map +0 -1
- package/dist/tools/argocd/ArgoCDAppHistoryTool.js +0 -80
- package/dist/tools/argocd/ArgoCDAppHistoryTool.js.map +0 -1
- package/dist/tools/argocd/ArgoCDAppListTool.d.ts +0 -10
- package/dist/tools/argocd/ArgoCDAppListTool.d.ts.map +0 -1
- package/dist/tools/argocd/ArgoCDAppListTool.js +0 -128
- package/dist/tools/argocd/ArgoCDAppListTool.js.map +0 -1
- package/dist/tools/argocd/ArgoCDAppLogsTool.d.ts +0 -10
- package/dist/tools/argocd/ArgoCDAppLogsTool.d.ts.map +0 -1
- package/dist/tools/argocd/ArgoCDAppLogsTool.js +0 -143
- package/dist/tools/argocd/ArgoCDAppLogsTool.js.map +0 -1
- package/dist/tools/argocd/ArgoCDAppResourcesTool.d.ts +0 -10
- package/dist/tools/argocd/ArgoCDAppResourcesTool.d.ts.map +0 -1
- package/dist/tools/argocd/ArgoCDAppResourcesTool.js +0 -123
- package/dist/tools/argocd/ArgoCDAppResourcesTool.js.map +0 -1
- package/dist/tools/argocd/ArgoCDAppTool.d.ts +0 -10
- package/dist/tools/argocd/ArgoCDAppTool.d.ts.map +0 -1
- package/dist/tools/argocd/ArgoCDAppTool.js +0 -179
- package/dist/tools/argocd/ArgoCDAppTool.js.map +0 -1
- package/dist/tools/argocd/BaseTool.d.ts +0 -71
- package/dist/tools/argocd/BaseTool.d.ts.map +0 -1
- package/dist/tools/argocd/BaseTool.js +0 -62
- package/dist/tools/argocd/BaseTool.js.map +0 -1
- package/dist/tools/argocd/index.d.ts +0 -4
- package/dist/tools/argocd/index.d.ts.map +0 -1
- package/dist/tools/argocd/index.js +0 -3
- package/dist/tools/argocd/index.js.map +0 -1
- package/dist/tools/helm/BaseTool.d.ts +0 -51
- package/dist/tools/helm/BaseTool.d.ts.map +0 -1
- package/dist/tools/helm/BaseTool.js +0 -42
- package/dist/tools/helm/BaseTool.js.map +0 -1
- package/dist/tools/helm/HelmGetHooksTool.d.ts +0 -10
- package/dist/tools/helm/HelmGetHooksTool.d.ts.map +0 -1
- package/dist/tools/helm/HelmGetHooksTool.js +0 -38
- package/dist/tools/helm/HelmGetHooksTool.js.map +0 -1
- package/dist/tools/helm/HelmGetManifestTool.d.ts +0 -10
- package/dist/tools/helm/HelmGetManifestTool.d.ts.map +0 -1
- package/dist/tools/helm/HelmGetManifestTool.js +0 -38
- package/dist/tools/helm/HelmGetManifestTool.js.map +0 -1
- package/dist/tools/helm/HelmGetNotesTool.d.ts +0 -10
- package/dist/tools/helm/HelmGetNotesTool.d.ts.map +0 -1
- package/dist/tools/helm/HelmGetNotesTool.js +0 -38
- package/dist/tools/helm/HelmGetNotesTool.js.map +0 -1
- package/dist/tools/helm/HelmGetResourcesTool.d.ts +0 -13
- package/dist/tools/helm/HelmGetResourcesTool.d.ts.map +0 -1
- package/dist/tools/helm/HelmGetResourcesTool.js +0 -124
- package/dist/tools/helm/HelmGetResourcesTool.js.map +0 -1
- package/dist/tools/helm/HelmGetTool.d.ts +0 -11
- package/dist/tools/helm/HelmGetTool.d.ts.map +0 -1
- package/dist/tools/helm/HelmGetTool.js +0 -145
- package/dist/tools/helm/HelmGetTool.js.map +0 -1
- package/dist/tools/helm/HelmGetValuesTool.d.ts +0 -10
- package/dist/tools/helm/HelmGetValuesTool.d.ts.map +0 -1
- package/dist/tools/helm/HelmGetValuesTool.js +0 -62
- package/dist/tools/helm/HelmGetValuesTool.js.map +0 -1
- package/dist/tools/helm/HelmHistoryTool.d.ts +0 -10
- package/dist/tools/helm/HelmHistoryTool.d.ts.map +0 -1
- package/dist/tools/helm/HelmHistoryTool.js +0 -49
- package/dist/tools/helm/HelmHistoryTool.js.map +0 -1
- package/dist/tools/helm/HelmListTool.d.ts +0 -10
- package/dist/tools/helm/HelmListTool.d.ts.map +0 -1
- package/dist/tools/helm/HelmListTool.js +0 -107
- package/dist/tools/helm/HelmListTool.js.map +0 -1
- package/dist/tools/helm/HelmListWithResourcesTool.d.ts +0 -14
- package/dist/tools/helm/HelmListWithResourcesTool.d.ts.map +0 -1
- package/dist/tools/helm/HelmListWithResourcesTool.js +0 -175
- package/dist/tools/helm/HelmListWithResourcesTool.js.map +0 -1
- package/dist/tools/helm/HelmStatusTool.d.ts +0 -10
- package/dist/tools/helm/HelmStatusTool.d.ts.map +0 -1
- package/dist/tools/helm/HelmStatusTool.js +0 -54
- package/dist/tools/helm/HelmStatusTool.js.map +0 -1
- package/dist/tools/helm/index.d.ts +0 -5
- package/dist/tools/helm/index.d.ts.map +0 -1
- package/dist/tools/helm/index.js +0 -4
- package/dist/tools/helm/index.js.map +0 -1
- package/dist/tools/kubernetes/BaseTool.d.ts +0 -48
- package/dist/tools/kubernetes/BaseTool.d.ts.map +0 -1
- package/dist/tools/kubernetes/BaseTool.js +0 -55
- package/dist/tools/kubernetes/BaseTool.js.map +0 -1
- package/dist/tools/kubernetes/ExecTool.d.ts +0 -11
- package/dist/tools/kubernetes/ExecTool.d.ts.map +0 -1
- package/dist/tools/kubernetes/ExecTool.js +0 -275
- package/dist/tools/kubernetes/ExecTool.js.map +0 -1
- package/dist/tools/kubernetes/GetConfigMapTool.d.ts +0 -11
- package/dist/tools/kubernetes/GetConfigMapTool.d.ts.map +0 -1
- package/dist/tools/kubernetes/GetConfigMapTool.js +0 -28
- package/dist/tools/kubernetes/GetConfigMapTool.js.map +0 -1
- package/dist/tools/kubernetes/GetContainerLogsTool.d.ts +0 -15
- package/dist/tools/kubernetes/GetContainerLogsTool.d.ts.map +0 -1
- package/dist/tools/kubernetes/GetContainerLogsTool.js +0 -129
- package/dist/tools/kubernetes/GetContainerLogsTool.js.map +0 -1
- package/dist/tools/kubernetes/GetCronJobsTool.d.ts +0 -8
- package/dist/tools/kubernetes/GetCronJobsTool.d.ts.map +0 -1
- package/dist/tools/kubernetes/GetCronJobsTool.js +0 -45
- package/dist/tools/kubernetes/GetCronJobsTool.js.map +0 -1
- package/dist/tools/kubernetes/GetDaemonSetsTool.d.ts +0 -8
- package/dist/tools/kubernetes/GetDaemonSetsTool.d.ts.map +0 -1
- package/dist/tools/kubernetes/GetDaemonSetsTool.js +0 -53
- package/dist/tools/kubernetes/GetDaemonSetsTool.js.map +0 -1
- package/dist/tools/kubernetes/GetDeploymentsTool.d.ts +0 -11
- package/dist/tools/kubernetes/GetDeploymentsTool.d.ts.map +0 -1
- package/dist/tools/kubernetes/GetDeploymentsTool.js +0 -30
- package/dist/tools/kubernetes/GetDeploymentsTool.js.map +0 -1
- package/dist/tools/kubernetes/GetEndpointSlicesTool.d.ts +0 -8
- package/dist/tools/kubernetes/GetEndpointSlicesTool.d.ts.map +0 -1
- package/dist/tools/kubernetes/GetEndpointSlicesTool.js +0 -57
- package/dist/tools/kubernetes/GetEndpointSlicesTool.js.map +0 -1
- package/dist/tools/kubernetes/GetEndpointsTool.d.ts +0 -8
- package/dist/tools/kubernetes/GetEndpointsTool.d.ts.map +0 -1
- package/dist/tools/kubernetes/GetEndpointsTool.js +0 -53
- package/dist/tools/kubernetes/GetEndpointsTool.js.map +0 -1
- package/dist/tools/kubernetes/GetEventsTool.d.ts +0 -11
- package/dist/tools/kubernetes/GetEventsTool.d.ts.map +0 -1
- package/dist/tools/kubernetes/GetEventsTool.js +0 -123
- package/dist/tools/kubernetes/GetEventsTool.js.map +0 -1
- package/dist/tools/kubernetes/GetHPATool.d.ts +0 -8
- package/dist/tools/kubernetes/GetHPATool.d.ts.map +0 -1
- package/dist/tools/kubernetes/GetHPATool.js +0 -45
- package/dist/tools/kubernetes/GetHPATool.js.map +0 -1
- package/dist/tools/kubernetes/GetIngressTool.d.ts +0 -11
- package/dist/tools/kubernetes/GetIngressTool.d.ts.map +0 -1
- package/dist/tools/kubernetes/GetIngressTool.js +0 -35
- package/dist/tools/kubernetes/GetIngressTool.js.map +0 -1
- package/dist/tools/kubernetes/GetJobsTool.d.ts +0 -8
- package/dist/tools/kubernetes/GetJobsTool.d.ts.map +0 -1
- package/dist/tools/kubernetes/GetJobsTool.js +0 -52
- package/dist/tools/kubernetes/GetJobsTool.js.map +0 -1
- package/dist/tools/kubernetes/GetLimitRangesTool.d.ts +0 -8
- package/dist/tools/kubernetes/GetLimitRangesTool.d.ts.map +0 -1
- package/dist/tools/kubernetes/GetLimitRangesTool.js +0 -38
- package/dist/tools/kubernetes/GetLimitRangesTool.js.map +0 -1
- package/dist/tools/kubernetes/GetMetricsTool.d.ts +0 -11
- package/dist/tools/kubernetes/GetMetricsTool.d.ts.map +0 -1
- package/dist/tools/kubernetes/GetMetricsTool.js +0 -43
- package/dist/tools/kubernetes/GetMetricsTool.js.map +0 -1
- package/dist/tools/kubernetes/GetNamespacesTool.d.ts +0 -11
- package/dist/tools/kubernetes/GetNamespacesTool.d.ts.map +0 -1
- package/dist/tools/kubernetes/GetNamespacesTool.js +0 -33
- package/dist/tools/kubernetes/GetNamespacesTool.js.map +0 -1
- package/dist/tools/kubernetes/GetNodesTool.d.ts +0 -8
- package/dist/tools/kubernetes/GetNodesTool.d.ts.map +0 -1
- package/dist/tools/kubernetes/GetNodesTool.js +0 -53
- package/dist/tools/kubernetes/GetNodesTool.js.map +0 -1
- package/dist/tools/kubernetes/GetPDBTool.d.ts +0 -8
- package/dist/tools/kubernetes/GetPDBTool.d.ts.map +0 -1
- package/dist/tools/kubernetes/GetPDBTool.js +0 -46
- package/dist/tools/kubernetes/GetPDBTool.js.map +0 -1
- package/dist/tools/kubernetes/GetPersistentVolumeClaimsTool.d.ts +0 -11
- package/dist/tools/kubernetes/GetPersistentVolumeClaimsTool.d.ts.map +0 -1
- package/dist/tools/kubernetes/GetPersistentVolumeClaimsTool.js +0 -92
- package/dist/tools/kubernetes/GetPersistentVolumeClaimsTool.js.map +0 -1
- package/dist/tools/kubernetes/GetPersistentVolumesTool.d.ts +0 -11
- package/dist/tools/kubernetes/GetPersistentVolumesTool.d.ts.map +0 -1
- package/dist/tools/kubernetes/GetPersistentVolumesTool.js +0 -88
- package/dist/tools/kubernetes/GetPersistentVolumesTool.js.map +0 -1
- package/dist/tools/kubernetes/GetPodMetricsTool.d.ts +0 -11
- package/dist/tools/kubernetes/GetPodMetricsTool.d.ts.map +0 -1
- package/dist/tools/kubernetes/GetPodMetricsTool.js +0 -100
- package/dist/tools/kubernetes/GetPodMetricsTool.js.map +0 -1
- package/dist/tools/kubernetes/GetPodsTool.d.ts +0 -11
- package/dist/tools/kubernetes/GetPodsTool.d.ts.map +0 -1
- package/dist/tools/kubernetes/GetPodsTool.js +0 -35
- package/dist/tools/kubernetes/GetPodsTool.js.map +0 -1
- package/dist/tools/kubernetes/GetReplicaSetsTool.d.ts +0 -8
- package/dist/tools/kubernetes/GetReplicaSetsTool.d.ts.map +0 -1
- package/dist/tools/kubernetes/GetReplicaSetsTool.js +0 -49
- package/dist/tools/kubernetes/GetReplicaSetsTool.js.map +0 -1
- package/dist/tools/kubernetes/GetResourceQuotaTool.d.ts +0 -8
- package/dist/tools/kubernetes/GetResourceQuotaTool.d.ts.map +0 -1
- package/dist/tools/kubernetes/GetResourceQuotaTool.js +0 -53
- package/dist/tools/kubernetes/GetResourceQuotaTool.js.map +0 -1
- package/dist/tools/kubernetes/GetResourceTool.d.ts +0 -29
- package/dist/tools/kubernetes/GetResourceTool.d.ts.map +0 -1
- package/dist/tools/kubernetes/GetResourceTool.js +0 -1053
- package/dist/tools/kubernetes/GetResourceTool.js.map +0 -1
- package/dist/tools/kubernetes/GetSecretsTool.d.ts +0 -11
- package/dist/tools/kubernetes/GetSecretsTool.d.ts.map +0 -1
- package/dist/tools/kubernetes/GetSecretsTool.js +0 -49
- package/dist/tools/kubernetes/GetSecretsTool.js.map +0 -1
- package/dist/tools/kubernetes/GetServicesTool.d.ts +0 -11
- package/dist/tools/kubernetes/GetServicesTool.d.ts.map +0 -1
- package/dist/tools/kubernetes/GetServicesTool.js +0 -35
- package/dist/tools/kubernetes/GetServicesTool.js.map +0 -1
- package/dist/tools/kubernetes/GetStatefulSetsTool.d.ts +0 -8
- package/dist/tools/kubernetes/GetStatefulSetsTool.d.ts.map +0 -1
- package/dist/tools/kubernetes/GetStatefulSetsTool.js +0 -53
- package/dist/tools/kubernetes/GetStatefulSetsTool.js.map +0 -1
- package/dist/tools/kubernetes/KubeListTool.d.ts +0 -54
- package/dist/tools/kubernetes/KubeListTool.d.ts.map +0 -1
- package/dist/tools/kubernetes/KubeListTool.js +0 -1370
- package/dist/tools/kubernetes/KubeListTool.js.map +0 -1
- package/dist/tools/kubernetes/KubeLogTool.d.ts +0 -18
- package/dist/tools/kubernetes/KubeLogTool.d.ts.map +0 -1
- package/dist/tools/kubernetes/KubeLogTool.js +0 -920
- package/dist/tools/kubernetes/KubeLogTool.js.map +0 -1
- package/dist/tools/kubernetes/KubeMetricsTool.d.ts +0 -11
- package/dist/tools/kubernetes/KubeMetricsTool.d.ts.map +0 -1
- package/dist/tools/kubernetes/KubeMetricsTool.js +0 -174
- package/dist/tools/kubernetes/KubeMetricsTool.js.map +0 -1
- package/dist/tools/kubernetes/KubeNetTool.d.ts +0 -27
- package/dist/tools/kubernetes/KubeNetTool.d.ts.map +0 -1
- package/dist/tools/kubernetes/KubeNetTool.js +0 -420
- package/dist/tools/kubernetes/KubeNetTool.js.map +0 -1
- package/dist/tools/kubernetes/PortForwardTool.d.ts +0 -14
- package/dist/tools/kubernetes/PortForwardTool.d.ts.map +0 -1
- package/dist/tools/kubernetes/PortForwardTool.js +0 -278
- package/dist/tools/kubernetes/PortForwardTool.js.map +0 -1
- package/dist/tools/kubernetes/index.d.ts +0 -11
- package/dist/tools/kubernetes/index.d.ts.map +0 -1
- package/dist/tools/kubernetes/index.js +0 -10
- package/dist/tools/kubernetes/index.js.map +0 -1
- package/dist/utils/CliUtils.d.ts +0 -24
- package/dist/utils/CliUtils.d.ts.map +0 -1
- package/dist/utils/CliUtils.js +0 -164
- package/dist/utils/CliUtils.js.map +0 -1
- package/dist/utils/CodeModeConfig.d.ts +0 -68
- package/dist/utils/CodeModeConfig.d.ts.map +0 -1
- package/dist/utils/CodeModeConfig.js +0 -42
- package/dist/utils/CodeModeConfig.js.map +0 -1
- package/dist/utils/SensitiveData.d.ts +0 -31
- package/dist/utils/SensitiveData.d.ts.map +0 -1
- package/dist/utils/SensitiveData.js +0 -136
- package/dist/utils/SensitiveData.js.map +0 -1
- package/dist/version.d.ts +0 -2
- package/dist/version.d.ts.map +0 -1
- package/dist/version.js +0 -4
- package/dist/version.js.map +0 -1
- package/kube-mcp.code-mode.example.json +0 -17
- package/kube-mcp.code-mode.json +0 -17
- package/src/agent/bridge/MCPBridge.ts +0 -176
- package/src/agent/codegen/CodegenManager.ts +0 -334
- package/src/agent/codegen/SchemaToTypeScriptMapper.ts +0 -98
- package/src/agent/codegen/ToolDescriptionBuilder.ts +0 -257
- package/src/agent/codegen/ToolSchemaIntrospector.ts +0 -95
- package/src/agent/codegen/types.ts +0 -38
- package/src/agent/config/CodeModeConfig.ts +0 -41
- package/src/agent/runtime/code-executor/CodeExecutor.ts +0 -127
- package/src/agent/runtime/code-executor/NodeVmCodeExecutor.ts +0 -117
- package/src/agent/runtime/createSandboxManager.ts +0 -40
- package/src/agent/runtime/ivm/IVMSandboxManager.ts +0 -226
- package/src/agent/runtime/types.ts +0 -13
- package/src/agent/runtime/vm/VmSandboxManager.ts +0 -201
- package/src/agent/security/PIITokenizer.ts +0 -65
- package/src/cli/cli.ts +0 -25
- package/src/cli/code-mode.ts +0 -266
- package/src/cli/run-command.js +0 -391
- package/src/index.ts +0 -146
- package/src/kubernetes/BaseResourceOperations.ts +0 -286
- package/src/kubernetes/CircuitBreaker.ts +0 -485
- package/src/kubernetes/ConnectionManager.ts +0 -114
- package/src/kubernetes/ConnectionPool.ts +0 -551
- package/src/kubernetes/ErrorHandler.ts +0 -436
- package/src/kubernetes/ErrorHandling.ts +0 -401
- package/src/kubernetes/KubernetesClient.ts +0 -653
- package/src/kubernetes/README.md +0 -349
- package/src/kubernetes/ResourceOperations.ts +0 -116
- package/src/kubernetes/RetryStrategy.ts +0 -372
- package/src/kubernetes/RetryableOperation.ts +0 -313
- package/src/kubernetes/docs/ResourceOperations.md +0 -606
- package/src/kubernetes/index.ts +0 -116
- package/src/kubernetes/resources/ConfigMapOperations.ts +0 -368
- package/src/kubernetes/resources/CustomResourceOperations.ts +0 -392
- package/src/kubernetes/resources/DeploymentOperations.ts +0 -294
- package/src/kubernetes/resources/IngressOperations.ts +0 -277
- package/src/kubernetes/resources/MetricOperations.ts +0 -1734
- package/src/kubernetes/resources/NamespaceOperations.ts +0 -129
- package/src/kubernetes/resources/PersistentVolumeClaimOperations.ts +0 -516
- package/src/kubernetes/resources/PersistentVolumeOperations.ts +0 -438
- package/src/kubernetes/resources/PodOperations.ts +0 -417
- package/src/kubernetes/resources/SecretOperations.ts +0 -314
- package/src/kubernetes/resources/ServiceOperations.ts +0 -283
- package/src/kubernetes/utils/ResourceUtils.ts +0 -553
- package/src/plugins/ArgoCDToolsPlugin.ts +0 -92
- package/src/plugins/ArgoToolsPlugin.ts +0 -97
- package/src/plugins/BaseToolsPlugin.ts +0 -148
- package/src/plugins/HelmToolsPlugin.ts +0 -96
- package/src/plugins/KubernetesToolsPlugin.ts +0 -228
- package/src/plugins/SamplePlugin.ts +0 -59
- package/src/plugins/index.ts +0 -4
- package/src/server/MCPServer.ts +0 -614
- package/src/tools/RunCodeTool.ts +0 -601
- package/src/tools/argo/ArgoCronListTool.ts +0 -78
- package/src/tools/argo/ArgoGetTool.ts +0 -91
- package/src/tools/argo/ArgoListTool.ts +0 -144
- package/src/tools/argo/ArgoLogsTool.ts +0 -131
- package/src/tools/argo/BaseTool.ts +0 -69
- package/src/tools/argo/index.ts +0 -5
- package/src/tools/argocd/ArgoCDAppGetTool.ts +0 -109
- package/src/tools/argocd/ArgoCDAppHistoryTool.ts +0 -91
- package/src/tools/argocd/ArgoCDAppListTool.ts +0 -144
- package/src/tools/argocd/ArgoCDAppLogsTool.ts +0 -162
- package/src/tools/argocd/ArgoCDAppResourcesTool.ts +0 -139
- package/src/tools/argocd/ArgoCDAppTool.ts +0 -171
- package/src/tools/argocd/BaseTool.ts +0 -83
- package/src/tools/argocd/index.ts +0 -3
- package/src/tools/helm/BaseTool.ts +0 -60
- package/src/tools/helm/HelmGetHooksTool.ts +0 -44
- package/src/tools/helm/HelmGetManifestTool.ts +0 -44
- package/src/tools/helm/HelmGetNotesTool.ts +0 -44
- package/src/tools/helm/HelmGetResourcesTool.ts +0 -140
- package/src/tools/helm/HelmGetTool.ts +0 -140
- package/src/tools/helm/HelmGetValuesTool.ts +0 -70
- package/src/tools/helm/HelmHistoryTool.ts +0 -56
- package/src/tools/helm/HelmListTool.ts +0 -107
- package/src/tools/helm/HelmListWithResourcesTool.ts +0 -194
- package/src/tools/helm/HelmStatusTool.ts +0 -62
- package/src/tools/helm/index.ts +0 -4
- package/src/tools/kubernetes/BaseTool.ts +0 -76
- package/src/tools/kubernetes/ExecTool.ts +0 -308
- package/src/tools/kubernetes/GetConfigMapTool.ts +0 -33
- package/src/tools/kubernetes/GetContainerLogsTool.ts +0 -155
- package/src/tools/kubernetes/GetCronJobsTool.ts +0 -47
- package/src/tools/kubernetes/GetDaemonSetsTool.ts +0 -55
- package/src/tools/kubernetes/GetDeploymentsTool.ts +0 -33
- package/src/tools/kubernetes/GetEndpointSlicesTool.ts +0 -57
- package/src/tools/kubernetes/GetEndpointsTool.ts +0 -53
- package/src/tools/kubernetes/GetEventsTool.ts +0 -133
- package/src/tools/kubernetes/GetHPATool.ts +0 -48
- package/src/tools/kubernetes/GetIngressTool.ts +0 -39
- package/src/tools/kubernetes/GetJobsTool.ts +0 -54
- package/src/tools/kubernetes/GetLimitRangesTool.ts +0 -40
- package/src/tools/kubernetes/GetMetricsTool.ts +0 -61
- package/src/tools/kubernetes/GetNamespacesTool.ts +0 -36
- package/src/tools/kubernetes/GetNodesTool.ts +0 -55
- package/src/tools/kubernetes/GetPDBTool.ts +0 -48
- package/src/tools/kubernetes/GetPersistentVolumeClaimsTool.ts +0 -113
- package/src/tools/kubernetes/GetPersistentVolumesTool.ts +0 -107
- package/src/tools/kubernetes/GetPodMetricsTool.ts +0 -113
- package/src/tools/kubernetes/GetPodsTool.ts +0 -39
- package/src/tools/kubernetes/GetReplicaSetsTool.ts +0 -51
- package/src/tools/kubernetes/GetResourceQuotaTool.ts +0 -55
- package/src/tools/kubernetes/GetResourceTool.ts +0 -1296
- package/src/tools/kubernetes/GetSecretsTool.ts +0 -55
- package/src/tools/kubernetes/GetServicesTool.ts +0 -39
- package/src/tools/kubernetes/GetStatefulSetsTool.ts +0 -55
- package/src/tools/kubernetes/KubeListTool.ts +0 -1684
- package/src/tools/kubernetes/KubeLogTool.ts +0 -1063
- package/src/tools/kubernetes/KubeMetricsTool.ts +0 -220
- package/src/tools/kubernetes/KubeNetTool.ts +0 -481
- package/src/tools/kubernetes/PortForwardTool.ts +0 -307
- package/src/tools/kubernetes/index.ts +0 -10
- package/src/utils/CliUtils.ts +0 -218
- package/src/utils/CodeModeConfig.ts +0 -48
- package/src/utils/SensitiveData.ts +0 -148
- package/tsconfig.json +0 -36
package/CHANGELOG.md
CHANGED
|
@@ -5,6 +5,25 @@ All notable changes to this project will be documented in this file.
|
|
|
5
5
|
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
|
|
6
6
|
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
|
7
7
|
|
|
8
|
+
## [Unreleased]
|
|
9
|
+
|
|
10
|
+
## [1.4.0] - 2025-11-29
|
|
11
|
+
|
|
12
|
+
### Added
|
|
13
|
+
- **RunCode Tool Exposure**: Exposed `run_code` tool by default in standard mode alongside other tools.
|
|
14
|
+
- **Code-Mode Prompt**: Added `code-mode` prompt for injecting the full TypeScript API documentation, tool overview, and examples into the context.
|
|
15
|
+
|
|
16
|
+
### Changed
|
|
17
|
+
- **Documentation**: Improved README.md to be more professional, valid, and concise.
|
|
18
|
+
- **Name Change**: Changed name from `kubeview-mcp` to `kubeview` to align with the new MCP server name.
|
|
19
|
+
- **Dependencies**: Updated deprecated dependencies.
|
|
20
|
+
|
|
21
|
+
### Fixed
|
|
22
|
+
- **Filter Logic**: `kube_list` now honors namespace/selector filters even when `resourceType` is omitted.
|
|
23
|
+
- **Runtime Errors**: Fixed `ERR_MODULE_NOT_FOUND` for `typescript` package.
|
|
24
|
+
- **Build Issues**: Resolved TypeScript compilation errors in `src/index.ts`.
|
|
25
|
+
- **Logging**: Fixed "Required parameter name was null or undefined" error in `kube_log` and `kube_logs` tools.
|
|
26
|
+
|
|
8
27
|
## [1.3.0] - 2025-11-27
|
|
9
28
|
|
|
10
29
|
### Added
|
|
@@ -14,9 +33,13 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|
|
14
33
|
- **TypeScript Transpilation**: Integrated TypeScript compiler for runtime transpilation of agent code (ES2022 target)
|
|
15
34
|
- **Global Type Definitions**: Added `/sys/global.d.ts` resource providing TypeScript type definitions for all available tools
|
|
16
35
|
- **Tool Executor**: Implemented tool executor allowing sandboxed code to call MCP tools internally
|
|
17
|
-
- **Helper Functions**: Added `
|
|
36
|
+
- **Helper Functions**: Added namespaced `tools.*` helpers for discovery (`tools.list()`, `tools.search()`, `tools.help()`, `tools.call()`) and execution
|
|
18
37
|
- **Code-Mode Configuration**: Added `CodeModeConfig` with configurable sandbox limits (memory, timeout) and workspace settings
|
|
19
|
-
- **
|
|
38
|
+
- **Mode Support**: Added `MCP_MODE` environment variable with three modes:
|
|
39
|
+
- `code`: exposes only `run_code` tool
|
|
40
|
+
- `tools`: exposes only Kubernetes/Helm/Argo tools (no `run_code`)
|
|
41
|
+
- `all`: exposes both tools and `run_code` (default)
|
|
42
|
+
- Replaced `NODE_MODE=code` with `MCP_MODE=code|tools|all`
|
|
20
43
|
|
|
21
44
|
### Changed
|
|
22
45
|
- **Plugin Architecture**: Removed version property from various tools plugins and MCPServer for simplified plugin management
|
package/README.md
CHANGED
|
@@ -4,300 +4,148 @@
|
|
|
4
4
|
[](https://nodejs.org/)
|
|
5
5
|
[](https://www.typescriptlang.org/)
|
|
6
6
|
|
|
7
|
-
KubeView
|
|
7
|
+
**KubeView** is a read-only Model Context Protocol (MCP) server that enables AI agents (like Cursor, Claude Desktop) to inspect, diagnose, and debug Kubernetes clusters safely. It provides a comprehensive set of tools for Kubernetes, Helm, Argo Workflows, and Argo CD.
|
|
8
8
|
|
|
9
9
|
---
|
|
10
10
|
|
|
11
11
|
## ✨ Features
|
|
12
12
|
|
|
13
|
-
-
|
|
14
|
-
-
|
|
15
|
-
-
|
|
16
|
-
-
|
|
17
|
-
-
|
|
18
|
-
- **Sensitive data masking**: global redaction for secrets/tokens in ConfigMaps, Secrets, and Helm values
|
|
19
|
-
- **Zero write access**: designed to be safe in production from day one
|
|
13
|
+
- **🛡️ Read-Only & Safe**: Designed for production safety with zero write access and sensitive data masking.
|
|
14
|
+
- **☸️ Kubernetes Integration**: List/get resources, fetch metrics, stream logs, execute commands, and diagnose network issues.
|
|
15
|
+
- **📦 Helm Support**: Inspect releases, values, manifests, and history.
|
|
16
|
+
- **🐙 Argo Ecosystem**: Manage Argo Workflows and Argo CD applications.
|
|
17
|
+
- **🧠 Code Mode**: Sandboxed TypeScript environment for complex reasoning and multi-step workflows.
|
|
20
18
|
|
|
21
19
|
---
|
|
22
20
|
|
|
23
21
|
## 🚀 Quick Start
|
|
24
22
|
|
|
25
|
-
|
|
23
|
+
### Prerequisites
|
|
26
24
|
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
}
|
|
38
|
-
}
|
|
25
|
+
- Node.js ≥ 18
|
|
26
|
+
- Access to a Kubernetes cluster
|
|
27
|
+
- Optional CLIs on current $PATH if you want to use those plugins: `helm`, `argo`, `argocd`
|
|
28
|
+
|
|
29
|
+
### Installation
|
|
30
|
+
|
|
31
|
+
Run directly with `npx`:
|
|
32
|
+
|
|
33
|
+
```bash
|
|
34
|
+
npx -y kubeview-mcp
|
|
39
35
|
```
|
|
40
36
|
|
|
41
|
-
|
|
37
|
+
### Configuration for MCP Clients
|
|
38
|
+
|
|
39
|
+
Add to your `mcpServers` configuration (e.g., in Cursor or Claude Desktop):
|
|
42
40
|
|
|
43
41
|
```json
|
|
44
42
|
{
|
|
45
43
|
"mcpServers": {
|
|
46
|
-
"kubeview
|
|
44
|
+
"kubeview": {
|
|
47
45
|
"command": "npx",
|
|
48
|
-
"args": ["-y", "
|
|
49
|
-
"env": {
|
|
50
|
-
"KUBECONFIG": "$HOME/.kube/config",
|
|
51
|
-
"NODE_MODE": "code"
|
|
52
|
-
}
|
|
46
|
+
"args": ["-y", "kubeview-mcp"]
|
|
53
47
|
}
|
|
54
48
|
}
|
|
55
49
|
}
|
|
56
50
|
```
|
|
57
51
|
|
|
58
|
-
###
|
|
59
|
-
|
|
60
|
-
- Node.js ≥ 18
|
|
61
|
-
- Access to a Kubernetes cluster (kubeconfig)
|
|
62
|
-
- Optional CLIs on PATH if you want to use those plugins: `helm`, `argo`, `argocd`
|
|
52
|
+
### Environment Variables
|
|
63
53
|
|
|
64
|
-
|
|
54
|
+
Configure the server using environment variables:
|
|
65
55
|
|
|
66
|
-
|
|
56
|
+
| Variable | Description | Default |
|
|
57
|
+
|----------|-------------|---------|
|
|
58
|
+
| `KUBECONFIG` | Path to kubeconfig file | `~/.kube/config` |
|
|
59
|
+
| `MCP_MODE` | Server mode: `all`, `code`, or `tools` | `all` |
|
|
60
|
+
| `MCP_LOG_LEVEL` | Log level (`error`, `warn`, `info`, `debug`) | `info` |
|
|
61
|
+
| `MCP_HIDE_SENSITIVE` | Enable global sensitive data masking | `false` |
|
|
67
62
|
|
|
68
|
-
|
|
69
|
-
npx -y https://github.com/mikhae1/kubeview-mcp
|
|
70
|
-
```
|
|
63
|
+
---
|
|
71
64
|
|
|
72
|
-
|
|
65
|
+
## 🛠️ Tools Overview
|
|
73
66
|
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
67
|
+
### Kubernetes
|
|
68
|
+
- **`kube_list`**: List resources or get cluster diagnostics.
|
|
69
|
+
- **`kube_get`**: Describe specific resources (supports all K8s types).
|
|
70
|
+
- **`kube_metrics`**: Fetch CPU/memory metrics for nodes and pods.
|
|
71
|
+
- **`kube_logs`**: Fetch or stream container logs.
|
|
72
|
+
- **`kube_exec`**: Execute commands in containers (read-only recommended).
|
|
73
|
+
- **`kube_port`**: Port-forward to pods/services.
|
|
74
|
+
- **`kube_net`**: Run in-cluster network diagnostics.
|
|
78
75
|
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
76
|
+
### Helm
|
|
77
|
+
- **`helm_list`**: List Helm releases.
|
|
78
|
+
- **`helm_get`**: Fetch release values, manifests, and history.
|
|
82
79
|
|
|
83
|
-
###
|
|
80
|
+
### Argo
|
|
81
|
+
- **`argo_list` / `argo_get`**: Manage Argo Workflows.
|
|
82
|
+
- **`argocd_app`**: Inspect Argo CD applications and resources.
|
|
84
83
|
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
npm run build
|
|
88
|
-
npm start
|
|
84
|
+
### Utilities
|
|
85
|
+
- **`run_code`**: Execute sandboxed TypeScript code for complex tasks.
|
|
89
86
|
|
|
90
|
-
|
|
91
|
-
kubeview-mcp serve
|
|
87
|
+
> **Note**: For detailed parameter usage, the AI agent can query the tool definitions directly.
|
|
92
88
|
|
|
93
|
-
|
|
94
|
-
npm run code-mode
|
|
95
|
-
```
|
|
89
|
+
---
|
|
96
90
|
|
|
97
|
-
## 🧠 Code
|
|
91
|
+
## 🧠 Code Mode
|
|
98
92
|
|
|
99
|
-
Inspired by [Code execution with MCP](https://www.anthropic.com/engineering/code-execution-with-mcp), KubeView
|
|
93
|
+
Inspired by [Code execution with MCP](https://www.anthropic.com/engineering/code-execution-with-mcp), KubeView ships with a code-mode runtime that allows agents to explore the API, search tools, and execute complex workflows in a sandboxed environment.
|
|
100
94
|
|
|
101
95
|
### What it provides
|
|
102
96
|
|
|
103
|
-
- **MCP
|
|
104
|
-
- **
|
|
105
|
-
- **Tool
|
|
106
|
-
- **Sandboxed
|
|
107
|
-
- **Stateful workspace & skills** – the sandbox exposes a safe filesystem rooted at `./workspace`, including a `skills/` folder with a `SKILL.md` convention for reusable snippets.
|
|
108
|
-
|
|
109
|
-
### How to use
|
|
97
|
+
- **MCP Bridge Layer**: Seamlessly connects to all registered MCP server tools.
|
|
98
|
+
- **Dynamic TypeScript Definitions**: Automatically converts tool schemas into a strongly-typed `global.d.ts` resource, enabling agents to use valid TypeScript patterns and enjoy type safety without hallucinating parameters.
|
|
99
|
+
- **Tool Search Utilities**: Runtime helpers like `tools.search()` and `tools.list()` allow agents to progressively discover capabilities without needing to load the entire schema context upfront.
|
|
100
|
+
- **Sandboxed Execution**: A locked-down Node.js environment (via `vm`) with controlled access to the `console` and the `tools` global object, ensuring safe execution of agent-generated code.
|
|
110
101
|
|
|
111
|
-
|
|
102
|
+
### Usage
|
|
112
103
|
|
|
113
|
-
|
|
104
|
+
For complex tasks requiring logic, loops, or data processing, use **Code Mode**:
|
|
114
105
|
|
|
115
|
-
```
|
|
116
|
-
|
|
106
|
+
```json
|
|
107
|
+
"env": { "MCP_MODE": "code" }
|
|
117
108
|
```
|
|
118
109
|
|
|
119
|
-
|
|
110
|
+
### 💡 Pro Tip: Code Mode Prompt
|
|
120
111
|
|
|
121
|
-
|
|
122
|
-
{
|
|
123
|
-
code: string; // required – snippet you plan to execute in the sandbox
|
|
124
|
-
input?: string; // optional stdin payload
|
|
125
|
-
}
|
|
126
|
-
```
|
|
112
|
+
The server includes a built-in prompt named **`code-mode`** that injects the full TypeScript API documentation, tool overview, and examples into the context.
|
|
127
113
|
|
|
128
|
-
|
|
114
|
+
**In Cursor IDE**:
|
|
115
|
+
Simply type `/kubeview/code-mode` in the prompt (or select it from the `/` prompt menu). This gives the AI the exact context it needs to write correct `run_code` scripts immediately.
|
|
129
116
|
|
|
130
|
-
|
|
117
|
+
---
|
|
118
|
+
|
|
119
|
+
## 💻 Local Development
|
|
131
120
|
|
|
132
|
-
1.
|
|
121
|
+
1. **Clone & Install**:
|
|
133
122
|
```bash
|
|
134
|
-
|
|
123
|
+
git clone https://github.com/mikhae1/kubeview-mcp.git
|
|
124
|
+
cd kubeview-mcp
|
|
125
|
+
npm install
|
|
135
126
|
```
|
|
136
|
-
|
|
127
|
+
|
|
128
|
+
2. **Build & Run**:
|
|
137
129
|
```bash
|
|
138
130
|
npm run build
|
|
131
|
+
npm start
|
|
139
132
|
```
|
|
140
|
-
3. Edit `workspace/main.ts` (auto-created on first run) to import generated helpers:
|
|
141
133
|
|
|
142
|
-
|
|
134
|
+
3. **Test**:
|
|
143
135
|
```bash
|
|
144
|
-
npm
|
|
145
|
-
# or
|
|
146
|
-
kubeview-mcp-code-mode
|
|
136
|
+
npm test
|
|
147
137
|
```
|
|
148
138
|
|
|
149
|
-
|
|
139
|
+
### CLI Usage
|
|
150
140
|
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
## 📟 Tool Index (CLI)
|
|
154
|
-
|
|
155
|
-
Invoke tools with the helper:
|
|
141
|
+
You can test tools directly via the CLI:
|
|
156
142
|
|
|
157
143
|
```bash
|
|
158
|
-
npm run command --
|
|
159
|
-
```
|
|
160
|
-
|
|
161
|
-
### Kubernetes
|
|
162
|
-
|
|
163
|
-
- **kube_list**: List resources or, when no `resourceType` is provided, return a cluster diagnostics overview
|
|
164
|
-
- Params: `resourceType`, `namespace`, `labelSelector`, `fieldSelector`
|
|
165
|
-
- Supported `resourceType` for listing: `pod`, `service`, `deployment`, `node`, `namespace`, `persistentvolume`, `persistentvolumeclaim`, `secret`, `configmap`, `role`, `clusterrole`, `rolebinding`, `clusterrolebinding`
|
|
166
|
-
- **kube_get**: Describe a single resource or list a type using plural, kind, shortname, or fully-qualified `group/version/resource`
|
|
167
|
-
- Params: `resourceType` (required), `name`, `namespace`, `includeEvents`, `includeDiagnostics`, `eventsLimit`, `restartThreshold`, `skipSanitize` (for ConfigMaps)
|
|
168
|
-
- **kube_metrics**: Node and pod CPU/memory metrics, optional Prometheus enrichment and diagnostics
|
|
169
|
-
- Params: `scope` (`all|nodes|pods`), `namespace`, `podName`, `includeSummary`, `diagnostics`, `prometheusQueries[]`, `fetchPodSpecs`, thresholds (`topN`, `cpuSaturationThreshold`, `memorySaturationThreshold`, `podRestartThreshold`, `podLimitPressureThreshold`)
|
|
170
|
-
- **kube_logs**: Pod/container logs (like `kubectl logs`)
|
|
171
|
-
- Params: `podName` (required), `namespace`, `container`, `tailLines`, `since`, `previous`, `timestamps`
|
|
172
|
-
- **kube_log**: Multi-pod & multi-container log tail with dynamic discovery and merged Events
|
|
173
|
-
- Selectors: `namespace`, `labelSelector`, `ownerKind` (`Deployment|DaemonSet|Job`), `ownerName`
|
|
174
|
-
- Filters: `podRegex`, `containerRegex`, `messageRegex`, `excludeRegex`, `jsonPaths` (e.g., `[{"path":"level","equals":"error"}]`)
|
|
175
|
-
- Time/tail: `tailLines`, `since` (e.g., `15m`), `sinceTime` (RFC3339), `timestamps`, `previous`
|
|
176
|
-
- Session bounds: `durationSeconds` (default 30), `maxLines`
|
|
177
|
-
- Events: `includeEvents` (default true), `eventType` (`Normal|Warning|All`)
|
|
178
|
-
- Output: `structure` (`object|text`). In object mode each line has `type: 'log'|'event'`. In text mode events are prefixed with `[event]`.
|
|
179
|
-
- **kube_exec**: Execute a command in a container via Kubernetes API only; returns stdout/stderr
|
|
180
|
-
- Params: `podName` (required), `namespace`, `container`, `args[]` | `argv` | `command`, `stdin`, `tty`, `timeoutSeconds`, `shell`
|
|
181
|
-
- **kube_port**: Temporary port-forward to a pod or service (auto-terminates)
|
|
182
|
-
- Params: `namespace`, `podName` | `serviceName`, `remotePort` (required), `localPort`, `address`, `timeoutSeconds`, `readinessTimeoutSeconds`
|
|
183
|
-
- **kube_net**: In-pod network diagnostics (DNS resolution, internet egress, pod/service connectivity)
|
|
184
|
-
- Params: `sourcePod` (required), `namespace`, `container`, `targetPod`, `targetPodNamespace`, `targetService`, `targetServiceNamespace`, `targetPort`, `externalHost`, `externalPort`, `dnsNames[]`, toggles: `runDnsTest`, `runInternetTest`, `runPodConnectivityTest`, `runServiceConnectivityTest`, `timeoutSeconds`
|
|
185
|
-
|
|
186
|
-
### Helm
|
|
187
|
-
|
|
188
|
-
- **helm_list**: List Helm releases
|
|
189
|
-
- Params: `namespace`, `allNamespaces`, `outputFormat`, `selector`, `maxReleases`, `deployed`, `failed`, `pending`, `superseded`, `uninstalled`, `uninstalling`
|
|
190
|
-
- **helm_get**: Get release data
|
|
191
|
-
- Params: `what` (`values|manifest|notes|hooks|resources|status|history`), `releaseName` (required), `namespace`, `revision`, `outputFormat`, `allValues`, `resourceType`, `showResources`
|
|
192
|
-
|
|
193
|
-
### Argo Workflows
|
|
194
|
-
|
|
195
|
-
- **argo_list**: List workflows with rich filters
|
|
196
|
-
- Params: `namespace`, `allNamespaces`, `outputFormat`, `selector`, status flags (`running|succeeded|failed|pending|completed|status`), `since`, `chunked`, `maxWorkflows`
|
|
197
|
-
- **argo_get**: Get workflow details
|
|
198
|
-
- Params: `workflowName` (required), `namespace`, `outputFormat`, `showParameters`, `showArtifacts`, `showEvents`, `nodeFieldSelector`
|
|
199
|
-
- **argo_logs**: Get workflow logs
|
|
200
|
-
- Params: `workflowName` (required), `namespace`, `container`, `follow`, `previous`, `since`, `sinceTime`, `tail`, `timestamps`, `grep`, `noColor`
|
|
201
|
-
|
|
202
|
-
### Argo CD
|
|
203
|
-
|
|
204
|
-
- **argocd_app**: Multi-operation tool for Argo CD apps
|
|
205
|
-
- Params: `operation` (`list|get|resources|logs|history|status`) plus operation-specific flags (`appName`, `outputFormat`, `selector`, `project`, `cluster`, `namespace`, `repo`, `health`, `sync`, `server`, `grpcWeb`, `plaintext`, `insecure`, `refresh`, `hardRefresh`, `group`, `kind`, `name`, `container`, `follow`, `previous`, `since`, `sinceTime`, `tail`, `timestamps`)
|
|
206
|
-
|
|
207
|
-
---
|
|
208
|
-
|
|
209
|
-
## ⚙️ Configuration
|
|
210
|
-
|
|
211
|
-
Provide env vars via your MCP client config or shell.
|
|
212
|
-
|
|
213
|
-
- **KUBECONFIG**: Path to kubeconfig (default: `$HOME/.kube/config`)
|
|
214
|
-
- **MCP_LOG_LEVEL**: `error|warn|info|debug`
|
|
215
|
-
- **MCP_LOG_ENABLE**: `true|1` to enable server file logging (default: disabled)
|
|
216
|
-
- **MCP_LOG_FILE**: Path to server log file (default when enabled: `kubeview-mcp.log`)
|
|
217
|
-
- **MCP_TIMEOUT**: Global per-tool timeout in ms (applies to all tools)
|
|
218
|
-
- CLI timeouts: **MCP_HELM_TIMEOUT**, **MCP_ARGO_TIMEOUT**, **MCP_ARGOCD_TIMEOUT** (ms)
|
|
219
|
-
- CLI executable overrides: **MCP_HELM_PATH**, **MCP_ARGO_PATH**, **MCP_ARGOCD_PATH**
|
|
220
|
-
- Plugin toggles: **MCP_DISABLE_KUBERNETES_PLUGIN**, **MCP_DISABLE_HELM_PLUGIN**, **MCP_DISABLE_ARGO_PLUGIN**, **MCP_DISABLE_ARGOCD_PLUGIN** (`true|1` to disable)
|
|
221
|
-
- Kubernetes options: **MCP_KUBE_CONTEXT**, **MCP_K8S_SKIP_TLS_VERIFY** (`true|1`)
|
|
222
|
-
|
|
223
|
-
Example (Cursor `mcp.json`):
|
|
224
|
-
|
|
225
|
-
```json
|
|
226
|
-
{
|
|
227
|
-
"mcpServers": {
|
|
228
|
-
"kubeview-mcp": {
|
|
229
|
-
"command": "npx",
|
|
230
|
-
"args": ["-y", "https://github.com/mikhae1/kubeview-mcp"],
|
|
231
|
-
"env": {
|
|
232
|
-
"KUBECONFIG": "$HOME/.kube/config",
|
|
233
|
-
"MCP_LOG_LEVEL": "info",
|
|
234
|
-
"MCP_HELM_TIMEOUT": "45000",
|
|
235
|
-
"MCP_DISABLE_ARGO_PLUGIN": "1"
|
|
236
|
-
}
|
|
237
|
-
}
|
|
238
|
-
}
|
|
239
|
-
}
|
|
240
|
-
```
|
|
241
|
-
|
|
242
|
-
---
|
|
243
|
-
|
|
244
|
-
## 🔒 Sensitive Data Masking
|
|
245
|
-
|
|
246
|
-
Global masking prevents accidental disclosure of secrets (enabled when any of the flags below are set):
|
|
247
|
-
|
|
248
|
-
- Enable: `MCP_HIDE_SENSITIVE` or `MCP_HIDE_SENSITIVE_DATA` or `MCP_MASK_SENSITIVE_DATA` → `true|1|yes|on`
|
|
249
|
-
- Mask text override: `MCP_SENSITIVE_MASK` (default: `*** FILTERED ***`)
|
|
250
|
-
|
|
251
|
-
Effects:
|
|
252
|
-
|
|
253
|
-
- ConfigMaps: values redacted by key/value heuristics; forcing `skipSanitize=true` on `kube_get` will still be overridden by global masking
|
|
254
|
-
- Secrets: list/describe returns only key names; values are masked
|
|
255
|
-
- Helm: `helm_get` with `what=values` applies masking on returned text
|
|
256
|
-
|
|
257
|
-
---
|
|
258
|
-
|
|
259
|
-
## 💡 Examples
|
|
260
|
-
|
|
261
|
-
```bash
|
|
262
|
-
# Cluster diagnostics overview (no resourceType)
|
|
263
|
-
npm run command -- kube_list
|
|
264
|
-
|
|
265
|
-
# Pods in a namespace
|
|
266
|
-
npm run command -- kube_list --resourceType=pod --namespace=default
|
|
267
|
-
|
|
268
|
-
# Describe a deployment with events and diagnostics
|
|
269
|
-
npm run command -- kube_get --resourceType=deployment --name=web --namespace=prod
|
|
270
|
-
|
|
271
|
-
# Metrics summary with diagnostics
|
|
272
|
-
npm run command -- kube_metrics --includeSummary=true --diagnostics=true
|
|
273
|
-
|
|
274
|
-
# Logs from a pod (last 200 lines)
|
|
275
|
-
npm run command -- kube_logs --podName=nginx-123 --namespace=default --tailLines=200
|
|
276
|
-
|
|
277
|
-
# Stream logs across pods by owner with events (10 minutes back)
|
|
278
|
-
npm run command -- kube_log --namespace=prod --ownerKind=Deployment --ownerName=api --since=10m --includeEvents=true --durationSeconds=20
|
|
279
|
-
|
|
280
|
-
# Filter by labels and container name, text output
|
|
281
|
-
npm run command -- kube_log --namespace=default --labelSelector='app=db,tier=api' --containerRegex='^(main|sidecar)$' --structure=text --durationSeconds=15
|
|
282
|
-
|
|
283
|
-
# Only errors from JSON logs
|
|
284
|
-
npm run command -- kube_log --namespace=prod --labelSelector='app=my-api' --jsonPaths='[{"path":"level","equals":"error"}]' --messageRegex='timeout|exception' --since=30m --durationSeconds=20
|
|
285
|
-
|
|
286
|
-
# Only events (text mode)
|
|
287
|
-
npm run command -- kube_log --namespace=default --includeEvents=true --structure=text --messageRegex='^\\[event\\]' --durationSeconds=10
|
|
288
|
-
|
|
289
|
-
# Port-forward service 80 -> local 8080 for 90s
|
|
290
|
-
npm run command -- kube_port --serviceName=my-svc --namespace=default --remotePort=80 --localPort=8080 --timeoutSeconds=90
|
|
291
|
-
|
|
292
|
-
# Network diagnostics from a pod
|
|
293
|
-
npm run command -- kube_net --sourcePod=api-0 --namespace=prod --targetService=db --runServiceConnectivityTest=true
|
|
294
|
-
|
|
295
|
-
# Helm release values (masked)
|
|
296
|
-
npm run command -- helm_get --what=values --releaseName=my-release --namespace=default --allValues=true
|
|
144
|
+
npm run command -- kube_list --namespace=default
|
|
297
145
|
```
|
|
298
146
|
|
|
299
147
|
---
|
|
300
148
|
|
|
301
149
|
## 📄 License
|
|
302
150
|
|
|
303
|
-
MIT
|
|
151
|
+
MIT © [kubeview-mcp team](https://github.com/mikhae1/kubeview-mcp)
|
package/TODO.md
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
- kube_logs (multiple log streams + events, selectors support)
|
|
2
|
-
-
|
|
2
|
+
- add support for k8s context selector
|
package/bin/kubeview-mcp.js
CHANGED
|
@@ -154,7 +154,10 @@ class KubeMCPCLI {
|
|
|
154
154
|
|
|
155
155
|
try {
|
|
156
156
|
// Determine the correct index path after build
|
|
157
|
-
|
|
157
|
+
// Prefer the nested path because the TypeScript build outputs to dist/src by default.
|
|
158
|
+
// Older builds may leave a flat dist/index.js behind, which can point to stale artifacts
|
|
159
|
+
// (e.g., missing version.cjs). Prioritizing the nested path avoids those mismatches.
|
|
160
|
+
const finalIndexPath = fs.existsSync(indexPathNested) ? indexPathNested : indexPathFlat;
|
|
158
161
|
|
|
159
162
|
// Debug: Check if the file actually exists
|
|
160
163
|
if (!fs.existsSync(finalIndexPath)) {
|
package/bin/setup.js
CHANGED
|
@@ -343,11 +343,12 @@ class SetupManager {
|
|
|
343
343
|
console.log('Add the following to your mcp.json (e.g. ~/.cursor/mcp.json):\n');
|
|
344
344
|
console.log(`{
|
|
345
345
|
"mcpServers": {
|
|
346
|
-
"kubeview
|
|
346
|
+
"kubeview": {
|
|
347
347
|
"command": "npx",
|
|
348
|
-
"args": ["
|
|
348
|
+
"args": ["-y", "kubeview-mcp"],
|
|
349
349
|
"env": {
|
|
350
|
-
"KUBECONFIG": "$HOME/.kube/config"
|
|
350
|
+
"KUBECONFIG": "$HOME/.kube/config",
|
|
351
|
+
"MCP_MODE": "all"
|
|
351
352
|
}
|
|
352
353
|
}
|
|
353
354
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ToolDescriptionBuilder.d.ts","sourceRoot":"","sources":["../../../../src/agent/codegen/ToolDescriptionBuilder.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"ToolDescriptionBuilder.d.ts","sourceRoot":"","sources":["../../../../src/agent/codegen/ToolDescriptionBuilder.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,iBAAiB,EAKlB,MAAM,YAAY,CAAC;AAEpB,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,gBAAgB,EAAE,MAAM,CAAC;IACzB,gBAAgB,EAAE,MAAM,CAAC;CAC1B;AAED,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,OAAO,CAAC;IAClB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;CACvB;AAED,MAAM,WAAW,OAAO;IACtB,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,YAAY,EAAE,CAAC;IAC3B,QAAQ,EAAE,OAAO,EAAE,CAAC;CACrB;AAED;;;;;GAKG;AACH,qBAAa,sBAAsB;IACjC,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAAS;gBAEhC,OAAO,CAAC,EAAE;QAAE,kBAAkB,CAAC,EAAE,MAAM,CAAA;KAAE;IAIrD;;OAEG;IACH,iBAAiB,CAAC,KAAK,EAAE,iBAAiB,EAAE,GAAG,MAAM;IAsBrD;;OAEG;IACH,eAAe,CAAC,KAAK,EAAE,iBAAiB,EAAE,GAAG,aAAa,EAAE;IAI5D;;OAEG;IACH,qBAAqB,CAAC,KAAK,EAAE,iBAAiB,EAAE,EAAE,MAAM,SAAO,GAAG,MAAM;IAKxE;;OAEG;IACH,iBAAiB,CAAC,IAAI,EAAE,iBAAiB,GAAG,gBAAgB;IAW5D;;OAEG;IACH,gBAAgB,CAAC,KAAK,EAAE,iBAAiB,EAAE,GAAG,gBAAgB,EAAE;IAIhE,OAAO,CAAC,kBAAkB;IA0B1B,OAAO,CAAC,iBAAiB;IAczB,OAAO,CAAC,WAAW;IAUnB,OAAO,CAAC,kBAAkB;IA0B1B,OAAO,CAAC,gBAAgB;IAwDxB,OAAO,CAAC,aAAa;IASrB,OAAO,CAAC,QAAQ;CAIjB"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { formatToolAccessor } from '../../utils/toolNamespaces.js';
|
|
1
2
|
/**
|
|
2
3
|
* Generates tool descriptions with progressive disclosure for LLM agents.
|
|
3
4
|
* Layer 1: Overview tree - compact tool listing
|
|
@@ -16,16 +17,20 @@ export class ToolDescriptionBuilder {
|
|
|
16
17
|
const grouped = this.groupByServer(tools);
|
|
17
18
|
const lines = [];
|
|
18
19
|
for (const [server, serverTools] of grouped) {
|
|
19
|
-
|
|
20
|
+
// Skip server header for "local" server
|
|
21
|
+
if (server !== 'local') {
|
|
22
|
+
lines.push(`/${server}/`);
|
|
23
|
+
}
|
|
20
24
|
for (let i = 0; i < serverTools.length; i++) {
|
|
21
25
|
const tool = serverTools[i];
|
|
22
26
|
const prefix = i === serverTools.length - 1 ? '└── ' : '├── ';
|
|
23
|
-
const
|
|
27
|
+
const accessor = formatToolAccessor(tool.toolName);
|
|
24
28
|
const shortDesc = this.truncate(tool.description, 50);
|
|
25
|
-
|
|
29
|
+
const indent = server === 'local' ? '' : ' ';
|
|
30
|
+
lines.push(`${indent}${prefix}${accessor}()${shortDesc ? ' - ' + shortDesc : ''}`);
|
|
26
31
|
}
|
|
27
32
|
}
|
|
28
|
-
return lines.join('\n');
|
|
33
|
+
return lines.length > 0 ? lines.join('\n') : '';
|
|
29
34
|
}
|
|
30
35
|
/**
|
|
31
36
|
* Layer 2: Generate compact signatures for specified tools
|
|
@@ -47,7 +52,7 @@ export class ToolDescriptionBuilder {
|
|
|
47
52
|
const params = this.extractParameters(tool.inputSchema);
|
|
48
53
|
return {
|
|
49
54
|
name: tool.toolName,
|
|
50
|
-
camelName:
|
|
55
|
+
camelName: formatToolAccessor(tool.toolName),
|
|
51
56
|
description: tool.description ?? '',
|
|
52
57
|
parameters: params,
|
|
53
58
|
examples: this.generateExamples(tool),
|
|
@@ -68,11 +73,11 @@ export class ToolDescriptionBuilder {
|
|
|
68
73
|
if (hiddenCount > 0) {
|
|
69
74
|
paramStr += `, ...`; // indicate more params
|
|
70
75
|
}
|
|
71
|
-
const
|
|
72
|
-
const signature = params.length > 0 ? `${
|
|
76
|
+
const accessor = formatToolAccessor(tool.toolName);
|
|
77
|
+
const signature = params.length > 0 ? `${accessor}({ ${paramStr} })` : `${accessor}()`;
|
|
73
78
|
return {
|
|
74
79
|
name: tool.toolName,
|
|
75
|
-
camelName:
|
|
80
|
+
camelName: accessor,
|
|
76
81
|
signature: hiddenCount > 0 ? `${signature} // +${hiddenCount} params` : signature,
|
|
77
82
|
shortDescription: this.truncate(tool.description, 60),
|
|
78
83
|
hiddenParamCount: hiddenCount,
|
|
@@ -126,22 +131,22 @@ export class ToolDescriptionBuilder {
|
|
|
126
131
|
}
|
|
127
132
|
generateExamples(tool) {
|
|
128
133
|
const examples = [];
|
|
129
|
-
const
|
|
134
|
+
const accessor = formatToolAccessor(tool.toolName);
|
|
130
135
|
const params = this.extractParameters(tool.inputSchema);
|
|
131
136
|
const paramNames = new Set(params.map((p) => p.name));
|
|
132
137
|
// Generate contextual examples based on tool patterns
|
|
133
138
|
if (tool.toolName.includes('list')) {
|
|
134
|
-
examples.push({ description: 'List all', code: `await ${
|
|
139
|
+
examples.push({ description: 'List all', code: `await ${accessor}({})` });
|
|
135
140
|
if (paramNames.has('namespace')) {
|
|
136
141
|
examples.push({
|
|
137
142
|
description: 'Filter by namespace',
|
|
138
|
-
code: `await ${
|
|
143
|
+
code: `await ${accessor}({ namespace: 'default' })`,
|
|
139
144
|
});
|
|
140
145
|
}
|
|
141
146
|
if (paramNames.has('allNamespaces')) {
|
|
142
147
|
examples.push({
|
|
143
148
|
description: 'All namespaces',
|
|
144
|
-
code: `await ${
|
|
149
|
+
code: `await ${accessor}({ allNamespaces: true })`,
|
|
145
150
|
});
|
|
146
151
|
}
|
|
147
152
|
}
|
|
@@ -153,30 +158,30 @@ export class ToolDescriptionBuilder {
|
|
|
153
158
|
: 'kind';
|
|
154
159
|
examples.push({
|
|
155
160
|
description: 'Get resource',
|
|
156
|
-
code: `await ${
|
|
161
|
+
code: `await ${accessor}({ ${nameParam}: 'my-resource' })`,
|
|
157
162
|
});
|
|
158
163
|
}
|
|
159
164
|
else if (tool.toolName.includes('log')) {
|
|
160
165
|
examples.push({
|
|
161
166
|
description: 'Tail logs',
|
|
162
|
-
code: `await ${
|
|
167
|
+
code: `await ${accessor}({ podName: 'my-pod', tailLines: 100 })`,
|
|
163
168
|
});
|
|
164
169
|
}
|
|
165
170
|
else if (tool.toolName.includes('exec')) {
|
|
166
171
|
examples.push({
|
|
167
172
|
description: 'Execute command',
|
|
168
|
-
code: `await ${
|
|
173
|
+
code: `await ${accessor}({ podName: 'my-pod', namespace: 'default', command: ['ls', '-la'] })`,
|
|
169
174
|
});
|
|
170
175
|
}
|
|
171
176
|
else if (tool.toolName.includes('metrics')) {
|
|
172
177
|
examples.push({
|
|
173
178
|
description: 'Get metrics',
|
|
174
|
-
code: `await ${
|
|
179
|
+
code: `await ${accessor}({})`,
|
|
175
180
|
});
|
|
176
181
|
}
|
|
177
182
|
// Fallback
|
|
178
183
|
if (examples.length === 0) {
|
|
179
|
-
examples.push({ description: 'Basic usage', code: `await ${
|
|
184
|
+
examples.push({ description: 'Basic usage', code: `await ${accessor}({})` });
|
|
180
185
|
}
|
|
181
186
|
return examples;
|
|
182
187
|
}
|
|
@@ -194,8 +199,5 @@ export class ToolDescriptionBuilder {
|
|
|
194
199
|
return '';
|
|
195
200
|
return text.length > maxLen ? text.slice(0, maxLen - 3) + '...' : text;
|
|
196
201
|
}
|
|
197
|
-
toCamelCase(name) {
|
|
198
|
-
return name.replace(/_([a-z])/g, (_, c) => c.toUpperCase());
|
|
199
|
-
}
|
|
200
202
|
}
|
|
201
203
|
//# sourceMappingURL=ToolDescriptionBuilder.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ToolDescriptionBuilder.js","sourceRoot":"","sources":["../../../../src/agent/codegen/ToolDescriptionBuilder.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"ToolDescriptionBuilder.js","sourceRoot":"","sources":["../../../../src/agent/codegen/ToolDescriptionBuilder.ts"],"names":[],"mappings":"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"}
|