naftiko: 1.0.0-alpha2 info: label: Sysco Food Distribution API — Orders description: 'Sysco Food Distribution API — Orders. 4 operations. Lead operation: List Orders. Self-contained Naftiko capability covering one Sysco business surface.' tags: - Sysco - Orders created: '2026-05-19' modified: '2026-05-19' binds: - namespace: env keys: SYSCO_API_KEY: SYSCO_API_KEY capability: consumes: - type: http namespace: food-distribution-orders baseUri: https://api.sysco.com description: Sysco Food Distribution API — Orders business capability. Self-contained, no shared references. resources: - name: orders path: /orders operations: - name: listorders method: GET description: List Orders outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: status in: query type: string - name: dateFrom in: query type: string - name: dateTo in: query type: string - name: page in: query type: integer - name: createorder method: POST description: Create Order outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: orders-orderId path: /orders/{orderId} operations: - name: getorder method: GET description: Get Order outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: orderId in: path type: string required: true - name: cancelorder method: DELETE description: Cancel Order outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: orderId in: path type: string required: true authentication: type: bearer token: '{{env.SYSCO_API_KEY}}' exposes: - type: rest namespace: food-distribution-orders-rest port: 8080 description: REST adapter for Sysco Food Distribution API — Orders. One Spectral-compliant resource per consumed operation, prefixed with /v1. resources: - path: /v1/orders name: orders description: REST surface for orders. operations: - method: GET name: listorders description: List Orders call: food-distribution-orders.listorders with: status: rest.status dateFrom: rest.dateFrom dateTo: rest.dateTo page: rest.page outputParameters: - type: object mapping: $. - method: POST name: createorder description: Create Order call: food-distribution-orders.createorder with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/orders/{orderid} name: orders-orderid description: REST surface for orders-orderId. operations: - method: GET name: getorder description: Get Order call: food-distribution-orders.getorder with: orderId: rest.orderId outputParameters: - type: object mapping: $. - method: DELETE name: cancelorder description: Cancel Order call: food-distribution-orders.cancelorder with: orderId: rest.orderId outputParameters: - type: object mapping: $. - type: mcp namespace: food-distribution-orders-mcp port: 9090 transport: http description: MCP adapter for Sysco Food Distribution API — Orders. One tool per consumed operation, routed inline through this capability's consumes block. tools: - name: list-orders description: List Orders hints: readOnly: true destructive: false idempotent: true call: food-distribution-orders.listorders with: status: tools.status dateFrom: tools.dateFrom dateTo: tools.dateTo page: tools.page outputParameters: - type: object mapping: $. - name: create-order description: Create Order hints: readOnly: false destructive: false idempotent: false call: food-distribution-orders.createorder with: body: tools.body outputParameters: - type: object mapping: $. - name: get-order description: Get Order hints: readOnly: true destructive: false idempotent: true call: food-distribution-orders.getorder with: orderId: tools.orderId outputParameters: - type: object mapping: $. - name: cancel-order description: Cancel Order hints: readOnly: false destructive: true idempotent: true call: food-distribution-orders.cancelorder with: orderId: tools.orderId outputParameters: - type: object mapping: $.