list_products will rank products by delta-E distance from a hex you hand it and give back the delta per product, which is the thing a general shopping search cannot do. The customer half, cart, orders, credit and pending payments, sits behind a token the retailer issues, so integrators start on the catalog.
The MCP surface of makeup.land, an Israeli professional cosmetics retailer, hosted at https://makeup.land/api/mcp as a stateless Streamable-HTTP endpoint. Catalog browsing works anonymously; the customer-data tools need a bearer token.
- Catalog browse and search with cross-lingual semantic queries, shade matching ranked by delta-E distance from a near_hex you supply, brand and exact-Hebrew tag filters, and sorting by price, popularity or Bayesian-shrunk rating (list_products)
- A gift card's remaining balance from its code, with no token required (validate_gift_card)
- Every brand carried, with product counts and slugs (list_brands)
- A customer's tags, credit wallet balance and M Club tier, looked up by E.164 phone number (get_customer)
- That customer's most recently updated cart, with per-line and total reward projections (get_cart)
- Recent orders with six-axis status covering order, payment, fulfillment, delivery, return and review (list_orders)
- Pending payment requests on unpaid orders (list_payment_links)
- Deal projections ranked for the customer's own tags and tier (get_customer_best_deals)
Nothing for list_products, and validate_gift_card is gated only on knowing the gift-card code. Everything else needs a bearer token issued via shop@makeup.land, and the customer tools additionally need that customer's phone number in E.164 form.
One command — npx -y mcp-remote https://makeup.land/api/mcp
