naftiko: 1.0.0-alpha2 info: label: Bitbucket API — Projects description: 'Bitbucket API — Projects. 16 operations. Lead operation: Create a project in a workspace. Self-contained Naftiko capability covering one Bitbucket Pipelines business surface.' tags: - Bitbucket Pipelines - Projects created: '2026-05-19' modified: '2026-05-19' binds: - namespace: env keys: BITBUCKET_PIPELINES_API_KEY: BITBUCKET_PIPELINES_API_KEY capability: consumes: - type: http namespace: bitbucket-pipelines-projects baseUri: https://api.bitbucket.org/2.0 description: Bitbucket API — Projects business capability. Self-contained, no shared references. resources: - name: workspaces-workspace-projects path: /workspaces/{workspace}/projects operations: - name: post method: POST description: Create a project in a workspace outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: _body in: body type: string required: true - name: workspaces-workspace-projects-project_key path: /workspaces/{workspace}/projects/{project_key} operations: - name: delete method: DELETE description: Delete a project for a workspace outputRawFormat: json outputParameters: - name: result type: object value: $. - name: get method: GET description: Get a project for a workspace outputRawFormat: json outputParameters: - name: result type: object value: $. - name: put method: PUT description: Update a project for a workspace outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: _body in: body type: string required: true - name: workspaces-workspace-projects-project_key-default-reviewers path: /workspaces/{workspace}/projects/{project_key}/default-reviewers operations: - name: get method: GET description: List the default reviewers in a project outputRawFormat: json outputParameters: - name: result type: object value: $. - name: workspaces-workspace-projects-project_key-default-reviewers-selected_user path: /workspaces/{workspace}/projects/{project_key}/default-reviewers/{selected_user} operations: - name: delete method: DELETE description: Remove the specific user from the project's default reviewers outputRawFormat: json outputParameters: - name: result type: object value: $. - name: get method: GET description: Get a default reviewer outputRawFormat: json outputParameters: - name: result type: object value: $. - name: put method: PUT description: Add the specific user as a default reviewer for the project outputRawFormat: json outputParameters: - name: result type: object value: $. - name: workspaces-workspace-projects-project_key-permissions-config-groups path: /workspaces/{workspace}/projects/{project_key}/permissions-config/groups operations: - name: get method: GET description: List explicit group permissions for a project outputRawFormat: json outputParameters: - name: result type: object value: $. - name: workspaces-workspace-projects-project_key-permissions-config-groups-group_slug path: /workspaces/{workspace}/projects/{project_key}/permissions-config/groups/{group_slug} operations: - name: delete method: DELETE description: Delete an explicit group permission for a project outputRawFormat: json outputParameters: - name: result type: object value: $. - name: get method: GET description: Get an explicit group permission for a project outputRawFormat: json outputParameters: - name: result type: object value: $. - name: put method: PUT description: Update an explicit group permission for a project outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: _body in: body type: string description: The permission to grant required: true - name: workspaces-workspace-projects-project_key-permissions-config-users path: /workspaces/{workspace}/projects/{project_key}/permissions-config/users operations: - name: get method: GET description: List explicit user permissions for a project outputRawFormat: json outputParameters: - name: result type: object value: $. - name: workspaces-workspace-projects-project_key-permissions-config-users-selected_user path: /workspaces/{workspace}/projects/{project_key}/permissions-config/users/{selected_user_id} operations: - name: delete method: DELETE description: Delete an explicit user permission for a project outputRawFormat: json outputParameters: - name: result type: object value: $. - name: get method: GET description: Get an explicit user permission for a project outputRawFormat: json outputParameters: - name: result type: object value: $. - name: put method: PUT description: Update an explicit user permission for a project outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: _body in: body type: string description: The permission to grant required: true exposes: - type: rest namespace: bitbucket-pipelines-projects-rest port: 8080 description: REST adapter for Bitbucket API — Projects. One Spectral-compliant resource per consumed operation, prefixed with /v1. resources: - path: /v1/workspaces/{workspace}/projects name: workspaces-workspace-projects description: REST surface for workspaces-workspace-projects. operations: - method: POST name: post description: Create a project in a workspace call: bitbucket-pipelines-projects.post with: _body: rest._body outputParameters: - type: object mapping: $. - path: /v1/workspaces/{workspace}/projects/{project-key} name: workspaces-workspace-projects-project-key description: REST surface for workspaces-workspace-projects-project_key. operations: - method: DELETE name: delete description: Delete a project for a workspace call: bitbucket-pipelines-projects.delete outputParameters: - type: object mapping: $. - method: GET name: get description: Get a project for a workspace call: bitbucket-pipelines-projects.get outputParameters: - type: object mapping: $. - method: PUT name: put description: Update a project for a workspace call: bitbucket-pipelines-projects.put with: _body: rest._body outputParameters: - type: object mapping: $. - path: /v1/workspaces/{workspace}/projects/{project-key}/default-reviewers name: workspaces-workspace-projects-project-key-default-reviewers description: REST surface for workspaces-workspace-projects-project_key-default-reviewers. operations: - method: GET name: get description: List the default reviewers in a project call: bitbucket-pipelines-projects.get outputParameters: - type: object mapping: $. - path: /v1/workspaces/{workspace}/projects/{project-key}/default-reviewers/{selected-user} name: workspaces-workspace-projects-project-key-default-reviewers-selected-user description: REST surface for workspaces-workspace-projects-project_key-default-reviewers-selected_user. operations: - method: DELETE name: delete description: Remove the specific user from the project's default reviewers call: bitbucket-pipelines-projects.delete outputParameters: - type: object mapping: $. - method: GET name: get description: Get a default reviewer call: bitbucket-pipelines-projects.get outputParameters: - type: object mapping: $. - method: PUT name: put description: Add the specific user as a default reviewer for the project call: bitbucket-pipelines-projects.put outputParameters: - type: object mapping: $. - path: /v1/workspaces/{workspace}/projects/{project-key}/permissions-config/groups name: workspaces-workspace-projects-project-key-permissions-config-groups description: REST surface for workspaces-workspace-projects-project_key-permissions-config-groups. operations: - method: GET name: get description: List explicit group permissions for a project call: bitbucket-pipelines-projects.get outputParameters: - type: object mapping: $. - path: /v1/workspaces/{workspace}/projects/{project-key}/permissions-config/groups/{group-slug} name: workspaces-workspace-projects-project-key-permissions-config-groups-group-slug description: REST surface for workspaces-workspace-projects-project_key-permissions-config-groups-group_slug. operations: - method: DELETE name: delete description: Delete an explicit group permission for a project call: bitbucket-pipelines-projects.delete outputParameters: - type: object mapping: $. - method: GET name: get description: Get an explicit group permission for a project call: bitbucket-pipelines-projects.get outputParameters: - type: object mapping: $. - method: PUT name: put description: Update an explicit group permission for a project call: bitbucket-pipelines-projects.put with: _body: rest._body outputParameters: - type: object mapping: $. - path: /v1/workspaces/{workspace}/projects/{project-key}/permissions-config/users name: workspaces-workspace-projects-project-key-permissions-config-users description: REST surface for workspaces-workspace-projects-project_key-permissions-config-users. operations: - method: GET name: get description: List explicit user permissions for a project call: bitbucket-pipelines-projects.get outputParameters: - type: object mapping: $. - path: /v1/workspaces/{workspace}/projects/{project-key}/permissions-config/users/{selected-user-id} name: workspaces-workspace-projects-project-key-permissions-config-users-selected-user description: REST surface for workspaces-workspace-projects-project_key-permissions-config-users-selected_user. operations: - method: DELETE name: delete description: Delete an explicit user permission for a project call: bitbucket-pipelines-projects.delete outputParameters: - type: object mapping: $. - method: GET name: get description: Get an explicit user permission for a project call: bitbucket-pipelines-projects.get outputParameters: - type: object mapping: $. - method: PUT name: put description: Update an explicit user permission for a project call: bitbucket-pipelines-projects.put with: _body: rest._body outputParameters: - type: object mapping: $. - type: mcp namespace: bitbucket-pipelines-projects-mcp port: 9090 transport: http description: MCP adapter for Bitbucket API — Projects. One tool per consumed operation, routed inline through this capability's consumes block. tools: - name: create-project-workspace description: Create a project in a workspace hints: readOnly: false destructive: false idempotent: false call: bitbucket-pipelines-projects.post with: _body: tools._body outputParameters: - type: object mapping: $. - name: delete-project-workspace description: Delete a project for a workspace hints: readOnly: false destructive: true idempotent: true call: bitbucket-pipelines-projects.delete outputParameters: - type: object mapping: $. - name: get-project-workspace description: Get a project for a workspace hints: readOnly: true destructive: false idempotent: true call: bitbucket-pipelines-projects.get outputParameters: - type: object mapping: $. - name: update-project-workspace description: Update a project for a workspace hints: readOnly: false destructive: false idempotent: true call: bitbucket-pipelines-projects.put with: _body: tools._body outputParameters: - type: object mapping: $. - name: list-default-reviewers-project description: List the default reviewers in a project hints: readOnly: true destructive: false idempotent: true call: bitbucket-pipelines-projects.get outputParameters: - type: object mapping: $. - name: remove-specific-user-project-s-default description: Remove the specific user from the project's default reviewers hints: readOnly: false destructive: true idempotent: true call: bitbucket-pipelines-projects.delete outputParameters: - type: object mapping: $. - name: get-default-reviewer description: Get a default reviewer hints: readOnly: true destructive: false idempotent: true call: bitbucket-pipelines-projects.get outputParameters: - type: object mapping: $. - name: add-specific-user-default-reviewer description: Add the specific user as a default reviewer for the project hints: readOnly: false destructive: false idempotent: true call: bitbucket-pipelines-projects.put outputParameters: - type: object mapping: $. - name: list-explicit-group-permissions-project description: List explicit group permissions for a project hints: readOnly: true destructive: false idempotent: true call: bitbucket-pipelines-projects.get outputParameters: - type: object mapping: $. - name: delete-explicit-group-permission-project description: Delete an explicit group permission for a project hints: readOnly: false destructive: true idempotent: true call: bitbucket-pipelines-projects.delete outputParameters: - type: object mapping: $. - name: get-explicit-group-permission-project description: Get an explicit group permission for a project hints: readOnly: true destructive: false idempotent: true call: bitbucket-pipelines-projects.get outputParameters: - type: object mapping: $. - name: update-explicit-group-permission-project description: Update an explicit group permission for a project hints: readOnly: false destructive: false idempotent: true call: bitbucket-pipelines-projects.put with: _body: tools._body outputParameters: - type: object mapping: $. - name: list-explicit-user-permissions-project description: List explicit user permissions for a project hints: readOnly: true destructive: false idempotent: true call: bitbucket-pipelines-projects.get outputParameters: - type: object mapping: $. - name: delete-explicit-user-permission-project description: Delete an explicit user permission for a project hints: readOnly: false destructive: true idempotent: true call: bitbucket-pipelines-projects.delete outputParameters: - type: object mapping: $. - name: get-explicit-user-permission-project description: Get an explicit user permission for a project hints: readOnly: true destructive: false idempotent: true call: bitbucket-pipelines-projects.get outputParameters: - type: object mapping: $. - name: update-explicit-user-permission-project description: Update an explicit user permission for a project hints: readOnly: false destructive: false idempotent: true call: bitbucket-pipelines-projects.put with: _body: tools._body outputParameters: - type: object mapping: $.