项目简介
Drone CI MCP 服务器是一个基于 Model Context Protocol (MCP) 构建的后端服务,旨在让大型语言模型 (LLM) 能够安全、标准化地访问 Drone CI 系统中的构建信息和日志。通过将 Drone CI 的功能封装成可调用的工具,它使得 LLM 能够理解和响应与持续集成/持续部署 (CI/CD) 构建状态相关的查询或请求。
主要功能点
- 获取构建信息: 允许 LLM 查询特定仓库和构建号的详细信息,包括构建状态、阶段和步骤信息。
- 获取构建日志: 允许 LLM 查询特定构建、阶段和步骤的详细执行日志。
- 标准化接口: 通过 MCP 标准暴露功能,易于与任何支持 MCP 协议的 LLM 客户端集成。
- 只读访问: 当前版本只支持读取 Drone CI 数据,不提供修改或触发操作的能力。
安装步骤
- 确保您已安装 Node.js 和 npm (或 yarn)。
- 从 GitHub 克隆或下载项目源代码。
- 在项目根目录运行以下命令安装依赖:
或使用 yarn:npm installyarn install - 构建项目:
构建完成后,可执行文件通常会在 'dist/' 目录下生成。npm run build
服务器配置(用于 MCP 客户端)
MCP 客户端需要知道如何启动 Drone CI MCP 服务器进程以便与其通信。您需要在 MCP 客户端的配置中添加一个新的服务器条目,指定以下信息:
- 服务器名称: 一个唯一的标识符,例如 '"drone-ci"'。
- 启动命令 (command): 执行 MCP 服务器的可执行文件路径。这通常是您安装并构建项目后生成的脚本路径,例如 '/path/to/your/installed/drone-ci-mcp/dist/index.js' (具体路径取决于您的安装方式和操作系统)。
- 启动参数 (args): 启动服务器时需要传递的命令行参数。必须提供 Drone CI 的访问令牌和服务器 URL。
- '--access-token=<token>':您的 Drone CI API 访问令牌。
- '--server-url=<drone-server-url>':您的 Drone CI 服务器的完整 URL (例如 'https://drone.example.com')。
配置示例(概念说明,非实际代码):
// MCP 客户端的配置片段 { "servers": [ { "name": "drone-ci", "command": "/path/to/your/installed/drone-ci-mcp/dist/index.js", "args": [ "--access-token=YOUR_DRONE_ACCESS_TOKEN", "--server-url=YOUR_DRONE_SERVER_URL" ] } // ... 其他服务器配置 ] }
请将 'YOUR_DRONE_ACCESS_TOKEN' 和 'YOUR_DRONE_SERVER_URL' 替换为您的实际 Drone CI 凭据和服务器地址,并将 'command' 路径替换为实际的可执行文件路径。
基本使用方法(通过 LLM)
一旦在 MCP 客户端中配置并连接了 Drone CI MCP 服务器,LLM 就能够识别并使用该服务器暴露的工具。LLM 可以通过自然语言理解用户的意图,并自动调用相应的工具来获取信息。
例如,您可以向 LLM 提问:
- "请帮我查一下 'my-org/my-repo' 仓库第 123 次构建的状态。" (LLM 可能会调用 'drone_build_info' 工具)
- "获取 'another-repo/project' 仓库第 456 次构建中,第 1 阶段第 3 步的日志。" (LLM 可能会调用 'drone_build_logs' 工具)
工具的输出(构建信息或日志)将以结构化的文本格式(如 YAML 或 Shell 日志块)返回给 LLM,LLM 再将其整合并以自然语言的方式呈现给用户。
信息
分类
开发者工具