naftiko: 1.0.0-alpha2 info: label: WooCommerce REST API — Orders description: 'WooCommerce REST API — Orders. 5 operations. Lead operation: WooCommerce List All Orders. Self-contained Naftiko capability covering one Woocommerce business surface.' tags: - Woocommerce - Orders created: '2026-05-19' modified: '2026-05-19' binds: - namespace: env keys: WOOCOMMERCE_API_KEY: WOOCOMMERCE_API_KEY capability: consumes: - type: http namespace: rest-orders baseUri: https://example.com/wp-json/wc/v3 description: WooCommerce REST API — Orders business capability. Self-contained, no shared references. resources: - name: orders path: /orders operations: - name: listorders method: GET description: WooCommerce List All Orders outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: status in: query type: string description: 'Filter orders by status. Options: any, pending, processing, on-hold, completed, cancelled, refunded, failed, trash.' - name: customer in: query type: integer description: Filter orders by customer ID. - name: product in: query type: integer description: Filter orders that contain a specific product ID. - name: createorder method: POST description: WooCommerce Create an Order outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: orders-id path: /orders/{id} operations: - name: getorder method: GET description: WooCommerce Retrieve an Order outputRawFormat: json outputParameters: - name: result type: object value: $. - name: updateorder method: PUT description: WooCommerce Update an Order outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: deleteorder method: DELETE description: WooCommerce Delete an Order outputRawFormat: json outputParameters: - name: result type: object value: $. authentication: type: basic username: '{{env.WOOCOMMERCE_USER}}' password: '{{env.WOOCOMMERCE_PASS}}' exposes: - type: rest namespace: rest-orders-rest port: 8080 description: REST adapter for WooCommerce REST 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: WooCommerce List All Orders call: rest-orders.listorders with: status: rest.status customer: rest.customer product: rest.product outputParameters: - type: object mapping: $. - method: POST name: createorder description: WooCommerce Create an Order call: rest-orders.createorder with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/orders/{id} name: orders-id description: REST surface for orders-id. operations: - method: GET name: getorder description: WooCommerce Retrieve an Order call: rest-orders.getorder outputParameters: - type: object mapping: $. - method: PUT name: updateorder description: WooCommerce Update an Order call: rest-orders.updateorder with: body: rest.body outputParameters: - type: object mapping: $. - method: DELETE name: deleteorder description: WooCommerce Delete an Order call: rest-orders.deleteorder outputParameters: - type: object mapping: $. - type: mcp namespace: rest-orders-mcp port: 9090 transport: http description: MCP adapter for WooCommerce REST API — Orders. One tool per consumed operation, routed inline through this capability's consumes block. tools: - name: woocommerce-list-all-orders description: WooCommerce List All Orders hints: readOnly: true destructive: false idempotent: true call: rest-orders.listorders with: status: tools.status customer: tools.customer product: tools.product outputParameters: - type: object mapping: $. - name: woocommerce-create-order description: WooCommerce Create an Order hints: readOnly: false destructive: false idempotent: false call: rest-orders.createorder with: body: tools.body outputParameters: - type: object mapping: $. - name: woocommerce-retrieve-order description: WooCommerce Retrieve an Order hints: readOnly: true destructive: false idempotent: true call: rest-orders.getorder outputParameters: - type: object mapping: $. - name: woocommerce-update-order description: WooCommerce Update an Order hints: readOnly: false destructive: false idempotent: true call: rest-orders.updateorder with: body: tools.body outputParameters: - type: object mapping: $. - name: woocommerce-delete-order description: WooCommerce Delete an Order hints: readOnly: false destructive: true idempotent: true call: rest-orders.deleteorder outputParameters: - type: object mapping: $.