naftiko: 1.0.0-alpha2 info: label: ShipStation V1 API — Shipments description: 'ShipStation V1 API — Shipments. 4 operations. Lead operation: List Shipments. Self-contained Naftiko capability covering one Shipstation business surface.' tags: - Shipstation - Shipments created: '2026-05-19' modified: '2026-05-19' binds: - namespace: env keys: SHIPSTATION_API_KEY: SHIPSTATION_API_KEY capability: consumes: - type: http namespace: v1-shipments baseUri: https://ssapi.shipstation.com description: ShipStation V1 API — Shipments business capability. Self-contained, no shared references. resources: - name: shipments path: /shipments operations: - name: listshipments method: GET description: List Shipments outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: recipientName in: query type: string description: Returns shipments shipped to the specified recipient name - name: recipientCountryCode in: query type: string description: Returns shipments shipped to the specified country code - name: orderNumber in: query type: string description: Returns shipments for the specified order number - name: orderId in: query type: integer description: Returns shipments for the specified order ID - name: carrierCode in: query type: string description: Returns shipments shipped with the specified carrier - name: serviceCode in: query type: string description: Returns shipments shipped with the specified service - name: trackingNumber in: query type: string description: Returns shipments with the specified tracking number - name: createDateStart in: query type: string - name: createDateEnd in: query type: string - name: shipDateStart in: query type: string - name: shipDateEnd in: query type: string - name: voidDateStart in: query type: string - name: voidDateEnd in: query type: string - name: storeId in: query type: integer - name: includeShipmentItems in: query type: boolean - name: sortBy in: query type: string - name: sortDir in: query type: string - name: page in: query type: integer - name: pageSize in: query type: integer - name: shipments-createlabel path: /shipments/createlabel operations: - name: createshipmentlabel method: POST description: Create Shipment Label outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: shipments-getrates path: /shipments/getrates operations: - name: getshippingrates method: POST description: Get Shipping Rates outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: shipments-voidlabel path: /shipments/voidlabel operations: - name: voidlabel method: POST description: Void Label outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true authentication: type: basic username: '{{env.SHIPSTATION_USER}}' password: '{{env.SHIPSTATION_PASS}}' exposes: - type: rest namespace: v1-shipments-rest port: 8080 description: REST adapter for ShipStation V1 API — Shipments. One Spectral-compliant resource per consumed operation, prefixed with /v1. resources: - path: /v1/shipments name: shipments description: REST surface for shipments. operations: - method: GET name: listshipments description: List Shipments call: v1-shipments.listshipments with: recipientName: rest.recipientName recipientCountryCode: rest.recipientCountryCode orderNumber: rest.orderNumber orderId: rest.orderId carrierCode: rest.carrierCode serviceCode: rest.serviceCode trackingNumber: rest.trackingNumber createDateStart: rest.createDateStart createDateEnd: rest.createDateEnd shipDateStart: rest.shipDateStart shipDateEnd: rest.shipDateEnd voidDateStart: rest.voidDateStart voidDateEnd: rest.voidDateEnd storeId: rest.storeId includeShipmentItems: rest.includeShipmentItems sortBy: rest.sortBy sortDir: rest.sortDir page: rest.page pageSize: rest.pageSize outputParameters: - type: object mapping: $. - path: /v1/shipments/createlabel name: shipments-createlabel description: REST surface for shipments-createlabel. operations: - method: POST name: createshipmentlabel description: Create Shipment Label call: v1-shipments.createshipmentlabel with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/shipments/getrates name: shipments-getrates description: REST surface for shipments-getrates. operations: - method: POST name: getshippingrates description: Get Shipping Rates call: v1-shipments.getshippingrates with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/shipments/voidlabel name: shipments-voidlabel description: REST surface for shipments-voidlabel. operations: - method: POST name: voidlabel description: Void Label call: v1-shipments.voidlabel with: body: rest.body outputParameters: - type: object mapping: $. - type: mcp namespace: v1-shipments-mcp port: 9090 transport: http description: MCP adapter for ShipStation V1 API — Shipments. One tool per consumed operation, routed inline through this capability's consumes block. tools: - name: list-shipments description: List Shipments hints: readOnly: true destructive: false idempotent: true call: v1-shipments.listshipments with: recipientName: tools.recipientName recipientCountryCode: tools.recipientCountryCode orderNumber: tools.orderNumber orderId: tools.orderId carrierCode: tools.carrierCode serviceCode: tools.serviceCode trackingNumber: tools.trackingNumber createDateStart: tools.createDateStart createDateEnd: tools.createDateEnd shipDateStart: tools.shipDateStart shipDateEnd: tools.shipDateEnd voidDateStart: tools.voidDateStart voidDateEnd: tools.voidDateEnd storeId: tools.storeId includeShipmentItems: tools.includeShipmentItems sortBy: tools.sortBy sortDir: tools.sortDir page: tools.page pageSize: tools.pageSize outputParameters: - type: object mapping: $. - name: create-shipment-label description: Create Shipment Label hints: readOnly: false destructive: false idempotent: false call: v1-shipments.createshipmentlabel with: body: tools.body outputParameters: - type: object mapping: $. - name: get-shipping-rates description: Get Shipping Rates hints: readOnly: true destructive: false idempotent: false call: v1-shipments.getshippingrates with: body: tools.body outputParameters: - type: object mapping: $. - name: void-label description: Void Label hints: readOnly: false destructive: false idempotent: false call: v1-shipments.voidlabel with: body: tools.body outputParameters: - type: object mapping: $.