Kubernetes MCP Server

आधिकारिक

एक Claude Kubernetes MCP सर्वर, जो Go में बनाया गया है। यह सर्वर ArgoCD, GitLab, Claude AI और Kubernetes के साथ एकीकृत होता है ताकि Kubernetes वातावरणों का उन्नत नियंत्रण और स्वचालन सक्षम हो सके।

Kubernetes MCP के साथ आप क्या कर सकते हैं?

  • क्लस्टर संसाधनों का निरीक्षण करें — अपने सहायक से GET /api/v1/namespaces और GET /api/v1/resources/{kind} के माध्यम से किसी भी प्रकार के नेमस्पेस या संसाधनों की सूची माँगें।
  • किसी विशिष्ट संसाधन का समस्या निवारण करें — सहायक से example-pod जैसे पॉड का विश्लेषण या समस्या निवारण POST /api/v1/mcp/troubleshoot एंडपॉइंट का उपयोग करके करवाएँ।
  • GitLab कमिट की समीक्षा करें — POST /api/v1/mcp/commit एंडपॉइंट के माध्यम से कमिट विश्लेषण का अनुरोध करें ताकि AI-संचालित अंतर्दृष्टि प्राप्त हो सके।
  • ArgoCD एप्लिकेशन जाँचें — GET /api/v1/argocd/applications के माध्यम से सभी ArgoCD एप्लिकेशन की सूची माँगें।
  • संसाधनों पर कस्टम AI क्वेरी — अपने क्लस्टर में किसी भी संसाधन के बारे में कस्टम क्वेरी के साथ एक सामान्य MCP अनुरोध (POST /api/v1/mcp) भेजें।

दस्तावेज़

Blank Cut

Claude Kubernetes MCP सर्वर

CI Release Docker Pulls Docker Image Size Go Report Card License GitHub release

ArgoCD और GitLab एकीकरण के साथ Kubernetes क्लस्टर प्रबंधन के लिए एक Model Context Protocol (MCP) सर्वर।

इस रिपॉजिटरी में Claude Kubernetes MCP (Model Context Protocol) सर्वर शामिल है, जो Go में निर्मित है। यह सर्वर ArgoCD, GitLab, Claude AI, और Kubernetes के साथ एकीकृत होता है ताकि Kubernetes वातावरण का उन्नत नियंत्रण और स्वचालन सक्षम हो सके।

हमारे दस्तावेज़ यहाँ देखें

विषय-सूची


अवलोकन

यह सर्वर Claude AI, GitLab, ArgoCD, और Vault का उपयोग करके Kubernetes कार्यभार को व्यवस्थित करने के लिए डिज़ाइन किया गया है। यह एक REST API प्रदर्शित करता है जो इन प्रणालियों के साथ प्रोग्रामेटिक इंटरैक्शन की अनुमति देता है, जो एक कॉन्फ़िगर किए गए config.yaml द्वारा संचालित होता है और API कुंजी का उपयोग करके प्रमाणित होता है।

पूर्वापेक्षाएँ

  • Go 1.20+
  • Docker
  • Kubernetes क्लस्टर और मान्य ~/.kube/config
  • AWS_PROFILE स्थानीय रूप से सेट के साथ EKS क्लस्टर
  • ArgoCD क्रेडेंशियल
  • GitLab व्यक्तिगत एक्सेस टोकन
  • Claude API कुंजी (Anthropic)
  • Vault क्रेडेंशियल (वैकल्पिक, उपयोग पर निर्भर)

सेटअप निर्देश

1. रिपॉजिटरी क्लोन करें

git clone https://github.com/blankcut/kubernetes-mcp-server.git
cd kubernetes-mcp-server

2. आवश्यक पर्यावरण चर निर्यात करें

ArgoCD, GitLab, और 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"

सुनिश्चित करें कि kubeconfig उपलब्ध है:

export KUBECONFIG=~/.kube/config

3. config.yaml कॉन्फ़िगर करें

क्रेडेंशियल और सर्वर प्राथमिकताओं के साथ kubernetes-claude-mcp/config.yaml अपडेट करें:

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

आप प्रदान किए गए Go टेम्पलेट या पर्यावरण चर इंटरपोलेशन विधि का उपयोग कर सकते हैं।

4. Postman के लिए API कुंजी जोड़ें

कृपया सुनिश्चित करें कि एक config.yaml में एक apiKey शामिल है। इसका उपयोग Postman या किसी बाहरी क्लाइंट में अनुरोधों को प्रमाणित करने के लिए किया जाएगा।


स्थानीय रूप से चलाना

cd kubernetes-claude-mcp
go run ./cmd/server/main.go

डीबग लॉगिंग के साथ:

LOG_LEVEL=debug go run ./cmd/server/main.go --config config.yaml

सर्वर शुरू होगा और config.yaml में कॉन्फ़िगर किए गए पोर्ट से बंध जाएगा (डिफ़ॉल्ट: 8080)।


Docker के साथ निर्माण और चलाना

1. इमेज बनाएं

cd kubernetes-claude-mcp
docker build -t claude-mcp-server -f Dockerfile .

2. कंटेनर चलाएं (दूसरा बिल्ड विकल्प शामिल)

cd kubernetes-claude-mcp
docker-compose build
docker-compose up -d

उत्पादन परिनियोजन

Kubernetes परिनियोजन के लिए रिपॉजिटरी में एक Helm चार्ट शामिल है:

1. Helm चार्ट निर्देशिका पर नेविगेट करें

cd kubernetes-claude-mcp/deployments/helm

2. Helm के साथ परिनियोजित करें

उपयुक्त मानों के साथ values.yaml अपडेट करें और चलाएं:

helm install claude-mcp .

अपग्रेड करने के लिए:

helm upgrade claude-mcp .

कृपया सुनिश्चित करें कि क्लस्टर में रहस्य और कॉन्फ़िग मैप ठीक से माउंट और सुरक्षित हैं।


API दस्तावेज़ीकरण

नीचे MCP सर्वर द्वारा प्रदर्शित प्राथमिक एंडपॉइंट हैं। सभी अनुरोधों के लिए X-API-Key हेडर की आवश्यकता होती है:

सामान्य

  • स्वास्थ्य जांच
    • GET /api/v1/health

Kubernetes

  • नेमस्पेस सूचीबद्ध करें
    • GET /api/v1/namespaces
  • संसाधन सूचीबद्ध करें
    • GET /api/v1/resources/{kind}?namespace={ns}
  • विशिष्ट संसाधन प्राप्त करें
    • GET /api/v1/resources/{kind}/{name}?namespace={ns}
  • किसी संसाधन के लिए ईवेंट प्राप्त करें
    • GET /api/v1/events?namespace={ns}&resource={kind}&name={name}

ArgoCD

  • एप्लिकेशन सूचीबद्ध करें
    • GET /api/v1/argocd/applications

Claude MCP एंडपॉइंट

  • संसाधन का विश्लेषण करें
    • POST /api/v1/mcp/resource
  • संसाधन का समस्या निवारण करें
    • POST /api/v1/mcp/troubleshoot
  • विश्लेषण प्रतिबद्ध करें (GitLab)
    • POST /api/v1/mcp/commit
  • सामान्य MCP अनुरोध
    • POST /api/v1/mcp

सभी POST एंडपॉइंट निम्नलिखित फ़ील्ड वाले JSON पेलोड स्वीकार करते हैं:

{
  "resource": "pod",
  "name": "example-pod",
  "namespace": "default",
  "query": "What’s wrong with this pod?"
}

Postman संग्रह

एक उपयोग-के-लिए-तैयार Postman संग्रह जल्द ही उपलब्ध होगा।

दान

कृपया हमारे कॉफी फंड में योगदान करें ताकि हमें महान काम जारी रखने में मदद मिल सके मुझे कॉफी खरीदें

लाइसेंस

यह परियोजना MIT लाइसेंस के तहत लाइसेंस प्राप्त है।


योगदान

दस्तावेज़ीकरण जल्द ही विस्तारित किया जाएगा। यदि आप योगदान देना चाहते हैं, तो बेझिझक एक पुल अनुरोध खोलें या एक मुद्दा दर्ज करें!