{"ok":true,"site":{"host":"agentbridge-webmcp.netlify.app","url":"https://agentbridge-webmcp.netlify.app/","type":"live","desc":"Next-generation luxury apparel platform exposing 34 WebMCP tools on document.modelContext for AI agents while delivering a sleek human shopping experience.","tools":[{"name":"login","kind":"act","impl":"imperative","description":"Authenticate a user with their email address and password. Use this when the user wants to sign in, or when a protected tool returns AUTHENTICATION_REQUIRED. Returns the authenticated user profile on success, or an error message for invalid credentials. After a successful login, previously unavailable authenticated tools become available.","inputSchema":{"type":"object","properties":{"email":{"type":"string","description":"User email address (e.g. \"demo@agentbridge.io\")."},"password":{"type":"string","description":"User password."}},"required":["email","password"]},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute"},{"name":"register","kind":"transact","impl":"imperative","description":"Create a new user account with a name, email, and password. Use this when the user wants to sign up for a new account. Returns the newly created user profile on success. The user is automatically logged in after registration, making authenticated tools available.","inputSchema":{"type":"object","properties":{"name":{"type":"string","description":"Full name for the new account."},"email":{"type":"string","description":"Email address for the new account."},"password":{"type":"string","description":"Password for the new account (minimum 6 characters)."}},"required":["name","email","password"]},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute"},{"name":"get_account_info","kind":"answer","impl":"imperative","description":"Check the current authentication status and retrieve the logged-in user profile. Use this to determine whether the user is signed in before attempting protected operations. Returns the user profile (id, name, email, role) if authenticated, or an unauthenticated status.","inputSchema":{"type":"object","properties":{}},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute"},{"name":"navigate_to_page","kind":"act","impl":"imperative","description":"Navigate the user's browser to a specific page or section in the store with proper security boundaries and flow validation. Allowed targets: \"home\" (/), \"products\" (/products), \"product_detail\" (/products/{productId}), \"compare\" (/compare), \"cart\" (/cart), \"checkout\" (/checkout), \"account\" (/account), \"orders\" (/account?tab=orders), \"wishlist\" (/account?tab=wishlist). Protected pages (checkout, account, orders, wishlist) enforce session and cart requirements before navigating. Use this tool when the user asks to go to, open, or visit a major store section.","inputSchema":{"type":"object","properties":{"page":{"type":"string","enum":["home","products","product_detail","compare","cart","checkout","account","orders","wishlist"],"description":"Target page within the application."},"productId":{"type":"string","description":"Product ID or slug (required when page is \"product_detail\")."},"productIds":{"type":"array","items":{"type":"string","description":"Product ID or slug."},"description":"List of product IDs when navigating to \"compare\"."},"category":{"type":"string","description":"Category slug to filter when navigating to \"products\" (e.g. \"laptops\", \"smartphones\")."},"searchQuery":{"type":"string","description":"Search keyword to filter when navigating to \"products\"."},"view":{"type":"string","enum":["auto","parallel","serial"],"description":"Comparison layout mode: \"parallel\" (side-by-side) or \"serial\" (stacked detailed cards)."}},"required":["page"]},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute"},{"name":"view_product_page","kind":"act","impl":"imperative","description":"Navigate the user's browser directly to a specific product detail page to display photos, full hardware specifications, stock status, and customer reviews. Use this when the user asks to \"show\", \"open\", \"view\", or \"inspect\" a specific product. The productId must be a valid ID or slug from a prior search or catalog result.","inputSchema":{"type":"object","properties":{"productId":{"type":"string","description":"Product ID or slug to open in the browser."}},"required":["productId"]},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute"},{"name":"view_comparison_page","kind":"act","impl":"imperative","description":"Open the product comparison page in the user's browser to compare 2 to 4 products side-by-side or serially. Use this when the user asks to compare multiple products visually on the screen. The page adapts its presentation to \"parallel\" (side-by-side columns, ideal for 2-3 products) or \"serial\" (stacked detailed cards, ideal for 4+ products or mobile). Product IDs must come from previous search or catalog results.","inputSchema":{"type":"object","properties":{"productIds":{"type":"array","items":{"type":"string","description":"Product ID or slug."},"description":"List of 2 to 4 product IDs to compare on screen."},"view":{"type":"string","enum":["auto","parallel","serial"],"description":"Comparison layout mode: \"parallel\" for side-by-side columns, \"serial\" for stacked detailed cards, or \"auto\" to adapt to product count."}},"required":["productIds"]},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute"},{"name":"filter_apparel","kind":"act","impl":"imperative","description":"Filter the fashion and apparel catalog by specific clothing attributes: gender (Women, Men), category (Tops, T-Shirts, Jeans), color (Red, Blue, Green, Black, White, Indigo), size (XS, S, M, L, XL, 26-36), and price range. Returns matching apparel items with colors, available sizes, fabric specifications, prices, and stock status. Prevents failure modes by validating available color-department combinations: Women Tops are available in Red, Blue, Green; Men T-Shirts are available in Black, White, Blue; Jeans are in Indigo, Blue, Black.","inputSchema":{"type":"object","properties":{"gender":{"type":"string","enum":["Women","Men","All"],"description":"Target gender department: \"Women\" or \"Men\"."},"category":{"type":"string","enum":["Tops","T-Shirts","Jeans","All"],"description":"Apparel category: \"Tops\" (women), \"T-Shirts\" (men), or \"Jeans\" (both)."},"color":{"type":"string","enum":["Red","Blue","Green","Black","White","Indigo","All"],"description":"Color filter: Red, Blue, Green (women tops); Black, White, Blue (men tees); Indigo, Blue, Black (jeans)."},"size":{"type":"string","description":"Size filter: e.g. \"XS\", \"S\", \"M\", \"L\", \"XL\" or waist sizes \"26\", \"28\", \"30\", \"32\", \"34\"."},"minPrice":{"type":"number","minimum":0,"description":"Minimum price threshold."},"maxPrice":{"type":"number","minimum":0,"description":"Maximum price threshold."},"inStockOnly":{"type":"boolean","description":"If true, returns only items currently in stock."},"limit":{"type":"integer","minimum":1,"maximum":50,"description":"Maximum number of items to return (default: 15)."}}},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute"},{"name":"get_apparel_size_guide","kind":"answer","impl":"imperative","description":"Retrieve verified size charts, fit recommendations, and body measurements (bust, chest, waist, hips, inseam) for Women's Tops, Men's T-Shirts, Women's Jeans, and Men's Jeans. Use this tool whenever users ask about sizing, fit advice, or body measurements to prevent wrong-size ordering and return failures.","inputSchema":{"type":"object","properties":{"category":{"type":"string","enum":["WomensTops","MensTshirts","WomensJeans","MensJeans","All"],"description":"Apparel category to retrieve sizing for: \"WomensTops\", \"MensTshirts\", \"WomensJeans\", \"MensJeans\", or \"All\"."}}},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute"},{"name":"search_products","kind":"answer","impl":"imperative","description":"Search the store product catalog by keyword, product name, brand, or category. Use this when the user asks to find, discover, or look up products. Returns matching products with their IDs, names, prices, ratings, stock status, and specifications. Product IDs from the results can be used with get_product_details, add_to_cart, compare_products, and other tools.","inputSchema":{"type":"object","properties":{"query":{"type":"string","description":"Product name, keyword, color, brand, or category (e.g., \"red silk blouse\", \"black pima cotton tee\", \"high-rise indigo jeans\")."},"limit":{"type":"integer","minimum":1,"maximum":50,"description":"Maximum number of items to return (default: 10)."}},"required":["query"]},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute"},{"name":"get_product_details","kind":"answer","impl":"imperative","description":"Retrieve full details for a specific product by its ID or slug. Use this when the user asks for more information about a particular product found via search_products or filter_products. Returns technical specifications, real-time stock status, pricing, discount percentage, customer reviews, and category. The product ID must come from a previous search, filter, or recommendation result.","inputSchema":{"type":"object","properties":{"productId":{"type":"string","description":"Unique ID or slug of the product (obtained from a prior catalog result)."}},"required":["productId"]},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute"},{"name":"filter_products","kind":"act","impl":"imperative","description":"Filter the product catalog by category, brand, price range, minimum rating, and stock availability. Use this when the user wants to narrow down products by specific criteria without a search keyword. Returns filtered products with their IDs, names, prices, ratings, and stock. All filter parameters are optional and can be combined.","inputSchema":{"type":"object","properties":{"category":{"type":"string","description":"Category slug or name (e.g. \"womens-tops\", \"mens-tshirts\", \"womens-jeans\", \"mens-jeans\")."},"brand":{"type":"string","description":"Brand name (e.g. \"Aura Atelier\", \"Maison Luxe\", \"Vogue Minimal\", \"Iron & Thread\", \"Atelier Sartorial\", \"Denim Atelier\")."},"minPrice":{"type":"number","minimum":0,"description":"Minimum price threshold in USD."},"maxPrice":{"type":"number","minimum":0,"description":"Maximum price threshold in USD."},"minRating":{"type":"number","minimum":1,"maximum":5,"description":"Minimum rating threshold from 1.0 to 5.0 (e.g. 4.0 for 4+ stars)."},"inStockOnly":{"type":"boolean","description":"If true, only returns products currently in stock."},"limit":{"type":"integer","minimum":1,"maximum":50,"description":"Maximum products to return (default: 12)."}}},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute"},{"name":"sort_products","kind":"act","impl":"imperative","description":"Sort catalog products by a chosen criterion: price ascending/descending, customer rating, popularity, newest arrival, or highest discount. Use this when the user asks to sort or order products by a specific attribute. Returns sorted products with their IDs, names, prices, ratings, and stock. Can be combined with an optional category filter or search keyword.","inputSchema":{"type":"object","properties":{"sortBy":{"type":"string","enum":["price_asc","price_desc","rating","popularity","newest","discount"],"description":"Sort ordering criterion."},"category":{"type":"string","description":"Optional category filter to sort within."},"query":{"type":"string","description":"Optional search keyword to sort within."},"limit":{"type":"integer","minimum":1,"maximum":50,"description":"Maximum products to return."}},"required":["sortBy"]},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute"},{"name":"get_product_recommendations","kind":"answer","impl":"imperative","description":"Get tailored product recommendations based on a product being viewed, a category, or general top sellers. Use this when the user wants suggestions, related items, or \"you might also like\" recommendations. Returns recommended products with their IDs, names, prices, and ratings. Pass a productId to get related products, or a category for category-based recommendations.","inputSchema":{"type":"object","properties":{"productId":{"type":"string","description":"Current product ID being viewed to get related accessories and alternatives."},"category":{"type":"string","description":"Category to recommend from."},"limit":{"type":"integer","minimum":1,"maximum":20,"description":"Number of recommendations to retrieve (default: 4)."}}},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute"},{"name":"compare_products","kind":"act","impl":"imperative","description":"Compare 2 to 4 products side-by-side highlighting specifications, prices, discounts, ratings, and features. Use this when the user wants to compare multiple products before making a purchase decision. Returns a comparison table with each product's full details. Product IDs must come from previous search, filter, or recommendation results.","inputSchema":{"type":"object","properties":{"productIds":{"type":"array","items":{"type":"string","description":"Product ID or slug to compare."},"description":"List of 2 to 4 product IDs to compare."}},"required":["productIds"]},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute"},{"name":"check_product_stock","kind":"answer","impl":"imperative","description":"Check real-time inventory quantity and availability status for a specific product. Use this before adding a product to the cart to verify it is in stock. Returns the stock count and a status of IN_STOCK, LOW_STOCK, or OUT_OF_STOCK. The product ID must come from a previous catalog result.","inputSchema":{"type":"object","properties":{"productId":{"type":"string","description":"Product ID to check stock for (obtained from a prior catalog result)."}},"required":["productId"]},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute"},{"name":"get_current_promotions","kind":"answer","impl":"imperative","description":"Retrieve current store promotions, featured products, flash deals, and active discount coupon codes. Use this when the user asks about deals, sales, discounts, or available coupons. Returns featured products, discounted products, and active coupon codes with their discount percentages.","inputSchema":{"type":"object","properties":{}},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute"},{"name":"get_available_product_variants","kind":"answer","impl":"imperative","description":"Retrieve available color, configuration, storage, RAM, or sizing variants for a given product. Use this when the user asks about available options or configurations for a product. Returns the base price, current specifications, and available variant options. Note: Variants are derived from product specifications; not all products have multiple variants.","inputSchema":{"type":"object","properties":{"productId":{"type":"string","description":"Product ID or slug to retrieve variant options for (obtained from a prior catalog result)."}},"required":["productId"]},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute"},{"name":"get_shipping_estimate","kind":"answer","impl":"imperative","description":"Estimate shipping costs and delivery timelines for a destination ZIP code. Use this when the user asks about shipping costs, delivery times, or shipping options. Returns standard, express, and overnight shipping options with rates and estimated delivery windows. Does not require authentication.","inputSchema":{"type":"object","properties":{"zipCode":{"type":"string","description":"Destination ZIP or postal code (e.g. \"10001\", \"90210\", \"60601\")."},"weight":{"type":"number","minimum":0,"description":"Optional estimated package weight in pounds."},"items":{"type":"integer","minimum":1,"description":"Optional number of items (used to auto-estimate weight if weight is not provided)."}},"required":["zipCode"]},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute"}],"category":"Commerce","favicon":"/favicons/agentbridge-webmcp.netlify.app.ico","apiSurface":"spec","toolCount":18}}