Releases: buildkite/buildkite-mcp-server
v0.11.0
What's Changed
Notable Changes
Migrated to the official MCP Go SDK. This release replaces the third-party mcp-go library with github.com/modelcontextprotocol/go-sdk. Tool handlers are now typed, dependencies are injected via context middleware, and transport setup is handled entirely by the SDK. The dynamic toolsets feature (search_tools, list_toolsets) has been removed as a result.
All tool output is now sanitized against prompt injection. Build logs, annotations, and other content from the Buildkite API can contain adversarial text. A centralized 5-stage sanitization pipeline now runs on every tool response: invisible character filtering, control character stripping, code fence metadata filtering, HTML allowlist sanitization, and LLM delimiter neutralization.
wait_for_build has been removed. This tool was a frequent source of MCP client timeouts and couldn't be made to work reliably across agents. Use get_build in a polling loop instead.
Fixes
- fix: include required MCP fields in WaitForBuild progress notifications by @wolfeidau in #215
- Revert "fix: include required MCP fields in WaitForBuild progress notifications" by @wolfeidau in #216
- refactor: remove wait_for_build tool by @wolfeidau in #226
- fix: mark optional job log tool params with omitempty by @wolfeidau in #236
- refactor: remove redundant manual arg validation in tool handlers by @wolfeidau in #237
Note: WaitForBuild was removed in the end as I was unable to ensure it worked reliably with more than a couple of agents.
Features
- feat: support org-wide build listing when pipeline_slug is omitted by @dbr787 in #225
- feat: add max log bytes CLI flag for buildkite-logs limit by @wolfeidau in #229
- feat: integrate buildkite-logs v0.8.0 NewReader API by @wolfeidau in #230
- Remove client-side url.Parse validation for repository URLs by @afreakk in #233
- feat: sanitize all MCP tool output to mitigate prompt injection by @wolfeidau in #232
Chores
- chore(deps): bump golang from 1.25.7 to 1.26.0 in /.buildkite by @dependabot[bot] in #211
- chore: migrate from mcp-go to official go-sdk by @wolfeidau in #220
- chore(deps): bump golang from 1.26.0 to 1.26.1 in /.buildkite by @dependabot[bot] in #221
- chore: upgrade buildkite-logs to v0.7.0 by @wolfeidau in #227
- chore(deps): bump github.com/modelcontextprotocol/go-sdk from 1.4.0 to 1.4.1 by @dependabot[bot] in #235
- chore(deps): bump golang from
e2ddb15toc7e98ccin /.buildkite by @dependabot[bot] in #234
New Contributors
Full Changelog: v0.10.0...v0.11.0
v0.10.0
What's Changed
Features
- feat: add support from Anthropic's "Tool Search" pattern by @wolfeidau in #190
Chores
- chore(deps): bump golang from
36b4f45to6cc2338in /.buildkite by @dependabot[bot] in #198 - chore(deps): bump golang from 1.25.5 to 1.25.6 in /.buildkite by @dependabot[bot] in #200
- chore(deps): bump golang from 1.25.6 to 1.25.7 in /.buildkite by @dependabot[bot] in #202
- chore(deps): bump github.com/alecthomas/kong from 1.13.0 to 1.14.0 by @dependabot[bot] in #204
- chore: simplify compose and update goreleaser and golanglint-ci by @wolfeidau in #207
- chore(deps): bump github.com/buildkite/buildkite-logs from 0.6.3 to 0.6.4 by @dependabot[bot] in #203
- chore(deps): upgrade buildkite-logs from v0.6.4 to v0.6.7 by @wolfeidau in #209
Full Changelog: v0.9.0...v0.10.0
v0.9.0
What's Changed
- chore(deps): bump golang from
20b91edto36b4f45in /.buildkite by @dependabot[bot] in #195 - chore(deps): bump the otel group with 6 updates by @dependabot[bot] in #191
- Add test to show that build id should be in test runs by @niceking in #196
- fix: Add pagination to artifact list endpoints by @JoeColeman95 in #197
New Contributors
- @niceking made their first contribution in #196
- @JoeColeman95 made their first contribution in #197
Full Changelog: v0.8.0...v0.9.0
v0.8.0
What's Changed
- feat: get artifacts by job by @mcncl in #194
- chore(deps): bump golang from 1.25.4 to 1.25.5 in /.buildkite by @dependabot[bot] in #193
- chore(deps): bump github.com/mark3labs/mcp-go from 0.43.0 to 0.43.2 by @dependabot[bot] in #192
- chore(deps): bump github.com/buildkite/go-buildkite/v4 from 4.9.1 to 4.11.0 by @dependabot[bot] in #188
- chore(deps): bump github.com/alecthomas/kong from 1.12.1 to 1.13.0 by @dependabot[bot] in #187
Full Changelog: v0.7.4...v0.8.0
v0.7.4
What's Changed
- Add health check endpoint to HTTP server by @jakeyr in #183
- chore(deps): bump golang from 1.25.2 to 1.25.3 in /.buildkite by @dependabot[bot] in #177
- chore(deps): update buildkite-logs to v0.6.3 by @wolfeidau in #184
- chore: remove the log info tool as it is rarely used by @wolfeidau in #182
- chore(deps): bump golang from 1.25.3 to 1.25.4 in /.buildkite by @dependabot[bot] in #185
New Contributors
Full Changelog: v0.7.3...v0.7.4
v0.7.3
What's Changed
- chore(deps): bump github.com/mark3labs/mcp-go from 0.41.1 to 0.43.0 by @dependabot[bot] in #180
- chore(deps): bump buildkite-logs to the latest version by @wolfeidau in #181
Full Changelog: v0.7.2...v0.7.3
v0.7.2
What's Changed
- chore(deps): upgrade go-buildkite to fix issue with list pipelines json by @wolfeidau in #175
- feat: move the to chainguard images for the mcp for consistency by @wolfeidau in #176
Full Changelog: v0.7.1...v0.7.2
v0.7.1
What's Changed
- feat: allow disabling of branch filtering when creating a build by @wolfeidau in #174
- chore(deps): bump github.com/buildkite/go-buildkite/v4 from 4.5.1 to 4.9.0 by @dependabot[bot] in #172
- chore: updated server.json and published to mcp registry by @wolfeidau in #171
- chore(deps): bump go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp from 0.62.0 to 0.63.0 in the otel group across 1 directory by @dependabot[bot] in #154
- chore(deps): bump golang from 1.25.1 to 1.25.2 in /.buildkite by @dependabot[bot] in #173
Full Changelog: v0.7.0...v0.7.1
v0.7.0
What's Changed
- chore: add a server.json to enable publishing to official mcp registry by @wolfeidau in #167
- feat: update the get_build to incorporate the get_jobs functionality by @wolfeidau in #166
- chore: pair back the mcp registry file to get it working by @wolfeidau in #168
- fix: removed a bunch of high token fields from jobs by @wolfeidau in #169
- chore: enable testify lint to make things tidy by @wolfeidau in #170
- chore(deps): bump github.com/mark3labs/mcp-go from 0.41.0 to 0.41.1 by @dependabot[bot] in #164
- chore(deps): bump golang from
8305f5ftod709837in /.buildkite by @dependabot[bot] in #165
Full Changelog: v0.6.1...v0.7.0
Important
This release removes the get_job tool as its functionality has been merged into get_build to streamline build troubleshooting.
v0.6.1
What's Changed
- Update Dockerfile.local to go 1.24.5 as per go.mod by @ipedrazas in #152
- chore(deps): bump golang from
a5e935dto8305f5fin /.buildkite by @dependabot[bot] in #153 - feat: adding handler middleware to ensure otel attributes are set by @wolfeidau in #150
- feat: added support for retrieving tokens directly from 1password by @wolfeidau in #155
- docs: update readme now that docs have been migrated by @wolfeidau in #161
- feat: support auto-creation of webhooks with new pipelines by @cnunciato in #160
- chore(deps): bump github.com/mark3labs/mcp-go from 0.39.1 to 0.41.0 by @dependabot[bot] in #162
- fix: when creating a pipeline we require the create_webhook to be set by @wolfeidau in #163
New Contributors
- @ipedrazas made their first contribution in #152
- @cnunciato made their first contribution in #160
Full Changelog: v0.6.0...v0.6.1