Kopilot MCP

Kopilot MCP

site icon
2025.04.01 0
Kubernetes 工具AI 代理开发效率
Kopilot MCP 是一个基于 MCP(Model Context Protocol)的 Kubernetes AI 代理工具,旨在通过自然语言与 Kubernetes 资源进行交互。它允许用户使用类似 `kubectl` 的命令来操作 Kubernetes 集群,同时支持自定义 LLM(大型语言模型)提供商。该项目是作者之前项目的重构版本,专注于利用 MCP 标准化工具调用。
View on GitHub

Overview

基本能力

产品定位

Kopilot MCP 是一个 Kubernetes AI 代理工具,旨在通过自然语言简化 Kubernetes 资源的操作和管理。

核心功能

  1. 自然语言交互:用户可以通过自然语言与 Kubernetes 资源进行交互,无需记忆复杂的 kubectl 命令。
  2. 自定义 LLM 提供商:支持用户选择不同的 LLM 提供商来执行 Kubernetes 操作。
  3. MCP 标准化:利用 MCP 协议标准化工具调用,确保操作的统一性和可扩展性。
  4. Kubernetes 资源管理:支持查询和管理 Kubernetes 集群中的各种资源(如 Pod、Namespace 等)。

适用场景

  1. Kubernetes 开发与运维:简化开发者和运维人员对 Kubernetes 集群的操作。
  2. 自动化工具集成:作为自动化工具的一部分,提供自然语言接口。
  3. 教育与学习:帮助新手快速上手 Kubernetes,无需记忆复杂命令。

工具列表

  1. MCP Client:用于启动 MCP 服务器并与用户交互。
  2. MCP Server:核心服务,处理自然语言请求并转换为 Kubernetes 操作。
  3. MCP Server Factory:用于创建和管理 MCP 服务器实例。

常见问题解答

  1. 如何配置 LLM 提供商:需要在 config/dev/config.toml 中配置 LLM 提供商的 API 密钥。
  2. 如何启动服务:运行 uv run mcp_client.py 启动 MCP 客户端和服务端。
  3. 如何退出交互:在提示符中输入 exitquitq 即可退出。

使用教程

使用依赖

  1. Python 3.12+:确保已安装 Python 3.12 或更高版本。
  2. uv:安装 uv 工具,用于依赖管理。 bash pip install uv
  3. LLM 提供商 API 密钥:例如 OpenRouter 的 API 密钥。
  4. Kubernetes 集群:例如使用 kind 创建的本地集群。

安装教程

  1. 克隆仓库: bash git clone <repository-url>
  2. 配置 config/dev/config.toml:复制 example.toml 并重命名为 config.toml,填写必要的配置。
  3. 安装依赖: bash uv sync

调试方式

  1. 启动 MCP 客户端: bash uv run mcp_client.py
  2. 在提示符中输入自然语言命令,例如: bash Get po in kube-system ns
  3. 查看返回的 Kubernetes 资源信息。

许可证

该项目遵循 MIT 开源许可条款,请参阅 MIT 了解完整条款。