Skip to main content

Kubernetes MCP Server (Model Context Protocol) with special support for OpenShift

Project description

Kubernetes MCP Server

GitHub License npm GitHub release (latest SemVer) Build

✨ Features | 🚀 Getting Started | 🎥 Demos | ⚙️ Configuration | 🧑‍💻 Development

https://github.com/user-attachments/assets/be2b67b3-fc1c-4d11-ae46-93deba8ed98e

✨ Features

A powerful and flexible Kubernetes Model Context Protocol (MCP) server implementation with support for Kubernetes and OpenShift.

  • ✅ Configuration:
    • Automatically detect changes in the Kubernetes configuration and update the MCP server.
    • View and manage the current Kubernetes .kube/config or in-cluster configuration.
  • ✅ Generic Kubernetes Resources: Perform operations on any Kubernetes or OpenShift resource.
    • Any CRUD operation (Create or Update, Get, List, Delete).
  • ✅ Pods: Perform Pod-specific operations.
    • List pods in all namespaces or in a specific namespace.
    • Get a pod by name from the specified namespace.
    • Delete a pod by name from the specified namespace.
    • Show logs for a pod by name from the specified namespace.
    • Exec into a pod and run a command.
    • Run a container image in a pod and optionally expose it.
  • ✅ Namespaces: List Kubernetes Namespaces.
  • ✅ Events: View Kubernetes events in all namespaces or in a specific namespace.
  • ✅ Projects: List OpenShift Projects.

Unlike other Kubernetes MCP server implementations, this IS NOT just a wrapper around kubectl or helm command-line tools.

There is NO NEED for external dependencies or tools to be installed on the system. If you're using the native binaries you don't even need to have Node or Python installed on your system.

🚀 Getting Started

Requirements

  • Access to a Kubernetes cluster.

Claude Desktop

Using npx

If you have npm installed, this is the fastest way to get started with kubernetes-mcp-server on Claude Desktop.

Open your claude_desktop_config.json and add the mcp server to the list of mcpServers:

{
  "mcpServers": {
    "kubernetes": {
      "command": "npx",
      "args": [
        "-y",
        "kubernetes-mcp-server@latest"
      ]
    }
  }
}

VS Code / VS Code Insiders

Install the Kubernetes MCP server extension in VS Code Insiders by pressing the following link:

Install in VS Code Insiders

Alternatively, you can install the extension manually by running the following command:

# For VS Code
code --add-mcp '{"name":"kubernetes","command":"npx","args":["kubernetes-mcp-server@latest"]}'
# For VS Code Insiders
code-insiders --add-mcp '{"name":"kubernetes","command":"npx","args":["kubernetes-mcp-server@latest"]}'

Goose CLI

Goose CLI is the easiest (and cheapest) way to get rolling with artificial intelligence (AI) agents.

Using npm

If you have npm installed, this is the fastest way to get started with kubernetes-mcp-server.

Open your goose config.yaml and add the mcp server to the list of mcpServers:

extensions:
  kubernetes:
    command: npx
    args:
      - -y
      - kubernetes-mcp-server@latest

🎥 Demos

Diagnosing and automatically fixing an OpenShift Deployment

Demo showcasing how Kubernetes MCP server is leveraged by Claude Desktop to automatically diagnose and fix a deployment in OpenShift without any user assistance.

https://github.com/user-attachments/assets/a576176d-a142-4c19-b9aa-a83dc4b8d941

Vibe Coding a simple game and deploying it to OpenShift

In this demo, I walk you through the process of Vibe Coding a simple game using VS Code and how to leverage Podman MCP server and Kubernetes MCP server to deploy it to OpenShift.

Vibe Coding: Build & Deploy a Game on Kubernetes

⚙️ Configuration

The Kubernetes MCP server can be configured using command line (CLI) arguments.

You can run the CLI executable either by using npx or by downloading the latest release binary.

# Run the Kubernetes MCP server using npx (in case you have npm installed)
npx kubernetes-mcp-server@latest --help
# Run the Kubernetes MCP server using the latest release binary
./kubernetes-mcp-server --help

Configuration Options

Option Description
--sse-port Starts the MCP server in Server-Sent Event (SSE) mode and listens on the specified port.
--log-level Sets the logging level (values from 0-9). Similar to kubectl logging levels.

🧑‍💻 Development

Running with mcp-inspector

Compile the project and run the Kubernetes MCP server with mcp-inspector to inspect the MCP server.

# Compile the project
make build
# Run the Kubernetes MCP server with mcp-inspector
npx @modelcontextprotocol/inspector@latest $(pwd)/kubernetes-mcp-server

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

kubernetes_mcp_server-0.0.25.tar.gz (5.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

kubernetes_mcp_server-0.0.25-py3-none-any.whl (6.1 kB view details)

Uploaded Python 3

File details

Details for the file kubernetes_mcp_server-0.0.25.tar.gz.

File metadata

File hashes

Hashes for kubernetes_mcp_server-0.0.25.tar.gz
Algorithm Hash digest
SHA256 ef24bf71cb71ec0595af992d0b72ca0439f851813e454d9983df0b2e25d7292b
MD5 65999a0a046092b32ced0766a08b49e3
BLAKE2b-256 a6e07050f6d5a991e013842d88c7e0f0c9b9f1de5a0ef3fd2a328ae0b327eb73

See more details on using hashes here.

File details

Details for the file kubernetes_mcp_server-0.0.25-py3-none-any.whl.

File metadata

File hashes

Hashes for kubernetes_mcp_server-0.0.25-py3-none-any.whl
Algorithm Hash digest
SHA256 a094a1e2a8108a0233ecbdef4c5f43e75261408096a9d3b08ed46c52f443a395
MD5 3e03c4c874d15855b2f159fc6bd50dd8
BLAKE2b-256 6de43489517133e67f1f442763e44f90a829ebeb9e277e5716f1d85b2416ede9

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page