BigCommerce · Capability

BigCommerce Geography — States

BigCommerce Geography — States. 5 operations. Lead operation: BigCommerce Get All States. Self-contained Naftiko capability covering one Bigcommerce business surface.

Run with Naftiko BigcommerceStates

What You Can Do

GET
Getstates — BigCommerce Get All States
/v1/countries/states
GET
Getstatescount — BigCommerce Get a Count of All States
/v1/countries/states/count
GET
Getcountrystates — BigCommerce Get All Countryʼs States
/v1/countries/{country-id}/states
GET
Getcountrystatescount — BigCommerce Get a Count of Country’s States
/v1/countries/{country-id}/states/count
GET
Getcountrystate — BigCommerce Get a Countryʼs State
/v1/countries/{country-id}/states/{id}

MCP Tools

bigcommerce-get-all-states

BigCommerce Get All States

read-only idempotent
bigcommerce-get-count-all-states

BigCommerce Get a Count of All States

read-only idempotent
bigcommerce-get-all-country-s-states

BigCommerce Get All Countryʼs States

read-only idempotent
bigcommerce-get-count-country-s-states

BigCommerce Get a Count of Country’s States

read-only idempotent
bigcommerce-get-country-s-state

BigCommerce Get a Countryʼs State

read-only idempotent

Capability Spec

geography-states.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: BigCommerce Geography — States
  description: 'BigCommerce Geography — States. 5 operations. Lead operation: BigCommerce Get All States. Self-contained Naftiko
    capability covering one Bigcommerce business surface.'
  tags:
  - Bigcommerce
  - States
  created: '2026-05-19'
  modified: '2026-05-19'
binds:
- namespace: env
  keys:
    BIGCOMMERCE_API_KEY: BIGCOMMERCE_API_KEY
capability:
  consumes:
  - type: http
    namespace: geography-states
    baseUri: https://api.bigcommerce.com/stores/{store_hash}/v2
    description: BigCommerce Geography — States business capability. Self-contained, no shared references.
    resources:
    - name: countries-states
      path: /countries/states
      operations:
      - name: getstates
        method: GET
        description: BigCommerce Get All States
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: limit
          in: query
          type: integer
          description: The number of results to return per request.
        - name: page
          in: query
          type: integer
          description: The ordered grouping of results to return.
    - name: countries-states-count
      path: /countries/states/count
      operations:
      - name: getstatescount
        method: GET
        description: BigCommerce Get a Count of All States
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: countries-country_id-states
      path: /countries/{country_id}/states
      operations:
      - name: getcountrystates
        method: GET
        description: BigCommerce Get All Countryʼs States
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: country_id
          in: path
          type: integer
          description: Id of the country
          required: true
        - name: Accept
          in: header
          type: string
          required: true
        - name: Content-Type
          in: header
          type: string
          required: true
        - name: state
          in: query
          type: string
          description: Name of the state/province.
        - name: state_abbreviation
          in: query
          type: string
          description: Abbreviation for the state/province.
        - name: page
          in: query
          type: number
          description: Number of pages
        - name: limit
          in: query
          type: number
          description: Count per page
    - name: countries-country_id-states-count
      path: /countries/{country_id}/states/count
      operations:
      - name: getcountrystatescount
        method: GET
        description: BigCommerce Get a Count of Country’s States
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: countries-country_id-states-id
      path: /countries/{country_id}/states/{id}
      operations:
      - name: getcountrystate
        method: GET
        description: BigCommerce Get a Countryʼs State
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: country_id
          in: path
          type: integer
          description: Id of the country
          required: true
        - name: id
          in: path
          type: integer
          description: Id of the states
          required: true
        - name: Accept
          in: header
          type: string
          required: true
        - name: Content-Type
          in: header
          type: string
          required: true
    authentication:
      type: apikey
      key: X-Auth-Token
      value: '{{env.BIGCOMMERCE_API_KEY}}'
      placement: header
  exposes:
  - type: rest
    namespace: geography-states-rest
    port: 8080
    description: REST adapter for BigCommerce Geography — States. One Spectral-compliant resource per consumed operation,
      prefixed with /v1.
    resources:
    - path: /v1/countries/states
      name: countries-states
      description: REST surface for countries-states.
      operations:
      - method: GET
        name: getstates
        description: BigCommerce Get All States
        call: geography-states.getstates
        with:
          limit: rest.limit
          page: rest.page
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/countries/states/count
      name: countries-states-count
      description: REST surface for countries-states-count.
      operations:
      - method: GET
        name: getstatescount
        description: BigCommerce Get a Count of All States
        call: geography-states.getstatescount
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/countries/{country-id}/states
      name: countries-country-id-states
      description: REST surface for countries-country_id-states.
      operations:
      - method: GET
        name: getcountrystates
        description: BigCommerce Get All Countryʼs States
        call: geography-states.getcountrystates
        with:
          country_id: rest.country_id
          Accept: rest.Accept
          Content-Type: rest.Content-Type
          state: rest.state
          state_abbreviation: rest.state_abbreviation
          page: rest.page
          limit: rest.limit
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/countries/{country-id}/states/count
      name: countries-country-id-states-count
      description: REST surface for countries-country_id-states-count.
      operations:
      - method: GET
        name: getcountrystatescount
        description: BigCommerce Get a Count of Country’s States
        call: geography-states.getcountrystatescount
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/countries/{country-id}/states/{id}
      name: countries-country-id-states-id
      description: REST surface for countries-country_id-states-id.
      operations:
      - method: GET
        name: getcountrystate
        description: BigCommerce Get a Countryʼs State
        call: geography-states.getcountrystate
        with:
          country_id: rest.country_id
          id: rest.id
          Accept: rest.Accept
          Content-Type: rest.Content-Type
        outputParameters:
        - type: object
          mapping: $.
  - type: mcp
    namespace: geography-states-mcp
    port: 9090
    transport: http
    description: MCP adapter for BigCommerce Geography — States. One tool per consumed operation, routed inline through this
      capability's consumes block.
    tools:
    - name: bigcommerce-get-all-states
      description: BigCommerce Get All States
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: geography-states.getstates
      with:
        limit: tools.limit
        page: tools.page
      outputParameters:
      - type: object
        mapping: $.
    - name: bigcommerce-get-count-all-states
      description: BigCommerce Get a Count of All States
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: geography-states.getstatescount
      outputParameters:
      - type: object
        mapping: $.
    - name: bigcommerce-get-all-country-s-states
      description: BigCommerce Get All Countryʼs States
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: geography-states.getcountrystates
      with:
        country_id: tools.country_id
        Accept: tools.Accept
        Content-Type: tools.Content-Type
        state: tools.state
        state_abbreviation: tools.state_abbreviation
        page: tools.page
        limit: tools.limit
      outputParameters:
      - type: object
        mapping: $.
    - name: bigcommerce-get-count-country-s-states
      description: BigCommerce Get a Count of Country’s States
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: geography-states.getcountrystatescount
      outputParameters:
      - type: object
        mapping: $.
    - name: bigcommerce-get-country-s-state
      description: BigCommerce Get a Countryʼs State
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: geography-states.getcountrystate
      with:
        country_id: tools.country_id
        id: tools.id
        Accept: tools.Accept
        Content-Type: tools.Content-Type
      outputParameters:
      - type: object
        mapping: $.