naftiko: 1.0.0-alpha2 info: label: Amazon S3 Tables API — Table Policy description: 'Amazon S3 Tables API — Table Policy. 6 operations. Lead operation: Amazon S3 Get Table Bucket Policy. Self-contained Naftiko capability covering one Amazon S3 business surface.' tags: - Amazon S3 - Table Policy created: '2026-05-19' modified: '2026-05-19' binds: - namespace: env keys: AMAZON_S3_API_KEY: AMAZON_S3_API_KEY capability: consumes: - type: http namespace: tables-table-policy baseUri: https://s3tables.{region}.amazonaws.com description: Amazon S3 Tables API — Table Policy business capability. Self-contained, no shared references. resources: - name: buckets-tableBucketARN-policy path: /buckets/{tableBucketARN}/policy operations: - name: gettablebucketpolicy method: GET description: Amazon S3 Get Table Bucket Policy outputRawFormat: json outputParameters: - name: result type: object value: $. - name: puttablebucketpolicy method: PUT description: Amazon S3 Put Table Bucket Policy outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: deletetablebucketpolicy method: DELETE description: Amazon S3 Delete Table Bucket Policy outputRawFormat: json outputParameters: - name: result type: object value: $. - name: tables-tableBucketARN-namespace-name-policy path: /tables/{tableBucketARN}/{namespace}/{name}/policy operations: - name: gettablepolicy method: GET description: Amazon S3 Get Table Policy outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: name in: path type: string description: The name of the table. required: true - name: puttablepolicy method: PUT description: Amazon S3 Put Table Policy outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: name in: path type: string description: The name of the table. required: true - name: body in: body type: object description: Request body (JSON). required: true - name: deletetablepolicy method: DELETE description: Amazon S3 Delete Table Policy outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: name in: path type: string description: The name of the table. required: true authentication: type: apikey key: Authorization value: '{{env.AMAZON_S3_API_KEY}}' placement: header exposes: - type: rest namespace: tables-table-policy-rest port: 8080 description: REST adapter for Amazon S3 Tables API — Table Policy. One Spectral-compliant resource per consumed operation, prefixed with /v1. resources: - path: /v1/buckets/{tablebucketarn}/policy name: buckets-tablebucketarn-policy description: REST surface for buckets-tableBucketARN-policy. operations: - method: GET name: gettablebucketpolicy description: Amazon S3 Get Table Bucket Policy call: tables-table-policy.gettablebucketpolicy outputParameters: - type: object mapping: $. - method: PUT name: puttablebucketpolicy description: Amazon S3 Put Table Bucket Policy call: tables-table-policy.puttablebucketpolicy with: body: rest.body outputParameters: - type: object mapping: $. - method: DELETE name: deletetablebucketpolicy description: Amazon S3 Delete Table Bucket Policy call: tables-table-policy.deletetablebucketpolicy outputParameters: - type: object mapping: $. - path: /v1/tables/{tablebucketarn}/{namespace}/{name}/policy name: tables-tablebucketarn-namespace-name-policy description: REST surface for tables-tableBucketARN-namespace-name-policy. operations: - method: GET name: gettablepolicy description: Amazon S3 Get Table Policy call: tables-table-policy.gettablepolicy with: name: rest.name outputParameters: - type: object mapping: $. - method: PUT name: puttablepolicy description: Amazon S3 Put Table Policy call: tables-table-policy.puttablepolicy with: name: rest.name body: rest.body outputParameters: - type: object mapping: $. - method: DELETE name: deletetablepolicy description: Amazon S3 Delete Table Policy call: tables-table-policy.deletetablepolicy with: name: rest.name outputParameters: - type: object mapping: $. - type: mcp namespace: tables-table-policy-mcp port: 9090 transport: http description: MCP adapter for Amazon S3 Tables API — Table Policy. One tool per consumed operation, routed inline through this capability's consumes block. tools: - name: amazon-s3-get-table-bucket description: Amazon S3 Get Table Bucket Policy hints: readOnly: true destructive: false idempotent: true call: tables-table-policy.gettablebucketpolicy outputParameters: - type: object mapping: $. - name: amazon-s3-put-table-bucket description: Amazon S3 Put Table Bucket Policy hints: readOnly: false destructive: false idempotent: true call: tables-table-policy.puttablebucketpolicy with: body: tools.body outputParameters: - type: object mapping: $. - name: amazon-s3-delete-table-bucket description: Amazon S3 Delete Table Bucket Policy hints: readOnly: false destructive: true idempotent: true call: tables-table-policy.deletetablebucketpolicy outputParameters: - type: object mapping: $. - name: amazon-s3-get-table-policy description: Amazon S3 Get Table Policy hints: readOnly: true destructive: false idempotent: true call: tables-table-policy.gettablepolicy with: name: tools.name outputParameters: - type: object mapping: $. - name: amazon-s3-put-table-policy description: Amazon S3 Put Table Policy hints: readOnly: false destructive: false idempotent: true call: tables-table-policy.puttablepolicy with: name: tools.name body: tools.body outputParameters: - type: object mapping: $. - name: amazon-s3-delete-table-policy description: Amazon S3 Delete Table Policy hints: readOnly: false destructive: true idempotent: true call: tables-table-policy.deletetablepolicy with: name: tools.name outputParameters: - type: object mapping: $.