naftiko: 1.0.0-alpha2 info: label: Buildkite Builds description: Buildkite Builds capability covering listing, creating, retrieving, cancelling, and rebuilding builds. Self-contained Naftiko capability covering one Buildkite business surface. tags: - Buildkite - Builds - CI/CD created: '2026-05-25' modified: '2026-05-25' binds: - namespace: env keys: BUILDKITE_API_TOKEN: BUILDKITE_API_TOKEN BUILDKITE_ORG_SLUG: BUILDKITE_ORG_SLUG capability: consumes: - type: http namespace: builds baseUri: https://api.buildkite.com description: Buildkite Builds REST surface. resources: - name: builds path: /v2/organizations/{org}/pipelines/{pipeline}/builds operations: - name: listbuilds method: GET description: Buildkite List Builds For A Pipeline outputRawFormat: json outputParameters: - name: result type: array value: $. inputParameters: - name: org in: path type: string required: true value: '{{env.BUILDKITE_ORG_SLUG}}' - name: pipeline in: path type: string required: true - name: createbuild method: POST description: Buildkite Create A Build outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: org in: path type: string required: true value: '{{env.BUILDKITE_ORG_SLUG}}' - name: pipeline in: path type: string required: true - name: body in: body type: object required: true - name: build path: /v2/organizations/{org}/pipelines/{pipeline}/builds/{number} operations: - name: getbuild method: GET description: Buildkite Get A Build outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: org in: path type: string required: true value: '{{env.BUILDKITE_ORG_SLUG}}' - name: pipeline in: path type: string required: true - name: number in: path type: integer required: true - name: cancel path: /v2/organizations/{org}/pipelines/{pipeline}/builds/{number}/cancel operations: - name: cancelbuild method: PUT description: Buildkite Cancel A Build outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: org in: path type: string required: true value: '{{env.BUILDKITE_ORG_SLUG}}' - name: pipeline in: path type: string required: true - name: number in: path type: integer required: true - name: rebuild path: /v2/organizations/{org}/pipelines/{pipeline}/builds/{number}/rebuild operations: - name: rebuildbuild method: PUT description: Buildkite Rebuild A Build outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: org in: path type: string required: true value: '{{env.BUILDKITE_ORG_SLUG}}' - name: pipeline in: path type: string required: true - name: number in: path type: integer required: true authentication: type: apikey key: Authorization value: 'Bearer {{env.BUILDKITE_API_TOKEN}}' placement: header exposes: - type: mcp namespace: builds-mcp port: 9090 transport: http description: MCP adapter for Buildkite Builds. tools: - name: buildkite-list-builds description: Buildkite List Builds For A Pipeline hints: readOnly: true destructive: false idempotent: true call: builds.listbuilds with: pipeline: tools.pipeline - name: buildkite-create-build description: Buildkite Create A Build hints: readOnly: false destructive: false idempotent: false call: builds.createbuild with: pipeline: tools.pipeline body: tools.body - name: buildkite-get-build description: Buildkite Get A Build hints: readOnly: true destructive: false idempotent: true call: builds.getbuild with: pipeline: tools.pipeline number: tools.number - name: buildkite-cancel-build description: Buildkite Cancel A Build hints: readOnly: false destructive: true idempotent: true call: builds.cancelbuild with: pipeline: tools.pipeline number: tools.number - name: buildkite-rebuild-build description: Buildkite Rebuild A Build hints: readOnly: false destructive: false idempotent: false call: builds.rebuildbuild with: pipeline: tools.pipeline number: tools.number