Claude Kubernetes Mcp Server

Claude Kubernetes Mcp Server

🚀 项目文档

本项目主要用于搭建一个集成了Kubernetes、Argo CD、GitLab和Claude等服务的系统,通过配置文件对各服务进行参数设置,提供了多种运行和部署方式,同时定义了丰富的API接口,方便用户进行资源管理和分析等操作。

🚀 快速开始

快速运行

在项目根目录下,可使用以下命令快速启动服务:

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. 构建镜像

在项目根目录下执行以下命令构建 Docker 镜像:

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

2. 运行容器(第二套构建选项)

同样在项目根目录下,使用 Docker Compose 构建并启动容器:

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

生产部署

项目包含一个 Helm 图表用于 Kubernetes 部署,具体步骤如下:

1. 切换到 Helm 图表目录

cd kubernetes-claude-mcp/deployments/helm

2. 使用 Helm 部署

更新 values.yaml 中的值并运行以下命令进行部署:

helm install claude-mcp .

若需要升级部署,可使用以下命令:

helm upgrade claude-mcp .

请确保在集群中正确挂载和安全配置密钥和配置映射。

📦 服务地址

服务的配置信息存储在 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-3-haiku-20240307"
maxTokens: 4096
temperature: 0.7

💻 使用示例

本项目主要通过 API 接口与服务进行交互,以下是部分 API 接口的使用示例。

基本

健康检查

curl -H "X-API-Key: your_api_key" http://localhost:8080/api/v1/health

Kubernetes

列出命名空间

curl -H "X-API-Key: your_api_key" http://localhost:8080/api/v1/namespaces

列出资源

curl -H "X-API-Key: your_api_key" "http://localhost:8080/api/v1/resources/pods?namespace=default"

Argo CD

列出应用

curl -H "X-API-Key: your_api_key" http://localhost:8080/api/v1/argocd/applications

Claude MCP 端点

分析资源

curl -X POST -H "X-API-Key: your_api_key" -H "Content-Type: application/json" -d '{"data": "your_data"}' http://localhost:8080/api/v1/mcp/resource

📚 详细文档

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}

Argo CD

  • 列出应用
    • GET /api/v1/argocd/applications

Claude MCP 端点

  • 分析资源
    • POST /api/v1/mcp/resource
  • 故障排除资源
    • POST /api/v1/mcp/troubleshoot
  • 提交分析(GitLab)
    • POST /api/v1/mcp/commit
  • 获取提交状态
    • GET /api/v1/mcp/commits/{cluster}

👥 贡献指南

提交代码

若您想为项目贡献代码,可按以下步骤操作:

git clone https://github.com/yourusername/kubernetes-claude-mcp.git
cd kubernetes-claude-mcp
# 修改代码
git add .
git commit -m "提交信息"
git push origin main

提交问题

请通过 Issues 提交问题。

👨‍💻 贡献者

  • [你的名字] - 项目维护者
  • 其他贡献者 - (可选)

📄 许可证

本项目遵循 LICENSE 文件中的许可协议。

感谢您的支持!

  • 0 关注
  • 0 收藏,27 浏览
  • system 提出于 2025-10-05 11:57

相似服务问题

相关AI产品