← WebMCP Directory

Tool tree

fitcheck-gray.vercel.app

CommerceTools verified
Website
Fit Check
Explore capabilities
    get_fit_profileAnswer

    Return the current fit profile: gender, width, foot-length range, and fit statements.

    View tool JSON
    {
      "name": "get_fit_profile",
      "kind": "answer",
      "impl": "imperative",
      "description": "Return the current fit profile: gender, width, foot-length range, and fit statements.",
      "inputSchema": {
        "type": "object",
        "properties": {}
      }
    }
    update_fit_profileAction

    Update the fit profile. Any field may be set. `statements` replaces the whole list; use add_fit_statement to append one. Setting a field to null clears it.

    View tool JSON
    {
      "name": "update_fit_profile",
      "kind": "act",
      "impl": "imperative",
      "description": "Update the fit profile. Any field may be set. `statements` replaces the whole list; use add_fit_statement to append one. Setting a field to null clears it.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "gender": {
            "type": [
              "string",
              "null"
            ],
            "enum": [
              "men",
              "women",
              null
            ]
          },
          "width": {
            "type": [
              "string",
              "null"
            ],
            "enum": [
              "narrow",
              "standard",
              "wide",
              null
            ]
          },
          "statements": {
            "type": "array",
            "items": {
              "type": "object",
              "required": [
                "brand",
                "value"
              ],
              "properties": {
                "brand": {
                  "type": "string"
                },
                "gender": {
                  "type": "string",
                  "enum": [
                    "men",
                    "women"
                  ]
                },
                "system": {
                  "type": "string",
                  "enum": [
                    "us",
                    "uk",
                    "eu"
                  ]
                },
                "value": {
                  "type": "number"
                }
              }
            }
          }
        }
      }
    }
    add_fit_statementAction

    Append one 'this size fits me' statement, e.g. {brand:'Nike', value:9}. gender defaults to the profile's gender (or men); system defaults to us.

    View tool JSON
    {
      "name": "add_fit_statement",
      "kind": "act",
      "impl": "imperative",
      "description": "Append one 'this size fits me' statement, e.g. {brand:'Nike', value:9}. gender defaults to the profile's gender (or men); system defaults to us.",
      "inputSchema": {
        "type": "object",
        "required": [
          "brand",
          "value"
        ],
        "properties": {
          "brand": {
            "type": "string"
          },
          "value": {
            "type": "number"
          },
          "gender": {
            "type": "string",
            "enum": [
              "men",
              "women"
            ]
          },
          "system": {
            "type": "string",
            "enum": [
              "us",
              "uk",
              "eu"
            ]
          }
        }
      }
    }
    remove_fit_statementAction

    Remove a fit statement by its id (from get_fit_profile).

    View tool JSON
    {
      "name": "remove_fit_statement",
      "kind": "act",
      "impl": "imperative",
      "description": "Remove a fit statement by its id (from get_fit_profile).",
      "inputSchema": {
        "type": "object",
        "required": [
          "id"
        ],
        "properties": {
          "id": {
            "type": "string"
          }
        }
      }
    }
    reset_fit_profileAction

    Clear the whole fit profile.

    View tool JSON
    {
      "name": "reset_fit_profile",
      "kind": "act",
      "impl": "imperative",
      "description": "Clear the whole fit profile.",
      "inputSchema": {
        "type": "object",
        "properties": {}
      }
    }
    search_catalogAnswer

    Search a store's catalog through the UCP layer (server-side). Returns products with their Size option labels. The browser never calls Shopify directly.

    View tool JSON
    {
      "name": "search_catalog",
      "kind": "answer",
      "impl": "imperative",
      "description": "Search a store's catalog through the UCP layer (server-side). Returns products with their Size option labels. The browser never calls Shopify directly.",
      "inputSchema": {
        "type": "object",
        "required": [
          "domain",
          "query"
        ],
        "properties": {
          "domain": {
            "type": "string",
            "description": "store hostname, e.g. kith.com"
          },
          "query": {
            "type": "string"
          }
        }
      }
    }
    find_shoeAnswer

    Find a shoe across all the stores we know at once, when the person names a SHOE rather than a store ("find me the Air Force 1", "where can I get Sambas"). Fans out to every known store in parallel, merges the hits, tags each with its store, and puts fitting products first. Use search_catalog instead when the person names a specific store.

    View tool JSON
    {
      "name": "find_shoe",
      "kind": "answer",
      "impl": "imperative",
      "description": "Find a shoe across all the stores we know at once, when the person names a SHOE rather than a store (\"find me the Air Force 1\", \"where can I get Sambas\"). Fans out to every known store in parallel, merges the hits, tags each with its store, and puts fitting products first. Use search_catalog instead when the person names a specific store.",
      "inputSchema": {
        "type": "object",
        "required": [
          "query"
        ],
        "properties": {
          "query": {
            "type": "string"
          }
        }
      }
    }
    check_fitAnswer

    Check whether one product fits the current profile. Reads the full size matrix (available/exists), infers the numbering system from the run's shape, and resolves against the profile's foot length, rounding up. Gender comes from the profile, never the catalog.

    View tool JSON
    {
      "name": "check_fit",
      "kind": "answer",
      "impl": "imperative",
      "description": "Check whether one product fits the current profile. Reads the full size matrix (available/exists), infers the numbering system from the run's shape, and resolves against the profile's foot length, rounding up. Gender comes from the profile, never the catalog.",
      "inputSchema": {
        "type": "object",
        "required": [
          "domain",
          "product_id"
        ],
        "properties": {
          "domain": {
            "type": "string",
            "description": "store hostname, e.g. kith.com (same as search_catalog)"
          },
          "product_id": {
            "type": "string",
            "description": "the `id` field of a search_catalog result"
          }
        }
      }
    }
    check_labelsAnswer

    Same verdict as check_fit, but you pass the Size option's labels yourself — for when you're already on the product page and can read them. No store access: infers the numbering system from the run, resolves against the profile's foot length (rounding up), and takes gender from the profile. No stock data, so never returns out_of_stock.

    View tool JSON
    {
      "name": "check_labels",
      "kind": "answer",
      "impl": "imperative",
      "description": "Same verdict as check_fit, but you pass the Size option's labels yourself — for when you're already on the product page and can read them. No store access: infers the numbering system from the run, resolves against the profile's foot length (rounding up), and takes gender from the profile. No stock data, so never returns out_of_stock.",
      "inputSchema": {
        "type": "object",
        "required": [
          "brand",
          "labels"
        ],
        "properties": {
          "brand": {
            "type": "string"
          },
          "labels": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "the Size option's values, e.g. [\"7\",\"8\",\"9\",\"10\"] or [\"41\",\"42\",\"43\"]"
          },
          "product_title": {
            "type": "string",
            "description": "optional — used only for a women's/men's gender signal"
          }
        }
      }
    }
    negotiate_storeAction

    Run UCP discovery + capability negotiation for a store (server-side).

    View tool JSON
    {
      "name": "negotiate_store",
      "kind": "act",
      "impl": "imperative",
      "description": "Run UCP discovery + capability negotiation for a store (server-side).",
      "inputSchema": {
        "type": "object",
        "required": [
          "domain"
        ],
        "properties": {
          "domain": {
            "type": "string"
          }
        }
      }
    }
    recommend_sizeAction

    Given a brand, recommend the size to buy for the current foot-length estimate (rounds up). Needs a resolved foot-length range in the profile first.

    View tool JSON
    {
      "name": "recommend_size",
      "kind": "act",
      "impl": "imperative",
      "description": "Given a brand, recommend the size to buy for the current foot-length estimate (rounds up). Needs a resolved foot-length range in the profile first.",
      "inputSchema": {
        "type": "object",
        "required": [
          "brand"
        ],
        "properties": {
          "brand": {
            "type": "string"
          },
          "gender": {
            "type": "string",
            "enum": [
              "men",
              "women"
            ]
          }
        }
      }
    }