@futuretea/rancher-mcp-server 0.3.2 → 0.3.3

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.
Files changed (2) hide show
  1. package/README.md +32 -46
  2. package/package.json +7 -7
package/README.md CHANGED
@@ -59,7 +59,7 @@ Open your `claude_desktop_config.json` and add the mcp server to the list of `mc
59
59
  "-y",
60
60
  "@futuretea/rancher-mcp-server@latest",
61
61
  "--rancher-server-url",
62
- "https://your-rancher-server.com",
62
+ "https://your-rancher-server.com/v3",
63
63
  "--rancher-token",
64
64
  "your-token"
65
65
  ]
@@ -74,10 +74,10 @@ Install the Rancher MCP server extension in VS Code by running the following com
74
74
 
75
75
  ```shell
76
76
  # For VS Code
77
- code --add-mcp '{"name":"rancher","command":"npx","args":["@futuretea/rancher-mcp-server@latest","--rancher-server-url","https://your-rancher-server.com","--rancher-token","your-token"]}'
77
+ code --add-mcp '{"name":"rancher","command":"npx","args":["@futuretea/rancher-mcp-server@latest","--rancher-server-url","https://your-rancher-server.com/v3","--rancher-token","your-token"]}'
78
78
 
79
79
  # For VS Code Insiders
80
- code-insiders --add-mcp '{"name":"rancher","command":"npx","args":["@futuretea/rancher-mcp-server@latest","--rancher-server-url","https://your-rancher-server.com","--rancher-token","your-token"]}'
80
+ code-insiders --add-mcp '{"name":"rancher","command":"npx","args":["@futuretea/rancher-mcp-server@latest","--rancher-server-url","https://your-rancher-server.com/v3","--rancher-token","your-token"]}'
81
81
  ```
82
82
 
83
83
  ### Cursor
@@ -93,7 +93,7 @@ Install the Rancher MCP server extension in Cursor by editing the `mcp.json` fil
93
93
  "-y",
94
94
  "@futuretea/rancher-mcp-server@latest",
95
95
  "--rancher-server-url",
96
- "https://your-rancher-server.com",
96
+ "https://your-rancher-server.com/v3",
97
97
  "--rancher-token",
98
98
  "your-token"
99
99
  ]
@@ -125,12 +125,12 @@ npx @futuretea/rancher-mcp-server@latest --help
125
125
  | `--port` | Starts the MCP server in HTTP/SSE mode and listens on the specified port. Use 0 for stdio mode (default for MCP clients) |
126
126
  | `--sse-base-url` | SSE public base URL to use when sending the endpoint message (e.g. https://example.com) |
127
127
  | `--log-level` | Sets the logging level (values from 0-9) |
128
- | `--rancher-server-url` | URL of the Rancher server |
128
+ | `--rancher-server-url` | URL of the Rancher server (must include `/v3` path, e.g., `https://your-rancher-server.com/v3`) |
129
129
  | `--rancher-token` | Bearer token for Rancher API authentication |
130
130
  | `--rancher-access-key` | Access key for Rancher API authentication |
131
131
  | `--rancher-secret-key` | Secret key for Rancher API authentication |
132
132
  | `--rancher-tls-insecure` | Skip TLS certificate verification for Rancher server (default: false) |
133
- | `--list-output` | Output format for resource list operations (one of: table, yaml, json) (default "table") |
133
+ | `--list-output` | Output format for resource list operations (one of: table, yaml, json) (default "json") |
134
134
  | `--read-only` | If set, the MCP server will run in read-only mode, meaning it will not allow any write operations on the Rancher cluster |
135
135
  | `--disable-destructive` | If set, the MCP server will disable all destructive operations on the Rancher cluster |
136
136
  | `--toolsets` | Comma-separated list of toolsets to enable. Default: [config,core,rancher,networking] |
@@ -148,12 +148,12 @@ log_level: 0
148
148
  # SSE (Server-Sent Events) configuration (optional, for HTTP/SSE mode)
149
149
  # sse_base_url: https://your-domain.com:8080
150
150
 
151
- rancher_server_url: https://your-rancher-server.com
151
+ rancher_server_url: https://your-rancher-server.com/v3
152
152
  rancher_token: your-bearer-token
153
153
  # Or use Access Key/Secret Key:
154
154
  # rancher_access_key: your-access-key
155
155
  # rancher_secret_key: your-secret-key
156
- list_output: table
156
+ list_output: json
157
157
  read_only: false
158
158
  disable_destructive: false
159
159
  toolsets:
@@ -176,7 +176,7 @@ The Rancher MCP server supports running in HTTP/SSE (Server-Sent Events) mode fo
176
176
  ```shell
177
177
  # Start the server on port 8080
178
178
  rancher-mcp-server --port 8080 \
179
- --rancher-server-url https://your-rancher-server.com \
179
+ --rancher-server-url https://your-rancher-server.com/v3 \
180
180
  --rancher-token your-token
181
181
  ```
182
182
 
@@ -194,7 +194,7 @@ When deploying behind a reverse proxy or load balancer, you can specify a public
194
194
  ```shell
195
195
  rancher-mcp-server --port 8080 \
196
196
  --sse-base-url https://your-domain.com:8080 \
197
- --rancher-server-url https://your-rancher-server.com \
197
+ --rancher-server-url https://your-rancher-server.com/v3 \
198
198
  --rancher-token your-token
199
199
  ```
200
200
 
@@ -229,47 +229,40 @@ The following sets of tools are available (all on by default):
229
229
  <summary>core</summary>
230
230
 
231
231
  - **cluster_list** - List all available Kubernetes clusters
232
- - `format` (`string`) - Output format: table, yaml, or json (default: "table")
232
+ - `format` (`string`) - Output format: table, yaml, or json (default: "json")
233
233
 
234
234
  - **node_get** - Get a single node by ID, more efficient than list
235
235
  - `cluster` (`string`) **(required)** - Cluster ID
236
236
  - `node` (`string`) **(required)** - Node ID to get
237
- - `format` (`string`) - Output format: yaml or json (default: "yaml")
237
+ - `format` (`string`) - Output format: yaml or json (default: "json")
238
238
 
239
239
  - **node_list** - List all nodes in a cluster
240
240
  - `cluster` (`string`) - Cluster ID to list nodes from (optional)
241
- - `format` (`string`) - Output format: table, yaml, or json (default: "table")
241
+ - `format` (`string`) - Output format: table, yaml, or json (default: "json")
242
242
 
243
243
  - **workload_get** - Get a single workload by name and namespace, more efficient than list
244
244
  - `cluster` (`string`) **(required)** - Cluster ID
245
245
  - `namespace` (`string`) **(required)** - Namespace name
246
246
  - `name` (`string`) **(required)** - Workload name to get
247
247
  - `project` (`string`) - Project ID (optional, will auto-detect if not provided)
248
- - `format` (`string`) - Output format: yaml or json (default: "yaml")
248
+ - `format` (`string`) - Output format: yaml or json (default: "json")
249
249
 
250
250
  - **workload_list** - List workloads (deployments, statefulsets, daemonsets, jobs) and orphan pods in a cluster
251
251
  - `cluster` (`string`) **(required)** - Cluster ID
252
252
  - `project` (`string`) - Project ID to filter workloads (optional)
253
253
  - `namespace` (`string`) - Namespace name to filter workloads (optional)
254
254
  - `node` (`string`) - Node name to filter workloads (optional)
255
- - `format` (`string`) - Output format: table, yaml, or json (default: "table")
255
+ - `format` (`string`) - Output format: table, yaml, or json (default: "json")
256
256
 
257
257
  - **namespace_get** - Get a single namespace by name, more efficient than list
258
258
  - `cluster` (`string`) **(required)** - Cluster ID
259
259
  - `name` (`string`) **(required)** - Namespace name to get
260
- - `format` (`string`) - Output format: yaml or json (default: "yaml")
260
+ - `format` (`string`) - Output format: yaml or json (default: "json")
261
261
 
262
262
  - **namespace_list** - List namespaces in a cluster
263
263
  - `cluster` (`string`) **(required)** - Cluster ID
264
264
  - `project` (`string`) - Project ID to filter namespaces (optional)
265
- - `format` (`string`) - Output format: table, yaml, or json (default: "table")
266
-
267
- - **configmap_get** - Get a single ConfigMap by name and namespace, more efficient than list
268
- - `cluster` (`string`) **(required)** - Cluster ID
269
- - `namespace` (`string`) **(required)** - Namespace name
270
- - `name` (`string`) **(required)** - ConfigMap name to get
271
- - `project` (`string`) - Project ID (optional, will auto-detect if not provided)
272
- - `format` (`string`) - Output format: yaml or json (default: "yaml")
265
+ - `format` (`string`) - Output format: table, yaml, or json (default: "json")
273
266
 
274
267
  - **configmap_get** - Get a single ConfigMap by name and namespace, more efficient than list
275
268
  - `cluster` (`string`) **(required)** - Cluster ID
@@ -282,14 +275,7 @@ The following sets of tools are available (all on by default):
282
275
  - `cluster` (`string`) **(required)** - Cluster ID
283
276
  - `project` (`string`) - Project ID to filter ConfigMaps (optional)
284
277
  - `namespace` (`string`) - Namespace name to filter ConfigMaps (optional)
285
- - `format` (`string`) - Output format: table, yaml, or json (default: "table")
286
-
287
- - **secret_get** - Get a single Secret by name and namespace, more efficient than list (metadata only, does not expose secret data)
288
- - `cluster` (`string`) **(required)** - Cluster ID
289
- - `namespace` (`string`) **(required)** - Namespace name
290
- - `name` (`string`) **(required)** - Secret name to get
291
- - `project` (`string`) - Project ID (optional, will auto-detect if not provided)
292
- - `format` (`string`) - Output format: yaml or json (default: "yaml")
278
+ - `format` (`string`) - Output format: table, yaml, or json (default: "json")
293
279
 
294
280
  - **secret_get** - Get a single Secret by name and namespace, more efficient than list (metadata only, does not expose secret data)
295
281
  - `cluster` (`string`) **(required)** - Cluster ID
@@ -302,7 +288,7 @@ The following sets of tools are available (all on by default):
302
288
  - `cluster` (`string`) **(required)** - Cluster ID
303
289
  - `project` (`string`) - Project ID to filter secrets (optional)
304
290
  - `namespace` (`string`) - Namespace name to filter secrets (optional)
305
- - `format` (`string`) - Output format: table, yaml, or json (default: "table")
291
+ - `format` (`string`) - Output format: table, yaml, or json (default: "json")
306
292
 
307
293
  - **service_get** - Get a single service by name with optional pod diagnostic check (Service → Pods), more efficient than list
308
294
  - `cluster` (`string`) **(required)** - Cluster ID
@@ -310,14 +296,14 @@ The following sets of tools are available (all on by default):
310
296
  - `name` (`string`) **(required)** - Service name to get
311
297
  - `project` (`string`) - Project ID (optional, will auto-detect if not provided)
312
298
  - `getPodDetails` (`boolean`) - Get detailed pod information and perform health checks (default: false)
313
- - `format` (`string`) - Output format: yaml or json (default: "yaml")
299
+ - `format` (`string`) - Output format: yaml or json (default: "json")
314
300
 
315
- - **service_list** - List services with optional pod diagnostic check (Service → Pods), supports Ready/Degraded dual-state diagnosis
301
+ - **service_list** - List services with optional pod diagnostic check (Service → Pods)
316
302
  - `cluster` (`string`) **(required)** - Cluster ID
317
303
  - `project` (`string`) - Project ID to filter services (optional)
318
304
  - `namespace` (`string`) - Namespace name to filter services (optional)
319
305
  - `getPodDetails` (`boolean`) - Get pod information and perform health checks for services (default: false)
320
- - `format` (`string`) - Output format: table, yaml, or json (default: "table")
306
+ - `format` (`string`) - Output format: table, yaml, or json (default: "json")
321
307
 
322
308
  </details>
323
309
 
@@ -325,32 +311,32 @@ The following sets of tools are available (all on by default):
325
311
  <summary>rancher</summary>
326
312
 
327
313
  - **cluster_list** - List all available Kubernetes clusters
328
- - `format` (`string`) - Output format: table, yaml, or json (default: "table")
314
+ - `format` (`string`) - Output format: table, yaml, or json (default: "json")
329
315
 
330
316
  - **project_get** - Get a single Rancher project by ID, more efficient than list
331
317
  - `project` (`string`) **(required)** - Project ID to get
332
318
  - `cluster` (`string`) **(required)** - Cluster ID (required for verification)
333
- - `format` (`string`) - Output format: yaml or json (default: "yaml")
319
+ - `format` (`string`) - Output format: yaml or json (default: "json")
334
320
 
335
321
  - **project_list** - List Rancher projects across clusters
336
322
  - `cluster` (`string`) - Filter projects by cluster ID (optional)
337
- - `format` (`string`) - Output format: table, yaml, or json (default: "table")
323
+ - `format` (`string`) - Output format: table, yaml, or json (default: "json")
338
324
 
339
325
  - **user_get** - Get a single Rancher user by ID, more efficient than list
340
326
  - `user` (`string`) **(required)** - User ID to get
341
- - `format` (`string`) - Output format: yaml or json (default: "yaml")
327
+ - `format` (`string`) - Output format: yaml or json (default: "json")
342
328
 
343
329
  - **user_list** - List all Rancher users
344
- - `format` (`string`) - Output format: table, yaml, or json (default: "table")
330
+ - `format` (`string`) - Output format: table, yaml, or json (default: "json")
345
331
 
346
332
  - **cluster_health** - Get health status of Rancher clusters
347
333
  - `cluster` (`string`) - Specific cluster ID to check health (optional)
348
- - `format` (`string`) - Output format: table, yaml, or json (default: "table")
334
+ - `format` (`string`) - Output format: table, yaml, or json (default: "json")
349
335
 
350
336
  - **project_access** - List user access permissions for Rancher projects
351
337
  - `project` (`string`) - Project ID to check access (optional)
352
338
  - `cluster` (`string`) - Cluster ID (optional)
353
- - `format` (`string`) - Output format: table, yaml, or json (default: "table")
339
+ - `format` (`string`) - Output format: table, yaml, or json (default: "json")
354
340
 
355
341
  </details>
356
342
 
@@ -363,14 +349,14 @@ The following sets of tools are available (all on by default):
363
349
  - `name` (`string`) **(required)** - Ingress name to get
364
350
  - `project` (`string`) - Project ID (optional, will auto-detect if not provided)
365
351
  - `getPodDetails` (`boolean`) - Get detailed pod information and perform health checks (default: false)
366
- - `format` (`string`) - Output format: yaml or json (default: "yaml")
352
+ - `format` (`string`) - Output format: yaml or json (default: "json")
367
353
 
368
- - **ingress_list** - List ingresses with full diagnostic chain check (Ingress → Service → Pods), supports Ready/Degraded dual-state diagnosis
354
+ - **ingress_list** - List ingresses with full diagnostic chain check (Ingress → Service → Pods)
369
355
  - `cluster` (`string`) **(required)** - Cluster ID
370
356
  - `project` (`string`) - Project ID to filter ingresses (optional)
371
357
  - `namespace` (`string`) - Namespace name to filter ingresses (optional)
372
358
  - `getPodDetails` (`boolean`) - Get detailed pod information and perform health checks (default: false)
373
- - `format` (`string`) - Output format: table, yaml, or json (default: "table")
359
+ - `format` (`string`) - Output format: table, yaml, or json (default: "json")
374
360
 
375
361
  </details>
376
362
 
package/package.json CHANGED
@@ -1,18 +1,18 @@
1
1
  {
2
2
  "name": "@futuretea/rancher-mcp-server",
3
- "version": "0.3.2",
3
+ "version": "0.3.3",
4
4
  "description": "Model Context Protocol (MCP) server for Rancher multi-cluster management",
5
5
  "main": "./bin/index.js",
6
6
  "bin": {
7
7
  "rancher-mcp-server": "bin/index.js"
8
8
  },
9
9
  "optionalDependencies": {
10
- "@futuretea/rancher-mcp-server-darwin-amd64": "0.3.2",
11
- "@futuretea/rancher-mcp-server-darwin-arm64": "0.3.2",
12
- "@futuretea/rancher-mcp-server-linux-amd64": "0.3.2",
13
- "@futuretea/rancher-mcp-server-linux-arm64": "0.3.2",
14
- "@futuretea/rancher-mcp-server-windows-amd64": "0.3.2",
15
- "@futuretea/rancher-mcp-server-windows-arm64": "0.3.2"
10
+ "@futuretea/rancher-mcp-server-darwin-amd64": "0.3.3",
11
+ "@futuretea/rancher-mcp-server-darwin-arm64": "0.3.3",
12
+ "@futuretea/rancher-mcp-server-linux-amd64": "0.3.3",
13
+ "@futuretea/rancher-mcp-server-linux-arm64": "0.3.3",
14
+ "@futuretea/rancher-mcp-server-windows-amd64": "0.3.3",
15
+ "@futuretea/rancher-mcp-server-windows-arm64": "0.3.3"
16
16
  },
17
17
  "repository": {
18
18
  "type": "git",