Ryder System · Capability

Ryder Supply Chain Visibility

Unified workflow for supply chain visibility across Ryder's carrier and shipment management APIs. Enables logistics managers to manage carrier load tenders, track shipment status in real-time, submit ship confirmations, and monitor vehicle locations throughout the supply chain lifecycle.

Run with Naftiko Carrier ManagementLoad TrackingLogisticsShipment ManagementSupply ChainTransportation

What You Can Do

GET
List shipments — List shipments with current status
/v1/shipments
POST
Create shipment — Submit shipment requirements to Ryder
/v1/shipments
GET
Get shipment — Get shipment details
/v1/shipments/{shipmentId}
PUT
Update shipment — Update shipment details
/v1/shipments/{shipmentId}
GET
Get shipment status — Get real-time tracking status for a shipment
/v1/shipments/{shipmentId}/status
POST
Confirm shipment — Submit ship confirmation when goods are shipped
/v1/ship-confirmations
GET
List loads — List carrier load tenders
/v1/loads
GET
Get load — Get load tender details
/v1/loads/{loadId}
POST
Submit location update — Submit vehicle location update
/v1/tracking

MCP Tools

list-shipments

List shipments with current status and tracking information

read-only
get-shipment

Get detailed information for a specific shipment

read-only
create-shipment

Submit new shipment requirements to Ryder transportation management

update-shipment

Update shipment pickup date or special instructions

idempotent
get-shipment-status

Get real-time tracking status and location for a shipment

read-only
confirm-shipment

Submit ship confirmation with actual ship date and tracking number

list-carrier-loads

List load tenders assigned to the carrier from Ryder

read-only
get-carrier-load

Get detailed information for a specific carrier load tender

read-only
accept-load

Accept a load tender from Ryder

decline-load

Decline a load tender from Ryder

submit-load-event

Submit a load event update (pickup, delivery, delay, exception)

submit-location-update

Submit a real-time vehicle location update for tracking

APIs Used

ryder-carrier ryder-tm

Capability Spec

supply-chain-visibility.yaml Raw ↑
naftiko: "1.0.0-alpha1"

info:
  label: "Ryder Supply Chain Visibility"
  description: >-
    Unified workflow for supply chain visibility across Ryder's carrier and
    shipment management APIs. Enables logistics managers to manage carrier
    load tenders, track shipment status in real-time, submit ship confirmations,
    and monitor vehicle locations throughout the supply chain lifecycle.
  tags:
    - Carrier Management
    - Load Tracking
    - Logistics
    - Shipment Management
    - Supply Chain
    - Transportation
  created: "2026-05-02"
  modified: "2026-05-02"

binds:
  - namespace: env
    keys:
      RYDER_CARRIER_API_KEY: RYDER_CARRIER_API_KEY
      RYDER_TM_API_KEY: RYDER_TM_API_KEY
      RYDER_TM_CLIENT_ID: RYDER_TM_CLIENT_ID
      RYDER_TM_CLIENT_SECRET: RYDER_TM_CLIENT_SECRET

capability:
  consumes:
    - import: ryder-carrier
      location: ./shared/carrier-api.yaml
    - import: ryder-tm
      location: ./shared/tm-shipment.yaml

  exposes:
    - type: rest
      port: 8081
      namespace: ryder-supply-chain-api
      description: "Unified REST API for Ryder supply chain visibility and management."
      resources:
        - path: /v1/shipments
          name: shipments
          description: "Shipment management"
          operations:
            - method: GET
              name: list-shipments
              description: "List shipments with current status"
              call: "ryder-tm.list-shipments"
              with:
                status: "rest.query.status"
                startDate: "rest.query.startDate"
                endDate: "rest.query.endDate"
              outputParameters:
                - type: object
                  mapping: "$."
            - method: POST
              name: create-shipment
              description: "Submit shipment requirements to Ryder"
              call: "ryder-tm.create-shipment"
              outputParameters:
                - type: object
                  mapping: "$."
        - path: /v1/shipments/{shipmentId}
          name: shipment
          description: "Single shipment"
          operations:
            - method: GET
              name: get-shipment
              description: "Get shipment details"
              call: "ryder-tm.get-shipment"
              with:
                shipmentId: "rest.path.shipmentId"
              outputParameters:
                - type: object
                  mapping: "$."
            - method: PUT
              name: update-shipment
              description: "Update shipment details"
              call: "ryder-tm.update-shipment"
              with:
                shipmentId: "rest.path.shipmentId"
              outputParameters:
                - type: object
                  mapping: "$."
        - path: /v1/shipments/{shipmentId}/status
          name: shipment-status
          description: "Shipment tracking status"
          operations:
            - method: GET
              name: get-shipment-status
              description: "Get real-time tracking status for a shipment"
              call: "ryder-tm.get-shipment-status"
              with:
                shipmentId: "rest.path.shipmentId"
              outputParameters:
                - type: object
                  mapping: "$."
        - path: /v1/ship-confirmations
          name: ship-confirmations
          description: "Ship confirmations"
          operations:
            - method: POST
              name: confirm-shipment
              description: "Submit ship confirmation when goods are shipped"
              call: "ryder-tm.confirm-shipment"
              outputParameters:
                - type: object
                  mapping: "$."
        - path: /v1/loads
          name: loads
          description: "Load tenders (carrier)"
          operations:
            - method: GET
              name: list-loads
              description: "List carrier load tenders"
              call: "ryder-carrier.list-loads"
              with:
                status: "rest.query.status"
              outputParameters:
                - type: object
                  mapping: "$."
        - path: /v1/loads/{loadId}
          name: load
          description: "Single load tender"
          operations:
            - method: GET
              name: get-load
              description: "Get load tender details"
              call: "ryder-carrier.get-load"
              with:
                loadId: "rest.path.loadId"
              outputParameters:
                - type: object
                  mapping: "$."
        - path: /v1/tracking
          name: tracking
          description: "Vehicle location tracking"
          operations:
            - method: POST
              name: submit-location-update
              description: "Submit vehicle location update"
              call: "ryder-carrier.submit-location-update"
              outputParameters:
                - type: object
                  mapping: "$."

    - type: mcp
      port: 9081
      namespace: ryder-supply-chain-mcp
      transport: http
      description: "MCP server for AI-assisted Ryder supply chain visibility."
      tools:
        - name: list-shipments
          description: "List shipments with current status and tracking information"
          hints:
            readOnly: true
            openWorld: true
          call: "ryder-tm.list-shipments"
          with:
            status: "tools.status"
            startDate: "tools.startDate"
            endDate: "tools.endDate"
          outputParameters:
            - type: object
              mapping: "$."
        - name: get-shipment
          description: "Get detailed information for a specific shipment"
          hints:
            readOnly: true
            openWorld: false
          call: "ryder-tm.get-shipment"
          with:
            shipmentId: "tools.shipmentId"
          outputParameters:
            - type: object
              mapping: "$."
        - name: create-shipment
          description: "Submit new shipment requirements to Ryder transportation management"
          hints:
            readOnly: false
            destructive: false
            idempotent: false
          call: "ryder-tm.create-shipment"
          outputParameters:
            - type: object
              mapping: "$."
        - name: update-shipment
          description: "Update shipment pickup date or special instructions"
          hints:
            readOnly: false
            destructive: false
            idempotent: true
          call: "ryder-tm.update-shipment"
          with:
            shipmentId: "tools.shipmentId"
          outputParameters:
            - type: object
              mapping: "$."
        - name: get-shipment-status
          description: "Get real-time tracking status and location for a shipment"
          hints:
            readOnly: true
            openWorld: false
          call: "ryder-tm.get-shipment-status"
          with:
            shipmentId: "tools.shipmentId"
          outputParameters:
            - type: object
              mapping: "$."
        - name: confirm-shipment
          description: "Submit ship confirmation with actual ship date and tracking number"
          hints:
            readOnly: false
            destructive: false
            idempotent: false
          call: "ryder-tm.confirm-shipment"
          outputParameters:
            - type: object
              mapping: "$."
        - name: list-carrier-loads
          description: "List load tenders assigned to the carrier from Ryder"
          hints:
            readOnly: true
            openWorld: true
          call: "ryder-carrier.list-loads"
          with:
            status: "tools.status"
          outputParameters:
            - type: object
              mapping: "$."
        - name: get-carrier-load
          description: "Get detailed information for a specific carrier load tender"
          hints:
            readOnly: true
            openWorld: false
          call: "ryder-carrier.get-load"
          with:
            loadId: "tools.loadId"
          outputParameters:
            - type: object
              mapping: "$."
        - name: accept-load
          description: "Accept a load tender from Ryder"
          hints:
            readOnly: false
            destructive: false
            idempotent: false
          call: "ryder-carrier.accept-load"
          with:
            loadId: "tools.loadId"
          outputParameters:
            - type: object
              mapping: "$."
        - name: decline-load
          description: "Decline a load tender from Ryder"
          hints:
            readOnly: false
            destructive: false
            idempotent: false
          call: "ryder-carrier.decline-load"
          with:
            loadId: "tools.loadId"
          outputParameters:
            - type: object
              mapping: "$."
        - name: submit-load-event
          description: "Submit a load event update (pickup, delivery, delay, exception)"
          hints:
            readOnly: false
            destructive: false
            idempotent: false
          call: "ryder-carrier.create-load-event"
          with:
            loadId: "tools.loadId"
          outputParameters:
            - type: object
              mapping: "$."
        - name: submit-location-update
          description: "Submit a real-time vehicle location update for tracking"
          hints:
            readOnly: false
            destructive: false
            idempotent: false
          call: "ryder-carrier.submit-location-update"
          outputParameters:
            - type: object
              mapping: "$."