naftiko: 1.0.0-alpha2 info: label: Sitecore Commerce and Discovery description: Unified capability combining Sitecore OrderCloud headless commerce with Sitecore Discover search and recommendations. Enables commerce teams and developers to manage products, catalogs, orders, buyers, and deliver personalized search and discovery experiences from a single interface. tags: - Sitecore - Commerce - Order Management - Product Discovery - Search - Recommendations - B2B - B2C created: '2026-05-02' modified: '2026-05-06' binds: - namespace: env keys: ORDERCLOUD_ACCESS_TOKEN: ORDERCLOUD_ACCESS_TOKEN DISCOVER_SUBDOMAIN: DISCOVER_SUBDOMAIN DISCOVER_API_KEY: DISCOVER_API_KEY capability: consumes: - type: http namespace: ordercloud baseUri: https://api.ordercloud.io/v1 description: Sitecore OrderCloud headless commerce API authentication: type: bearer token: '{{ORDERCLOUD_ACCESS_TOKEN}}' resources: - name: products path: /products description: Manage commerce products and catalog items operations: - name: list-products method: GET description: List products in the marketplace inputParameters: - name: page in: query type: integer required: false description: Page number - name: pageSize in: query type: integer required: false description: Items per page - name: search in: query type: string required: false description: Search term outputRawFormat: json outputParameters: - name: result type: object value: $. - name: create-product method: POST description: Create a new product outputRawFormat: json outputParameters: - name: result type: object value: $. body: type: json data: Name: '{{tools.Name}}' Description: '{{tools.Description}}' Active: '{{tools.Active}}' - name: orders path: /orders description: Manage orders across buyer/seller contexts operations: - name: list-orders method: GET description: List orders with filtering and pagination inputParameters: - name: direction in: query type: string required: false description: Incoming or outgoing orders - name: buyerID in: query type: string required: false description: Filter by buyer - name: status in: query type: string required: false description: Order status filter outputRawFormat: json outputParameters: - name: result type: object value: $. - name: create-order method: POST description: Create a new order outputRawFormat: json outputParameters: - name: result type: object value: $. body: type: json data: FromUserID: '{{tools.FromUserID}}' BillingAddressID: '{{tools.BillingAddressID}}' - name: buyers path: /buyers description: Manage buyer organizations operations: - name: list-buyers method: GET description: List buyer organizations outputRawFormat: json outputParameters: - name: result type: object value: $. - name: create-buyer method: POST description: Create a new buyer organization outputRawFormat: json outputParameters: - name: result type: object value: $. body: type: json data: Name: '{{tools.Name}}' Active: '{{tools.Active}}' - name: catalogs path: /catalogs description: Manage product catalogs operations: - name: list-catalogs method: GET description: List product catalogs outputRawFormat: json outputParameters: - name: result type: object value: $. - type: http namespace: discover baseUri: https://{{DISCOVER_SUBDOMAIN}}.rfksrv.com description: Sitecore Discover search and recommendations API authentication: type: apikey key: X-Api-Key value: '{{DISCOVER_API_KEY}}' placement: header resources: - name: search path: /search/v3/{entity} description: Full-text search and faceted filtering for products operations: - name: search-products method: POST description: Search products with full-text and faceted filtering inputParameters: - name: entity in: path type: string required: true description: Entity type (e.g., content, product) outputRawFormat: json outputParameters: - name: result type: object value: $. body: type: json data: query: '{{tools.query}}' facets: '{{tools.facets}}' - name: recommendations path: /rfk/v3/recommend description: Product recommendation endpoints operations: - name: get-recommendations method: POST description: Get personalized product recommendations outputRawFormat: json outputParameters: - name: result type: object value: $. body: type: json data: rfkid: '{{tools.rfkid}}' n_item: '{{tools.n_item}}' - name: events path: /v3/event description: Behavioral event tracking for discovery algorithms operations: - name: track-event method: POST description: Track a behavioral event to feed discovery algorithms outputRawFormat: json outputParameters: - name: result type: object value: $. body: type: json data: type: '{{tools.type}}' entity_type: '{{tools.entity_type}}' entity_id: '{{tools.entity_id}}' exposes: - type: rest port: 8082 namespace: commerce-discovery-api description: Unified REST API for Sitecore OrderCloud commerce and Discover search. resources: - path: /v1/products name: products description: Manage commerce products and search product catalog operations: - method: GET name: list-products description: List OrderCloud products call: ordercloud.list-products outputParameters: - type: object mapping: $. - method: POST name: create-product description: Create a new OrderCloud product call: ordercloud.create-product outputParameters: - type: object mapping: $. - path: /v1/products/search name: product-search description: Search products using Discover operations: - method: POST name: search-products description: Full-text search products via Sitecore Discover call: discover.search-products outputParameters: - type: object mapping: $. - path: /v1/recommendations name: recommendations description: Get product recommendations operations: - method: POST name: get-recommendations description: Get personalized product recommendations via Discover call: discover.get-recommendations outputParameters: - type: object mapping: $. - path: /v1/orders name: orders description: Manage commerce orders operations: - method: GET name: list-orders description: List OrderCloud orders call: ordercloud.list-orders outputParameters: - type: object mapping: $. - method: POST name: create-order description: Create a new order call: ordercloud.create-order outputParameters: - type: object mapping: $. - path: /v1/buyers name: buyers description: Manage buyer organizations operations: - method: GET name: list-buyers description: List buyer organizations call: ordercloud.list-buyers outputParameters: - type: object mapping: $. - path: /v1/catalogs name: catalogs description: Manage product catalogs operations: - method: GET name: list-catalogs description: List product catalogs call: ordercloud.list-catalogs outputParameters: - type: object mapping: $. - path: /v1/events name: events description: Track behavioral events for discovery personalization operations: - method: POST name: track-event description: Track a behavioral event via Discover call: discover.track-event outputParameters: - type: object mapping: $. - type: mcp port: 9092 namespace: commerce-discovery-mcp transport: http description: MCP server for AI-assisted Sitecore commerce and product discovery. tools: - name: ordercloud-list-products description: List products in the OrderCloud marketplace hints: readOnly: true idempotent: true call: ordercloud.list-products outputParameters: - type: object mapping: $. - name: ordercloud-create-product description: Create a new product in OrderCloud call: ordercloud.create-product outputParameters: - type: object mapping: $. - name: ordercloud-list-orders description: List orders in OrderCloud hints: readOnly: true idempotent: true call: ordercloud.list-orders outputParameters: - type: object mapping: $. - name: ordercloud-create-order description: Create a new order in OrderCloud call: ordercloud.create-order outputParameters: - type: object mapping: $. - name: ordercloud-list-buyers description: List buyer organizations in OrderCloud hints: readOnly: true idempotent: true call: ordercloud.list-buyers outputParameters: - type: object mapping: $. - name: ordercloud-list-catalogs description: List product catalogs in OrderCloud hints: readOnly: true idempotent: true call: ordercloud.list-catalogs outputParameters: - type: object mapping: $. - name: discover-search-products description: Search products using Sitecore Discover full-text and faceted search hints: readOnly: true openWorld: true call: discover.search-products outputParameters: - type: object mapping: $. - name: discover-get-recommendations description: Get personalized product recommendations from Sitecore Discover hints: readOnly: true call: discover.get-recommendations outputParameters: - type: object mapping: $. - name: discover-track-event description: Track a behavioral event to improve Discover personalization call: discover.track-event outputParameters: - type: object mapping: $.