naftiko: 1.0.0-alpha2 info: label: JFrog Artifactory Build Integration API — Build Management description: 'JFrog Artifactory Build Integration API — Build Management. 4 operations. Lead operation: Rename Build. Self-contained Naftiko capability covering one Artifactory business surface.' tags: - Artifactory - Build Management created: '2026-05-19' modified: '2026-05-19' binds: - namespace: env keys: ARTIFACTORY_API_KEY: ARTIFACTORY_API_KEY capability: consumes: - type: http namespace: build-integration-build-management baseUri: https://{server}/artifactory description: JFrog Artifactory Build Integration API — Build Management business capability. Self-contained, no shared references. resources: - name: api-build-rename-buildName path: /api/build/rename/{buildName} operations: - name: renamebuild method: POST description: Rename Build outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: to in: query type: string description: New name for the build required: true - name: api-build-retention-buildName path: /api/build/retention/{buildName} operations: - name: setbuildretention method: POST description: Set Build Retention outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: getbuildretention method: GET description: Get Build Retention outputRawFormat: json outputParameters: - name: result type: object value: $. - name: api-build-buildName path: /api/build/{buildName} operations: - name: deletebuild method: DELETE description: Delete Build outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: deleteAll in: query type: integer description: If 1, delete all build numbers. If 0, requires buildNumbers param. - name: buildNumbers in: query type: string description: Comma-separated list of build numbers to delete - name: artifacts in: query type: integer description: If 1, also delete associated build artifacts from repositories authentication: type: bearer token: '{{env.ARTIFACTORY_API_KEY}}' exposes: - type: rest namespace: build-integration-build-management-rest port: 8080 description: REST adapter for JFrog Artifactory Build Integration API — Build Management. One Spectral-compliant resource per consumed operation, prefixed with /v1. resources: - path: /v1/api/build/rename/{buildname} name: api-build-rename-buildname description: REST surface for api-build-rename-buildName. operations: - method: POST name: renamebuild description: Rename Build call: build-integration-build-management.renamebuild with: to: rest.to outputParameters: - type: object mapping: $. - path: /v1/api/build/retention/{buildname} name: api-build-retention-buildname description: REST surface for api-build-retention-buildName. operations: - method: POST name: setbuildretention description: Set Build Retention call: build-integration-build-management.setbuildretention with: body: rest.body outputParameters: - type: object mapping: $. - method: GET name: getbuildretention description: Get Build Retention call: build-integration-build-management.getbuildretention outputParameters: - type: object mapping: $. - path: /v1/api/build/{buildname} name: api-build-buildname description: REST surface for api-build-buildName. operations: - method: DELETE name: deletebuild description: Delete Build call: build-integration-build-management.deletebuild with: deleteAll: rest.deleteAll buildNumbers: rest.buildNumbers artifacts: rest.artifacts outputParameters: - type: object mapping: $. - type: mcp namespace: build-integration-build-management-mcp port: 9090 transport: http description: MCP adapter for JFrog Artifactory Build Integration API — Build Management. One tool per consumed operation, routed inline through this capability's consumes block. tools: - name: rename-build description: Rename Build hints: readOnly: false destructive: false idempotent: false call: build-integration-build-management.renamebuild with: to: tools.to outputParameters: - type: object mapping: $. - name: set-build-retention description: Set Build Retention hints: readOnly: false destructive: false idempotent: false call: build-integration-build-management.setbuildretention with: body: tools.body outputParameters: - type: object mapping: $. - name: get-build-retention description: Get Build Retention hints: readOnly: true destructive: false idempotent: true call: build-integration-build-management.getbuildretention outputParameters: - type: object mapping: $. - name: delete-build description: Delete Build hints: readOnly: false destructive: true idempotent: true call: build-integration-build-management.deletebuild with: deleteAll: tools.deleteAll buildNumbers: tools.buildNumbers artifacts: tools.artifacts outputParameters: - type: object mapping: $.