naftiko: 1.0.0-alpha2 info: label: Google Cloud Storage JSON API — BucketAccessControls description: 'Google Cloud Storage JSON API — BucketAccessControls. 6 operations. Lead operation: Google Cloud Storage List Bucket Acl Entries. Self-contained Naftiko capability covering one Gcp Cloud Storage business surface.' tags: - Gcp Cloud Storage - BucketAccessControls created: '2026-05-19' modified: '2026-05-19' binds: - namespace: env keys: GCP_CLOUD_STORAGE_API_KEY: GCP_CLOUD_STORAGE_API_KEY capability: consumes: - type: http namespace: json-bucketaccesscontrols baseUri: https://storage.googleapis.com/storage/v1 description: Google Cloud Storage JSON API — BucketAccessControls business capability. Self-contained, no shared references. resources: - name: b-bucket-acl path: /b/{bucket}/acl operations: - name: listbucketaccesscontrols method: GET description: Google Cloud Storage List Bucket Acl Entries outputRawFormat: json outputParameters: - name: result type: object value: $. - name: insertbucketaccesscontrol method: POST description: Google Cloud Storage Create a Bucket Acl Entry outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: b-bucket-acl-entity path: /b/{bucket}/acl/{entity} operations: - name: getbucketaccesscontrol method: GET description: Google Cloud Storage Get a Bucket Acl Entry outputRawFormat: json outputParameters: - name: result type: object value: $. - name: updatebucketaccesscontrol method: PUT description: Google Cloud Storage Update a Bucket Acl Entry outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: patchbucketaccesscontrol method: PATCH description: Google Cloud Storage Patch a Bucket Acl Entry outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: deletebucketaccesscontrol method: DELETE description: Google Cloud Storage Delete a Bucket Acl Entry outputRawFormat: json outputParameters: - name: result type: object value: $. authentication: type: bearer token: '{{env.GCP_CLOUD_STORAGE_API_KEY}}' exposes: - type: rest namespace: json-bucketaccesscontrols-rest port: 8080 description: REST adapter for Google Cloud Storage JSON API — BucketAccessControls. One Spectral-compliant resource per consumed operation, prefixed with /v1. resources: - path: /v1/b/{bucket}/acl name: b-bucket-acl description: REST surface for b-bucket-acl. operations: - method: GET name: listbucketaccesscontrols description: Google Cloud Storage List Bucket Acl Entries call: json-bucketaccesscontrols.listbucketaccesscontrols outputParameters: - type: object mapping: $. - method: POST name: insertbucketaccesscontrol description: Google Cloud Storage Create a Bucket Acl Entry call: json-bucketaccesscontrols.insertbucketaccesscontrol with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/b/{bucket}/acl/{entity} name: b-bucket-acl-entity description: REST surface for b-bucket-acl-entity. operations: - method: GET name: getbucketaccesscontrol description: Google Cloud Storage Get a Bucket Acl Entry call: json-bucketaccesscontrols.getbucketaccesscontrol outputParameters: - type: object mapping: $. - method: PUT name: updatebucketaccesscontrol description: Google Cloud Storage Update a Bucket Acl Entry call: json-bucketaccesscontrols.updatebucketaccesscontrol with: body: rest.body outputParameters: - type: object mapping: $. - method: PATCH name: patchbucketaccesscontrol description: Google Cloud Storage Patch a Bucket Acl Entry call: json-bucketaccesscontrols.patchbucketaccesscontrol with: body: rest.body outputParameters: - type: object mapping: $. - method: DELETE name: deletebucketaccesscontrol description: Google Cloud Storage Delete a Bucket Acl Entry call: json-bucketaccesscontrols.deletebucketaccesscontrol outputParameters: - type: object mapping: $. - type: mcp namespace: json-bucketaccesscontrols-mcp port: 9090 transport: http description: MCP adapter for Google Cloud Storage JSON API — BucketAccessControls. One tool per consumed operation, routed inline through this capability's consumes block. tools: - name: google-cloud-storage-list-bucket description: Google Cloud Storage List Bucket Acl Entries hints: readOnly: true destructive: false idempotent: true call: json-bucketaccesscontrols.listbucketaccesscontrols outputParameters: - type: object mapping: $. - name: google-cloud-storage-create-bucket description: Google Cloud Storage Create a Bucket Acl Entry hints: readOnly: false destructive: false idempotent: false call: json-bucketaccesscontrols.insertbucketaccesscontrol with: body: tools.body outputParameters: - type: object mapping: $. - name: google-cloud-storage-get-bucket description: Google Cloud Storage Get a Bucket Acl Entry hints: readOnly: true destructive: false idempotent: true call: json-bucketaccesscontrols.getbucketaccesscontrol outputParameters: - type: object mapping: $. - name: google-cloud-storage-update-bucket description: Google Cloud Storage Update a Bucket Acl Entry hints: readOnly: false destructive: false idempotent: true call: json-bucketaccesscontrols.updatebucketaccesscontrol with: body: tools.body outputParameters: - type: object mapping: $. - name: google-cloud-storage-patch-bucket description: Google Cloud Storage Patch a Bucket Acl Entry hints: readOnly: false destructive: false idempotent: true call: json-bucketaccesscontrols.patchbucketaccesscontrol with: body: tools.body outputParameters: - type: object mapping: $. - name: google-cloud-storage-delete-bucket description: Google Cloud Storage Delete a Bucket Acl Entry hints: readOnly: false destructive: true idempotent: true call: json-bucketaccesscontrols.deletebucketaccesscontrol outputParameters: - type: object mapping: $.