naftiko: 1.0.0-alpha2 info: label: Best Buy Products API — Products description: 'Best Buy Products API — Products. 2 operations. Lead operation: Best Buy List Products. Self-contained Naftiko capability covering one Best Buy business surface.' tags: - Best Buy - Products created: '2026-05-19' modified: '2026-05-19' binds: - namespace: env keys: BEST_BUY_API_KEY: BEST_BUY_API_KEY capability: consumes: - type: http namespace: products-products baseUri: https://api.bestbuy.com/v1 description: Best Buy Products API — Products business capability. Self-contained, no shared references. resources: - name: products path: /products operations: - name: listproducts method: GET description: Best Buy List Products outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: apiKey in: query type: string description: Your Best Buy developer API key. required: true - name: format in: query type: string description: Response format - json or xml. - name: show in: query type: string description: Comma-separated list of attributes to return. Use 'all' for complete data. - name: pageSize in: query type: integer description: Number of results per page. Maximum 100. - name: page in: query type: integer description: Page number for pagination. - name: sort in: query type: string description: Sort attribute and direction, e.g. salePrice.asc or name.dsc. - name: search in: query type: string description: Keyword search across product name, manufacturer, descriptions, and features. - name: cursorMark in: query type: string description: Cursor mark for iterating large datasets (10+ pages). Use * to initiate. - name: products-sku path: /products/{sku} operations: - name: getproductbysku method: GET description: Best Buy Get Product by SKU outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: sku in: path type: integer description: The Best Buy product SKU number. required: true - name: apiKey in: query type: string description: Your Best Buy developer API key. required: true - name: format in: query type: string description: Response format - json or xml. - name: show in: query type: string description: Comma-separated list of attributes to return. authentication: type: apikey key: apiKey value: '{{env.BEST_BUY_API_KEY}}' placement: query exposes: - type: rest namespace: products-products-rest port: 8080 description: REST adapter for Best Buy Products API — Products. One Spectral-compliant resource per consumed operation, prefixed with /v1. resources: - path: /v1/products name: products description: REST surface for products. operations: - method: GET name: listproducts description: Best Buy List Products call: products-products.listproducts with: apiKey: rest.apiKey format: rest.format show: rest.show pageSize: rest.pageSize page: rest.page sort: rest.sort search: rest.search cursorMark: rest.cursorMark outputParameters: - type: object mapping: $. - path: /v1/products/{sku} name: products-sku description: REST surface for products-sku. operations: - method: GET name: getproductbysku description: Best Buy Get Product by SKU call: products-products.getproductbysku with: sku: rest.sku apiKey: rest.apiKey format: rest.format show: rest.show outputParameters: - type: object mapping: $. - type: mcp namespace: products-products-mcp port: 9090 transport: http description: MCP adapter for Best Buy Products API — Products. One tool per consumed operation, routed inline through this capability's consumes block. tools: - name: best-buy-list-products description: Best Buy List Products hints: readOnly: true destructive: false idempotent: true call: products-products.listproducts with: apiKey: tools.apiKey format: tools.format show: tools.show pageSize: tools.pageSize page: tools.page sort: tools.sort search: tools.search cursorMark: tools.cursorMark outputParameters: - type: object mapping: $. - name: best-buy-get-product-sku description: Best Buy Get Product by SKU hints: readOnly: true destructive: false idempotent: true call: products-products.getproductbysku with: sku: tools.sku apiKey: tools.apiKey format: tools.format show: tools.show outputParameters: - type: object mapping: $.