可扩展的Kubernetes MCP服务器
一个干净的基础模型上下文协议(MCP)服务器,可以复制所有 kubernetes mcp服务器 功能。这是构建自定义扩展的起点,同时保持与原始服务器的完全兼容性。
特性
- 完全兼容k8s mcp服务器:为kubernetes mcp服务器提供相同的功能和CLI接口
- 所有基本Kubernetes工具:所有标准Kubernetes工具(Pod、部署、服务、命名空间等)
- Helm集成:全面的Helm图表管理支持
- 多集群支持:具有目标参数注入的多集群操作
- 双重运输支持:支持带有SSE端点的stdio(默认)和HTTP传输
- 可扩展架构:为自定义工具集开发准备了干净的基础
建筑
此服务器提供:
- 相同的界面:与kubernetes mcp服务器相同的CLI标志和行为
- 相同的工具集:所有基础工具集(核心、配置、helm、kiali)
- 相同的运输:完全相同的stdio和HTTP/SSE服务器实现
- 扩展就绪:用于添加自定义工具集的干净架构
可用工具
该服务器提供了与kubernetes mcp服务器相同的所有工具:
Kubernetes核心工具
- Pod操作(列表、获取、删除、日志、执行、运行、顶部)
- 通用资源操作(创建、获取、列出、删除)
- 命名空间和事件管理
- 节点操作和指标
Helm工具
- 图表安装和管理
- 发布列表和操作
配置工具
- Kubeconfig查看和管理
Kiali工具(如有)
- 服务网格可观测性集成
安装
先决条件
- 转到1.25或更高版本
- 访问Kubernetes集群
- kubectl配置了适当的权限
- kubernetes mcp服务器 作为兄弟目录
从源代码构建
# Clone both repositories
git clone https://github.com/containers/kubernetes-mcp-server.git
git clone https://github.com/friedrichwilken/extendable-kubernetes-mcp-server.git
cd extendable-kubernetes-mcp-server
# Build the server
make build用法
该服务器提供与kubernetes mcp服务器相同的用法:
STDIO模式(默认)
# Start server in stdio mode
./build/extendable-k8s-mcp
# With specific kubeconfig
./build/extendable-k8s-mcp --kubeconfig ~/.kube/config
# With specific toolsets
./build/extendable-k8s-mcp --toolsets core,helmHTTP模式
# Start HTTP server on port 8080
./build/extendable-k8s-mcp --port 8080
# With public HTTPS host
./build/extendable-k8s-mcp --port 8443 --sse-base-url https://example.com:8443配置选项
支持所有kubernetes mcp服务器标志:
--kubeconfig:kubeconfig文件的路径--port:HTTP服务器端口(启用HTTP模式)--sse-base-url:SSE端点的公共基URL--toolsets:以逗号分隔的要使用的工具集列表--list-output:输出格式(yaml、表格)--read-only:启用只读模式--disable-destructive:禁用破坏性操作--disable-multi-cluster:禁用多集群工具--log-level:设置日志级别(0-9)
测试
该项目采用全面的三层测试策略来确保可靠性和兼容性。有关测试方法的详细信息,请参阅 测试.md.
发展
项目结构
extendable-kubernetes-mcp-server/
├── cmd/ # Main application entry point
├── pkg/cmd/ # CLI command structure
├── test/ # Comprehensive testing infrastructure
├── Makefile # Build and development tasks
├── go.mod # Go module definition
└── README.md # This file建筑扩建
此服务器为构建自定义MCP工具集提供了干净的基础:
- 添加自定义工具集:实施
api.Toolsetkubernetes mcp服务器的接口 - 注册工具集:使用
toolsets.Register()在初始化代码中 - 遵循模式:使用与现有kubernetes mcp服务器工具集相同的模式
依赖项
- 基于kubernetes mcp服务器,通过go.mod replace指令
- 使用相同的Kubernetes客户端库(v0.34.2)
- 使用模型上下文协议SDK(v1.1.0)
兼容性
此服务器旨在作为kubernetes mcp服务器的直接替代品:
- ✅ 相同的CLI界面和标志
- ✅ 相同的MCP工具和功能
- ✅ 相同的传输协议(stdio、HTTP/SSE)
- ✅ 相同的身份验证和授权
- ✅ 相同的多集群支持
- ✅ 相同的输出格式和行为
许可证
MIT许可证-请参阅 许可证 了解详情。
致谢
本项目基于并扩展 kubernetes mcp服务器 由容器组织。原始项目的许可证是Apache License 2.0。我们衷心感谢他们的出色工作,这为这个可扩展版本奠定了基础。
原始项目的主要贡献:
- 核心MCP协议实现
- Kubernetes客户端集成模式
- 工具集架构和接口
- 多集群支撑设计
- HTTP/SSE传输实现
贡献
该项目是扩展kubernetes mcp服务器的基础。准备添加自定义功能时:
- 按照kubernetes mcp服务器模式实现自定义工具集
- 在初始化代码中注册新的工具集
- 保持与基本kubernetes mcp服务器接口的兼容性
- 针对真实的Kubernetes集群进行彻底测试
