{
  "name": "All Asia Connect",
  "description": "Official Vietnam distributor of Rascals baby diapers, MONDAY Haircare and Little Blossom organic baby snacks. WebMCP tools on every shop page; the server tools also via MCP and REST.",
  "version": "1.0.0",
  "guide": "https://www.allasiaconnect.com/developers",
  "mcp_server": "https://www.allasiaconnect.com/mcp",
  "openapi": "https://www.allasiaconnect.com/openapi.json",
  "tools": [
    {
      "name": "search_products",
      "title": "Search products",
      "description": "Search the All Asia Connect shop (Rascals diapers, MONDAY Haircare, Little Blossom baby snacks) by text, brand and/or category. Returns up to `limit` products with the public retail price in VND (VAT included), stock status, image and product URL. Use get_product for full details and add_to_cart to put one in the cart.",
      "bucket": 2,
      "scope": "server-backed, public",
      "requires_login": "none",
      "available_via": [
        "webmcp",
        "mcp",
        "rest"
      ],
      "input_schema": {
        "type": "object",
        "properties": {
          "query": {
            "description": "What the shopper is looking for, e.g. \"tape diapers size M\" or \"volume shampoo\". Leave out to list a brand or category.",
            "type": "string",
            "minLength": 2,
            "maxLength": 80
          },
          "brand": {
            "type": "string",
            "enum": [
              "rascals",
              "monday",
              "blossom"
            ],
            "description": "Brand: rascals (baby diapers and pants), monday (MONDAY Haircare shampoo and conditioner), blossom (Little Blossom organic baby snacks)."
          },
          "category": {
            "description": "Category page: ta-dan (tape diapers), ta-quan (diaper pants), dau-goi (shampoo), dau-xa (conditioner), banh-an-dam (baby snacks).",
            "type": "string",
            "enum": [
              "ta-dan",
              "ta-quan",
              "dau-goi",
              "dau-xa",
              "banh-an-dam"
            ]
          },
          "in_stock_only": {
            "default": false,
            "description": "Only products that are in stock.",
            "type": "boolean"
          },
          "limit": {
            "default": 6,
            "description": "Number of results, 1 to 12.",
            "type": "integer",
            "minimum": 1,
            "maximum": 12
          },
          "language": {
            "default": "vi",
            "description": "Language of names, descriptions and URLs: vi (Vietnamese, default) or en (English).",
            "type": "string",
            "enum": [
              "vi",
              "en"
            ]
          }
        }
      }
    },
    {
      "name": "get_product",
      "title": "Product details",
      "description": "Full details of one product by slug or SKU: name, brand, public retail price in VND (VAT included), stock status, description, images and the product URL. Next step: add_to_cart.",
      "bucket": 2,
      "scope": "server-backed, public",
      "requires_login": "none",
      "available_via": [
        "webmcp",
        "mcp",
        "rest"
      ],
      "input_schema": {
        "type": "object",
        "properties": {
          "slug": {
            "description": "Product slug, as returned by search_products (the last part of the product URL).",
            "type": "string",
            "minLength": 2,
            "maxLength": 120
          },
          "sku": {
            "description": "Product SKU, as returned by search_products.",
            "type": "string",
            "minLength": 2,
            "maxLength": 60
          },
          "language": {
            "default": "vi",
            "description": "Language of names, descriptions and URLs: vi (Vietnamese, default) or en (English).",
            "type": "string",
            "enum": [
              "vi",
              "en"
            ]
          }
        }
      }
    },
    {
      "name": "list_brands_and_categories",
      "title": "Brands and categories",
      "description": "The three brands and the product categories of the shop, with a short description, the number of products and the page URL. Use the brand and category keys in search_products.",
      "bucket": 2,
      "scope": "server-backed, public",
      "requires_login": "none",
      "available_via": [
        "webmcp",
        "mcp",
        "rest"
      ],
      "input_schema": {
        "type": "object",
        "properties": {
          "language": {
            "default": "vi",
            "description": "Language of names, descriptions and URLs: vi (Vietnamese, default) or en (English).",
            "type": "string",
            "enum": [
              "vi",
              "en"
            ]
          }
        }
      }
    },
    {
      "name": "get_delivery_info",
      "title": "Delivery, returns, payment and contact",
      "description": "Facts exactly as published on the site: shipping fee, free-shipping threshold, delivery times and coverage, the return and refund policy, payment methods and how to reach customer service, each with the page URL as source.",
      "bucket": 2,
      "scope": "server-backed, public",
      "requires_login": "none",
      "available_via": [
        "webmcp",
        "mcp",
        "rest"
      ],
      "input_schema": {
        "type": "object",
        "properties": {
          "topic": {
            "default": "all",
            "description": "Which facts to return.",
            "type": "string",
            "enum": [
              "shipping",
              "returns",
              "payment",
              "contact",
              "all"
            ]
          },
          "language": {
            "default": "vi",
            "description": "Language of names, descriptions and URLs: vi (Vietnamese, default) or en (English).",
            "type": "string",
            "enum": [
              "vi",
              "en"
            ]
          }
        }
      }
    },
    {
      "name": "track_order",
      "title": "Track an order",
      "description": "Status and delivery tracking of an order by order number plus the phone number used for that order (no account needed, same as the /track page). Returns order status, payment status, items and quantities, courier and tracking events. Never returns an address or amounts.",
      "bucket": 2,
      "scope": "server-backed, public",
      "requires_login": "none",
      "available_via": [
        "webmcp",
        "mcp",
        "rest"
      ],
      "input_schema": {
        "type": "object",
        "properties": {
          "order_code": {
            "type": "string",
            "minLength": 4,
            "maxLength": 40,
            "description": "Order number, e.g. AAC-3F9C21."
          },
          "phone": {
            "type": "string",
            "minLength": 6,
            "maxLength": 20,
            "description": "Phone number given with the order."
          },
          "language": {
            "default": "vi",
            "description": "Language of names, descriptions and URLs: vi (Vietnamese, default) or en (English).",
            "type": "string",
            "enum": [
              "vi",
              "en"
            ]
          }
        },
        "required": [
          "order_code",
          "phone"
        ]
      }
    },
    {
      "name": "my_orders",
      "title": "My orders",
      "description": "Orders of the signed-in shopper, newest first: order number, date, status, payment status, items and delivery tracking. Requires the shopper to be signed in on the site (two-hop: their own access token); without it the answer is AUTH_REQUIRED.",
      "bucket": 3,
      "scope": "server-backed, private (login)",
      "requires_login": "user",
      "available_via": [
        "webmcp",
        "mcp",
        "rest"
      ],
      "input_schema": {
        "type": "object",
        "properties": {
          "order_code": {
            "description": "Only this order number.",
            "type": "string",
            "minLength": 4,
            "maxLength": 40
          },
          "limit": {
            "default": 5,
            "description": "Number of orders, 1 to 20.",
            "type": "integer",
            "minimum": 1,
            "maximum": 20
          },
          "language": {
            "default": "vi",
            "description": "Language of names, descriptions and URLs: vi (Vietnamese, default) or en (English).",
            "type": "string",
            "enum": [
              "vi",
              "en"
            ]
          }
        }
      }
    },
    {
      "name": "add_to_cart",
      "title": "Add to cart",
      "description": "Put a product in the cart of this browser tab, exactly like the \"Add to cart\" button, and open the cart. Returns the cart contents. Does not place an order: the shopper checks out and pays themselves.",
      "bucket": 1,
      "scope": "page-local (in the browser tab)",
      "requires_login": "none",
      "available_via": [
        "webmcp"
      ],
      "input_schema": {
        "type": "object",
        "properties": {
          "slug": {
            "description": "Product slug, as returned by search_products (the last part of the product URL).",
            "type": "string",
            "minLength": 2,
            "maxLength": 120
          },
          "sku": {
            "description": "Product SKU, as returned by search_products.",
            "type": "string",
            "minLength": 2,
            "maxLength": 60
          },
          "quantity": {
            "default": 1,
            "description": "Quantity, 1 to 20.",
            "type": "integer",
            "minimum": 1,
            "maximum": 20
          }
        }
      }
    },
    {
      "name": "navigate",
      "title": "Open a page or the cart",
      "description": "Open a page of the shop in this tab (a path such as /rascals, /product/<slug>, /shipping-delivery, /track) in the current language, or \"cart\" to open the cart drawer and get its contents.",
      "bucket": 1,
      "scope": "page-local (in the browser tab)",
      "requires_login": "none",
      "available_via": [
        "webmcp"
      ],
      "input_schema": {
        "type": "object",
        "properties": {
          "to": {
            "type": "string",
            "minLength": 1,
            "maxLength": 200,
            "description": "\"cart\", or a path on this site starting with /."
          }
        },
        "required": [
          "to"
        ]
      }
    }
  ]
}