Manage Buildkite pipelines and builds.
This is an Model Context Protocol (MCP) server for Buildkite. The goal is to provide access to information from buildkite about pipelines, builds and jobs to tools such as Claude Desktop, GitHub Copilot and other tools, or editors.
get_cluster
- Get detailed information about a specific cluster including its name, description, default queue, and configurationlist_clusters
- List all clusters in an organization with their names, descriptions, default queues, and creation detailsget_cluster_queue
- Get detailed information about a specific queue including its key, description, dispatch status, and hosted agent configurationlist_cluster_queues
- List all queues in a cluster with their keys, descriptions, dispatch status, and agent configurationget_pipeline
- Get detailed information about a specific pipeline including its configuration, steps, environment variables, and build statisticslist_pipelines
- List all pipelines in an organization with their basic details, build counts, and current statuslist_builds
- List all builds for a pipeline with their status, commit information, and metadataget_build
- Get detailed information about a specific build including its jobs, timing, and execution detailsget_build_test_engine_runs
- Get test engine runs data for a specific build in Buildkite. This can be used to look up Test Runs.current_user
- Get details about the user account that owns the API token, including name, email, avatar, and account creation dateuser_token_organization
- Get the organization associated with the user token used for this requestget_jobs
- Get all jobs for a specific build including their state, timing, commands, and execution detailsget_job_logs
- Get the log output and metadata for a specific job, including content, size, and header timestampslist_artifacts
- List all artifacts for a build across all jobs, including file details, paths, sizes, MIME types, and download URLsget_artifact
- Get detailed information about a specific artifact including its metadata, file size, SHA-1 hash, and download URLlist_annotations
- List all annotations for a build, including their context, style (success/info/warning/error), rendered HTML content, and creation timestampslist_test_runs
- List all test runs for a test suite in Buildkite Test Engineget_test_run
- Get a specific test run in Buildkite Test Engineget_failed_executions
- Get failed test executions for a specific test run in Buildkite Test Engine. Optionally get the expanded failure details such as full error messages and stack traces.get_test
- Get a specific test in Buildkite Test Engine. This provides additional metadata for failed test executionsaccess_token
- Get information about the current API access token including its scopes and UUIDExample of the get_pipeline
tool in action.
To ensure the MCP server is run in a secure environment, we recommend running it in a container.
Pull the pre-built image (recommended):
docker pull ghcr.io/buildkite/buildkite-mcp-server
Or build it yourself using GoReleaser and copy the binary into your path:
goreleaser build --snapshot --clean
Your Buildkite API access token requires the following scopes for the MCP server to function properly:
For full functionality with all available tools, your API token needs these scopes:
Create a buildkite API token with Full functionality
For basic CI/CD monitoring and inspection, these core scopes provide the most commonly used functionality:
Create a buildkite API token with Basic functionality (minimum scopes)
To get started with various tools select one of the following.
Use this configuration if you want to run the server buildkite-mcp-server
Docker (recommended):
{
"mcpServers": {
"buildkite": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"BUILDKITE_API_TOKEN",
"ghcr.io/buildkite/buildkite-mcp-server",
"stdio"
],
"env": {
"BUILDKITE_API_TOKEN": "bkua_xxxxxxxx"
}
}
}
}
Configuration if you have buildkite-mcp-server
installed locally.
{
"mcpServers": {
"buildkite": {
"command": "buildkite-mcp-server",
"args": [
"stdio"
],
"env": {
"BUILDKITE_API_TOKEN": "bkua_xxxxxxxx"
}
}
}
}
For Docker with Goose (recommended):
extensions:
fetch:
name: Buildkite
cmd: docker
args: ["run", "-i", "--rm", "-e", "BUILDKITE_API_TOKEN", "ghcr.io/buildkite/buildkite-mcp-server", "stdio"]
enabled: true
envs: { "BUILDKITE_API_TOKEN": "bkua_xxxxxxxx" }
type: stdio
timeout: 300
Local configuration for Goose:
extensions:
fetch:
name: Buildkite
cmd: buildkite-mcp-server
args: [stdio]
enabled: true
envs: { "BUILDKITE_API_TOKEN": "bkua_xxxxxxxx" }
type: stdio
timeout: 300
VSCode supports interactive inputs for variables. To get the API token interactively on MCP startup, put the following in .vscode/mcp.json
{
"inputs": [
{
"id": "BUILDKITE_API_TOKEN",
"type": "promptString",
"description": "Enter your BuildKite Access Token (https://buildkite.com/user/api-access-tokens)",
"password": true
}
],
"servers": {
"buildkite": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"BUILDKITE_API_TOKEN",
"ghcr.io/buildkite/buildkite-mcp-server",
"stdio"
],
"env": {
"BUILDKITE_API_TOKEN": "${input:BUILDKITE_API_TOKEN}"
}
}
}
}
There is a Zed editor extension available in the official extension gallery. During installation it will ask for an API token which will be added to your settings. Or you can manually configure:
// ~/.config/zed/settings.json
{
"context_servers": {
"mcp-server-buildkite": {
"settings": {
"buildkite_api_token": "your-buildkite-token-here",
}
}
}
}
This container image is built using cgr.dev/chainguard/static base image and is configured to run the MCP server as a non-root user.
Notes on building this project are in the DEVELOPMENT.md
This project is released under MIT license.
Tools to query latest Maven dependency information
A Grey Hack server for Cursor IDE, providing GitHub code search, Greybel-JS transpilation, API validation, and script generation.
APIMatic MCP Server is used to validate OpenAPI specifications using APIMatic. The server processes OpenAPI files and returns validation summaries by leveraging APIMatic’s API.
An experimental MCP server that uses the ast-grep CLI for code structural search, linting, and rewriting.
A server for securely executing commands on the host system, requiring Java 21 or higher.
Perform virtual try-ons using the HeyBeauty API.
Interact with TestRail's core entities such as test cases, runs, and results using a standardized protocol.
Analyzes audio files and extracts metadata, tailored for game audio development workflows.
Single tool to control all 100+ API integrations, and UI components
A backend service providing tools, resources, and prompts for AI models using the Model Context Protocol (MCP).