naftiko: 1.0.0-alpha2 info: label: International Business Machines IBM Cloud Object Storage API — Objects description: 'International Business Machines IBM Cloud Object Storage API — Objects. 4 operations. Lead operation: International Business Machines List objects in a bucket. Self-contained Naftiko capability covering one International Business Machines business surface.' tags: - International Business Machines - Objects created: '2026-05-19' modified: '2026-05-19' binds: - namespace: env keys: INTERNATIONAL_BUSINESS_MACHINES_API_KEY: INTERNATIONAL_BUSINESS_MACHINES_API_KEY capability: consumes: - type: http namespace: ibm-cloud-object-storage-objects baseUri: https://s3.us-south.cloud-object-storage.appdomain.cloud description: International Business Machines IBM Cloud Object Storage API — Objects business capability. Self-contained, no shared references. resources: - name: bucket path: /{bucket} operations: - name: listobjects method: GET description: International Business Machines List objects in a bucket outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: bucket in: path type: string required: true - name: prefix in: query type: string - name: max-keys in: query type: integer - name: bucket-key path: /{bucket}/{key} operations: - name: putobject method: PUT description: International Business Machines Upload an object outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: bucket in: path type: string required: true - name: key in: path type: string required: true - name: body in: body type: object description: Request body (JSON). required: false - name: getobject method: GET description: International Business Machines Get an object outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: bucket in: path type: string required: true - name: key in: path type: string required: true - name: deleteobject method: DELETE description: International Business Machines Delete an object outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: bucket in: path type: string required: true - name: key in: path type: string required: true authentication: type: bearer token: '{{env.INTERNATIONAL_BUSINESS_MACHINES_API_KEY}}' exposes: - type: rest namespace: ibm-cloud-object-storage-objects-rest port: 8080 description: REST adapter for International Business Machines IBM Cloud Object Storage API — Objects. One Spectral-compliant resource per consumed operation, prefixed with /v1. resources: - path: /v1/{bucket} name: bucket description: REST surface for bucket. operations: - method: GET name: listobjects description: International Business Machines List objects in a bucket call: ibm-cloud-object-storage-objects.listobjects with: bucket: rest.bucket prefix: rest.prefix max-keys: rest.max-keys outputParameters: - type: object mapping: $. - path: /v1/{bucket}/{key} name: bucket-key description: REST surface for bucket-key. operations: - method: PUT name: putobject description: International Business Machines Upload an object call: ibm-cloud-object-storage-objects.putobject with: bucket: rest.bucket key: rest.key body: rest.body outputParameters: - type: object mapping: $. - method: GET name: getobject description: International Business Machines Get an object call: ibm-cloud-object-storage-objects.getobject with: bucket: rest.bucket key: rest.key outputParameters: - type: object mapping: $. - method: DELETE name: deleteobject description: International Business Machines Delete an object call: ibm-cloud-object-storage-objects.deleteobject with: bucket: rest.bucket key: rest.key outputParameters: - type: object mapping: $. - type: mcp namespace: ibm-cloud-object-storage-objects-mcp port: 9090 transport: http description: MCP adapter for International Business Machines IBM Cloud Object Storage API — Objects. One tool per consumed operation, routed inline through this capability's consumes block. tools: - name: international-business-machines-list-objects description: International Business Machines List objects in a bucket hints: readOnly: true destructive: false idempotent: true call: ibm-cloud-object-storage-objects.listobjects with: bucket: tools.bucket prefix: tools.prefix max-keys: tools.max-keys outputParameters: - type: object mapping: $. - name: international-business-machines-upload-object description: International Business Machines Upload an object hints: readOnly: false destructive: false idempotent: true call: ibm-cloud-object-storage-objects.putobject with: bucket: tools.bucket key: tools.key body: tools.body outputParameters: - type: object mapping: $. - name: international-business-machines-get-object description: International Business Machines Get an object hints: readOnly: true destructive: false idempotent: true call: ibm-cloud-object-storage-objects.getobject with: bucket: tools.bucket key: tools.key outputParameters: - type: object mapping: $. - name: international-business-machines-delete-object description: International Business Machines Delete an object hints: readOnly: false destructive: true idempotent: true call: ibm-cloud-object-storage-objects.deleteobject with: bucket: tools.bucket key: tools.key outputParameters: - type: object mapping: $.