mcp-k8s-go

  • Cloud Platforms
  • Virtualization
Go
MIT
14
-
security - not tested
A
license - permissive license (MIT)
-
quality - not tested

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. Tools
  2. Prompts
  3. Resources
  4. Server Configuration
  5. README.md

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

Tools

Functions exposed to the LLM to take actions

NameDescription

No tools

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
KUBECONFIGNoPath to your Kubernetes configuration file~/.kube/config
README.md
<h4 align="center">Golang-based MCP server connecting to Kubernetes</h4> <h1 align="center"> <img src="docs/images/logo.png" width="180"/> <br/> MCP K8S Go </h1> <p align="center"> <a href="#features">Features</a> ⚙ <a href="#browse-with-inspector">Browse With Inspector</a> ⚙ <a href="#use-with-claude">Use With Claude</a> ⚙ <a href="#contributing">Contributing</a> </p> <p align="center"> <a href="https://github.com/strowk/mcp-k8s-go/actions/workflows/dependabot/dependabot-updates"><img src="https://github.com/strowk/mcp-k8s-go/actions/workflows/dependabot/dependabot-updates/badge.svg"></a> <a href="https://github.com/strowk/mcp-k8s-go/actions/workflows/test.yaml"><img src="https://github.com/strowk/mcp-k8s-go/actions/workflows/test.yaml/badge.svg"></a> <a href="https://smithery.ai/protocol/@strowk/mcp-k8s"><img src="https://smithery.ai/badge/@strowk/mcp-k8s" alt="smithery badge"></a> </p> <p align="center"> <a href="https://mcp-get.com/packages/%40strowk%2Fmcp-k8s"><img src="https://mcp-get.com/api/badge/%40strowk%2Fmcp-k8s" alt="MCP Package"></a> <a href="https://mcp-get.com/packages/%40strowk%2Fmcp-k8s"><img src="https://mcp-get.com/api/badge/%40strowk%2Fmcp-k8s?style=installs" alt="MCP Package Installs"></a> <a href="https://mcp-get.com/packages/%40strowk%2Fmcp-k8s"><img src="https://mcp-get.com/api/badge/%40strowk%2Fmcp-k8s?style=views" alt="MCP Package Views"></a> </p>

Features

  • 🗂️ resource: K8S contexts as read from kubeconfig configurations
  • 🤖 tool: list-k8s-contexts
  • 🤖 tool: list-k8s-namespaces in a given context
  • 🤖 tool: list-k8s-nodes in a given context
  • 🤖 tool: list-k8s-pods in a given context and namespace
  • 🤖 tool: list-k8s-events in a given context and namespace
  • 🤖 tool: list-k8s-services in a given context and namespace
  • 🤖 tool: get-k8s-pod-logs in a given context and namespace
  • 💬 prompt: list-k8s-namespaces in a given context
  • 💬 prompt: list-k8s-pods in current context and with given namespace

Browse With Inspector

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

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

, or to use version built from sources, then in root folder of this project:

tools/inspector/run.sh

Use With Claude

<details><summary><b> Demo Usage </b></summary>

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

</details>

To use this MCP server with Claude Desktop you would firstly need to install it.

You have several options for installation:

<a href="#using-smithery">Smithery</a><a href="#using-mcp-get">mcp-get</a><a href="#prebuilt-from-npm">Pre-built NPM</a><a href="#from-github-releases">Pre-built in Github</a><a href="#building-from-source">From sources</a>
Claude SetupAutoAutoManualManualManual
PrerequisiteNode.jsNode.jsNode.jsNoneGolang

Using Smithery

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

npx @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": [] } } }

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 from Claude Desktop

Now you should be able to run Claude Desktop and:

  • see K8S contexts available to attach to conversation as a resource
  • ask Claude to list contexts
  • ask Claude to list pods in a given context and namespace
  • ask Claude to list events in a given context and namespace
  • ask Claude to read logs of a given pod in a given context and namespace

Environment Variables

The following environment variables are used by the MCP server:

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

Contributing

Check out CONTRIBUTION.md for more information on how to contribute to this project.

GitHub Badge

Glama performs regular codebase and documentation scans to:

  • Confirm that the MCP server is working as expected.
  • Confirm that there are no obvious security issues with dependencies of the server.
  • Extract server characteristics such as tools, resources, prompts, and required parameters.

Our directory badge helps users to quickly asses that the MCP server is safe, server capabilities, and instructions for installing the server.

Copy the following code to your README.md file:

Alternative MCP servers

  • A
    security
    F
    license
    A
    quality
    A MCP server that can run [Kubernetes](https://kubernetes.io/) commands with a given kubeconfig path and provide interpretation of the commands.
    • Apple
  • A
    security
    A
    license
    A
    quality
    A Model Context Protocol (MCP) server that lets you seamlessly use OpenAI's models right from Claude.
    MIT
    • Apple
  • A
    security
    A
    license
    A
    quality
    A powerful Model Context Protocol (MCP) server for Docker operations, enabling seamless container and compose stack management through Claude AI.
    MIT
    • Apple
  • -
    security
    A
    license
    -
    quality
    MCP Server for the Gentoro services, enabling Claude to interact with Gentoro, which allows users to create and integrate tools into a common Bridge, defining all available capabilities.
    Apache-2.0