ArcBest · Capability

ArcBest API

The ArcBest API provides programmatic access to freight services including LTL rate quotes, shipment booking, tracking, BOL generation, and supply chain visibility. Access to the API is by invitation only.

Run with Naftiko ArcbestAPI

What You Can Do

POST
Getltlrate — ArcBest Get LTL Rate Quote
/rates/ltl
POST
Createshipment — ArcBest Create Shipment
/shipments
GET
Listshipments — ArcBest List Shipments
/shipments
GET
Trackshipment — ArcBest Track Shipment
/tracking/{proNumber}
POST
Schedulepickup — ArcBest Schedule Pickup
/pickups

MCP Tools

getltlrate

ArcBest Get LTL Rate Quote

createshipment

ArcBest Create Shipment

listshipments

ArcBest List Shipments

read-only idempotent
trackshipment

ArcBest Track Shipment

read-only idempotent
schedulepickup

ArcBest Schedule Pickup

Capability Spec

arcbest-capability.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: ArcBest API
  description: The ArcBest API provides programmatic access to freight services including LTL rate quotes, shipment booking,
    tracking, BOL generation, and supply chain visibility. Access to the API is by invitation only.
  tags:
  - Arcbest
  - API
  created: '2026-05-06'
  modified: '2026-05-06'
capability:
  consumes:
  - type: http
    namespace: arcbest
    baseUri: https://api.arcbest.com/v2
    description: ArcBest API HTTP API.
    authentication:
      type: bearer
      token: '{{ARCBEST_TOKEN}}'
    resources:
    - name: rates-ltl
      path: /rates/ltl
      operations:
      - name: getltlrate
        method: POST
        description: ArcBest Get LTL Rate Quote
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: shipments
      path: /shipments
      operations:
      - name: createshipment
        method: POST
        description: ArcBest Create Shipment
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
      - name: listshipments
        method: GET
        description: ArcBest List Shipments
        inputParameters:
        - name: startDate
          in: query
          type: string
          description: Start date filter (YYYY-MM-DD)
        - name: endDate
          in: query
          type: string
          description: End date filter (YYYY-MM-DD)
        - name: status
          in: query
          type: string
          description: Filter by shipment status
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: tracking-pronumber
      path: /tracking/{proNumber}
      operations:
      - name: trackshipment
        method: GET
        description: ArcBest Track Shipment
        inputParameters:
        - name: proNumber
          in: path
          type: string
          required: true
          description: Shipment PRO number
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: pickups
      path: /pickups
      operations:
      - name: schedulepickup
        method: POST
        description: ArcBest Schedule Pickup
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
  exposes:
  - type: rest
    port: 8080
    namespace: arcbest-rest
    description: REST adapter for ArcBest API.
    resources:
    - path: /rates/ltl
      name: getltlrate
      operations:
      - method: POST
        name: getltlrate
        description: ArcBest Get LTL Rate Quote
        call: arcbest.getltlrate
        outputParameters:
        - type: object
          mapping: $.
    - path: /shipments
      name: createshipment
      operations:
      - method: POST
        name: createshipment
        description: ArcBest Create Shipment
        call: arcbest.createshipment
        outputParameters:
        - type: object
          mapping: $.
    - path: /shipments
      name: listshipments
      operations:
      - method: GET
        name: listshipments
        description: ArcBest List Shipments
        call: arcbest.listshipments
        outputParameters:
        - type: object
          mapping: $.
    - path: /tracking/{proNumber}
      name: trackshipment
      operations:
      - method: GET
        name: trackshipment
        description: ArcBest Track Shipment
        call: arcbest.trackshipment
        with:
          proNumber: rest.proNumber
        outputParameters:
        - type: object
          mapping: $.
    - path: /pickups
      name: schedulepickup
      operations:
      - method: POST
        name: schedulepickup
        description: ArcBest Schedule Pickup
        call: arcbest.schedulepickup
        outputParameters:
        - type: object
          mapping: $.
  - type: mcp
    port: 9090
    namespace: arcbest-mcp
    transport: http
    description: MCP adapter for ArcBest API for AI agent use.
    tools:
    - name: getltlrate
      description: ArcBest Get LTL Rate Quote
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: arcbest.getltlrate
      outputParameters:
      - type: object
        mapping: $.
    - name: createshipment
      description: ArcBest Create Shipment
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: arcbest.createshipment
      outputParameters:
      - type: object
        mapping: $.
    - name: listshipments
      description: ArcBest List Shipments
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: arcbest.listshipments
      with:
        startDate: tools.startDate
        endDate: tools.endDate
        status: tools.status
      inputParameters:
      - name: startDate
        type: string
        description: Start date filter (YYYY-MM-DD)
      - name: endDate
        type: string
        description: End date filter (YYYY-MM-DD)
      - name: status
        type: string
        description: Filter by shipment status
      outputParameters:
      - type: object
        mapping: $.
    - name: trackshipment
      description: ArcBest Track Shipment
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: arcbest.trackshipment
      with:
        proNumber: tools.proNumber
      inputParameters:
      - name: proNumber
        type: string
        description: Shipment PRO number
        required: true
      outputParameters:
      - type: object
        mapping: $.
    - name: schedulepickup
      description: ArcBest Schedule Pickup
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: arcbest.schedulepickup
      outputParameters:
      - type: object
        mapping: $.
binds:
- namespace: env
  keys:
    ARCBEST_TOKEN: ARCBEST_TOKEN