naftiko: 1.0.0-alpha2 info: label: CircleCI REST API v2 — Pipeline description: 'CircleCI REST API v2 — Pipeline. 8 operations. Lead operation: List pipelines. Self-contained Naftiko capability covering one Circleci business surface.' tags: - Circleci - Pipeline created: '2026-05-19' modified: '2026-05-19' binds: - namespace: env keys: CIRCLECI_API_KEY: CIRCLECI_API_KEY capability: consumes: - type: http namespace: rest-api-v2-pipeline baseUri: https://circleci.com/api/v2 description: CircleCI REST API v2 — Pipeline business capability. Self-contained, no shared references. resources: - name: pipeline path: /pipeline operations: - name: listpipelines method: GET description: List pipelines outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: org-slug in: query type: string description: Organization slug in the form vcs-slug/org-name - name: mine in: query type: boolean description: Filter to only pipelines triggered by the current user - name: pipeline-continue path: /pipeline/continue operations: - name: continuepipeline method: POST description: Continue a pipeline outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: pipeline-pipeline-id path: /pipeline/{pipeline-id} operations: - name: getpipeline method: GET description: Get a pipeline by ID outputRawFormat: json outputParameters: - name: result type: object value: $. - name: pipeline-pipeline-id-config path: /pipeline/{pipeline-id}/config operations: - name: getpipelineconfig method: GET description: Get a pipeline's configuration outputRawFormat: json outputParameters: - name: result type: object value: $. - name: pipeline-pipeline-id-workflow path: /pipeline/{pipeline-id}/workflow operations: - name: listpipelineworkflows method: GET description: List workflows for a pipeline outputRawFormat: json outputParameters: - name: result type: object value: $. - name: project-project-slug-pipeline path: /project/{project-slug}/pipeline operations: - name: listprojectpipelines method: GET description: List project pipelines outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: branch in: query type: string description: Filter pipelines by branch name - name: triggerpipeline method: POST description: Trigger a pipeline outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: false - name: project-project-slug-pipeline-mine path: /project/{project-slug}/pipeline/mine operations: - name: listmyprojectpipelines method: GET description: List my project pipelines outputRawFormat: json outputParameters: - name: result type: object value: $. authentication: type: apikey key: Circle-Token value: '{{env.CIRCLECI_API_KEY}}' placement: header exposes: - type: rest namespace: rest-api-v2-pipeline-rest port: 8080 description: REST adapter for CircleCI REST API v2 — Pipeline. One Spectral-compliant resource per consumed operation, prefixed with /v1. resources: - path: /v1/pipeline name: pipeline description: REST surface for pipeline. operations: - method: GET name: listpipelines description: List pipelines call: rest-api-v2-pipeline.listpipelines with: org-slug: rest.org-slug mine: rest.mine outputParameters: - type: object mapping: $. - path: /v1/pipeline/continue name: pipeline-continue description: REST surface for pipeline-continue. operations: - method: POST name: continuepipeline description: Continue a pipeline call: rest-api-v2-pipeline.continuepipeline with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/pipeline/{pipeline-id} name: pipeline-pipeline-id description: REST surface for pipeline-pipeline-id. operations: - method: GET name: getpipeline description: Get a pipeline by ID call: rest-api-v2-pipeline.getpipeline outputParameters: - type: object mapping: $. - path: /v1/pipeline/{pipeline-id}/config name: pipeline-pipeline-id-config description: REST surface for pipeline-pipeline-id-config. operations: - method: GET name: getpipelineconfig description: Get a pipeline's configuration call: rest-api-v2-pipeline.getpipelineconfig outputParameters: - type: object mapping: $. - path: /v1/pipeline/{pipeline-id}/workflow name: pipeline-pipeline-id-workflow description: REST surface for pipeline-pipeline-id-workflow. operations: - method: GET name: listpipelineworkflows description: List workflows for a pipeline call: rest-api-v2-pipeline.listpipelineworkflows outputParameters: - type: object mapping: $. - path: /v1/project/{project-slug}/pipeline name: project-project-slug-pipeline description: REST surface for project-project-slug-pipeline. operations: - method: GET name: listprojectpipelines description: List project pipelines call: rest-api-v2-pipeline.listprojectpipelines with: branch: rest.branch outputParameters: - type: object mapping: $. - method: POST name: triggerpipeline description: Trigger a pipeline call: rest-api-v2-pipeline.triggerpipeline with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/project/{project-slug}/pipeline/mine name: project-project-slug-pipeline-mine description: REST surface for project-project-slug-pipeline-mine. operations: - method: GET name: listmyprojectpipelines description: List my project pipelines call: rest-api-v2-pipeline.listmyprojectpipelines outputParameters: - type: object mapping: $. - type: mcp namespace: rest-api-v2-pipeline-mcp port: 9090 transport: http description: MCP adapter for CircleCI REST API v2 — Pipeline. One tool per consumed operation, routed inline through this capability's consumes block. tools: - name: list-pipelines description: List pipelines hints: readOnly: true destructive: false idempotent: true call: rest-api-v2-pipeline.listpipelines with: org-slug: tools.org-slug mine: tools.mine outputParameters: - type: object mapping: $. - name: continue-pipeline description: Continue a pipeline hints: readOnly: false destructive: false idempotent: false call: rest-api-v2-pipeline.continuepipeline with: body: tools.body outputParameters: - type: object mapping: $. - name: get-pipeline-id description: Get a pipeline by ID hints: readOnly: true destructive: false idempotent: true call: rest-api-v2-pipeline.getpipeline outputParameters: - type: object mapping: $. - name: get-pipeline-s-configuration description: Get a pipeline's configuration hints: readOnly: true destructive: false idempotent: true call: rest-api-v2-pipeline.getpipelineconfig outputParameters: - type: object mapping: $. - name: list-workflows-pipeline description: List workflows for a pipeline hints: readOnly: true destructive: false idempotent: true call: rest-api-v2-pipeline.listpipelineworkflows outputParameters: - type: object mapping: $. - name: list-project-pipelines description: List project pipelines hints: readOnly: true destructive: false idempotent: true call: rest-api-v2-pipeline.listprojectpipelines with: branch: tools.branch outputParameters: - type: object mapping: $. - name: trigger-pipeline description: Trigger a pipeline hints: readOnly: false destructive: false idempotent: false call: rest-api-v2-pipeline.triggerpipeline with: body: tools.body outputParameters: - type: object mapping: $. - name: list-my-project-pipelines description: List my project pipelines hints: readOnly: true destructive: false idempotent: true call: rest-api-v2-pipeline.listmyprojectpipelines outputParameters: - type: object mapping: $.