使用说明
舰队MCP服务器
Fleet的模型上下文协议(MCP)服务器,使AI助手能够与Fleet的GitOps功能进行交互。
先决条件
- 转到1.21或更高版本 (MCP SDK要求)
- 安装了Fleet的Kubernetes集群
- 访问凭据(kubeconfig或Rancher令牌)
概述
此MCP服务器通过MCP工具公开Fleet资源(GitRepos、Bundles、BundleDeployment、Clusters、ClusterGroups)和操作,允许AI助手:
- 查询GitRepo状态和部署
- 列出并检查捆绑包和捆绑部署
- 管理车队资源(创建、更新、删除)
- 诊断部署问题
- 监控群集运行状况
建筑
服务器遵循以下架构模式 牧场主ai-mcp:
- MCP服务器:支持SSE流媒体的HTTP处理程序
- 工具:作为MCP工具实施的舰队特定操作
- 客户端:Kubernetes动态客户端包装器
- 转换器:将舰队资源类型映射到GroupVersionResources
- 回应:格式化LLM和UI消费的响应
认证
服务器使用Rancher令牌身份验证:
R_token:牧场主持牌人令牌(必填)R_url:Rancher服务器URL(必填)
工具
读取操作
listGitRepos-在命名空间中列出GitReposgetGitRepo-获取GitRepo的详细信息getGitRepoStatus-获取GitRepo部署状态listBundles-列出捆绑包getBundle-获取捆绑包详细信息getBundleDeployments-列出捆绑包的捆绑部署listClusters-列出托管集群getCluster-获取集群详细信息listClusterGroups-列出群集组inspectGitRepo-利用相关资源进行深入检查
写入操作
createGitRepo-创建新的GitRepoupdateGitRepo-更新GitRepo规范patchGitRepo-用JSON补丁修补GitRepodeleteGitRepo-删除GitRepopauseGitRepo--暂停/不愉快forceSyncGitRepo-强制GitRepo重新部署updateBundleTarget-修改捆绑包目标pauseCluster-暂停/取消暂停群集createClusterGroup-创建集群组deleteClusterGroup-删除群集组
诊断操作
getGitRepoEvents-获取GitRepo的事件getBundleDeploymentDetails-BundleDeployment详细故障排除getFleetAgentStatus-检查车队代理的健康状况
发展
# Build
go build -o fleet-mcp
# Run locally
./fleet-mcp
# Run tests
go test ./...
部署
服务器被设计为在具有适当RBAC的Kubernetes集群中运行:
kubectl apply -f package/fleet-mcp.yaml
TLS配置
服务器需要Kubernetes secrets的TLS证书:
cattle-mcp-tls-服务器证书cattle-mcp-ca-CA证书
集 INSECURE_SKIP_TLS=true 对于开发环境。