Command Palette

Search for a command to run...

UnylyUnyly
Browse all

Cluster API

FreeNot checked

Provides secure bridge to Kubernetes Cluster API management clusters, enabling creation, scaling, and lifecycle management of Kubernetes clusters across cloud p

GitHubEmbed

About

Provides secure bridge to Kubernetes Cluster API management clusters, enabling creation, scaling, and lifecycle management of Kubernetes clusters across cloud providers with AWS support, node management, kubeconfig retrieval, and comprehensive monitoring capabilities.

README

A production-grade Model Context Protocol (MCP) server for the Kubernetes Cluster API (CAPI), enabling AI agents to manage Kubernetes clusters through a secure, standardized interface.

AI Development Disclaimer

⚠️ Important: This repository was primarily created by Claude Code, Anthropic's AI assistant, working in collaboration with a human developer. The code, documentation, tests, and overall architecture were generated through AI-assisted development sessions.

While the code follows industry best practices and includes comprehensive testing, users should:

  • Review all code before deploying to production environments
  • Understand the security implications of the implementation
  • Validate the code meets their specific requirements and compliance standards
  • Consider the experimental nature of AI-generated code in critical systems

Overview

The CAPI MCP Server acts as a bridge between AI agents (MCP clients) and CAPI management clusters. It provides a set of tools that abstract the complexity of CAPI into simple, reliable operations for cluster lifecycle management.

Features

V1.0 Scope

  • Infrastructure Provider: AWS (via Cluster API Provider for AWS - CAPA)
  • Core Tools:
    • list_clusters - List all managed workload clusters
    • get_cluster - Get detailed information for a specific cluster
    • create_cluster - Create a new workload cluster from templates
    • delete_cluster - Delete a workload cluster
    • scale_cluster - Scale worker nodes in a cluster
    • get_cluster_kubeconfig - Retrieve cluster access credentials
    • get_cluster_nodes - List nodes within a cluster
  • Security: API key authentication, RBAC, secrets management
  • Observability: Structured logging, Prometheus metrics

Architecture

The server follows a modular, extensible design:

  • Proxy/Gateway Pattern for bridging MCP and CAPI
  • Provider Interface for future multi-cloud support
  • Asynchronous handling of long-running CAPI operations
  • Security-first approach with least-privilege access

See architecture.md for detailed design documentation.

Development

Prerequisites

  • Go 1.24.x
  • Docker & Docker Compose
  • kubectl
  • kind (for local testing)
  • golangci-lint

Quick Start

# Clone the repository
git clone https://github.com/capi-mcp/capi-mcp-server.git
cd capi-mcp-server

# Install dependencies
make deps

# Install development tools
make tools

# Run tests
make test

# Build the server
make build

# Run locally (requires API_KEY env var)
API_KEY=your-key make run

Project Structure

/capi-mcp-server
├── /api/v1           # MCP tool/resource schemas
├── /cmd/server       # Application entry point
├── /internal         # Private application code
│   ├── /server       # MCP server engine
│   ├── /service      # Business logic
│   ├── /kube         # CAPI client wrapper
│   └── /config       # Configuration
├── /pkg              # Public libraries
│   ├── /provider     # Provider interface
│   └── /tools        # Tool implementations
├── /deploy           # Deployment artifacts
├── /test             # Test suites
└── /docs             # Documentation

Deployment

The server is deployed as a Kubernetes workload using Helm:

helm install capi-mcp-server ./deploy/charts/capi-mcp-server \
  --set auth.apiKey=$API_KEY \
  --namespace capi-system

Security

  • Authentication: API key-based (Bearer token)
  • Authorization: Kubernetes RBAC with least-privilege
  • Network: Restricted with NetworkPolicies
  • Secrets: Never logged, handled securely

Contributing

Please read CLAUDE.md for development guidelines and standards.

Roadmap

See roadmap.md for the project vision and development phases.

License

[License details to be added]

from github.com/jsell-rh/capi-mcp

Installing Cluster API

This server has no published package — it is built from source. Open the repository and follow its README.

▸ github.com/jsell-rh/capi-mcp

FAQ

Is Cluster API MCP free?

Yes, Cluster API MCP is free — one-click install via Unyly at no cost.

Does Cluster API need an API key?

No, Cluster API runs without API keys or environment variables.

Is Cluster API hosted or self-hosted?

Self-hosted: the server runs locally on your machine via the install command above.

How do I install Cluster API in Claude Desktop, Claude Code or Cursor?

Open Cluster API on unyly.org, pick your client tab (Claude Desktop, Claude Code, Cursor) and press Install — the config is generated automatically, no JSON editing.

Related MCPs

Compare Cluster API with

Not sure what to pick?

Find your stack in 60 seconds

Author?

Embed badge for your README

Browse similar

All development MCPs