X

CircleCI

Information

# CircleCI MCP Server [![GitHub](https://img.shields.io/github/license/CircleCI-Public/mcp-server-circleci)](https://github.com/CircleCI-Public/mcp-server-circleci/blob/main/LICENSE) [![CircleCI](https://dl.circleci.com/status-badge/img/gh/CircleCI-Public/mcp-server-circleci/tree/main.svg?style=svg)](https://dl.circleci.com/status-badge/redirect/gh/CircleCI-Public/mcp-server-circleci/tree/main) [![npm](https://img.shields.io/npm/v/@circleci/mcp-server-circleci?logo=npm)](https://www.npmjs.com/package/@circleci/mcp-server-circleci) Model Context Protocol (MCP) is a [new, standardized protocol](https://modelcontextprotocol.io/introduction) for managing context between large language models (LLMs) and external systems. In this repository, we provide an MCP Server for [CircleCI](https://circleci.com). This lets you use Cursor IDE, or any MCP Client, to use natural language to accomplish things with CircleCI, e.g.: - \`Find the latest failed pipeline on my branch and get logs\` https://github.com/CircleCI-Public/mcp-server-circleci/wiki#circleci-mcp-server-with-cursor-ide https://github.com/user-attachments/assets/3c765985-8827-442a-a8dc-5069e01edb74 ## Requirements - pnpm package manager - [Learn more](https://pnpm.io/installation) - Node.js >= v18.0.0 - CircleCI API token - you can generate one through the CircleCI. [Learn more](https://circleci.com/docs/managing-api-tokens/) or [click here](https://app.circleci.com/settings/user/tokens) for quick access. ## Installation ### Cursor Add the following to your cursor 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 \} \} \} \} \`\`\` See the guide below for more information on using MCP servers with cursor: https://docs.cursor.com/context/model-context-protocol#configuring-mcp-servers ### Claude Desktop Add the following to your claude_desktop_config.json: \`\`\`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 \} \} \} \} \`\`\` To find/create this file, first open your claude desktop settings. Then click on "Developer" in the left-hand bar of the Settings pane, and then click on "Edit Config" This will create a configuration file at: - macOS: ~/Library/Application Support/Claude/claude_desktop_config.json - Windows: %APPDATA%\Claude\claude_desktop_config.json See the guide below for more information on using MCP servers with Claude Desktop: https://modelcontextprotocol.io/quickstart/user ### Claude Code After installing Claude Code, run the following command: \`\`\`bash claude mcp add circleci-mcp-server -e CIRCLECI_TOKEN=your-circleci-token -- npx -y @circleci/mcp-server-circleci \`\`\` See the guide below for more information on using MCP servers with Claude Code: https://docs.anthropic.com/en/docs/agents-and-tools/claude-code/tutorials#set-up-model-context-protocol-mcp ### VS Code Add the MCP server to your settings.json under \`mcp -> servers\`: \`\`\`json "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 \} \} \`\`\` See the guide below for more information on using MCP servers with VS Code: https://code.visualstudio.com/docs/copilot/chat/mcp-servers ### Windsurf Add the following to your windsurf mcp_config.json: \`\`\`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 \} \} \} \} \`\`\` See the guide below for more information on using MCP servers with windsurf: https://docs.windsurf.com/windsurf/mcp # Features ## Supported Tools - \`get_build_failure_logs\` Retrieves detailed failure logs from CircleCI builds. This tool can be used in two ways: 1. Using CircleCI URLs: - Provide a failed job URL or pipeline URL directly - Example: "Get logs from https://app.circleci.com/pipelines/github/org/repo/123" 2. Using Local Project Context: - Works from your local workspace by providing: - Workspace root path - Git remote URL - Branch name - Example: "Find the latest failed pipeline on my current branch" The tool returns formatted logs including: - Job names - Step-by-step execution details - Failure messages and context This is particularly useful for: - Debugging failed builds - Analyzing test failures - Investigating deployment issues - Quick access to build logs without leaving your IDE - \`find_flaky_tests\` Identifies flaky tests in your CircleCI project by analyzing test execution history. This leverages the flaky test detection feature described here: https://circleci.com/blog/introducing-test-insights-with-flaky-test-detection/#flaky-test-detection This tool can be used in two ways: 1. Using CircleCI Project URL: - Provide the project URL directly from CircleCI - Example: "Find flaky tests in https://app.circleci.com/pipelines/github/org/repo" 2. Using Local Project Context: - Works from your local workspace by providing: - Workspace root path - Git remote URL - Example: "Find flaky tests in my current project" The tool returns detailed information about flaky tests, including: - Test names and file locations - Failure messages and contexts This helps you: - Identify unreliable tests in your test suite - Get detailed context about test failures - Make data-driven decisions about test improvements # Development ## Getting Started 1. Clone the repository: \`\`\`bash git clone https://github.com/CircleCI-Public/mcp-server-circleci.git cd mcp-server-circleci \`\`\` 2. Install dependencies: \`\`\`bash pnpm install \`\`\` 3. Build the project: \`\`\`bash pnpm build \`\`\` ## Development with MCP Inspector The easiest way to iterate on the MCP Server is using the MCP inspector. You can learn more about the MCP inspector at https://modelcontextprotocol.io/docs/tools/inspector 1. Start the development server: \`\`\`bash pnpm watch # Keep this running in one terminal \`\`\` 2. In a separate terminal, launch the inspector: \`\`\`bash pnpm inspector \`\`\` 3. Configure the environment: - Add your \`CIRCLECI_TOKEN\` to the Environment Variables section in the inspector UI - The token needs read access to your CircleCI projects - Optionally you can set your CircleCI Base URL. Defaults to \`https//circleci.com\` ## Testing - Run the test suite: \`\`\`bash pnpm test \`\`\` - Run tests in watch mode during development: \`\`\`bash pnpm test:watch \`\`\` For more detailed contribution guidelines, see [CONTRIBUTING.md](CONTRIBUTING.md)

Prompts

Reviews

Tags

Write Your Review

Detailed Ratings

ALL
Correctness
Helpfulness
Interesting
Upload Pictures and Videos

Name
Size
Type
Download
Last Modified

Upload Files

  • Community

Add Discussion

Upload Pictures and Videos