naftiko: 1.0.0-alpha2 info: label: Application Research Score Workload Specification API — Workloads description: 'Application Research Score Workload Specification API — Workloads. 7 operations. Lead operation: Application Research List all workloads. Self-contained Naftiko capability covering one Application Research business surface.' tags: - Application Research - Workloads created: '2026-05-19' modified: '2026-05-19' binds: - namespace: env keys: APPLICATION_RESEARCH_API_KEY: APPLICATION_RESEARCH_API_KEY capability: consumes: - type: http namespace: score-workloads baseUri: https://api.score.dev/v1 description: Application Research Score Workload Specification API — Workloads business capability. Self-contained, no shared references. resources: - name: workloads path: /workloads operations: - name: listworkloads method: GET description: Application Research List all workloads outputRawFormat: json outputParameters: - name: result type: object value: $. - name: createworkload method: POST description: Application Research Create a new workload outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: workloads-workloadName path: /workloads/{workloadName} operations: - name: getworkload method: GET description: Application Research Get a specific workload outputRawFormat: json outputParameters: - name: result type: object value: $. - name: updateworkload method: PUT description: Application Research Update a workload outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: deleteworkload method: DELETE description: Application Research Delete a workload outputRawFormat: json outputParameters: - name: result type: object value: $. - name: workloads-workloadName-containers path: /workloads/{workloadName}/containers operations: - name: listworkloadcontainers method: GET description: Application Research List containers in a workload outputRawFormat: json outputParameters: - name: result type: object value: $. - name: workloads-workloadName-resources path: /workloads/{workloadName}/resources operations: - name: listworkloadresources method: GET description: Application Research List resources in a workload outputRawFormat: json outputParameters: - name: result type: object value: $. authentication: type: bearer token: '{{env.APPLICATION_RESEARCH_API_KEY}}' exposes: - type: rest namespace: score-workloads-rest port: 8080 description: REST adapter for Application Research Score Workload Specification API — Workloads. One Spectral-compliant resource per consumed operation, prefixed with /v1. resources: - path: /v1/workloads name: workloads description: REST surface for workloads. operations: - method: GET name: listworkloads description: Application Research List all workloads call: score-workloads.listworkloads outputParameters: - type: object mapping: $. - method: POST name: createworkload description: Application Research Create a new workload call: score-workloads.createworkload with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/workloads/{workloadname} name: workloads-workloadname description: REST surface for workloads-workloadName. operations: - method: GET name: getworkload description: Application Research Get a specific workload call: score-workloads.getworkload outputParameters: - type: object mapping: $. - method: PUT name: updateworkload description: Application Research Update a workload call: score-workloads.updateworkload with: body: rest.body outputParameters: - type: object mapping: $. - method: DELETE name: deleteworkload description: Application Research Delete a workload call: score-workloads.deleteworkload outputParameters: - type: object mapping: $. - path: /v1/workloads/{workloadname}/containers name: workloads-workloadname-containers description: REST surface for workloads-workloadName-containers. operations: - method: GET name: listworkloadcontainers description: Application Research List containers in a workload call: score-workloads.listworkloadcontainers outputParameters: - type: object mapping: $. - path: /v1/workloads/{workloadname}/resources name: workloads-workloadname-resources description: REST surface for workloads-workloadName-resources. operations: - method: GET name: listworkloadresources description: Application Research List resources in a workload call: score-workloads.listworkloadresources outputParameters: - type: object mapping: $. - type: mcp namespace: score-workloads-mcp port: 9090 transport: http description: MCP adapter for Application Research Score Workload Specification API — Workloads. One tool per consumed operation, routed inline through this capability's consumes block. tools: - name: application-research-list-all-workloads description: Application Research List all workloads hints: readOnly: true destructive: false idempotent: true call: score-workloads.listworkloads outputParameters: - type: object mapping: $. - name: application-research-create-new-workload description: Application Research Create a new workload hints: readOnly: true destructive: false idempotent: false call: score-workloads.createworkload with: body: tools.body outputParameters: - type: object mapping: $. - name: application-research-get-specific-workload description: Application Research Get a specific workload hints: readOnly: true destructive: false idempotent: true call: score-workloads.getworkload outputParameters: - type: object mapping: $. - name: application-research-update-workload description: Application Research Update a workload hints: readOnly: false destructive: false idempotent: true call: score-workloads.updateworkload with: body: tools.body outputParameters: - type: object mapping: $. - name: application-research-delete-workload description: Application Research Delete a workload hints: readOnly: false destructive: true idempotent: true call: score-workloads.deleteworkload outputParameters: - type: object mapping: $. - name: application-research-list-containers-workload description: Application Research List containers in a workload hints: readOnly: true destructive: false idempotent: true call: score-workloads.listworkloadcontainers outputParameters: - type: object mapping: $. - name: application-research-list-resources-workload description: Application Research List resources in a workload hints: readOnly: true destructive: false idempotent: true call: score-workloads.listworkloadresources outputParameters: - type: object mapping: $.