返回 MCP 目录
public公开dns本地运行

Kubernetes

一个基于MCP协议的Kubernetes管理服务器,通过自然语言交互实现对Kubernetes集群的控制。

article

README

🚀 MCP Kubernetes 服务器

这是一个通过与大语言模型(LLMs)交互来控制Kubernetes集群的MCP(Model Context Protocol)服务器,借助它能更便捷地管理Kubernetes资源。

🚀 快速开始

此客户端允许您通过MCP工具执行常见的Kubernetes操作。它封装了kubectl命令,提供了一个简单的接口来管理Kubernetes资源。MCP使语言模型与Kubernetes操作之间的交互无缝衔接。

✨ 主要特性

什么是MCP?

MCP是一个框架,使得语言模型能够以结构化的方式与外部工具和服务进行交互。它提供了:

  • 向语言模型暴露功能的标准化方法
  • 操作上下文管理
  • 工具发现和文档记录
  • 语言模型与工具之间的类型安全交互

💻 使用示例

基础用法

以下是一些使用该MCP服务器的常见操作示例:

  • 为我创建一个名为nginx-app、镜像为nginx:latest的部署,在生产命名空间中配置3个副本。
  • 将部署nginx-app更新到版本1.19,在生产命名空间中。
  • 将部署nginx-app扩展到5个副本,在生产命名空间中。
  • 获取生产命名空间中的 pods。
  • 获取集群中的所有命名空间。
  • 获取集群中的所有节点。
  • 获取集群中的所有服务。
  • 获取集群中的所有部署。
  • 获取集群中的所有作业。
  • 获取集群中的所有cronjob。
  • 获取集群中的所有状态集。
  • 获取当前上下文。
  • 列出所有上下文。
  • 切换到上下文<上下文名称>。
  • 获取pod< pod名称>在生产命名空间中的日志。
  • 获取生产命名空间中的事件。
  • 为pod< pod名称>添加键1=值1的注释,在生产命名空间中。
  • 从pod< pod名称>删除注释键1,在生产命名空间中。
  • 将标签键1=值1添加到pod< pod名称>,在生产命名空间中。
  • 从pod< pod名称>删除标签键1,在生产命名空间中。
  • 在生产命名空间中将nginx-app部署暴露在80端口上。
  • 将pod、部署、服务名为<资源名称>的本地端口8080转发到生产命名空间中。
  • 在生产命名空间中删除名为<资源名称>的pod、部署、服务、作业、cronjob、状态集、daemonset。

高级用法

计划功能

  • 创建集群角色。
  • 删除集群角色。
  • 创建集群角色绑定。
  • 删除集群角色绑定。
  • 创建命名空间。
  • 删除命名空间。
  • 创建服务账户。
  • 删除服务账户。
  • 创建角色。
  • 删除角色。
  • 创建角色绑定。
  • 删除角色绑定。

📚 详细文档

LLM 集成

此MCP客户端设计用于与大语言模型(LLMs)无缝集成。函数使用@mcp.tool()进行装饰,使它们可以通过MCP框架为LLM可访问。

示例 LLM 提示语

LLM可以通过自然语言与您的Kubernetes集群交互。以下是示例提示:

  • “在生产命名空间中创建一个名为nginx的新部署,具有3个副本”
  • “将nginx-app部署扩展到5个副本”
  • “将nginx-app镜像更新到版本1.19”

LLM将解释这些自然语言请求并调用适当的MCP函数,使用正确的参数。

LLM 集成的优势

  1. 自然语言接口:使用对话式语言管理Kubernetes资源
  2. 减少命令复杂性:无需记住精确的kubectl语法
  3. 错误预防:LLM可以验证输入并提供有用的错误消息
  4. 上下文感知:LLM可以维护操作之间的上下文
  5. 结构化交互:MCP确保类型安全和文档记录的语言模型与工具之间的交互

📦 安装指南

先决条件

  • 配置好的Kubernetes集群
  • 安装并配置了kubectl
  • 安装Python及其包管理工具(如pip)

通过 Smithery 安装

要通过Smithery自动为Claude Desktop安装Kubernetes服务器:

npx -y @smithery/cli install @

项目徽章

smithery badge

help

运行方式说明

cloud

托管运行

托管运行通常表示这个 MCP Server 由服务方环境承载,用户一般按页面提供的连接方式或授权流程接入,不需要在本地长期启动一个 MCP 进程

  1. 打开服务方连接页
  2. 完成授权或复制端点
  3. 在 MCP 客户端中连接
terminal

本地运行 / 其它方式

本地运行通常需要用户在自己的电脑或服务器上安装依赖,把 server_config 复制到 MCP 客户端,并按 env_schema 补齐环境变量、密钥或其它配置

  1. 复制 server_config
  2. 安装所需依赖
  3. 补齐环境变量后重启客户端