abhijeetka_mcp_k8s_server

abhijeetka_mcp_k8s_server

by abhijeetka
An MCP server for managing Kubernetes clusters through natural language interactions with LLMs.

Kubernetes Management with MCP Server

Overview

The MCP Kubernetes Server is a powerful tool designed to manage Kubernetes clusters through interactions with Large Language Models (LLMs). It leverages the Model Context Protocol (MCP) to provide a structured and seamless interface for Kubernetes operations. This server wraps kubectl commands, allowing users to perform common Kubernetes tasks with ease.

What is MCP?

Model Context Protocol (MCP) is a framework that enables Language Models to interact with external tools and services in a structured way. It provides:

  • A standardized way to expose functionality to language models
  • Context management for operations
  • Tool discovery and documentation
  • Type-safe interactions between models and tools

Usage Examples

Here are some examples of how you can use the MCP Kubernetes Server:

  • Create a new deployment for me with name nginx-app and image nginx:latest in the production namespace with 3 replicas.
  • Update the deployment nginx-app to version 1.19 in the production namespace.
  • Scale the deployment nginx-app to 5 replicas in the production namespace.
  • Get me the pods in the production namespace.
  • Get me all namespaces in the cluster.
  • Get me all nodes in the cluster.
  • Get me all services in the cluster.
  • Get me all deployments in the cluster.
  • Get me all jobs in the cluster.
  • Get me all cronjobs in the cluster.
  • Get me all statefulsets in the cluster.
  • Get me all daemonsets in the cluster.

LLM Integration

This MCP client is designed to work seamlessly with Large Language Models (LLMs). The functions are decorated with @mcp.tool(), making them accessible to LLMs through the Model Context Protocol framework.

Example LLM Prompts

LLMs can interact with your Kubernetes cluster using natural language. Here are some example prompts:

  • "Create a new nginx deployment with 3 replicas in the production namespace"
  • "Scale the nginx-app deployment to 5 replicas"
  • "Update the image of nginx-app to version 1.19"

The LLM will interpret these natural language requests and call the appropriate MCP functions with the correct parameters.

Benefits of LLM Integration

  1. Natural Language Interface: Manage Kubernetes resources using conversational language
  2. Reduced Command Complexity: No need to remember exact kubectl syntax
  3. Error Prevention: LLMs can validate inputs and provide helpful error messages
  4. Context Awareness: LLMs can maintain context across multiple operations
  5. Structured Interactions: MCP ensures type-safe and documented interactions between LLMs and tools

Requirements

  • Kubernetes cluster access configured via kubectl
  • Python 3.x
  • MCP framework installed and configured

Security Note

When using this client with LLMs, ensure that:

  • Proper access controls are in place for your Kubernetes cluster
  • The MCP server is running in a secure environment
  • API access is properly authenticated and authorized

Usage with Claude Desktop

{
    "mcpServers": {
        "Kubernetes": {
            "command": "uv",
            "args": [
                "--directory",
                "~/mcp/mcp-k8s-server",
                "run",
                "kubernetes.py"
            ]
        }
    }
}

Contributing

We welcome contributions to the MCP Kubernetes Server! If you'd like to contribute:

  1. Fork the repository
  2. Create a new branch for your feature (git checkout -b feature/amazing-feature)
  3. Make your changes
  4. Write or update tests as needed
  5. Commit your changes (git commit -m 'Add some amazing feature')
  6. Push to your branch (git push origin feature/amazing-feature)
  7. Open a Pull Request

For major changes, please open an issue first to discuss what you would like to change.

About

This is an MCP Kubernetes Server.

Resources

Stars

3 stars

Watchers

1 watching

Forks

0 forks

Report repository

Releases

No releases published

Packages 0

No packages published

Languages

Features & Capabilities

Categories
mcp_server model_context_protocol kubernetes python llm_integration api_integration natural_language_interface

Implementation Details

Stats

0 Views
0 Likes
3 GitHub Stars

Repository Info

abhijeetka Organization

Similar Servers

continuedev_continue by continuedev
0
0
0

Recently Viewed