Skip to main content
Glama

mcp-k8s-go

Features

MCP 💬 prompt 🗂️ resource 🤖 tool

  • 🗂️🤖 List Kubernetes contexts

  • 💬🤖 List Kubernetes namespaces

  • 🤖 List and get any Kubernetes resources

    • includes custom mappings for resources like pods, services, deployments, but any resource can be listed and retrieved

  • 🤖 List Kubernetes nodes

  • 💬 List Kubernetes pods

  • 🤖 Get Kubernetes events

  • 🤖 Get Kubernetes pod logs

  • 🤖 Run command in Kubernetes pod

Browse With Inspector

To use latest published version with Inspector you can run this:

npx @modelcontextprotocol/inspector npx @strowk/mcp-k8s

Use With Claude

Following chat with Claude Desktop demonstrates how it looks when selected particular context as a resource and then asked to check pod logs for errors in kube-system namespace:

Claude Desktop

To use this MCP server with Claude Desktop (or any other client) you might need to choose which way of installation to use.

You have multiple options:

Smithery

mcp-get

Pre-built NPM

Pre-built in Github

From sources

Using Docker

Claude Setup

Auto

Auto

Manual

Manual

Manual

Manual

Prerequisite

Node.js

Node.js

Node.js

None

Golang

Docker

Using Smithery

To install MCP K8S Go for Claude Desktop automatically via Smithery:

npx -y @smithery/cli install @strowk/mcp-k8s --client claude

Using mcp-get

To install MCP K8S Go for Claude Desktop automatically via mcp-get:

npx @michaellatman/mcp-get@latest install @strowk/mcp-k8s

Manually with prebuilt binaries

Prebuilt from npm

Use this if you have npm installed and want to use pre-built binaries:

npm install -g @strowk/mcp-k8s

Then check version by running mcp-k8s --version and if this printed installed version, you can proceed to add configuration to claude_desktop_config.json file:

{ "mcpServers": { "mcp_k8s": { "command": "mcp-k8s", "args": [] } } }

, or using npx with any client:

npx @strowk/mcp-k8s

For example for Claude:

{ "mcpServers": { "mcp_k8s": { "command": "npx", "args": [ "@strowk/mcp-k8s" ] } } }

From GitHub releases

Head to GitHub releases and download the latest release for your platform.

Unpack the archive, which would contain binary named mcp-k8s-go, put that binary somewhere in your PATH and then add the following configuration to the claude_desktop_config.json file:

{ "mcpServers": { "mcp_k8s": { "command": "mcp-k8s-go", "args": [] } } }

Building from source

You would need Golang installed to build this project:

go get github.com/strowk/mcp-k8s-go go install github.com/strowk/mcp-k8s-go

, and then add the following configuration to the claude_desktop_config.json file:

{ "mcpServers": { "mcp_k8s_go": { "command": "mcp-k8s-go", "args": [] } } }

Using Docker

This server is built and published to Docker Hub since 0.3.1-beta.2 release with multi-arch images available for linux/amd64 and linux/arm64 architectures.

You can use latest tag f.e like this:

docker run -i -v ~/.kube/config:/home/nonroot/.kube/config --rm mcpk8s/server:latest

Windows users might need to replace ~/.kube/config with //c/Users/<username>/.kube/config at least in Git Bash.

For Claude:

{ "mcpServers": { "mcp_k8s_go": { "command": "docker", "args": [ "run", "-i", "-v", "~/.kube/config:/home/nonroot/.kube/config", "--rm", "mcpk8s/server:latest" ] } } }

Environment Variables and Command-line Options

The following environment variables are used by the MCP server:

  • KUBECONFIG: Path to your Kubernetes configuration file (optional, defaults to ~/.kube/config)

The following command-line options are supported:

  • --allowed-contexts=<ctx1,ctx2,...>: Comma-separated list of allowed Kubernetes contexts that users can access. If not specified, all contexts are allowed.

  • --help: Display help information

  • --version: Display version information

-
security - not tested
A
license - permissive license
-
quality - not tested

remote-capable server

The server can be hosted and run remotely because it primarily relies on remote services or has no dependency on the local environment.

This project is intended as a both MCP server connecting to Kubernetes and a library to build more servers for any custom resources in Kubernetes.

  1. Browse With Inspector
    1. Use With Claude
      1. Using Smithery
      2. Using mcp-get
      3. Manually with prebuilt binaries
      4. Building from source
      5. Using Docker
      6. Environment Variables and Command-line Options

    Related MCP Servers

    • -
      security
      A
      license
      -
      quality
      Provides MCP multi-cluster Kubernetes management and operations, featuring a management interface, logging, and nearly 50 built-in tools covering common DevOps and development scenarios. Supports both standard and CRD resources.
      Last updated -
      658
      MIT License
      • Linux
      • Apple
    • -
      security
      A
      license
      -
      quality
      Provides MCP multi-cluster Kubernetes management and operations. It can be integrated as an SDK into your own project and includes nearly 50 built-in tools covering common DevOps and development scenarios. Supports both standard and CRD resources.
      Last updated -
      125
      MIT License
      • Linux
      • Apple
    • -
      security
      A
      license
      -
      quality
      An MCP server that enables interaction with Kubernetes resources through natural language interfaces like Goose CLI, allowing users to get, read, and patch Kubernetes resources.
      Last updated -
      Apache 2.0

    View all related MCP servers

    MCP directory API

    We provide all the information about MCP servers via our MCP API.

    curl -X GET 'https://glama.ai/api/mcp/v1/servers/strowk/mcp-k8s-go'

    If you have feedback or need assistance with the MCP directory API, please join our Discord server