Stripe · Capability

Stripe Terminal API — Terminal

Stripe Terminal API — Terminal. 13 operations. Lead operation: Stripe List Terminal Configurations. Self-contained Naftiko capability covering one Stripe business surface.

Run with Naftiko StripeTerminal

What You Can Do

GET
Getterminalconfigurations — Stripe List Terminal Configurations
/v1/v1/terminal/configurations
POST
Postterminalconfigurations — Stripe Create Terminal Configuration
/v1/v1/terminal/configurations
POST
Postterminalconnectiontokens — Stripe Create Connection Token
/v1/v1/terminal/connection-tokens
GET
Getterminallocations — Stripe List Terminal Locations
/v1/v1/terminal/locations
POST
Postterminallocations — Stripe Create Terminal Location
/v1/v1/terminal/locations
GET
Getterminallocationslocation — Stripe Retrieve Terminal Location
/v1/v1/terminal/locations/{location}
POST
Postterminallocationslocation — Stripe Update Terminal Location
/v1/v1/terminal/locations/{location}
DELETE
Deleteterminallocationslocation — Stripe Delete Terminal Location
/v1/v1/terminal/locations/{location}
GET
Getterminalreaders — Stripe List Terminal Readers
/v1/v1/terminal/readers
POST
Postterminalreaders — Stripe Create Terminal Reader
/v1/v1/terminal/readers
GET
Getterminalreadersreader — Stripe Retrieve Terminal Reader
/v1/v1/terminal/readers/{reader}
POST
Postterminalreadersreader — Stripe Update Terminal Reader
/v1/v1/terminal/readers/{reader}
DELETE
Deleteterminalreadersreader — Stripe Delete Terminal Reader
/v1/v1/terminal/readers/{reader}

MCP Tools

stripe-list-terminal-configurations

Stripe List Terminal Configurations

read-only idempotent
stripe-create-terminal-configuration

Stripe Create Terminal Configuration

stripe-create-connection-token

Stripe Create Connection Token

stripe-list-terminal-locations

Stripe List Terminal Locations

read-only idempotent
stripe-create-terminal-location

Stripe Create Terminal Location

stripe-retrieve-terminal-location

Stripe Retrieve Terminal Location

read-only idempotent
stripe-update-terminal-location

Stripe Update Terminal Location

stripe-delete-terminal-location

Stripe Delete Terminal Location

idempotent
stripe-list-terminal-readers

Stripe List Terminal Readers

read-only idempotent
stripe-create-terminal-reader

Stripe Create Terminal Reader

stripe-retrieve-terminal-reader

Stripe Retrieve Terminal Reader

read-only idempotent
stripe-update-terminal-reader

Stripe Update Terminal Reader

stripe-delete-terminal-reader

Stripe Delete Terminal Reader

idempotent

Capability Spec

terminal-terminal.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: Stripe Terminal API — Terminal
  description: 'Stripe Terminal API — Terminal. 13 operations. Lead operation: Stripe List Terminal Configurations. Self-contained
    Naftiko capability covering one Stripe business surface.'
  tags:
  - Stripe
  - Terminal
  created: '2026-05-19'
  modified: '2026-05-19'
binds:
- namespace: env
  keys:
    STRIPE_API_KEY: STRIPE_API_KEY
capability:
  consumes:
  - type: http
    namespace: terminal-terminal
    baseUri: https://api.stripe.com
    description: Stripe Terminal API — Terminal business capability. Self-contained, no shared references.
    resources:
    - name: v1-terminal-configurations
      path: /v1/terminal/configurations
      operations:
      - name: getterminalconfigurations
        method: GET
        description: Stripe List Terminal Configurations
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: ending_before
          in: query
          type: string
        - name: limit
          in: query
          type: integer
        - name: starting_after
          in: query
          type: string
      - name: postterminalconfigurations
        method: POST
        description: Stripe Create Terminal Configuration
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: false
    - name: v1-terminal-connection_tokens
      path: /v1/terminal/connection_tokens
      operations:
      - name: postterminalconnectiontokens
        method: POST
        description: Stripe Create Connection Token
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: false
    - name: v1-terminal-locations
      path: /v1/terminal/locations
      operations:
      - name: getterminallocations
        method: GET
        description: Stripe List Terminal Locations
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: ending_before
          in: query
          type: string
        - name: limit
          in: query
          type: integer
        - name: starting_after
          in: query
          type: string
      - name: postterminallocations
        method: POST
        description: Stripe Create Terminal Location
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: v1-terminal-locations-location
      path: /v1/terminal/locations/{location}
      operations:
      - name: getterminallocationslocation
        method: GET
        description: Stripe Retrieve Terminal Location
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: location
          in: path
          type: string
          required: true
      - name: postterminallocationslocation
        method: POST
        description: Stripe Update Terminal Location
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: location
          in: path
          type: string
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: false
      - name: deleteterminallocationslocation
        method: DELETE
        description: Stripe Delete Terminal Location
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: location
          in: path
          type: string
          required: true
    - name: v1-terminal-readers
      path: /v1/terminal/readers
      operations:
      - name: getterminalreaders
        method: GET
        description: Stripe List Terminal Readers
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: device_type
          in: query
          type: string
        - name: location
          in: query
          type: string
        - name: status
          in: query
          type: string
        - name: ending_before
          in: query
          type: string
        - name: limit
          in: query
          type: integer
        - name: starting_after
          in: query
          type: string
      - name: postterminalreaders
        method: POST
        description: Stripe Create Terminal Reader
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: v1-terminal-readers-reader
      path: /v1/terminal/readers/{reader}
      operations:
      - name: getterminalreadersreader
        method: GET
        description: Stripe Retrieve Terminal Reader
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: reader
          in: path
          type: string
          required: true
      - name: postterminalreadersreader
        method: POST
        description: Stripe Update Terminal Reader
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: reader
          in: path
          type: string
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: false
      - name: deleteterminalreadersreader
        method: DELETE
        description: Stripe Delete Terminal Reader
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: reader
          in: path
          type: string
          required: true
    authentication:
      type: bearer
      token: '{{env.STRIPE_API_KEY}}'
  exposes:
  - type: rest
    namespace: terminal-terminal-rest
    port: 8080
    description: REST adapter for Stripe Terminal API — Terminal. One Spectral-compliant resource per consumed operation,
      prefixed with /v1.
    resources:
    - path: /v1/v1/terminal/configurations
      name: v1-terminal-configurations
      description: REST surface for v1-terminal-configurations.
      operations:
      - method: GET
        name: getterminalconfigurations
        description: Stripe List Terminal Configurations
        call: terminal-terminal.getterminalconfigurations
        with:
          ending_before: rest.ending_before
          limit: rest.limit
          starting_after: rest.starting_after
        outputParameters:
        - type: object
          mapping: $.
      - method: POST
        name: postterminalconfigurations
        description: Stripe Create Terminal Configuration
        call: terminal-terminal.postterminalconfigurations
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/v1/terminal/connection-tokens
      name: v1-terminal-connection-tokens
      description: REST surface for v1-terminal-connection_tokens.
      operations:
      - method: POST
        name: postterminalconnectiontokens
        description: Stripe Create Connection Token
        call: terminal-terminal.postterminalconnectiontokens
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/v1/terminal/locations
      name: v1-terminal-locations
      description: REST surface for v1-terminal-locations.
      operations:
      - method: GET
        name: getterminallocations
        description: Stripe List Terminal Locations
        call: terminal-terminal.getterminallocations
        with:
          ending_before: rest.ending_before
          limit: rest.limit
          starting_after: rest.starting_after
        outputParameters:
        - type: object
          mapping: $.
      - method: POST
        name: postterminallocations
        description: Stripe Create Terminal Location
        call: terminal-terminal.postterminallocations
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/v1/terminal/locations/{location}
      name: v1-terminal-locations-location
      description: REST surface for v1-terminal-locations-location.
      operations:
      - method: GET
        name: getterminallocationslocation
        description: Stripe Retrieve Terminal Location
        call: terminal-terminal.getterminallocationslocation
        with:
          location: rest.location
        outputParameters:
        - type: object
          mapping: $.
      - method: POST
        name: postterminallocationslocation
        description: Stripe Update Terminal Location
        call: terminal-terminal.postterminallocationslocation
        with:
          location: rest.location
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
      - method: DELETE
        name: deleteterminallocationslocation
        description: Stripe Delete Terminal Location
        call: terminal-terminal.deleteterminallocationslocation
        with:
          location: rest.location
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/v1/terminal/readers
      name: v1-terminal-readers
      description: REST surface for v1-terminal-readers.
      operations:
      - method: GET
        name: getterminalreaders
        description: Stripe List Terminal Readers
        call: terminal-terminal.getterminalreaders
        with:
          device_type: rest.device_type
          location: rest.location
          status: rest.status
          ending_before: rest.ending_before
          limit: rest.limit
          starting_after: rest.starting_after
        outputParameters:
        - type: object
          mapping: $.
      - method: POST
        name: postterminalreaders
        description: Stripe Create Terminal Reader
        call: terminal-terminal.postterminalreaders
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/v1/terminal/readers/{reader}
      name: v1-terminal-readers-reader
      description: REST surface for v1-terminal-readers-reader.
      operations:
      - method: GET
        name: getterminalreadersreader
        description: Stripe Retrieve Terminal Reader
        call: terminal-terminal.getterminalreadersreader
        with:
          reader: rest.reader
        outputParameters:
        - type: object
          mapping: $.
      - method: POST
        name: postterminalreadersreader
        description: Stripe Update Terminal Reader
        call: terminal-terminal.postterminalreadersreader
        with:
          reader: rest.reader
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
      - method: DELETE
        name: deleteterminalreadersreader
        description: Stripe Delete Terminal Reader
        call: terminal-terminal.deleteterminalreadersreader
        with:
          reader: rest.reader
        outputParameters:
        - type: object
          mapping: $.
  - type: mcp
    namespace: terminal-terminal-mcp
    port: 9090
    transport: http
    description: MCP adapter for Stripe Terminal API — Terminal. One tool per consumed operation, routed inline through this
      capability's consumes block.
    tools:
    - name: stripe-list-terminal-configurations
      description: Stripe List Terminal Configurations
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: terminal-terminal.getterminalconfigurations
      with:
        ending_before: tools.ending_before
        limit: tools.limit
        starting_after: tools.starting_after
      outputParameters:
      - type: object
        mapping: $.
    - name: stripe-create-terminal-configuration
      description: Stripe Create Terminal Configuration
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: terminal-terminal.postterminalconfigurations
      with:
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: stripe-create-connection-token
      description: Stripe Create Connection Token
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: terminal-terminal.postterminalconnectiontokens
      with:
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: stripe-list-terminal-locations
      description: Stripe List Terminal Locations
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: terminal-terminal.getterminallocations
      with:
        ending_before: tools.ending_before
        limit: tools.limit
        starting_after: tools.starting_after
      outputParameters:
      - type: object
        mapping: $.
    - name: stripe-create-terminal-location
      description: Stripe Create Terminal Location
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: terminal-terminal.postterminallocations
      with:
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: stripe-retrieve-terminal-location
      description: Stripe Retrieve Terminal Location
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: terminal-terminal.getterminallocationslocation
      with:
        location: tools.location
      outputParameters:
      - type: object
        mapping: $.
    - name: stripe-update-terminal-location
      description: Stripe Update Terminal Location
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: terminal-terminal.postterminallocationslocation
      with:
        location: tools.location
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: stripe-delete-terminal-location
      description: Stripe Delete Terminal Location
      hints:
        readOnly: false
        destructive: true
        idempotent: true
      call: terminal-terminal.deleteterminallocationslocation
      with:
        location: tools.location
      outputParameters:
      - type: object
        mapping: $.
    - name: stripe-list-terminal-readers
      description: Stripe List Terminal Readers
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: terminal-terminal.getterminalreaders
      with:
        device_type: tools.device_type
        location: tools.location
        status: tools.status
        ending_before: tools.ending_before
        limit: tools.limit
        starting_after: tools.starting_after
      outputParameters:
      - type: object
        mapping: $.
    - name: stripe-create-terminal-reader
      description: Stripe Create Terminal Reader
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: terminal-terminal.postterminalreaders
      with:
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: stripe-retrieve-terminal-reader
      description: Stripe Retrieve Terminal Reader
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: terminal-terminal.getterminalreadersreader
      with:
        reader: tools.reader
      outputParameters:
      - type: object
        mapping: $.
    - name: stripe-update-terminal-reader
      description: Stripe Update Terminal Reader
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: terminal-terminal.postterminalreadersreader
      with:
        reader: tools.reader
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: stripe-delete-terminal-reader
      description: Stripe Delete Terminal Reader
      hints:
        readOnly: false
        destructive: true
        idempotent: true
      call: terminal-terminal.deleteterminalreadersreader
      with:
        reader: tools.reader
      outputParameters:
      - type: object
        mapping: $.