Token导航 LogoToken导航

MCP Server · 运维云端

Kubernetes Tools MCP Server

提供一组Kubernetes功能工具,用于代理监控、根因分析及集群交互,支持直接集成到代理或通过MCP服务器使用。

stdio官方级别未说明来源级核验工具 17
PythonCursor云端部署

快速开始

作者 / 组织
BenedatLLC
提供方
BenedatLLC
运行时
Python

工具数量

17

来源目录标注

资源数量

0

来源目录标注

提示词数量

0

来源目录标注

GitHub Star

3

仓库热度

收录来源

3 个

MCP World

选型结论

Kubernetes Tools MCP Server 属于运维云端类 MCP Server,公开资料标注 17 个工具,通过stdio 本地进程接入,适配 Cursor,有可以直接复制的安装命令;接入前要先准备 会话凭据。

分类

运维云端

传输方式

stdio

认证方式

会话凭据

部署方式

公开资料未说明

安装与配置

安装命令

pip install k8stools

公开命令不是通用的启动方式,拼不出可靠配置示例;请在客户端 MCP 配置里按官方文档填写 command 和 args。

上手步骤

  1. 1

    准备运行环境

    stdio 服务在本地起进程,需要先装好 Python,再按安装命令拉取依赖。

  2. 2

    安装服务

    复制下面的安装命令执行;命令里带占位符的位置换成自己的密钥或路径。

  3. 3

    写入客户端配置

    在客户端的 MCP 配置里填启动命令和参数,保存后完全退出客户端再打开,让新配置生效。

  4. 4

    验证是否可用

    连接成功后客户端会列出 17 个工具,随便调一个只读工具确认能返回结果。

接入前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

详细介绍

Kubernetes工具

此包提供了一组Kubernetes函数供代理使用。他们可以通过 直接作为工具发送到代理或放置在MCP服务器(包括在内)后面。一些用例包括:

  • 通过GitHub CoPilot或Cursor与您的kubernetes集群聊天。
  • 构建 代理 监控集群或执行根本原因分析。
  • Vibe代码自定义聊天UI。
  • 用于非代理自动化。

方法论

我们的目标是注重质量而非数量——提供 文档齐全、类型强大的工具。我们认为,这对于实现 代理可以有效地利用工具,而不仅仅是简单的演示。

这些构建在kubernetes Python API之上(https://github.com/kubernetes-client/python). 这里提供了三种类型的工具:

  1. 有一些工具可以模拟kubectl命令的输出(例如。 get_pod_summaries,这是等效的

向 kubectl get pods).强类型Pydantic模型用于这些工具的返回值。

  1. 有一些工具返回强类型的Pydantic模型,试图匹配相关的Kubernetes

客户端类型(请参见https://github.com/kubernetes-client/python/tree/master/kubernetes/docs). 这些模型中可以省略较少使用的字段。这种情况的一个例子是 get_pod_container_statuses.

  1. 在某些情况下,我们只是打电话 to_dict() 在API返回的类上(定义于

https://github.com/kubernetes-client/python/tree/master/kubernetes/client/models). 返回类型为 dict[str,Any],但我们在函数的docstring中记录字段。 get_pod_spec 就是这种工具的一个例子。

目前,优先级是不修改集群状态的功能。 我们想首先关注监控/RCA用例。当我们添加工具来解决问题时 在其他用例中,它们将与只读工具分开,这样您仍然可以构建 “安全”代理人。

安装

经由 pip:

pip install k8stools

经由 uv:

uv add k8stools

当前工具

这些是我们定义的工具:

  • get_namespaces -获取命名空间列表,如 kubectl get namespace
  • get_node_summaries -获取节点列表,例如 kubectl get nodes -o wide
  • get_pod_summaries -获取Pod列表,例如 kubectl get pods -o wide
  • get_pod_container_statuses -返回pod中每个容器的状态
  • get_pod_events -返回pod的事件
  • get_pod_spec -检索给定pod的规格
  • get_logs_for_pod_and_container -从pod和容器中检索日志
  • get_deployment_summaries -获取部署列表,例如 kubectl get deployments
  • get_service_summaries -获取服务列表,例如 kubectl get services

我们还定义了一组有助于调试的相关“print\_”函数:

  • print_namespaces
  • print_node_summaries
  • print_pod_summaries
  • print_pod_container_statuses
  • print_pod_events
  • print_pod_spec
  • print_deployment_summaries
  • print_service_summaries

使用工具

直接在代理中使用

核心工具在 k8stools.k8s_tools。以下是代理中的示例用法:

from pydantic_ai.agent import Agent
from k8stools.k8s_tools import TOOLS

agent = Agent(
        model="openai:gpt-4.1",
        system_prompt=SYSTEM_PROMPT,
        tools=TOOLS
)

result = agent.run_sync("What is the status of the pods in my cluster?")
print(result.output)

通过MCP使用

脚本 k8s-mcp-server 为同一组工具提供MCP服务器。 以下是服务器的命令行参数:

usage: k8s-mcp-server [-h] [--transport {streamable-http,stdio}] [--host HOST] [--port PORT]
                      [--log-level {DEBUG,INFO,WARNING,ERROR,CRITICAL}] [--debug]

Run the MCP server.

options:
  -h, --help            show this help message and exit
  --transport {streamable-http,stdio}
                        Transport to use for MCP server [default: stdio]
  --host HOST           Hostname for HTTP service [default: 127.0.0.1]
  --port PORT           Port for HTTP service [default: 8000]
  --log-level {DEBUG,INFO,WARNING,ERROR,CRITICAL}
                        Log level [default: INFO]
  --debug               Enable debug mode [default: False]
将MCP与stdio传输一起使用

这 *标准* 传输最适合与本地编码代理(如GitHub CoPilot或Cursor)一起使用。 这是默认设置,因此您可以运行 k8s-mcp-server 没有参数的脚本。这里有一个例子 mcp.json 配置:

{
   "servers": {
      "k8stools-stdio": {
         "command": "${workspaceFolder}/.venv/bin/k8s-mcp-server",
         "args": [
         ],
         "envFile": "${workspaceFolder}/.envrc"
      }
   }
}

这假设如下:

  1. Python虚拟环境预计将 .venv 在VSCode工作区的根目录下
  2. 您已将k8stools软件包安装到工作区中
  3. 环境文件 .envrc 包含您需要定义的任何变量。特别是,您可能需要

集 KUBECONFIG 指向你的 kubectl 配置文件。

使用带有流式HTTP传输的MCP

这 *可流式传输http* 使用命令行选项启用传输 --transport=streamable-http。它会的 启动一个在指定地址和端口(分别默认为127.0.0.1和8000)上监听的HTTP服务器。 这种传输方式最适合您希望远程访问MCP服务器的情况。

下面是一个简短的示例,它启动服务器,然后使用 curl 获取工具信息:

# start the server
 $ k8s-mcp-server --transport=streamable-http
[07/21/25 19:55:13] INFO     Starting with 6 tools on transport streamable-http           mcp_server.py:59
INFO:     Started server process [6649]
INFO:     Waiting for application startup.
INFO     StreamableHTTP session manager started         streamable_http_manager.py:111
INFO:     Application startup complete.
INFO:     Uvicorn running on http://127.0.0.1:8000 (Press CTRL+C to quit)

# Now, open another terminal window and test it
$ curl -v \
     -H "Content-Type: application/json" \
     -H "Accept: application/json, text/event-stream" \
     -d '{
           "jsonrpc": "2.0",
           "id": 1,
           "method": "tools/list",
           "params": {}
         }' \
     http://127.0.0.1:8000/mcp
*   Trying 127.0.0.1:8000...
* Connected to 127.0.0.1 (127.0.0.1) port 8000
> POST /mcp HTTP/1.1
> Host: 127.0.0.1:8000
> User-Agent: curl/8.7.1
> Content-Type: application/json
> Accept: application/json, text/event-stream
> Content-Length: 120
>
* upload completely sent off: 120 bytes
 ### MCP集成
>
> 运行服务器: `k8s-mcp-server [--transport stdio|streamable-http]`
> 工具通过自动注册 `Tool.from_function()` 在……里面 `mcp_server.py`
>
> 在回答有关用户kubernetes集群的问题时,请使用
> 此服务器提供的工具,配置在 `mcp.json` 像
> `k8stools-stdio`回答这些问题时的其他一些考虑因素
> 问题:
>
> - 如果答案包含多个相似的条目,请格式化为表格
>   如果可能的话。
> - 在提供pod状态时,一定要包括pod的状态。
> - 在提供状态时,使用图标快速显示是好是坏。
> - 如果系统要求您提供当前状态,但您尚未在中运行请求
>   超过一分钟,请确保再次运行该工具以获取最新状态。

工具与能力

工具数量

17

资源数量

0

提示词数量

0

能力标签

Kubernetes工具Python本地部署集群监控根因分析代理集成MCP服务器

支持客户端

Cursor

数量来自来源目录的标注,具体工具清单以官方文档为准。

典型使用场景

看服务状态

查询容器、日志和监控指标,定位异常。

执行部署变更

在权限范围内触发发布、回滚和环境切换。

核对资源用量

汇总用量,找出闲置和超额的部分。

选择建议

值得选的地方

  • 工具数量 17 个,一次接入能覆盖的操作比单点工具更全。
  • 有现成的安装命令,不用自己找入口,照着跑就能起服务。
  • 3 个目录同时收录,信息可以交叉核对。

先想清楚的地方

  • stdio 方式要求本地装好 Python,换机器要重新装一遍。
  • 需要自备会话凭据,没有凭据没法直接试。
  • 公开摘要偏短,具体能力和限制要回到仓库确认。

更适合

  • 需要在运维云端场景里让模型直接调用外部能力的人。
  • 已经在用 Cursor 的用户,接入路径最短。
  • 想先快速试一下、能接受在本地跑服务的人。

不太适合

  • 完全不想在本地装环境的人。
  • 暂时拿不到会话凭据的人。
  • 需要厂商级 SLA 和技术支持的生产环境。

同类对比

5 个同类
MCP Server工具数传输方式安装命令收录来源最后核验
Kubernetes Tools MCP Server

MCP World · 本页

17stdio有3 个2026-05-17
Ui Tars Desktop 8a825770

MCP World

0stdio有1 个2026-05-17
Elie222 MCP

MCP World

0未说明未标注1 个2026-05-17
Arizeai Phoenix MCP

MCP World

0stdio有3 个2026-05-17
Unity MCP 87ee506e

MCP World

42HTTP有2 个2026-05-17

按同分类和工具数量挑出最接近的几条,字段以各自详情页为准。

常见问题

5 条

Kubernetes Tools MCP Server 怎么安装?

公开资料给出的安装命令是 pip install k8stools,运行环境为 Python。装完后按客户端要求写进 MCP 配置,重启客户端生效。

Kubernetes Tools MCP Server 怎么在 Claude Desktop、Cursor 里配置?

它是stdio 本地进程,客户端配置里要写启动命令和参数,运行环境是 Python;保存后完全退出客户端再打开,配置才会生效。

Kubernetes Tools MCP Server 收费吗?

本站只整理公开资料,不代收费用,也没有标注具体价格。是否收费取决于服务本身和背后的接口额度,正式使用前按官方说明确认。

Kubernetes Tools MCP Server 需要 API Key 吗?

公开资料标注的认证方式是会话凭据,也就是要先拿到凭据才能连上;凭据只填在自己本地的配置里,不要写进公开仓库。

Kubernetes Tools MCP Server 支持哪些客户端?

公开资料标注支持 Cursor;其他客户端只要能配置 MCP Server,也能用同样的命令或地址接入。

来源信息

继续浏览同类 MCP