Amazon S3 · Capability

Amazon S3 Control API — Storage Lens

Amazon S3 Control API — Storage Lens. 4 operations. Lead operation: Amazon S3 List Storage Lens Configurations. Self-contained Naftiko capability covering one Amazon S3 business surface.

Run with Naftiko Amazon S3Storage Lens

What You Can Do

GET
Liststoragelensconfigurations — Amazon S3 List Storage Lens Configurations
/v1/v20180820/storagelens
GET
Getstoragelensconfiguration — Amazon S3 Get Storage Lens Configuration
/v1/v20180820/storagelens/{storagelensid}
PUT
Putstoragelensconfiguration — Amazon S3 Put Storage Lens Configuration
/v1/v20180820/storagelens/{storagelensid}
DELETE
Deletestoragelensconfiguration — Amazon S3 Delete Storage Lens Configuration
/v1/v20180820/storagelens/{storagelensid}

MCP Tools

amazon-s3-list-storage-lens

Amazon S3 List Storage Lens Configurations

read-only idempotent
amazon-s3-get-storage-lens

Amazon S3 Get Storage Lens Configuration

read-only idempotent
amazon-s3-put-storage-lens

Amazon S3 Put Storage Lens Configuration

idempotent
amazon-s3-delete-storage-lens

Amazon S3 Delete Storage Lens Configuration

idempotent

Capability Spec

control-storage-lens.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: Amazon S3 Control API — Storage Lens
  description: 'Amazon S3 Control API — Storage Lens. 4 operations. Lead operation: Amazon S3 List Storage Lens Configurations.
    Self-contained Naftiko capability covering one Amazon S3 business surface.'
  tags:
  - Amazon S3
  - Storage Lens
  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: control-storage-lens
    baseUri: https://s3-control.{region}.amazonaws.com
    description: Amazon S3 Control API — Storage Lens business capability. Self-contained, no shared references.
    resources:
    - name: v20180820-storagelens
      path: /v20180820/storagelens
      operations:
      - name: liststoragelensconfigurations
        method: GET
        description: Amazon S3 List Storage Lens Configurations
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: nextToken
          in: query
          type: string
          description: A pagination token for the next page of results.
    - name: v20180820-storagelens-storagelensid
      path: /v20180820/storagelens/{storagelensid}
      operations:
      - name: getstoragelensconfiguration
        method: GET
        description: Amazon S3 Get Storage Lens Configuration
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: storagelensid
          in: path
          type: string
          description: The ID of the Amazon S3 Storage Lens configuration.
          required: true
      - name: putstoragelensconfiguration
        method: PUT
        description: Amazon S3 Put Storage Lens Configuration
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: storagelensid
          in: path
          type: string
          description: The ID of the Amazon S3 Storage Lens configuration.
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
      - name: deletestoragelensconfiguration
        method: DELETE
        description: Amazon S3 Delete Storage Lens Configuration
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: storagelensid
          in: path
          type: string
          description: The ID of the Storage Lens configuration to delete.
          required: true
    authentication:
      type: apikey
      key: Authorization
      value: '{{env.AMAZON_S3_API_KEY}}'
      placement: header
  exposes:
  - type: rest
    namespace: control-storage-lens-rest
    port: 8080
    description: REST adapter for Amazon S3 Control API — Storage Lens. One Spectral-compliant resource per consumed operation,
      prefixed with /v1.
    resources:
    - path: /v1/v20180820/storagelens
      name: v20180820-storagelens
      description: REST surface for v20180820-storagelens.
      operations:
      - method: GET
        name: liststoragelensconfigurations
        description: Amazon S3 List Storage Lens Configurations
        call: control-storage-lens.liststoragelensconfigurations
        with:
          nextToken: rest.nextToken
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/v20180820/storagelens/{storagelensid}
      name: v20180820-storagelens-storagelensid
      description: REST surface for v20180820-storagelens-storagelensid.
      operations:
      - method: GET
        name: getstoragelensconfiguration
        description: Amazon S3 Get Storage Lens Configuration
        call: control-storage-lens.getstoragelensconfiguration
        with:
          storagelensid: rest.storagelensid
        outputParameters:
        - type: object
          mapping: $.
      - method: PUT
        name: putstoragelensconfiguration
        description: Amazon S3 Put Storage Lens Configuration
        call: control-storage-lens.putstoragelensconfiguration
        with:
          storagelensid: rest.storagelensid
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
      - method: DELETE
        name: deletestoragelensconfiguration
        description: Amazon S3 Delete Storage Lens Configuration
        call: control-storage-lens.deletestoragelensconfiguration
        with:
          storagelensid: rest.storagelensid
        outputParameters:
        - type: object
          mapping: $.
  - type: mcp
    namespace: control-storage-lens-mcp
    port: 9090
    transport: http
    description: MCP adapter for Amazon S3 Control API — Storage Lens. One tool per consumed operation, routed inline through
      this capability's consumes block.
    tools:
    - name: amazon-s3-list-storage-lens
      description: Amazon S3 List Storage Lens Configurations
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: control-storage-lens.liststoragelensconfigurations
      with:
        nextToken: tools.nextToken
      outputParameters:
      - type: object
        mapping: $.
    - name: amazon-s3-get-storage-lens
      description: Amazon S3 Get Storage Lens Configuration
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: control-storage-lens.getstoragelensconfiguration
      with:
        storagelensid: tools.storagelensid
      outputParameters:
      - type: object
        mapping: $.
    - name: amazon-s3-put-storage-lens
      description: Amazon S3 Put Storage Lens Configuration
      hints:
        readOnly: false
        destructive: false
        idempotent: true
      call: control-storage-lens.putstoragelensconfiguration
      with:
        storagelensid: tools.storagelensid
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: amazon-s3-delete-storage-lens
      description: Amazon S3 Delete Storage Lens Configuration
      hints:
        readOnly: false
        destructive: true
        idempotent: true
      call: control-storage-lens.deletestoragelensconfiguration
      with:
        storagelensid: tools.storagelensid
      outputParameters:
      - type: object
        mapping: $.