eCellar MCP by usefulapi

io.usefulapi/ecellar · v1.0.2 · ecommerce

eCellar MCP by usefulapi is healthy: it completed an MCP handshake in 429 ms and exposes 19 tools.

Read orders, customers, club and stock; add tracking, mark shipped and adjust stock in eCellar.

Endpoint: https://ecellar.usefulapi.io/mcp (streamable-http)

Repository · Website · JSON · Add to my inventory

Facts

Users (last 30 days)0
HandshakeHealthy
Auth neededNone
Tool count19
Latency429 ms
Last checked (UTC)2026-11-05T15:05:42.233Z

Health history

Checked (UTC)StatusLatencyError
2026-11-05T15:05:42.233ZHealthy429

Tools (19)

ecellar_get_reference_dataLookup lists of the winery's eCellar account: brands = brands (brand_key + name); locations = locations (location_id, name, timezone); customer_types = customer types; customer_sources = customer sources; customer_tags = customer tags; order_tags = order tags (tag groups and tags); reservation_types
ecellar_search_customersCustomers (club members and buyers) with contact details, type, source, tags, email consent and default addresses. Personal data: use only what the task needs. POST /customers.
ecellar_search_addressesCustomer billing and shipping addresses. POST /addresses.
ecellar_search_notesNotes on customer records (type, text, dates). POST /notes.
ecellar_search_ordersOrders (web, POS, club and phone) with totals, status, billing and shipping details, and their lines, payments, tracking records and tags. Statuses are the enum values from ecellar_get_reference_data purchase_statuses / billing_statuses. Contains customer personal data. POST /orders.
ecellar_search_order_linesOrder lines (product, SKU, quantity, price, discount, tax) across orders. POST /orders/lines.
ecellar_search_order_paymentsOrder payments (amount, type, billing status, dates, card brand, last digits and expiry; no card numbers). POST /orders/payments.
ecellar_search_order_trackingsCarrier tracking records of orders (carrier, tracking number, shipped and delivered dates). POST /orders/trackings.
ecellar_search_productsProducts (wines and merchandise): name, SKU, price, vintage-related fields, categories and inventory SKUs. POST /products.
ecellar_search_product_categoriesProduct categories (tree: parent_category_id, category_id, name). POST /products/categories.
ecellar_get_inventory_countsCurrent inventory per SKU and location: on_hand, on_hold, invoiced and available. Filter by SKUs and/or locations (ids or names from ecellar_get_reference_data locations); with no filter every SKU and location is returned. POST /inventory/counts.
ecellar_search_club_subscriptionsWine club subscriptions of customers: tier, signup/cancel/hold dates, billing and shipping address, card brand, last digits and expiry (no card numbers). POST /subscriptions.
ecellar_search_club_tiersWine club tiers (id, name, description, brand). POST /club/tiers.
ecellar_search_club_eventsClub events / shipments (name, date, ship group, tier, pickup location, product totals, remix window). POST /club/events.
ecellar_search_reservationsTasting-room and experience reservations (party, times, status, host, notes, contact phone and email). POST /reservations.
ecellar_mark_order_shippedWRITE: set the shipped date and status of ONE order, to be used when ALL its packages have shipped. eCellar refuses it unless the order status is EXPORTED, HOLD_SHIP, SHIPPED, TO_PICKUP or UNSHIPPED, the date is not before the order date, and the date matches the latest tracking ship date. Check the
ecellar_mark_order_deliveredWRITE: set the delivered date and status of ONE order, to be used when ALL its packages were delivered. eCellar refuses it unless the order status is DELIVERED or SHIPPED and the date matches the latest tracking delivered date. PATCH /order/{order_id}/delivered.
ecellar_add_order_trackingWRITE: add a carrier tracking record (carrier + tracking number, optional shipped/delivered dates) to ONE order. Adds a record each call; a duplicate tracking number on the same order is refused by eCellar. Get carrier_enum from ecellar_get_reference_data carriers. POST /order/{order_id}/tracking.
ecellar_adjust_inventory_countWRITE: change the on-hand count of ONE SKU at ONE location by a signed amount (+12 adds, -3 removes; it is a delta, not a new total, so repeating it repeats the change). Pass location_id or location_name; eCellar refuses an unknown or ambiguous location, a SKU that is not at that location, or a resu