io.github.CloudCorpRecords/clusterport

Official registry Other

Core kubectl operations: get, describe, logs, apply, scale, patch, rollout and explain.

Install

Add this to your client's MCP configuration (Claude Desktop: claude_desktop_config.json; Cursor: .cursor/mcp.json; VS Code and others use the same "mcpServers" shape).

NPM package @reneturcios/clusterport
Claude Code
claude mcp add clusterport -- npx -y @reneturcios/clusterport@0.1.0 mcp
JSON configuration (Claude Desktop, Cursor, VS Code)
{
    "mcpServers": {
        "clusterport": {
            "command": "npx",
            "args": [
                "-y",
                "@reneturcios/clusterport@0.1.0",
                "mcp"
            ]
        }
    }
}
OCI package ghcr.io/cloudcorprecords/clusterport:0.1.0
Claude Code
claude mcp add clusterport -- docker run -i --rm ghcr.io/cloudcorprecords/clusterport:0.1.0 mcp
JSON configuration (Claude Desktop, Cursor, VS Code)
{
    "mcpServers": {
        "clusterport": {
            "command": "docker",
            "args": [
                "run",
                "-i",
                "--rm",
                "ghcr.io/cloudcorprecords/clusterport:0.1.0",
                "mcp"
            ]
        }
    }
}

Documentation

From the project's README on GitHub, refreshed weekly. Links open on GitHub.

Contents
  1. clusterport
  2. Install
  3. CLI
  4. MCP server
  5. Development
  6. License

clusterport

clusterport is a small MCP server and CLI for core Kubernetes work. It is a clean-room rebuild of a core subset — twelve tools — from the documented surface of the community Flux159 mcp-server-kubernetes: get, describe and fetch logs; apply and create; delete, scale and patch; rollout actions and context switching; plus kubectl explain and API-resource listing.

Everything runs through the host's real kubectl. Each call is built as an argument array and spawned directly — never a shell string — so resource names, namespaces and patches cannot be reinterpreted as shell syntax. Manifests are never written to temp files or shell redirects: kubectl_apply sends its manifest over stdin (kubectl apply -f -), and kubectl_create generates a minimal manifest spec from its parameters and creates it from stdin the same way (kubectl create -f -). The executor is injectable, which is how the test suite verifies the exact argument arrays and stdin payloads with a fake.

Deliberately omitted: port-forward long-lived sessions, exec-into-pod, the helm tools, install/uninstall addon operations, non-resource URL operations, watch/streaming, and node operations such as cordon, taint or drain.

The host needs a working kubectl and cluster credentials. When kubectl is absent, calls fail honestly with the underlying spawn error (ENOENT) instead of a fabricated result. The published container image bundles no kubectl binary: it expects a host executor and says so in its Dockerfile.

Install

npx @reneturcios/clusterport kubectl-get pods -n default
docker run -i ghcr.io/cloudcorprecords/clusterport

CLI

clusterport kubectl-get <resource_type> [name] [-n namespace] [-o format]
clusterport kubectl-describe <resource_type> <name> [-n namespace]
clusterport kubectl-logs <name> [-n namespace] [-c container]
clusterport kubectl-apply "<manifest yaml>" [-n namespace] [--dry-run]
clusterport kubectl-create <resource_type> <name> [--image img] [-n namespace]
clusterport kubectl-delete <resource_type> <name> [-n namespace]
clusterport kubectl-scale <resource_type> <name> <replicas> [-n namespace]
clusterport kubectl-patch <resource_type> <name> '<json patch>' [-n namespace]
clusterport kubectl-rollout <resource_type> <name> <action> [-n namespace]
clusterport kubectl-context <current|list|use> [name]
clusterport explain-resource <resource> [--api-version v]
clusterport list-api-resources [kind]
clusterport --version

Exit codes: 0 success, 1 kubectl error, 2 usage error.

MCP server

npx -y @reneturcios/clusterport mcp
{
  "mcpServers": {
    "clusterport": {
      "command": "npx",
      "args": ["-y", "@reneturcios/clusterport", "mcp"]
    }
  }
}
Tools
ToolInputWhat it does
kubectl_getresource_type (required), name, namespace, output_formatkubectl get -o json by default; JSON parsed.
kubectl_describeresource_type, name (required), namespacekubectl describe.
kubectl_logsname (required), namespace, containerkubectl logs.
kubectl_applymanifest (required), namespace, dry_runkubectl apply -f -, manifest over stdin.
kubectl_createresource_type, name (required), namespace, imageGenerated spec created via kubectl create -f - over stdin.
kubectl_deleteresource_type, name (required), namespacekubectl delete.
kubectl_scaleresource_type, name, replicas (required), namespacekubectl scale --replicas=n.
kubectl_patchresource_type, name, patch (required), namespacekubectl patch -p.
kubectl_rolloutresource_type, name, action (required), namespacekubectl rollout <action> <type>/<name>.
kubectl_contextoperation (required: current, list, use), namekubectl config current/get/use-context.
explain_resourceresource (required), api_versionkubectl explain.
list_api_resourceskind (optional)kubectl api-resources, parsed, kind-filtered.

Executor failures — a missing kubectl binary, an unreachable cluster, a nonexistent resource — are reported as tool errors carrying the underlying message.

Development

npm install
npm run build
npm test
npm run dev

Tests run entirely on a fake executor: exact argument arrays, stdin manifest passing for apply/create, output parsing, and error propagation. No live cluster is touched.

License

MIT — see LICENSE.

Frequently asked questions

What is io.github.CloudCorpRecords/clusterport?

Core kubectl operations: get, describe, logs, apply, scale, patch, rollout and explain.

How do I install io.github.CloudCorpRecords/clusterport?

It runs on your machine. In Claude Code: claude mcp add clusterport -- npx -y @reneturcios/clusterport@0.1.0 mcp. For other clients, paste the JSON configuration from this page into their MCP settings.

Does io.github.CloudCorpRecords/clusterport need an API key?

Its registry entry lists no required key or secret. Some features may still need an account with the service it connects to.

Is io.github.CloudCorpRecords/clusterport open source?

Yes. Its code is on GitHub under the MIT license.

Who maintains io.github.CloudCorpRecords/clusterport?

It is published by CloudCorpRecords. AI.tn lists it but does not maintain or endorse it.

From the official MCP Registry. Listing is not an endorsement: review a server's code and permissions before giving it access to your data.