naftiko: 1.0.0-alpha2 info: label: Atlassian Bitbucket API — Commits description: 'Atlassian Bitbucket API — Commits. 16 operations. Lead operation: Atlassian Get A Commit. Self-contained Naftiko capability covering one Atlassian business surface.' tags: - Atlassian - Commits created: '2026-05-19' modified: '2026-05-19' binds: - namespace: env keys: ATLASSIAN_API_KEY: ATLASSIAN_API_KEY capability: consumes: - type: http namespace: bitbucket-commits baseUri: https://api.bitbucket.org/2.0 description: Atlassian Bitbucket API — Commits business capability. Self-contained, no shared references. resources: - name: repositories-workspace-repo_slug-commit-commit path: /repositories/{workspace}/{repo_slug}/commit/{commit} operations: - name: atlassiangetacommit method: GET description: Atlassian Get A Commit outputRawFormat: json outputParameters: - name: result type: object value: $. - name: repositories-workspace-repo_slug-commit-commit-approve path: /repositories/{workspace}/{repo_slug}/commit/{commit}/approve operations: - name: atlassianunapproveacommit method: DELETE description: Atlassian Unapprove A Commit outputRawFormat: json outputParameters: - name: result type: object value: $. - name: atlassianapproveacommit method: POST description: Atlassian Approve A Commit outputRawFormat: json outputParameters: - name: result type: object value: $. - name: repositories-workspace-repo_slug-commit-commit-comments path: /repositories/{workspace}/{repo_slug}/commit/{commit}/comments operations: - name: atlassianlistacommitscomments method: GET description: Atlassian List A Commit S Comments outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: q in: query type: string description: Query string to narrow down the response as per - name: sort in: query type: string description: Field by which the results should be sorted as per - name: atlassiancreatecommentforacommit method: POST description: Atlassian Create Comment For A Commit outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: repositories-workspace-repo_slug-commit-commit-comments-comment_id path: /repositories/{workspace}/{repo_slug}/commit/{commit}/comments/{comment_id} operations: - name: atlassiandeleteacommitcomment method: DELETE description: Atlassian Delete A Commit Comment outputRawFormat: json outputParameters: - name: result type: object value: $. - name: atlassiangetacommitcomment method: GET description: Atlassian Get A Commit Comment outputRawFormat: json outputParameters: - name: result type: object value: $. - name: atlassianupdateacommitcomment method: PUT description: Atlassian Update A Commit Comment outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: repositories-workspace-repo_slug-commits path: /repositories/{workspace}/{repo_slug}/commits operations: - name: atlassianlistcommits method: GET description: Atlassian List Commits outputRawFormat: json outputParameters: - name: result type: object value: $. - name: atlassianlistcommitswithincludeexclude method: POST description: Atlassian List Commits With Include Exclude outputRawFormat: json outputParameters: - name: result type: object value: $. - name: repositories-workspace-repo_slug-commits-revision path: /repositories/{workspace}/{repo_slug}/commits/{revision} operations: - name: atlassianlistcommitsforrevision method: GET description: Atlassian List Commits For Revision outputRawFormat: json outputParameters: - name: result type: object value: $. - name: atlassianlistcommitsforrevisionusingincludeexclude method: POST description: Atlassian List Commits For Revision Using Include Exclude outputRawFormat: json outputParameters: - name: result type: object value: $. - name: repositories-workspace-repo_slug-diff-spec path: /repositories/{workspace}/{repo_slug}/diff/{spec} operations: - name: atlassiancomparetwocommits method: GET description: Atlassian Compare Two Commits outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: context in: query type: integer description: Generate diffs with lines of context instead of the usual three. - name: path in: query type: string description: Limit the diff to a particular file (this parameter - name: ignore_whitespace in: query type: boolean description: Generate diffs that ignore whitespace. - name: binary in: query type: boolean description: Generate diffs that include binary files, true if omitted. - name: renames in: query type: boolean description: Whether to perform rename detection, true if omitted. - name: merge in: query type: boolean description: This parameter is deprecated. The 'topic' parameter should be used - name: topic in: query type: boolean description: If true, returns 2-way 'three-dot' diff. - name: repositories-workspace-repo_slug-diffstat-spec path: /repositories/{workspace}/{repo_slug}/diffstat/{spec} operations: - name: atlassiancomparetwocommitdiffstats method: GET description: Atlassian Compare Two Commit Diff Stats outputRawFormat: json outputParameters: - name: result type: object value: $. - name: repositories-workspace-repo_slug-merge-base-revspec path: /repositories/{workspace}/{repo_slug}/merge-base/{revspec} operations: - name: atlassiangetthecommonancestorbetweentwocommits method: GET description: Atlassian Get The Common Ancestor Between Two Commits outputRawFormat: json outputParameters: - name: result type: object value: $. - name: repositories-workspace-repo_slug-patch-spec path: /repositories/{workspace}/{repo_slug}/patch/{spec} operations: - name: atlassiangetapatchfortwocommits method: GET description: Atlassian Get A Patch For Two Commits outputRawFormat: json outputParameters: - name: result type: object value: $. authentication: type: bearer token: '{{env.ATLASSIAN_API_KEY}}' exposes: - type: rest namespace: bitbucket-commits-rest port: 8080 description: REST adapter for Atlassian Bitbucket API — Commits. One Spectral-compliant resource per consumed operation, prefixed with /v1. resources: - path: /v1/repositories/{workspace}/{repo-slug}/commit/{commit} name: repositories-workspace-repo-slug-commit-commit description: REST surface for repositories-workspace-repo_slug-commit-commit. operations: - method: GET name: atlassiangetacommit description: Atlassian Get A Commit call: bitbucket-commits.atlassiangetacommit outputParameters: - type: object mapping: $. - path: /v1/repositories/{workspace}/{repo-slug}/commit/{commit}/approve name: repositories-workspace-repo-slug-commit-commit-approve description: REST surface for repositories-workspace-repo_slug-commit-commit-approve. operations: - method: DELETE name: atlassianunapproveacommit description: Atlassian Unapprove A Commit call: bitbucket-commits.atlassianunapproveacommit outputParameters: - type: object mapping: $. - method: POST name: atlassianapproveacommit description: Atlassian Approve A Commit call: bitbucket-commits.atlassianapproveacommit outputParameters: - type: object mapping: $. - path: /v1/repositories/{workspace}/{repo-slug}/commit/{commit}/comments name: repositories-workspace-repo-slug-commit-commit-comments description: REST surface for repositories-workspace-repo_slug-commit-commit-comments. operations: - method: GET name: atlassianlistacommitscomments description: Atlassian List A Commit S Comments call: bitbucket-commits.atlassianlistacommitscomments with: q: rest.q sort: rest.sort outputParameters: - type: object mapping: $. - method: POST name: atlassiancreatecommentforacommit description: Atlassian Create Comment For A Commit call: bitbucket-commits.atlassiancreatecommentforacommit with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/repositories/{workspace}/{repo-slug}/commit/{commit}/comments/{comment-id} name: repositories-workspace-repo-slug-commit-commit-comments-comment-id description: REST surface for repositories-workspace-repo_slug-commit-commit-comments-comment_id. operations: - method: DELETE name: atlassiandeleteacommitcomment description: Atlassian Delete A Commit Comment call: bitbucket-commits.atlassiandeleteacommitcomment outputParameters: - type: object mapping: $. - method: GET name: atlassiangetacommitcomment description: Atlassian Get A Commit Comment call: bitbucket-commits.atlassiangetacommitcomment outputParameters: - type: object mapping: $. - method: PUT name: atlassianupdateacommitcomment description: Atlassian Update A Commit Comment call: bitbucket-commits.atlassianupdateacommitcomment with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/repositories/{workspace}/{repo-slug}/commits name: repositories-workspace-repo-slug-commits description: REST surface for repositories-workspace-repo_slug-commits. operations: - method: GET name: atlassianlistcommits description: Atlassian List Commits call: bitbucket-commits.atlassianlistcommits outputParameters: - type: object mapping: $. - method: POST name: atlassianlistcommitswithincludeexclude description: Atlassian List Commits With Include Exclude call: bitbucket-commits.atlassianlistcommitswithincludeexclude outputParameters: - type: object mapping: $. - path: /v1/repositories/{workspace}/{repo-slug}/commits/{revision} name: repositories-workspace-repo-slug-commits-revision description: REST surface for repositories-workspace-repo_slug-commits-revision. operations: - method: GET name: atlassianlistcommitsforrevision description: Atlassian List Commits For Revision call: bitbucket-commits.atlassianlistcommitsforrevision outputParameters: - type: object mapping: $. - method: POST name: atlassianlistcommitsforrevisionusingincludeexclude description: Atlassian List Commits For Revision Using Include Exclude call: bitbucket-commits.atlassianlistcommitsforrevisionusingincludeexclude outputParameters: - type: object mapping: $. - path: /v1/repositories/{workspace}/{repo-slug}/diff/{spec} name: repositories-workspace-repo-slug-diff-spec description: REST surface for repositories-workspace-repo_slug-diff-spec. operations: - method: GET name: atlassiancomparetwocommits description: Atlassian Compare Two Commits call: bitbucket-commits.atlassiancomparetwocommits with: context: rest.context path: rest.path ignore_whitespace: rest.ignore_whitespace binary: rest.binary renames: rest.renames merge: rest.merge topic: rest.topic outputParameters: - type: object mapping: $. - path: /v1/repositories/{workspace}/{repo-slug}/diffstat/{spec} name: repositories-workspace-repo-slug-diffstat-spec description: REST surface for repositories-workspace-repo_slug-diffstat-spec. operations: - method: GET name: atlassiancomparetwocommitdiffstats description: Atlassian Compare Two Commit Diff Stats call: bitbucket-commits.atlassiancomparetwocommitdiffstats outputParameters: - type: object mapping: $. - path: /v1/repositories/{workspace}/{repo-slug}/merge-base/{revspec} name: repositories-workspace-repo-slug-merge-base-revspec description: REST surface for repositories-workspace-repo_slug-merge-base-revspec. operations: - method: GET name: atlassiangetthecommonancestorbetweentwocommits description: Atlassian Get The Common Ancestor Between Two Commits call: bitbucket-commits.atlassiangetthecommonancestorbetweentwocommits outputParameters: - type: object mapping: $. - path: /v1/repositories/{workspace}/{repo-slug}/patch/{spec} name: repositories-workspace-repo-slug-patch-spec description: REST surface for repositories-workspace-repo_slug-patch-spec. operations: - method: GET name: atlassiangetapatchfortwocommits description: Atlassian Get A Patch For Two Commits call: bitbucket-commits.atlassiangetapatchfortwocommits outputParameters: - type: object mapping: $. - type: mcp namespace: bitbucket-commits-mcp port: 9090 transport: http description: MCP adapter for Atlassian Bitbucket API — Commits. One tool per consumed operation, routed inline through this capability's consumes block. tools: - name: atlassian-get-commit description: Atlassian Get A Commit hints: readOnly: true destructive: false idempotent: true call: bitbucket-commits.atlassiangetacommit outputParameters: - type: object mapping: $. - name: atlassian-unapprove-commit description: Atlassian Unapprove A Commit hints: readOnly: false destructive: true idempotent: true call: bitbucket-commits.atlassianunapproveacommit outputParameters: - type: object mapping: $. - name: atlassian-approve-commit description: Atlassian Approve A Commit hints: readOnly: false destructive: false idempotent: false call: bitbucket-commits.atlassianapproveacommit outputParameters: - type: object mapping: $. - name: atlassian-list-commit-s-comments description: Atlassian List A Commit S Comments hints: readOnly: true destructive: false idempotent: true call: bitbucket-commits.atlassianlistacommitscomments with: q: tools.q sort: tools.sort outputParameters: - type: object mapping: $. - name: atlassian-create-comment-commit description: Atlassian Create Comment For A Commit hints: readOnly: false destructive: false idempotent: false call: bitbucket-commits.atlassiancreatecommentforacommit with: body: tools.body outputParameters: - type: object mapping: $. - name: atlassian-delete-commit-comment description: Atlassian Delete A Commit Comment hints: readOnly: false destructive: true idempotent: true call: bitbucket-commits.atlassiandeleteacommitcomment outputParameters: - type: object mapping: $. - name: atlassian-get-commit-comment description: Atlassian Get A Commit Comment hints: readOnly: true destructive: false idempotent: true call: bitbucket-commits.atlassiangetacommitcomment outputParameters: - type: object mapping: $. - name: atlassian-update-commit-comment description: Atlassian Update A Commit Comment hints: readOnly: false destructive: false idempotent: true call: bitbucket-commits.atlassianupdateacommitcomment with: body: tools.body outputParameters: - type: object mapping: $. - name: atlassian-list-commits description: Atlassian List Commits hints: readOnly: true destructive: false idempotent: true call: bitbucket-commits.atlassianlistcommits outputParameters: - type: object mapping: $. - name: atlassian-list-commits-include-exclude description: Atlassian List Commits With Include Exclude hints: readOnly: true destructive: false idempotent: false call: bitbucket-commits.atlassianlistcommitswithincludeexclude outputParameters: - type: object mapping: $. - name: atlassian-list-commits-revision description: Atlassian List Commits For Revision hints: readOnly: true destructive: false idempotent: true call: bitbucket-commits.atlassianlistcommitsforrevision outputParameters: - type: object mapping: $. - name: atlassian-list-commits-revision-using description: Atlassian List Commits For Revision Using Include Exclude hints: readOnly: true destructive: false idempotent: false call: bitbucket-commits.atlassianlistcommitsforrevisionusingincludeexclude outputParameters: - type: object mapping: $. - name: atlassian-compare-two-commits description: Atlassian Compare Two Commits hints: readOnly: true destructive: false idempotent: true call: bitbucket-commits.atlassiancomparetwocommits with: context: tools.context path: tools.path ignore_whitespace: tools.ignore_whitespace binary: tools.binary renames: tools.renames merge: tools.merge topic: tools.topic outputParameters: - type: object mapping: $. - name: atlassian-compare-two-commit-diff description: Atlassian Compare Two Commit Diff Stats hints: readOnly: true destructive: false idempotent: true call: bitbucket-commits.atlassiancomparetwocommitdiffstats outputParameters: - type: object mapping: $. - name: atlassian-get-common-ancestor-between description: Atlassian Get The Common Ancestor Between Two Commits hints: readOnly: true destructive: false idempotent: true call: bitbucket-commits.atlassiangetthecommonancestorbetweentwocommits outputParameters: - type: object mapping: $. - name: atlassian-get-patch-two-commits description: Atlassian Get A Patch For Two Commits hints: readOnly: true destructive: false idempotent: true call: bitbucket-commits.atlassiangetapatchfortwocommits outputParameters: - type: object mapping: $.