k8s-multicluster-mcp MCP Server

A specialized MCP server enabling unified Kubernetes multi-cluster operations, resource management, and context switching for teams and AI-powered workflows.

k8s-multicluster-mcp MCP Server

What does “k8s-multicluster-mcp” MCP Server do?

The k8s-multicluster-mcp MCP Server is a Model Context Protocol (MCP) server application designed to facilitate Kubernetes operations across multiple clusters. By leveraging multiple kubeconfig files, this server provides a standardized API that enables users and AI assistants to interact with several Kubernetes clusters simultaneously. This enhances development and operational workflows by supporting tasks such as managing resources, querying cluster status, and performing cross-cluster comparisons. The server is especially useful for teams managing complex environments, offering centralized management and seamless context switching between dev, staging, and production clusters from a single interface.

List of Prompts

No specific prompt templates are mentioned in the repository.

List of Resources

No explicit MCP resources are documented in the repository.

List of Tools

No explicit list of tools is provided in the server.py or documentation. However, the application’s core function is to allow Kubernetes operations such as resource management and context switching across clusters.

Use Cases of this MCP Server

  • Multi-Cluster Management: Centralized management of multiple Kubernetes environments (e.g., dev, staging, production) from a single interface, improving operational efficiency.
  • Context Switching: Easily switch between Kubernetes clusters by specifying the appropriate context parameter, reducing manual configuration work.
  • Cross-Cluster Comparisons: Compare resources, cluster status, and configurations across different clusters, which helps in identifying configuration drift or inconsistencies.
  • Unified Resource Management: Perform resource management tasks (deployment, scaling, updates) across several clusters without needing to manually switch kubeconfigs.
  • Centralized Access for Teams: Teams can collaborate and access all Kubernetes clusters securely via a single MCP interface, streamlining workflows.

How to set it up

Windsurf

  1. Ensure you have Python 3.8+ and pip installed.
  2. Clone the repository:
    git clone https://github.com/razvanmacovei/k8s-multicluster-mcp.git
    cd k8s-multicluster-mcp
    
  3. Install dependencies:
    pip install -r requirements.txt
    
  4. Place your kubeconfig files in a directory and set the KUBECONFIG_DIR environment variable.
  5. Edit your Windsurf MCP server configuration (e.g., config.json):
    {
      "mcpServers": {
        "kubernetes": {
          "command": "python3",
          "args": ["/path/to/k8s-multicluster-mcp/app.py"],
          "env": {
            "KUBECONFIG_DIR": "/path/to/your/kubeconfigs"
          }
        }
      }
    }
    
  6. Save the file and restart Windsurf. Verify the server is running.

Claude

  1. Follow prerequisites and installation steps as above.
  2. For automatic installation via Smithery:
    npx -y @smithery/cli install @razvanmacovei/k8s-multicluster-mcp --client claude
    
  3. Configure config.json for your Claude Desktop:
    {
      "mcpServers": {
        "kubernetes": {
          "command": "python3",
          "args": ["/path/to/k8s-multicluster-mcp/app.py"],
          "env": {
            "KUBECONFIG_DIR": "/path/to/your/kubeconfigs"
          }
        }
      }
    }
    
  4. Save and restart Claude Desktop.

Cursor

  1. Complete the cloning and installation steps as above.
  2. Add to your Cursor configuration:
    {
      "mcpServers": {
        "kubernetes": {
          "command": "python3",
          "args": ["/path/to/k8s-multicluster-mcp/app.py"],
          "env": {
            "KUBECONFIG_DIR": "/path/to/your/kubeconfigs"
          }
        }
      }
    }
    
  3. Save and restart Cursor.

Cline

  1. Complete the cloning and installation steps as above.
  2. Add to your Cline configuration:
    {
      "mcpServers": {
        "kubernetes": {
          "command": "python3",
          "args": ["/path/to/k8s-multicluster-mcp/app.py"],
          "env": {
            "KUBECONFIG_DIR": "/path/to/your/kubeconfigs"
          }
        }
      }
    }
    
  3. Save and restart Cline.

Securing API Keys:

  • Place sensitive information such as API keys or kubeconfigs in environment variables.
  • Example configuration:
    {
      "mcpServers": {
        "kubernetes": {
          "command": "python3",
          "args": ["/path/to/k8s-multicluster-mcp/app.py"],
          "env": {
            "KUBECONFIG_DIR": "/secure/path",
            "KUBE_API_KEY": "${KUBE_API_KEY}"
          },
          "inputs": {
            "kube_api_key": {
              "type": "env",
              "env": "KUBE_API_KEY"
            }
          }
        }
      }
    }
    

How to use this MCP inside flows

Using MCP in FlowHunt

To integrate MCP servers into your FlowHunt workflow, start by adding the MCP component to your flow and connecting it to your AI agent:

FlowHunt MCP flow

Click on the MCP component to open the configuration panel. In the system MCP configuration section, insert your MCP server details using this JSON format:

{
  "k8s-multicluster-mcp": {
    "transport": "streamable_http",
    "url": "https://yourmcpserver.example/pathtothemcp/url"
  }
}

Once configured, the AI agent is now able to use this MCP as a tool with access to all its functions and capabilities. Remember to change “k8s-multicluster-mcp” to whatever the actual name of your MCP server is and replace the URL with your own MCP server URL.


Overview

SectionAvailabilityDetails/Notes
OverviewKubernetes multi-cluster management via MCP
List of PromptsNo prompt templates documented
List of ResourcesNo explicit MCP resources documented
List of ToolsTools implied, but not explicitly listed
Securing API KeysEnvironment variable usage described
Sampling Support (less important in evaluation)Not mentioned

Additional notes:

  • Roots support: Not mentioned
  • Sampling support: Not mentioned

Based on the information provided and available in the repository, k8s-multicluster-mcp is a specialized MCP server for Kubernetes multi-cluster ops. However, it lacks detail in areas such as prompts, explicit resources, and tool documentation, which limits its score for completeness and usability.


MCP Score

Has a LICENSE
Has at least one tool
Number of Forks2
Number of Stars4

Overall rating: 4/10

While the server fulfills a unique and valuable function (Kubernetes multi-cluster management via MCP), it lacks documentation on prompt templates, explicit resource and tool definitions, and licensing. This limits its current utility for broader MCP use and developer adoption.

Frequently asked questions

What is the k8s-multicluster-mcp MCP Server?

It is a Model Context Protocol (MCP) server designed to unify operations across multiple Kubernetes clusters, enabling centralized management, context switching, and resource comparisons via a standardized API.

Can I use this MCP server to manage several clusters simultaneously?

Yes, by leveraging multiple kubeconfig files, the server allows seamless operations and context switching across several Kubernetes clusters from a single interface.

How do I secure my kubeconfigs and API keys?

Store sensitive information in environment variables and avoid hardcoding them in configuration files. Set the KUBECONFIG_DIR environment variable to a secure path and use environment-based input for API keys.

Is prompt template support included?

No, the repository does not provide any specific prompt templates or MCP resource documentation.

What are the primary use cases for this MCP server?

Centralized multi-cluster management, context switching, cross-cluster resource comparison, and unified resource management for Kubernetes environments, especially in complex team workflows.

Streamline Kubernetes Multi-Cluster Management

Unify your Kubernetes operations across dev, staging, and production with FlowHunt's k8s-multicluster-mcp MCP Server.

Learn more