1. Cline 使用 Ops
- 查询有哪些集群
- 获取节点的详情
Case 非常简单但数据真实,说明 Cline 已经能够对接 Ops 进行运维操作。至于更复杂的一些 Case 需要更多测试。具体的玩法可能在于: 给定一些特定的 Workspace 作为上下文信息、设置自定义的指令强化某些特征等。
2. Cline 配置 Ops MCP
2.1 前提条件
- 使用 Cline 需要自行准备模型 API
- 已经使用 Helm 部署好 OpsController\OpsServer
如果还没有部署 Ops 服务,请前往 https://www.chenshaowen.com/ops/ 参考。
2.2 升级 Opscli 到最新版本
MCP 有两种导出方式,stdio、sse。 stdio 就是直接在本地执行命令就能支持,sse 需要服务端提供接口支持。
opscli copilot
已经对接上 Ops Server ,Opscli 的 latest 版本已经支持了子命令 opscli mcp
用于导出 MCP 协议。
仅需升级 Opscli,其他服务可以保持之前的版本。
|
|
由于我的域名在武汉地区被墙,无法正常升级的用户请前往 https://github.com/shaowenchen/ops 下载最新的版本。
2.3 Cline 配置
- 配置模型访问
- 添加 MCP Server
|
|
opscli mcp
需要从 OpsServer 获取全部的 Pipeline 作为可用的 function 提供给 Cline 使用。
- 查看 MCP Server
此时应该可以看到 Ops 相关的 Tools 列表,说明 opscli mcp
已经从 OpsServer 获取到了数据。
2.4 Cursor 配置
Cursor 的配置和 Cline 差不多,只是 Cursor 不需要配置模型服务,需要充值会员。
另外,Cursor 的部分模型不支持 Agent,如果手动选择模型,可能会导致无法调用 MCP Server 的服务。
如上图,在 Cursor 中注册成功 MCP Server 之后也可以看到一个可用的 Tools 列表。
3. Copilot vs MCP
在之前的 Ops Copilot 中,我们需要自行规划对用户的输入进行处理,怎么让 LLM 制定计划、怎么执行、怎么记忆、怎么处理当前的上下文信息。
在使用 MCP 导出之后,上面的这些工作全都交给了 Cline\Cursor 这样的产品,他们会帮助 Ops 的用户去分析运维的问题、执行运维操作、在恰当的地方设置断点确认。
对于 Ops 用户来说,Cline\Cursor 无疑能提供更好的产品体验;对于 Ops 开发者来说,MCP 的导出可以大大减轻开发 Copilot 的工作量和难度。
4. 后续计划
- 通过 stdio 导出 MCP 总归不是太方便,OpsServer 的 SSE 要跟上
- 虽然 Cline\Cursor 提供了很好的产品体验,但是这些目前不是服务化的组件,不便于对接各种前端、OA 等,可以多参考,但最终还是要落地到 Ops Copilot 中