Kubernetes MCP Server
resmiServer Kubernetes MCP Claude, dibangun dalam Go. Server ini terintegrasi dengan ArgoCD, GitLab, Claude AI, dan Kubernetes untuk memungkinkan kontrol dan otomatisasi tingkat lanjut pada lingkungan Kubernetes.
Apa yang bisa Anda lakukan dengan Kubernetes MCP?
- Periksa sumber daya cluster — Minta asisten Anda untuk membuat daftar namespace atau sumber daya apa pun melalui
GET /api/v1/namespacesdanGET /api/v1/resources/{kind}. - Pecahkan masalah sumber daya tertentu — Minta asisten untuk menganalisis atau memecahkan masalah pod seperti
example-podmenggunakan endpointPOST /api/v1/mcp/troubleshoot. - Tinjau commit GitLab — Minta analisis commit melalui endpoint
POST /api/v1/mcp/commituntuk mendapatkan wawasan berbasis AI. - Periksa aplikasi ArgoCD — Minta daftar semua aplikasi ArgoCD melalui
GET /api/v1/argocd/applications. - Kueri AI kustom pada sumber daya — Kirim permintaan MCP generik (
POST /api/v1/mcp) dengan kueri kustom tentang sumber daya apa pun di cluster Anda.
Dokumentasi
Claude Kubernetes MCP Server
Sebuah server Model Context Protocol (MCP) untuk manajemen klaster Kubernetes dengan integrasi ArgoCD dan GitLab.
Repositori ini berisi server Claude Kubernetes MCP (Model Context Protocol), yang dibangun dengan Go. Server ini terintegrasi dengan ArgoCD, GitLab, Claude AI, dan Kubernetes untuk memungkinkan kontrol dan otomatisasi tingkat lanjut pada lingkungan Kubernetes.
Lihat Dokumentasi Kami Di Sini
Daftar Isi
- Ringkasan
- Prasyarat
- Petunjuk Pengaturan
- Konfigurasi
- Menjalankan Secara Lokal
- Membangun dan Menjalankan dengan Docker
- Deployment Produksi
- Dokumentasi API
- Koleksi Postman
- Lisensi
Ringkasan
Server ini dirancang untuk mengorkestrasi workload Kubernetes menggunakan Claude AI, GitLab, ArgoCD, dan Vault. Server ini mengekspos REST API yang memungkinkan interaksi terprogram dengan sistem-sistem tersebut, digerakkan oleh config.yaml yang dikonfigurasi dan diautentikasi menggunakan kunci API.
Prasyarat
- Go 1.20+
- Docker
- Klaster Kubernetes &
~/.kube/configyang valid - Klaster EKS dengan AWS_PROFILE yang disetel secara lokal
- Kredensial ArgoCD
- Token akses pribadi GitLab
- Kunci API Claude (Anthropic)
- Kredensial Vault (opsional, tergantung penggunaan)
Petunjuk Pengaturan
1. Klon Repositori
git clone https://github.com/blankcut/kubernetes-mcp-server.git
cd kubernetes-mcp-server
2. Ekspor Variabel Lingkungan yang Diperlukan
Ekspor kredensial untuk ArgoCD, GitLab, dan Claude:
export ARGOCD_USERNAME="argocd-username"
export ARGOCD_PASSWORD="argocd-password"
export GITLAB_TOKEN="gitlab-token"
export CLAUDE_API_KEY="claude-api-key"
export VAULT_TOKEN="optional-if-using-vault"
Pastikan kubeconfig tersedia:
export KUBECONFIG=~/.kube/config
3. Konfigurasi config.yaml
Perbarui kubernetes-claude-mcp/config.yaml dengan kredensial dan preferensi server:
server:
address: ":8080"
readTimeout: 30
writeTimeout: 60
auth:
apiKey: ""${API_KEY}""
kubernetes:
kubeconfig: ""
inCluster: false
defaultContext: ""
defaultNamespace: "default"
argocd:
url: "http://example.argocd.com"
authToken: ""
username: "${ARGOCD_USERNAME}"
password: "${ARGOCD_PASSWORD}"
insecure: true
gitlab:
url: "https://gitlab.com"
authToken: "${AUTH_TOKEN}"
apiVersion: "v4"
projectPath: ""${PROJECT_PATH}""
claude:
apiKey: "${API_KEY}"
baseURL: "https://api.anthropic.com"
modelID: "claude-sonnet-4.5-20250514"
maxTokens: 8192
temperature: 0.3
Anda dapat menggunakan template Go yang disediakan atau metode interpolasi variabel lingkungan.
4. Tambahkan Kunci API untuk Postman
Pastikan config.yaml menyertakan apiKey. Ini akan digunakan untuk mengautentikasi permintaan di Postman atau klien eksternal lainnya.
Menjalankan Secara Lokal
cd kubernetes-claude-mcp
go run ./cmd/server/main.go
Dengan Log Debug:
LOG_LEVEL=debug go run ./cmd/server/main.go --config config.yaml
Server akan mulai dan terikat ke port yang dikonfigurasi di config.yaml (default: 8080).
Membangun dan Menjalankan dengan Docker
1. Bangun Image
cd kubernetes-claude-mcp
docker build -t claude-mcp-server -f Dockerfile .
2. Jalankan Kontainer (opsi build kedua disertakan)
cd kubernetes-claude-mcp
docker-compose build
docker-compose up -d
Deployment Produksi
Sebuah Helm chart disertakan dalam repositori untuk deployment Kubernetes:
1. Navigasi ke Direktori Helm Chart
cd kubernetes-claude-mcp/deployments/helm
2. Deploy dengan Helm
Perbarui values.yaml dengan nilai yang sesuai dan jalankan:
helm install claude-mcp .
Untuk upgrade:
helm upgrade claude-mcp .
Pastikan secrets dan config maps terpasang dengan benar dan aman di dalam klaster.
Dokumentasi API
Di bawah ini adalah endpoint utama yang diekspos oleh server MCP. Semua permintaan memerlukan header X-API-Key:
Umum
- Health Check
GET /api/v1/health
Kubernetes
- Daftar Namespace
GET /api/v1/namespaces
- Daftar Sumber Daya
GET /api/v1/resources/{kind}?namespace={ns}
- Dapatkan Sumber Daya Tertentu
GET /api/v1/resources/{kind}/{name}?namespace={ns}
- Dapatkan Event untuk Sumber Daya
GET /api/v1/events?namespace={ns}&resource={kind}&name={name}
ArgoCD
- Daftar Aplikasi
GET /api/v1/argocd/applications
Endpoint Claude MCP
- Analisis Sumber Daya
POST /api/v1/mcp/resource
- Pemecahan Masalah Sumber Daya
POST /api/v1/mcp/troubleshoot
- Analisis Komit (GitLab)
POST /api/v1/mcp/commit
- Permintaan MCP Umum
POST /api/v1/mcp
Semua endpoint POST menerima payload JSON yang berisi bidang seperti:
{
"resource": "pod",
"name": "example-pod",
"namespace": "default",
"query": "What’s wrong with this pod?"
}
Koleksi Postman
Koleksi Postman yang siap digunakan akan segera tersedia.
Donasi
Silakan berkontribusi pada dana kopi kami untuk membantu kami terus melakukan hal-hal hebat Beli Saya Kopi
Lisensi
Proyek ini dilisensikan di bawah Lisensi MIT.
Kontribusi
Dokumentasi akan segera diperluas. Jika Anda ingin berkontribusi, silakan buka pull request atau ajukan issue!