CircleCI MCP Server

CircleCI MCP Server avatar

by joel-thompson

Official Integrations

A specialized server implementation for the Model Context Protocol (MCP) designed to integrate with CircleCI's development workflow. This project serves as a bridge between CircleCI's infrastructure and the Model Context Protocol, enabling enhanced AI-powered development experiences.

What is CircleCI MCP Server

CircleCI MCP Server

GitHub CircleCI npm

Model Context Protocol (MCP) is a new, standardized protocol for managing context between large language models (LLMs) and external systems. In this repository, we provide an MCP Server for CircleCI.

This lets you use Cursor IDE, or any MCP Client, to use natural language to accomplish things with CircleCI, e.g.:

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

Requirements

  • pnpm package manager - Learn more
  • Node.js >= v18.0.0
  • CircleCI API token - you can generate one through the CircleCI. Learn more or click here for quick access.

Installation

Cursor

Add the following to your cursor MCP config:

{
  "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:

{
  "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

VS Code

Add the MCP server to your settings.json under mcp -> servers:

"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:

{
  "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:

    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:

    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:

    git clone https://github.com/CircleCI-Public/mcp-server-circleci.git
    cd mcp-server-circleci
    
  2. Install dependencies:

    pnpm install
    
  3. Build the project:

    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:

    pnpm watch # Keep this running in one terminal
    
  2. In a separate terminal, launch the inspector:

    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:

    pnpm test
    
  • Run tests in watch mode during development:

    pnpm test:watch
    

For more detailed contribution guidelines, see CONTRIBUTING.md

Leave a Comment

Comments section will be available soon. Stay tuned!

Frequently Asked Questions

What is MCP?

MCP (Model Context Protocol) is an open protocol that standardizes how applications provide context to LLMs. Think of MCP like a USB-C port for AI applications, providing a standardized way to connect AI models to different data sources and tools.

What are MCP Servers?

MCP Servers are lightweight programs that expose specific capabilities through the standardized Model Context Protocol. They act as bridges between LLMs like Claude and various data sources or services, allowing secure access to files, databases, APIs, and other resources.

How do MCP Servers work?

MCP Servers follow a client-server architecture where a host application (like Claude Desktop) connects to multiple servers. Each server provides specific functionality through standardized endpoints and protocols, enabling Claude to access data and perform actions through the standardized protocol.

Are MCP Servers secure?

Yes, MCP Servers are designed with security in mind. They run locally with explicit configuration and permissions, require user approval for actions, and include built-in security features to prevent unauthorized access and ensure data privacy.