mcp-server-kubernetes 1.6.2 → 2.1.0
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/README.md +46 -22
- package/dist/config/container-templates.d.ts +2 -2
- package/dist/index.d.ts +314 -736
- package/dist/index.js +93 -200
- package/dist/models/resource-models.d.ts +6 -6
- package/dist/tools/kubectl-apply.d.ts +46 -0
- package/dist/tools/kubectl-apply.js +110 -0
- package/dist/tools/kubectl-context.d.ts +49 -0
- package/dist/tools/kubectl-context.js +233 -0
- package/dist/tools/kubectl-create.d.ts +150 -0
- package/dist/tools/kubectl-create.js +321 -0
- package/dist/tools/kubectl-delete.d.ts +77 -0
- package/dist/tools/kubectl-delete.js +177 -0
- package/dist/tools/kubectl-describe.d.ts +47 -0
- package/dist/tools/kubectl-describe.js +96 -0
- package/dist/tools/kubectl-generic.d.ts +71 -0
- package/dist/tools/kubectl-generic.js +121 -0
- package/dist/tools/kubectl-get.d.ts +72 -0
- package/dist/tools/kubectl-get.js +251 -0
- package/dist/tools/kubectl-list.d.ts +61 -0
- package/dist/tools/kubectl-list.js +189 -0
- package/dist/tools/{get_logs.d.ts → kubectl-logs.d.ts} +35 -19
- package/dist/tools/kubectl-logs.js +312 -0
- package/dist/tools/kubectl-patch.d.ts +57 -0
- package/dist/tools/kubectl-patch.js +128 -0
- package/dist/tools/kubectl-rollout.d.ts +67 -0
- package/dist/tools/kubectl-rollout.js +115 -0
- package/dist/tools/{scale_deployment.d.ts → kubectl-scale.d.ts} +13 -3
- package/dist/tools/kubectl-scale.js +73 -0
- package/dist/utils/kubernetes-manager.d.ts +4 -0
- package/dist/utils/kubernetes-manager.js +21 -3
- package/package.json +1 -1
- package/dist/tools/create_configmap.d.ts +0 -33
- package/dist/tools/create_configmap.js +0 -66
- package/dist/tools/create_cronjob.d.ts +0 -47
- package/dist/tools/create_cronjob.js +0 -93
- package/dist/tools/create_deployment.d.ts +0 -135
- package/dist/tools/create_deployment.js +0 -162
- package/dist/tools/create_namespace.d.ts +0 -22
- package/dist/tools/create_namespace.js +0 -48
- package/dist/tools/create_pod.d.ts +0 -130
- package/dist/tools/create_pod.js +0 -153
- package/dist/tools/create_service.d.ts +0 -74
- package/dist/tools/create_service.js +0 -102
- package/dist/tools/delete_configmap.d.ts +0 -26
- package/dist/tools/delete_configmap.js +0 -49
- package/dist/tools/delete_cronjob.d.ts +0 -26
- package/dist/tools/delete_cronjob.js +0 -48
- package/dist/tools/delete_deployment.d.ts +0 -31
- package/dist/tools/delete_deployment.js +0 -47
- package/dist/tools/delete_namespace.d.ts +0 -27
- package/dist/tools/delete_namespace.js +0 -44
- package/dist/tools/delete_pod.d.ts +0 -31
- package/dist/tools/delete_pod.js +0 -45
- package/dist/tools/delete_service.d.ts +0 -32
- package/dist/tools/delete_service.js +0 -46
- package/dist/tools/describe_cronjob.d.ts +0 -27
- package/dist/tools/describe_cronjob.js +0 -83
- package/dist/tools/describe_deployment.d.ts +0 -26
- package/dist/tools/describe_deployment.js +0 -40
- package/dist/tools/describe_node.d.ts +0 -22
- package/dist/tools/describe_node.js +0 -84
- package/dist/tools/describe_pod.d.ts +0 -33
- package/dist/tools/describe_pod.js +0 -81
- package/dist/tools/describe_service.d.ts +0 -34
- package/dist/tools/describe_service.js +0 -85
- package/dist/tools/get_configmap.d.ts +0 -27
- package/dist/tools/get_configmap.js +0 -48
- package/dist/tools/get_current_context.d.ts +0 -23
- package/dist/tools/get_current_context.js +0 -55
- package/dist/tools/get_events.d.ts +0 -28
- package/dist/tools/get_events.js +0 -66
- package/dist/tools/get_job_logs.d.ts +0 -40
- package/dist/tools/get_job_logs.js +0 -104
- package/dist/tools/get_logs.js +0 -150
- package/dist/tools/list_contexts.d.ts +0 -23
- package/dist/tools/list_contexts.js +0 -39
- package/dist/tools/list_cronjobs.d.ts +0 -23
- package/dist/tools/list_cronjobs.js +0 -35
- package/dist/tools/list_deployments.d.ts +0 -23
- package/dist/tools/list_deployments.js +0 -30
- package/dist/tools/list_jobs.d.ts +0 -29
- package/dist/tools/list_jobs.js +0 -77
- package/dist/tools/list_nodes.d.ts +0 -15
- package/dist/tools/list_nodes.js +0 -21
- package/dist/tools/list_pods.d.ts +0 -23
- package/dist/tools/list_pods.js +0 -29
- package/dist/tools/list_services.d.ts +0 -23
- package/dist/tools/list_services.js +0 -31
- package/dist/tools/scale_deployment.js +0 -50
- package/dist/tools/set_current_context.d.ts +0 -23
- package/dist/tools/set_current_context.js +0 -35
- package/dist/tools/update_configmap.d.ts +0 -33
- package/dist/tools/update_configmap.js +0 -71
- package/dist/tools/update_deployment.d.ts +0 -113
- package/dist/tools/update_deployment.js +0 -155
- package/dist/tools/update_service.d.ts +0 -72
- package/dist/tools/update_service.js +0 -125
package/README.md
CHANGED
|
@@ -66,25 +66,27 @@ npx mcp-chat --config "%APPDATA%\Claude\claude_desktop_config.json"
|
|
|
66
66
|
## Features
|
|
67
67
|
|
|
68
68
|
- [x] Connect to a Kubernetes cluster
|
|
69
|
-
- [x]
|
|
70
|
-
-
|
|
71
|
-
-
|
|
72
|
-
-
|
|
73
|
-
-
|
|
74
|
-
-
|
|
75
|
-
-
|
|
76
|
-
-
|
|
77
|
-
-
|
|
78
|
-
-
|
|
79
|
-
-
|
|
80
|
-
-
|
|
81
|
-
-
|
|
82
|
-
-
|
|
83
|
-
-
|
|
84
|
-
- [x]
|
|
85
|
-
-
|
|
86
|
-
-
|
|
87
|
-
-
|
|
69
|
+
- [x] Unified kubectl API for managing resources
|
|
70
|
+
- Get or list resources with `kubectl_get`
|
|
71
|
+
- Describe resources with `kubectl_describe`
|
|
72
|
+
- List resources with `kubectl_list`
|
|
73
|
+
- Create resources with `kubectl_create`
|
|
74
|
+
- Apply YAML manifests with `kubectl_apply`
|
|
75
|
+
- Delete resources with `kubectl_delete`
|
|
76
|
+
- Get logs with `kubectl_logs`
|
|
77
|
+
- Manage kubectl contexts with `kubectl_context`
|
|
78
|
+
- Explain Kubernetes resources with `explain_resource`
|
|
79
|
+
- List API resources with `list_api_resources`
|
|
80
|
+
- Scale resources with `kubectl_scale`
|
|
81
|
+
- Update field(s) of a resource with `kubectl_patch`
|
|
82
|
+
- Manage deployment rollouts with `kubectl_rollout`
|
|
83
|
+
- Execute any kubectl command with `kubectl_generic`
|
|
84
|
+
- [x] Advanced operations
|
|
85
|
+
- Scale deployments with `kubectl_scale` (replaces legacy `scale_deployment`)
|
|
86
|
+
- Port forward to pods and services with `port_forward`
|
|
87
|
+
- Run Helm operations
|
|
88
|
+
- Install, upgrade, and uninstall charts
|
|
89
|
+
- Support for custom values, repositories, and versions
|
|
88
90
|
- [x] Non-destructive mode for read and create/update-only access to clusters
|
|
89
91
|
|
|
90
92
|
## Local Development
|
|
@@ -149,9 +151,31 @@ See the [CONTRIBUTING.md](CONTRIBUTING.md) file for details.
|
|
|
149
151
|
|
|
150
152
|
## Advanced
|
|
151
153
|
|
|
152
|
-
###
|
|
154
|
+
### Non-Destructive Mode
|
|
153
155
|
|
|
154
|
-
|
|
156
|
+
You can run the server in a non-destructive mode that disables all destructive operations (delete pods, delete deployments, delete namespaces, etc.):
|
|
157
|
+
|
|
158
|
+
```shell
|
|
159
|
+
ALLOW_ONLY_NON_DESTRUCTIVE_TOOLS=true npx mcp-server-kubernetes
|
|
160
|
+
```
|
|
161
|
+
|
|
162
|
+
For Claude Desktop configuration with non-destructive mode:
|
|
163
|
+
|
|
164
|
+
```json
|
|
165
|
+
{
|
|
166
|
+
"mcpServers": {
|
|
167
|
+
"kubernetes-readonly": {
|
|
168
|
+
"command": "npx",
|
|
169
|
+
"args": ["mcp-server-kubernetes"],
|
|
170
|
+
"env": {
|
|
171
|
+
"ALLOW_ONLY_NON_DESTRUCTIVE_TOOLS": "true"
|
|
172
|
+
}
|
|
173
|
+
}
|
|
174
|
+
}
|
|
175
|
+
}
|
|
176
|
+
```
|
|
177
|
+
|
|
178
|
+
For additional advanced features, see the [ADVANCED_README.md](ADVANCED_README.md).
|
|
155
179
|
|
|
156
180
|
## Architecture
|
|
157
181
|
|
|
@@ -177,7 +201,7 @@ sequenceDiagram
|
|
|
177
201
|
|
|
178
202
|
alt Tools Request
|
|
179
203
|
Server->>Handler: Route to tools handler
|
|
180
|
-
Handler->>K8sManager: Execute
|
|
204
|
+
Handler->>K8sManager: Execute kubectl operation
|
|
181
205
|
K8sManager->>K8s: Make API call
|
|
182
206
|
K8s-->>K8sManager: Return result
|
|
183
207
|
K8sManager-->>Handler: Process response
|
|
@@ -61,8 +61,8 @@ export declare const CustomContainerConfig: z.ZodObject<{
|
|
|
61
61
|
limits?: Record<string, string> | undefined;
|
|
62
62
|
requests?: Record<string, string> | undefined;
|
|
63
63
|
} | undefined;
|
|
64
|
-
command?: string[] | undefined;
|
|
65
64
|
args?: string[] | undefined;
|
|
65
|
+
command?: string[] | undefined;
|
|
66
66
|
ports?: {
|
|
67
67
|
containerPort: number;
|
|
68
68
|
name?: string | undefined;
|
|
@@ -84,8 +84,8 @@ export declare const CustomContainerConfig: z.ZodObject<{
|
|
|
84
84
|
limits?: Record<string, string> | undefined;
|
|
85
85
|
requests?: Record<string, string> | undefined;
|
|
86
86
|
} | undefined;
|
|
87
|
-
command?: string[] | undefined;
|
|
88
87
|
args?: string[] | undefined;
|
|
88
|
+
command?: string[] | undefined;
|
|
89
89
|
ports?: {
|
|
90
90
|
containerPort: number;
|
|
91
91
|
name?: string | undefined;
|