Shippo · Capability

Shippo API — Rates

Shippo API — Rates. 2 operations. Lead operation: Get Rate. Self-contained Naftiko capability covering one Shippo business surface.

Run with Naftiko ShippoRates

What You Can Do

GET
Getrate — Get Rate
/v1/rates/{rateid}
GET
Getshipmentrates — Get Shipment Rates
/v1/shipments/{shipmentid}/rates

MCP Tools

get-rate

Get Rate

read-only idempotent
get-shipment-rates

Get Shipment Rates

read-only idempotent

Capability Spec

shippo-rates.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: Shippo API — Rates
  description: 'Shippo API — Rates. 2 operations. Lead operation: Get Rate. Self-contained Naftiko capability covering one
    Shippo business surface.'
  tags:
  - Shippo
  - Rates
  created: '2026-05-19'
  modified: '2026-05-19'
binds:
- namespace: env
  keys:
    SHIPPO_API_KEY: SHIPPO_API_KEY
capability:
  consumes:
  - type: http
    namespace: shippo-rates
    baseUri: https://api.goshippo.com
    description: Shippo API — Rates business capability. Self-contained, no shared references.
    resources:
    - name: rates-RateId
      path: /rates/{RateId}
      operations:
      - name: getrate
        method: GET
        description: Get Rate
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: RateId
          in: path
          type: string
          required: true
    - name: shipments-ShipmentId-rates
      path: /shipments/{ShipmentId}/rates
      operations:
      - name: getshipmentrates
        method: GET
        description: Get Shipment Rates
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: ShipmentId
          in: path
          type: string
          required: true
        - name: currency_code
          in: query
          type: string
          description: Currency code for rate amounts (ISO 4217)
    authentication:
      type: bearer
      token: '{{env.SHIPPO_API_KEY}}'
  exposes:
  - type: rest
    namespace: shippo-rates-rest
    port: 8080
    description: REST adapter for Shippo API — Rates. One Spectral-compliant resource per consumed operation, prefixed with
      /v1.
    resources:
    - path: /v1/rates/{rateid}
      name: rates-rateid
      description: REST surface for rates-RateId.
      operations:
      - method: GET
        name: getrate
        description: Get Rate
        call: shippo-rates.getrate
        with:
          RateId: rest.RateId
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/shipments/{shipmentid}/rates
      name: shipments-shipmentid-rates
      description: REST surface for shipments-ShipmentId-rates.
      operations:
      - method: GET
        name: getshipmentrates
        description: Get Shipment Rates
        call: shippo-rates.getshipmentrates
        with:
          ShipmentId: rest.ShipmentId
          currency_code: rest.currency_code
        outputParameters:
        - type: object
          mapping: $.
  - type: mcp
    namespace: shippo-rates-mcp
    port: 9090
    transport: http
    description: MCP adapter for Shippo API — Rates. One tool per consumed operation, routed inline through this capability's
      consumes block.
    tools:
    - name: get-rate
      description: Get Rate
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: shippo-rates.getrate
      with:
        RateId: tools.RateId
      outputParameters:
      - type: object
        mapping: $.
    - name: get-shipment-rates
      description: Get Shipment Rates
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: shippo-rates.getshipmentrates
      with:
        ShipmentId: tools.ShipmentId
        currency_code: tools.currency_code
      outputParameters:
      - type: object
        mapping: $.