CircleCI MCP 服务器

CircleCI MCP 服务器是一个基于模型上下文协议(MCP)的服务,允许用户通过自然语言与CircleCI交互,实现如获取构建日志、识别不稳定测试等功能。

  • by mikeysrecipes
  • TypeScript
  • 混合部署
  • 更新于
在 GitHub 查看 mikeysrecipes/mcp-server-circleci

使用说明

CircleCI MCP服务器

模型上下文协议(MCP)是一种 新的标准化协议 用于管理大型语言模型(LLM)和外部系统之间的上下文。在这个存储库中,我们提供了一个MCP服务器 CircleCI.

这允许您使用Cursor IDE、Windsurf、Copilot或任何MCP支持的客户端,使用自然语言完成CircleCI的工作,例如:

  • Find the latest failed pipeline on my branch and get logs https://github.com/CircleCI-Public/mcp-server-circleci/wiki#circleci-带游标ide的mcp服务器

https://github.com/user-attachments/assets/3c765985-8827-442a-a8dc-5069e01edb74

需求

  • CircleCI个人API令牌-您可以通过CircleCI生成一个令牌。 了解更多 或 点击此处 为了快速访问。

对于NPX安装:

对于Docker安装:

安装

光标

在本地MCP服务器中使用NPX

将以下内容添加到光标MCP配置中:

{
  "mcpServers": {
    "circleci-mcp-server": {
      "command": "npx",
      "args": ["-y", "@circleci/mcp-server-circleci"],
      "env": {
        "CIRCLECI_TOKEN": "your-circleci-token",
        "CIRCLECI_BASE_URL": "https://circleci.com" // Optional - required for on-prem customers only
      }
    }
  }
}

在本地MCP服务器中使用Docker

将以下内容添加到光标MCP配置中:

{
  "mcpServers": {
    "circleci-mcp-server": {
      "command": "docker",
      "args": [
        "run",
        "--rm",
        "-i",
        "-e",
        "CIRCLECI_TOKEN",
        "-e",
        "CIRCLECI_BASE_URL",
        "circleci:mcp-server-circleci"
      ],
      "env": {
        "CIRCLECI_TOKEN": "your-circleci-token",
        "CIRCLECI_BASE_URL": "https://circleci.com" // Optional - required for on-prem customers only
      }
    }
  }
}

使用自我管理的远程MCP服务器

将以下内容添加到光标MCP配置中:

{
  "inputs": [
    {
      "type": "promptString",
      "id": "circleci-token", 
      "description": "CircleCI API Token",
      "password": true
    }
  ],
  "servers": {
    "circleci-mcp-server-remote": {
      "url": "http://your-circleci-remote-mcp-server-endpoint:8080/sse"
    }
  }
}

VS代码

在本地MCP服务器中使用NPX

在中安装用于VS代码的CircleCI MCP服务器 .vscode/mcp.json:

{
  // 💡 Inputs are prompted on first server start, then stored securely by VS Code.
  "inputs": [
    {
      "type": "promptString",
      "id": "circleci-token",
      "description": "CircleCI API Token",
      "password": true
    },
    {
      "type": "promptString",
      "id": "circleci-base-url",
      "description": "CircleCI Base URL",
      "default": "https://circleci.com"
    }
  ],
  "servers": {
    // https://github.com/ppl-ai/modelcontextprotocol/
    "circleci-mcp-server": {
      "type": "stdio",
      "command": "npx",
      "args": ["-y", "@circleci/mcp-server-circleci"],
      "env": {
        "CIRCLECI_TOKEN": "${input:circleci-token}",
        "CIRCLECI_BASE_URL": "${input:circleci-base-url}"
      }
    }
  }
}

在本地MCP服务器中使用Docker

在中安装用于VS代码的CircleCI MCP服务器 .vscode/mcp.json 使用Docker:

{
  // 💡 Inputs are prompted on first server start, then stored securely by VS Code.
  "inputs": [
    {
      "type": "promptString",
      "id": "circleci-token",
      "description": "CircleCI API Token",
      "password": true
    },
    {
      "type": "promptString",
      "id": "circleci-base-url",
      "description": "CircleCI Base URL",
      "default": "https://circleci.com"
    }
  ],
  "servers": {
    // https://github.com/ppl-ai/modelcontextprotocol/
    "circleci-mcp-server": {
      "type": "stdio",
      "command": "docker",
      "args": [
        "run",
        "--rm",
        "-i",
        "-e",
        "CIRCLECI_TOKEN",
        "-e",
        "CIRCLECI_BASE_URL",
        "circleci:mcp-server-circleci"
      ],
      "env": {
        "CIRCLECI_TOKEN": "${input:circleci-token}",
        "CIRCLECI_BASE_URL": "${input:circleci-base-url}"
      }
    }
  }
}

使用自我管理的远程MCP服务器

在中安装用于VS代码的CircleCI MCP服务器 .vscode/mcp.json 使用自我管理的远程MCP服务器:

{
  "servers": {
    "circleci-mcp-server-remote": {
      "type": "sse",
      "url": "http://your-circleci-remote-mcp-server-endpoint:8080/sse"
    }
  }
}

克劳德桌面

在本地MCP服务器中使用NPX

将以下内容添加到claude_desktop_config.json中:

{
  "mcpServers": {
    "circleci-mcp-server": {
      "command": "npx",
      "args": ["-y", "@circleci/mcp-server-circleci"],
      "env": {
        "CIRCLECI_TOKEN": "your-circleci-token",
        "CIRCLECI_BASE_URL": "https://circleci.com" // Optional - required for on-prem customers only
      }
    }
  }
}

要查找此文件,请执行以下操作:

macOS: ~/Library/Application Support/Claude/claude_desktop_config.json

窗户: %APPDATA%\Claude\claude_desktop_config.json

Claude桌面设置

在本地MCP服务器中使用Docker

将以下内容添加到claude_desktop_config.json中:

{
  "mcpServers": {
    "circleci-mcp-server": {
      "command": "docker",
      "args": [
        "run",
        "--rm",
        "-i",
        "-e",
        "CIRCLECI_TOKEN",
        "-e",
        "CIRCLECI_BASE_URL",
        "circleci:mcp-server-circleci"
      ],
      "env": {
        "CIRCLECI_TOKEN": "your-circleci-token",
        "CIRCLECI_BASE_URL": "https://circleci.com" // Optional - required for on-prem customers only
      }
    }
  }
}

要查找/创建此文件,请先打开claude桌面设置。然后单击“设置”窗格左侧栏中的“开发人员”,然后单击“编辑配置”

这将在以下位置创建一个配置文件:

  • macOS:~/库/应用程序支持/Claude/Claude_desktop_config json
  • Windows:%APPDATA%\Claude\Claude_desktop_config.json

有关在Claude Desktop中使用MCP服务器的更多信息,请参阅下面的指南: https://modelcontextprotocol.io/quickstart/user

使用自我管理的远程MCP服务器

首先创建包装脚本

创建一个脚本文件,如“circleci remote mcp.sh”:

#!/bin/bash
export CIRCLECI_TOKEN="your-circleci-token"
npx mcp-remote http://your-circleci-remote-mcp-server-endpoint:8080/sse --allow-http 

使其可执行:

chmod +x circleci-remote-mcp.sh

然后将以下内容添加到claude_desktop_config.json中:

{
  "mcpServers": {
    "circleci-remote-mcp-server": {
      "command": "/full/path/to/circleci-remote-mcp.sh"
    }
  }
}

要查找/创建此文件,请先打开Claude Desktop设置。然后单击“设置”窗格左侧栏中的“开发人员”,然后单击“编辑配置”

这将在以下位置创建一个配置文件:

  • macOS:~/库/应用程序支持/Claude/Claude_desktop_config json
  • Windows:%APPDATA%\Claude\Claude_desktop_config.json

有关在Claude Desktop中使用MCP服务器的更多信息,请参阅下面的指南: https://modelcontextprotocol.io/quickstart/user

克劳德代码

在本地MCP服务器中使用NPX

安装Claude Code后,运行以下命令:

claude mcp add circleci-mcp-server -e CIRCLECI_TOKEN=your-circleci-token -- npx -y @circleci/mcp-server-circleci

在本地MCP服务器中使用Docker

安装Claude Code后,运行以下命令:

claude mcp add circleci-mcp-server -e CIRCLECI_TOKEN=your-circleci-token -e CIRCLECI_BASE_URL=https://circleci.com -- docker run --rm -i -e CIRCLECI_TOKEN -e CIRCLECI_BASE_URL circleci:mcp-server-circleci

有关使用带Claude Code的MCP服务器的更多信息,请参阅下面的指南: https://docs.anthropic.com/en/docs/agents-and-tools/claude-code/tutorials#set-up模型上下文协议mcp

使用自管理远程MCP服务器

安装Claude Code后,运行以下命令:

claude mcp add circleci-mcp-server -e CIRCLECI_TOKEN=your-circleci-token -- npx mcp-remote http://your-circleci-remote-mcp-server-endpoint:8080/sse --allow-http

有关使用带Claude Code的MCP服务器的更多信息,请参阅下面的指南: https://docs.anthropic.com/en/docs/agents-and-tools/claude-code/tutorials#set-up模型上下文协议mcp

帆板运动

在本地MCP服务器中使用NPX

将以下内容添加到您的风帆mcp_config.json中:

{
  "mcpServers": {
    "circleci-mcp-server": {
      "command": "npx",
      "args": ["-y", "@circleci/mcp-server-circleci"],
      "env": {
        "CIRCLECI_TOKEN": "your-circleci-token",
        "CIRCLECI_BASE_URL": "https://circleci.com" // Optional - required for on-prem customers only
      }
    }
  }
}

在本地MCP服务器中使用Docker

将以下内容添加到您的风帆mcp_config.json中:

{
  "mcpServers": {
    "circleci-mcp-server": {
      "command": "docker",
      "args": [
        "run",
        "--rm",
        "-i",
        "-e",
        "CIRCLECI_TOKEN",
        "-e",
        "CIRCLECI_BASE_URL",
        "circleci:mcp-server-circleci"
      ],
      "env": {
        "CIRCLECI_TOKEN": "your-circleci-token",
        "CIRCLECI_BASE_URL": "https://circleci.com" // Optional - required for on-prem customers only
      }
    }
  }
}

使用自管理远程MCP服务器

将以下内容添加到您的风帆mcp_config.json中:

{
  "mcpServers": {
    "circleci": {
      "command": "npx",
      "args": [
        "mcp-remote",
        "http://your-circleci-remote-mcp-server-endpoint:8080/sse",
        "--allow-http"
      ],
      "disabled": false,
      "alwaysAllow": []
    }
  }
}

有关将MCP服务器与风帆一起使用的更多信息,请参阅下面的指南: https://docs.windsurf.com/windsurf/mcp

通过Smithery安装

通过以下方式自动安装适用于Claude Desktop的CircleCI MCP服务器 史密瑟里:

npx -y @smithery/cli install @CircleCI-Public/mcp-server-circleci --client claude

亚马逊Q开发者CLi

Amazon Q Developer中的MCP客户端配置以JSON格式存储在名为MCP.JSON的文件中。

Amazon Q Developer CLI支持两个级别的MCP配置:

全局配置:~/.aws/amazonq/mcp.json-适用于所有工作区

工作区配置:.amazonq/mcp.json-特定于当前工作区

这两个文件都是可选的;两者都不可能存在。如果这两个文件都存在,则Amazon Q Developer会从这两个中读取MCP配置并将其组合,从而合并它们的内容。如果存在冲突(即全局配置中定义的服务器也存在于工作区配置中),则会显示警告,并且只使用工作区配置的服务器条目。

在本地MCP服务器中使用NPX

编辑全局配置文件~/.aws/amazonq/mcp.json,或在当前工作区.amazonq/macp.json中创建一个新文件,内容如下:

{
  "mcpServers": {
    "circleci-local": {
      "command": "npx",
      "args": [
        "-y",
        "@circleci/mcp-server-circleci"
      ],
      "env": {
        "CIRCLECI_TOKEN": "YOUR_CIRCLECI_TOKEN",
        "CIRCLECI_BASE_URL": "https://circleci.com" // Optional - required for on-prem customers only
      },
      "timeout": 60000
    }
  }
}

使用自我管理的远程MCP服务器

首先创建包装脚本

创建一个脚本文件,如“circleci remote mcp.sh”:

#!/bin/bash
export CIRCLECI_TOKEN="your-circleci-token"
npx mcp-remote http://your-circleci-remote-mcp-server-endpoint:8080/sse --allow-http

使其可执行:

chmod +x circleci-remote-mcp.sh

然后添加它:

q mcp add --name circleci --command "/full/path/to/circleci-remote-mcp.sh"

IDE中的Amazon Q开发人员

在本地MCP服务器中使用NPX

编辑全局配置文件~/.aws/amazonq/mcp.json,或在当前工作区.amazonq/macp.json中创建一个新文件,内容如下:

{
  "mcpServers": {
    "circleci-local": {
      "command": "npx",
      "args": [
        "-y",
        "@circleci/mcp-server-circleci"
      ],
      "env": {
        "CIRCLECI_TOKEN": "YOUR_CIRCLECI_TOKEN",
        "CIRCLECI_BASE_URL": "https://circleci.com" // Optional - required for on-prem customers only
      },
      "timeout": 60000
    }
  }
}

使用自我管理的远程MCP服务器

首先创建包装脚本

创建一个脚本文件,如“circleci remote mcp.sh”:

#!/bin/bash
npx mcp-remote http://your-circleci-remote-mcp-server-endpoint:8080/sse --allow-http

使其可执行:

chmod +x circleci-remote-mcp.sh

然后将其添加到IDE中的Q Developer中:

访问MCP配置UI(https://docs.aws.amazon.com/amazonq/latest/qdeveloper-ug/mcp-ide.html#mcp-ide配置访问ui)。

选择加号(+)。

选择范围:全局或本地。

如果选择全局作用域,MCP服务器配置将存储在~/.aws/amazonq/MCP.json中,并可在所有项目中使用。如果选择本地作用域,配置将存储在当前项目中的.amazonq/mcp.json中。

在名称字段中,输入CircleCI远程MCP服务器的名称(例如CircleCI远程MCP)。

选择传输协议(stdio)。

在命令字段中,输入之前创建的MCP服务器初始化时将运行的shell命令(例如/full/path/to/circleci remote MCP.sh)。

单击保存按钮。

特性

支持的工具

  • get_build_failure_logs

    从CircleCI构建中检索详细的故障日志。该工具有三种使用方式:

    1. 使用项目段和分支(推荐工作流):

      • 首先,列出您可用的项目:
        • 使用list_followed_projects工具获取您的项目
        • 示例:“列出我的CircleCI项目”
        • 然后选择与projectSlug关联的项目
        • 示例:“让我们使用我的项目”
      • 然后要求检索特定分支的构建失败日志:
        • 示例:“在主分支上获取我的项目的构建失败”
    2. 使用CircleCI网址:

      • 直接提供失败的作业URL或管道URL
      • 示例:“从以下位置获取日志https://app.circleci.com/pipelines/github/org/repo/123"
    3. 使用本地项目上下文:

      • 通过提供以下功能,您可以在本地工作区工作:
        • 工作区根路径
        • Git远程URL
        • 分支名称
      • 示例:“查找我当前分支上最新失败的管道”

    该工具返回格式化的日志,包括:

    • 作业名称
    • 分步执行细节
    • 故障消息和上下文

    这对于以下情况特别有用:

    • 调试失败的构建
    • 分析测试失败
    • 调查部署问题
    • 无需离开IDE即可快速访问构建日志
  • find_flaky_tests

    通过分析测试执行历史记录来识别CircleCI项目中的不稳定测试。这利用了这里描述的片状测试检测功能:https://circleci.com/blog/introducing-test-insights-with-flaky-test-detection/#flaky-测试检测

    该工具有三种使用方式:

    1. 使用Project Slug(推荐工作流):

      • 首先,列出您可用的项目:
        • 使用list_followed_projects工具获取您的项目
        • 示例:“列出我的CircleCI项目”
        • 然后选择与projectSlug关联的项目
        • 示例:“让我们使用我的项目”
      • 然后要求检索不稳定的测试:
        • 示例:“为我的项目获取不稳定的测试”
    2. 使用CircleCI项目URL:

      • 直接从CircleCI提供项目URL
      • 示例:“在中查找片状测试https://app.circleci.com/pipelines/github/org/repo"
    3. 使用本地项目上下文:

      • 通过提供以下功能,您可以在本地工作区工作:
        • 工作区根路径
        • Git远程URL
      • 示例:“在我当前的项目中查找不稳定的测试”

    该工具有两种使用方式:

    1. 使用文本输出模式(默认):
      • 这将以文本格式返回不稳定的测试及其详细信息
    2. 使用文件输出模式:(需要 FILE_OUTPUT_DIRECTORY 要设置的环境变量)
      • 这将创建一个包含不稳定测试及其详细信息的目录

    该工具返回有关片状测试的详细信息,包括:

    • 测试名称和文件位置
    • 故障消息和上下文

    这有助于您:

    • 识别测试套件中不可靠的测试
    • 获取有关测试失败的详细上下文
    • 就测试改进做出数据驱动的决策
  • get_latest_pipeline_status

    检索给定分支的最新管道的状态。该工具有三种使用方式:

    1. 使用项目段和分支(推荐工作流):

      • 首先,列出您可用的项目:
        • 使用list_followed_projects工具获取您的项目
        • 示例:“列出我的CircleCI项目”
        • 然后选择与projectSlug关联的项目
        • 示例:“让我们使用我的项目”
      • 然后要求检索特定分支的最新管道状态:
        • 示例:“在主分支上获取我的项目的最新管道的状态”
    2. 使用CircleCI项目URL:

      • 直接从CircleCI提供项目URL
      • 示例:“获取最新管道的状态https://app.circleci.com/pipelines/github/org/repo"
    3. 使用本地项目上下文:

      • 通过提供以下功能,您可以在本地工作区工作:
        • 工作区根路径
        • Git远程URL
        • 分支名称
      • 示例:“获取我当前项目的最新管道的状态”

    该工具返回最新管道的格式化状态:

    • 工作流名称及其当前状态
    • 每个工作流的持续时间
    • 创建和完成时间戳
    • 管道整体健康状况

    输出示例:

    ---
    Workflow: build
    Status: success
    Duration: 5 minutes
    Created: 4/20/2025, 10:15:30 AM
    Stopped: 4/20/2025, 10:20:45 AM
    ---
    Workflow: test
    Status: running
    Duration: unknown
    Created: 4/20/2025, 10:21:00 AM
    Stopped: in progress
    

    这对于以下情况特别有用:

    • 检查最新管道的状态
    • 获取特定分支的最新管道状态
    • 无需离开IDE即可快速检查最新管道的状态
  • get_job_test_results

    检索CircleCI作业的测试元数据,使您无需离开IDE即可分析测试结果。该工具有三种使用方式:

    1. 使用项目段和分支(推荐工作流):

      • 首先,列出您可用的项目:
        • 使用list_followed_projects工具获取您的项目
        • 示例:“列出我的CircleCI项目”
        • 然后选择与projectSlug关联的项目
        • 示例:“让我们使用我的项目”
      • 然后要求检索特定分支的测试结果:
        • 示例:“在主分支上获取我的项目的测试结果”
    2. 使用CircleCI URL:

      • 提供以下任何格式的CircleCI URL:
        • 作业URL:“https://app.circleci.com/pipelines/github/org/repo/123/workflows/abc-def/jobs/789"
        • 工作流URL:“https://app.circleci.com/pipelines/github/org/repo/123/workflows/abc-def"
        • 管道URL:“https://app.circleci.com/pipelines/github/org/repo/123"
      • 示例:“获取以下内容的测试结果https://app.circleci.com/pipelines/github/org/repo/123/workflows/abc-def"
    3. 使用本地项目上下文:

      • 通过提供以下功能,您可以在本地工作区工作:
        • 工作区根路径
        • Git远程URL
        • 分支名称
      • 示例:“在主分支上获取我当前项目的测试结果”

    该工具返回详细的测试结果信息:

    • 所有测试的总结(总计、成功、失败)
    • 失败测试的详细信息包括:
      • 测试名称和类别
      • 文件位置
      • 错误消息
      • 运行时间
    • 带有时间信息的成功测试列表
    • 按测试结果筛选

    这对于以下情况特别有用:

    • 无需访问CircleCI web UI即可快速分析测试失败
    • 识别测试失败的模式
    • 查找可能需要优化的慢速测试
    • 检查整个项目的测试覆盖率
    • 片状测试故障排除

    注意:该工具要求在CircleCI配置中正确配置测试元数据。有关设置测试元数据收集的更多信息,请参阅: https://circleci.com/docs/collect-test-data/

  • config_helper

    通过提供指导和验证来协助CircleCI配置任务。此工具可帮助您:

    1. 验证CircleCI配置:
      • 检查.circleci/config.yml的语法和语义错误
      • 示例:“验证我的CircleCI配置”

    该工具提供:

    • 详细的验证结果
    • 配置建议

    这有助于您:

    • 推送前捕获配置错误
    • 学习CircleCI配置最佳实践
    • 解决配置问题
    • 正确实现CircleCI功能
  • create_prompt_template

    帮助根据功能要求为支持AI的应用程序生成结构化提示模板。此工具:

    1. 将功能要求转换为结构化提示:
      • 将用户需求转化为优化的提示模板
      • 示例:“创建按年龄和主题生成睡前故事的提示模板”

    该工具提供:

    • 结构化提示模板
    • 定义所需输入参数的上下文模式

    这有助于您:

    • 为人工智能应用程序创建有效的提示
    • 标准化输入参数以获得一致的结果
    • 构建强大的人工智能功能
  • recommend_prompt_template_tests

    为提示模板生成测试用例,以确保它们产生预期的结果。此工具:

    1. 为提示模板提供测试用例:
      • 根据提示模板和上下文模式创建不同的测试场景
      • 示例:“为我的睡前故事提示模板生成测试”

    该工具提供:

    • 一系列推荐的测试用例
    • 测试模板稳健性的各种参数组合

    这有助于您:

    • 验证提示模板功能
    • 确保输入之间的AI响应一致
    • 识别边缘案例和潜在问题
    • 提高整体AI应用质量
  • list_followed_projects

    列出用户在CircleCI上关注的所有项目。此工具:

    1. 检索和显示项目:
      • 显示用户有权访问并正在关注的所有项目
      • 为每个条目提供项目名称和projectSlug
      • 示例:“列出我的CircleCI项目”

    该工具返回一个格式化的项目列表,示例输出:

    Projects followed:
    1. my-project (projectSlug: gh/organization/my-project)
    2. another-project (projectSlug: gh/organization/another-project)
    

    这对于以下情况特别有用:

    • 确定哪些CircleCI项目可供您使用
    • 获取其他CircleCI工具所需的项目Slug
    • 选择一个项目进行后续操作

    注意:projectSlug(不是项目名称)是许多其他CircleCI工具所必需的,在选择项目后将用于这些工具调用。

  • run_pipeline

    触发管道运行。该工具有三种使用方式:

    1. 使用项目段和分支(推荐工作流):

      • 首先,列出您可用的项目:
        • 使用list_followed_projects工具获取您的项目
        • 示例:“列出我的CircleCI项目”
        • 然后选择与projectSlug关联的项目
        • 示例:“让我们使用我的项目”
      • 然后要求运行特定分支的管道:
        • 示例:“在主分支上运行我的项目的管道”
    2. 使用CircleCI URL:

      • 提供以下任何格式的CircleCI URL:
        • 作业URL:“https://app.circleci.com/pipelines/github/org/repo/123/workflows/abc-def/jobs/789"
        • 工作流URL:“https://app.circleci.com/pipelines/github/org/repo/123/workflows/abc-def"
        • 管道URL:“https://app.circleci.com/pipelines/github/org/repo/123"
        • 带有分支的项目URL:“https://app.circleci.com/projects/github/org/repo?branch=main"
      • 示例:“运行管道https://app.circleci.com/pipelines/github/org/repo/123/workflows/abc-def"
    3. 使用本地项目上下文:

      • 通过提供以下功能,您可以在本地工作区工作:
        • 工作区根路径
        • Git远程URL
        • 分支名称
      • 示例:“在主分支上运行我当前项目的管道”

    该工具返回一个链接以监视管道执行。

    这对于以下情况特别有用:

    • 无需访问CircleCI web UI即可快速运行管道
    • 从特定分支运行管道
  • rerun_workflow

    从工作流开始或从失败的作业重新运行工作流。

    该工具返回新创建的工作流的ID,以及用于监视新工作流的链接。

    这对于以下情况特别有用:

    • 从工作流开始或从失败的作业快速重新运行工作流,而无需访问CircleCI web UI
  • analyze_diff

    根据游标规则分析git差异,以识别规则违规。

    此工具可以通过提供以下内容来使用:

    1. Git差异内容:

      • 分阶段更改: git diff --cached
      • 未稳定的变化: git diff
      • 所有更改: git diff HEAD
      • 示例:“根据游标规则分析我的阶段性更改”
    2. 存储库规则:

      • 规则来自 .cursorrules 存储库根目录中的文件
      • 规则来自 .cursor/rules 目录
      • 多个规则文件与 --- 分隔符
      • 示例:“根据TypeScript编码标准检查我的差异”

    该工具提供:

    • 带有置信度评分的详细违规报告
    • 对每项违规行为的具体解释

    示例使用场景:

    • “分析我的阶段性更改是否违反了任何规则”
    • “根据规则检查我的未声明更改”

    这对于以下情况特别有用:

    • 预提交代码质量检查
    • 确保与团队编码标准保持一致
    • 在代码审查之前发现违反规则的行为

    该工具与您现有的游标规则设置集成,并提供有关代码质量的即时反馈,帮助您在开发过程的早期发现问题。

发展

入门指南

  1. 克隆存储库:

    git clone https://github.com/CircleCI-Public/mcp-server-circleci.git
    cd mcp-server-circleci
    
  2. 安装依赖项:

    pnpm install
    
  3. 构建项目:

    pnpm build
    

构建Docker容器

您可以使用以下命令在本地构建Docker容器:

docker build -t circleci:mcp-server-circleci .

这将创建一个标记为的Docker镜像 circleci:mcp-server-circleci 您可以与任何MCP客户端一起使用。

要运行容器,请执行以下操作:

docker run --rm -i -e CIRCLECI_TOKEN=your-circleci-token -e CIRCLECI_BASE_URL=https://circleci.com circleci:mcp-server-circleci

使用MCP Inspector进行开发

在MCP服务器上迭代的最简单方法是使用MCP检查器。您可以在以下网址了解有关MCP检查员的更多信息https://modelcontextprotocol.io/docs/tools/inspector

  1. 启动开发服务器:

    pnpm watch # Keep this running in one terminal
    
  2. 在单独的终端中,启动检查器:

    pnpm inspector
    
  3. 配置环境:

    • 添加您的 CIRCLECI_TOKEN 转到检查器UI中的“环境变量”部分
    • 令牌需要对您的CircleCI项目具有读取权限
    • 您可以选择设置CircleCI基本URL。默认为 https//circleci.com

测试

  • 运行测试套件:

    pnpm test
    
  • 在开发过程中以监视模式运行测试:

    pnpm test:watch
    

有关更详细的贡献指南,请参阅 贡献.md