项目简介

Evergreen MCP 服务器是一个基于 Model Context Protocol (MCP) 的服务器实现,专门为 AI 助手和 MCP 客户端提供对 MongoDB Evergreen CI/CD 平台的完整访问能力。它允许 AI 助手帮助开发人员分析构建失败、查看测试日志、诊断 CI/CD 问题。

主要功能

  • 项目资源访问:查看 Evergreen 项目列表和构建状态
  • 失败任务分析:获取特定提交的失败作业和日志
  • 单元测试失败详情:获取单个单元测试失败的详细日志和元数据
  • 任务日志检索:获取失败任务的详细日志,支持错误过滤
  • 用户补丁管理:浏览和选择用户最近的补丁进行分析
  • 智能项目检测:自动从用户工作目录和最近活动推断项目 ID
  • 认证支持:支持 API 密钥和 OIDC 设备流两种认证方式
  • 异步操作:基于 asyncio 的高效并发操作
  • GraphQL 集成:使用 Evergreen 的 GraphQL API 进行高效数据检索

安装步骤

Docker 安装(推荐)

# OIDC 认证方式(最安全)
docker run --rm -i \
  -v ~/.kanopy/token-oidclogin.json:/home/evergreen/.kanopy/token-oidclogin.json:ro \
  -v ~/.evergreen.yml:/home/evergreen/.evergreen.yml:ro \
  ghcr.io/evergreen-ci/evergreen-mcp-server:latest

开发环境安装

  1. 克隆仓库:'git clone https://github.com/evergreen-ci/evergreen-mcp-server.git'
  2. 创建 Python 虚拟环境:'python -m venv .venv'
  3. 激活虚拟环境,然后安装依赖:'pip install -e .'

客户端配置

在支持 MCP 的 AI 客户端(如 Claude Desktop、VS Code 等)中配置:

{
  "mcpServers": {
    "evergreen": {
      "command": "docker",
      "args": [
        "run", "--rm", "-i",
        "-v", "${HOME}/.kanopy/token-oidclogin.json:/home/evergreen/.kanopy/token-oidclogin.json:ro",
        "-v", "${HOME}/.evergreen.yml:/home/evergreen/.evergreen.yml:ro",
        "ghcr.io/evergreen-ci/evergreen-mcp-server:latest"
      ]
    }
  }
}

基本使用方法

  1. 配置 Evergreen 凭据文件 '~/.evergreen.yml'
  2. 启动 MCP 服务器(通过 Docker 或本地执行)
  3. AI 助手即可调用以下工具:
    • 列出用户最近的补丁
    • 获取补丁的失败任务
    • 查看特定任务的详细日志
  4. 分析单元测试失败详情

服务器通过 stdio 与客户端通信,提供完整的 CI/CD 故障诊断能力。

信息

分类

开发者工具