naftiko: 1.0.0-alpha2 info: label: Squarespace Products API — Products description: 'Squarespace Products API — Products. 11 operations. Lead operation: Retrieve All Products. Self-contained Naftiko capability covering one Squarespace business surface.' tags: - Squarespace - Products created: '2026-05-19' modified: '2026-05-19' binds: - namespace: env keys: SQUARESPACE_API_KEY: SQUARESPACE_API_KEY capability: consumes: - type: http namespace: products-products baseUri: https://api.squarespace.com/1.0 description: Squarespace Products API — Products business capability. Self-contained, no shared references. resources: - name: commerce-products path: /commerce/products operations: - name: listproducts method: GET description: Retrieve All Products outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: type in: query type: string description: Filter products by product type - name: createproduct method: POST description: Create a Product outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: commerce-products-productIds path: /commerce/products/{productIds} operations: - name: getproducts method: GET description: Retrieve Specific Products outputRawFormat: json outputParameters: - name: result type: object value: $. - name: updateproduct method: POST description: Update a Product outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: deleteproduct method: DELETE description: Delete a Product outputRawFormat: json outputParameters: - name: result type: object value: $. - name: commerce-products-productId-images path: /commerce/products/{productId}/images operations: - name: uploadproductimage method: POST description: Upload a Product Image outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: commerce-products-productId-images-reorder path: /commerce/products/{productId}/images/reorder operations: - name: reorderproductimages method: POST description: Reorder Product Images outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: commerce-products-productId-images-imageId path: /commerce/products/{productId}/images/{imageId} operations: - name: updateproductimage method: POST description: Update a Product Image outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: deleteproductimage method: DELETE description: Delete a Product Image outputRawFormat: json outputParameters: - name: result type: object value: $. - name: commerce-products-productId-variants path: /commerce/products/{productId}/variants operations: - name: createproductvariant method: POST description: Create a Product Variant outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: commerce-products-productId-variants-variantId path: /commerce/products/{productId}/variants/{variantId} operations: - name: updateproductvariant method: POST description: Update a Product Variant outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true authentication: type: bearer token: '{{env.SQUARESPACE_API_KEY}}' exposes: - type: rest namespace: products-products-rest port: 8080 description: REST adapter for Squarespace Products API — Products. One Spectral-compliant resource per consumed operation, prefixed with /v1. resources: - path: /v1/commerce/products name: commerce-products description: REST surface for commerce-products. operations: - method: GET name: listproducts description: Retrieve All Products call: products-products.listproducts with: type: rest.type outputParameters: - type: object mapping: $. - method: POST name: createproduct description: Create a Product call: products-products.createproduct with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/commerce/products/{productids} name: commerce-products-productids description: REST surface for commerce-products-productIds. operations: - method: GET name: getproducts description: Retrieve Specific Products call: products-products.getproducts outputParameters: - type: object mapping: $. - method: POST name: updateproduct description: Update a Product call: products-products.updateproduct with: body: rest.body outputParameters: - type: object mapping: $. - method: DELETE name: deleteproduct description: Delete a Product call: products-products.deleteproduct outputParameters: - type: object mapping: $. - path: /v1/commerce/products/{productid}/images name: commerce-products-productid-images description: REST surface for commerce-products-productId-images. operations: - method: POST name: uploadproductimage description: Upload a Product Image call: products-products.uploadproductimage with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/commerce/products/{productid}/images/reorder name: commerce-products-productid-images-reorder description: REST surface for commerce-products-productId-images-reorder. operations: - method: POST name: reorderproductimages description: Reorder Product Images call: products-products.reorderproductimages with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/commerce/products/{productid}/images/{imageid} name: commerce-products-productid-images-imageid description: REST surface for commerce-products-productId-images-imageId. operations: - method: POST name: updateproductimage description: Update a Product Image call: products-products.updateproductimage with: body: rest.body outputParameters: - type: object mapping: $. - method: DELETE name: deleteproductimage description: Delete a Product Image call: products-products.deleteproductimage outputParameters: - type: object mapping: $. - path: /v1/commerce/products/{productid}/variants name: commerce-products-productid-variants description: REST surface for commerce-products-productId-variants. operations: - method: POST name: createproductvariant description: Create a Product Variant call: products-products.createproductvariant with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/commerce/products/{productid}/variants/{variantid} name: commerce-products-productid-variants-variantid description: REST surface for commerce-products-productId-variants-variantId. operations: - method: POST name: updateproductvariant description: Update a Product Variant call: products-products.updateproductvariant with: body: rest.body outputParameters: - type: object mapping: $. - type: mcp namespace: products-products-mcp port: 9090 transport: http description: MCP adapter for Squarespace Products API — Products. One tool per consumed operation, routed inline through this capability's consumes block. tools: - name: retrieve-all-products description: Retrieve All Products hints: readOnly: true destructive: false idempotent: true call: products-products.listproducts with: type: tools.type outputParameters: - type: object mapping: $. - name: create-product description: Create a Product hints: readOnly: false destructive: false idempotent: false call: products-products.createproduct with: body: tools.body outputParameters: - type: object mapping: $. - name: retrieve-specific-products description: Retrieve Specific Products hints: readOnly: true destructive: false idempotent: true call: products-products.getproducts outputParameters: - type: object mapping: $. - name: update-product description: Update a Product hints: readOnly: false destructive: false idempotent: false call: products-products.updateproduct with: body: tools.body outputParameters: - type: object mapping: $. - name: delete-product description: Delete a Product hints: readOnly: false destructive: true idempotent: true call: products-products.deleteproduct outputParameters: - type: object mapping: $. - name: upload-product-image description: Upload a Product Image hints: readOnly: false destructive: false idempotent: false call: products-products.uploadproductimage with: body: tools.body outputParameters: - type: object mapping: $. - name: reorder-product-images description: Reorder Product Images hints: readOnly: false destructive: false idempotent: false call: products-products.reorderproductimages with: body: tools.body outputParameters: - type: object mapping: $. - name: update-product-image description: Update a Product Image hints: readOnly: false destructive: false idempotent: false call: products-products.updateproductimage with: body: tools.body outputParameters: - type: object mapping: $. - name: delete-product-image description: Delete a Product Image hints: readOnly: false destructive: true idempotent: true call: products-products.deleteproductimage outputParameters: - type: object mapping: $. - name: create-product-variant description: Create a Product Variant hints: readOnly: false destructive: false idempotent: false call: products-products.createproductvariant with: body: tools.body outputParameters: - type: object mapping: $. - name: update-product-variant description: Update a Product Variant hints: readOnly: false destructive: false idempotent: false call: products-products.updateproductvariant with: body: tools.body outputParameters: - type: object mapping: $.