Ecwid MCP by usefulapi
Server Details
Read store products, orders, customers, categories and coupons; adjust inventory and update orders.
- Status
- Healthy
- Uptime
- 70.9% over 55 days
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-06-18
- URL
- Repository
- m190/usefulapi-mcp
- GitHub Stars
- 0
TDQS
Scored across 12 tools
Each tool targets a distinct resource-action pair (e.g., get by ID vs. search/list, adjust inventory vs. update order). The prefix `ecwid_` plus verb-noun structure makes boundaries clear, and no two tools appear to perform the same task.
All tools follow the `ecwid_<verb>_<resource>` pattern with verbs like get, list, search, adjust, update. The naming is uniform and predictable, with no mixed conventions or vague verbs.
12 tools is within the ideal range for a domain-specific API covering products, categories, customers, orders, coupons, and store profile. Each tool has a clear purpose and the set is well-scoped without redundancy.
The set covers read operations well but lacks create/update/delete for most resources (products, categories, customers, coupons). Only inventory adjustment and order status update are provided as mutations, leaving significant gaps in lifecycle management that an agent would likely need.
Available Tools
12 toolsecwid_adjust_product_inventoryAdjust product inventoryDestructiveInspect
ADJUSTS a product's in-stock quantity by a delta — this MODIFIES live store data. Positive increases stock, negative decreases it. Ecwid REST: PUT /products/{productId}/inventory with JSON body {quantityDelta}. Returns {updateCount, warning?}.
| Name | Required | Description | Default |
|---|---|---|---|
| product_id | Yes | Product id to adjust. | |
| quantity_delta | Yes | Change in stock quantity — positive increases stock, negative decreases. |
ecwid_get_categoryGet categoryRead-onlyInspect
Get a single category by id, including its name, parent, product ids, and images. Ecwid REST: GET /categories/{categoryId}.
| Name | Required | Description | Default |
|---|---|---|---|
| category_id | Yes | Category id. |
ecwid_get_customerGet customerRead-onlyInspect
Get a single customer by id, including contact details, addresses, and customer group. Ecwid REST: GET /customers/{customerId}.
| Name | Required | Description | Default |
|---|---|---|---|
| customer_id | Yes | Customer id. |
ecwid_get_orderGet orderRead-onlyInspect
Get a single order by its order number, including line items, totals, customer, and payment/fulfillment status. Ecwid REST: GET /orders/{orderNumber}.
| Name | Required | Description | Default |
|---|---|---|---|
| order_number | Yes | Order number (the store-visible order id). |
ecwid_get_productGet productRead-onlyInspect
Get a single product by its id, including price, stock, options, images, and category assignments. Ecwid REST: GET /products/{productId}.
| Name | Required | Description | Default |
|---|---|---|---|
| product_id | Yes | Product id. |
ecwid_get_store_profileGet store profileRead-onlyInspect
Get the store's profile — general info (store id, name, currency), company details, and settings. Ecwid REST: GET /profile.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
ecwid_list_categoriesList categoriesRead-onlyInspect
List the store's product categories, optionally scoped to a parent category and including hidden ones. Returns a paged collection. Ecwid REST: GET /categories.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Max results per page (1-100). | |
| offset | No | Pagination offset. | |
| parent | No | List only subcategories of this parent category id (0 = root). | |
| hidden_categories | No | Include hidden (disabled) categories when true. |
ecwid_list_discount_couponsList discount couponsRead-onlyInspect
List the store's discount coupons with optional filters (coupon code, discount type, availability). Returns a paged collection. Ecwid REST: GET /discount_coupons.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Max results per page (1-100). | |
| offset | No | Pagination offset. | |
| coupon_code | No | Filter by exact coupon code. | |
| availability | No | Filter by availability, e.g. ACTIVE | PAUSED | EXPIRED | COMPLETE. | |
| discount_type | No | Filter by discount type, e.g. ABS | PERCENT | SHIPPING | ABS_AND_SHIPPING | PERCENT_AND_SHIPPING. |
ecwid_search_customersSearch customersRead-onlyInspect
Search / list the store's customers with optional filters (keyword, email, name, customer group). Returns a paged collection. Ecwid REST: GET /customers.
| Name | Required | Description | Default |
|---|---|---|---|
| name | No | Filter by customer name. | |
| No | Filter by customer email. | ||
| limit | No | Max results per page (1-100). | |
| offset | No | Pagination offset. | |
| keyword | No | Full-text search term (name, email…). | |
| customer_group_id | No | Filter by customer group id. |
ecwid_search_ordersSearch ordersRead-onlyInspect
Search / list the store's orders with optional filters (keyword, customer email/id, payment & fulfillment status, coupon, created-date range). Returns a paged collection. Ecwid REST: GET /orders.
| Name | Required | Description | Default |
|---|---|---|---|
| No | Filter by customer email. | ||
| limit | No | Max results per page (1-100). | |
| offset | No | Pagination offset. | |
| keyword | No | Full-text search term (order number, customer name, email…). | |
| created_to | No | Filter to orders created on/before this date (YYYY-MM-DD or Unix timestamp). | |
| coupon_code | No | Filter by applied coupon code. | |
| customer_id | No | Filter by customer id. | |
| created_from | No | Filter to orders created on/after this date (YYYY-MM-DD or Unix timestamp). | |
| payment_status | No | Filter by payment status: AWAITING_PAYMENT | PAID | CANCELLED | REFUNDED | PARTIALLY_REFUNDED | INCOMPLETE. | |
| fulfillment_status | No | Filter by fulfillment status: AWAITING_PROCESSING | PROCESSING | SHIPPED | DELIVERED | WILL_NOT_DELIVER | RETURNED | READY_FOR_PICKUP | OUT_FOR_DELIVERY. |
ecwid_search_productsSearch productsRead-onlyInspect
Search / list the store's products with optional filters (keyword, SKU, category, stock, price range) and sorting. Returns a paged collection ({total, count, offset, limit, items}). Ecwid REST: GET /products.
| Name | Required | Description | Default |
|---|---|---|---|
| sku | No | Filter by exact product SKU. | |
| limit | No | Max results per page (1-100). | |
| offset | No | Pagination offset. | |
| sortBy | No | Sort order: RELEVANCE | PRICE_ASC | PRICE_DESC | NAME_ASC | NAME_DESC | ADDED_TIME_ASC | ADDED_TIME_DESC | UPDATED_TIME_ASC | UPDATED_TIME_DESC. | |
| enabled | No | Filter to enabled (true) or disabled (false) products. | |
| inStock | No | Filter to in-stock (true) or out-of-stock (false) products. | |
| keyword | No | Full-text search term (matches title, description, SKU…). | |
| priceTo | No | Maximum price (inclusive). | |
| category | No | Filter to products in this category id (0 = root). | |
| priceFrom | No | Minimum price (inclusive). |
ecwid_update_orderUpdate orderDestructiveInspect
UPDATES an order — its payment status, fulfillment status, and/or tracking number. This MODIFIES live store data and may trigger customer notifications. Ecwid REST: PUT /orders/{orderNumber}. Provide only the fields you want to change. Returns {updateCount}.
| Name | Required | Description | Default |
|---|---|---|---|
| order_number | Yes | Order number to update. | |
| payment_status | No | New payment status: AWAITING_PAYMENT | PAID | CANCELLED | REFUNDED | PARTIALLY_REFUNDED | INCOMPLETE. | |
| tracking_number | No | Shipping tracking number to record on the order. | |
| fulfillment_status | No | New fulfillment status: AWAITING_PROCESSING | PROCESSING | SHIPPED | DELIVERED | WILL_NOT_DELIVER | RETURNED | READY_FOR_PICKUP | OUT_FOR_DELIVERY. |
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
12 tool updates
- Changed
ecwid_adjust_product_inventory1 field changed- changed
Input schema / $schemaPrevious value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
- Changed
ecwid_get_category1 field changed- changed
Input schema / $schemaPrevious value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
- Changed
ecwid_get_customer1 field changed- changed
Input schema / $schemaPrevious value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
- Changed
ecwid_get_order1 field changed- changed
Input schema / $schemaPrevious value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
- Changed
ecwid_get_product1 field changed- changed
Input schema / $schemaPrevious value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
- Changed
ecwid_get_store_profile1 field changed- changed
Input schema / $schemaPrevious value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
- Changed
ecwid_list_categories1 field changed- changed
Input schema / $schemaPrevious value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
- Changed
ecwid_list_discount_coupons1 field changed- changed
Input schema / $schemaPrevious value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
- Changed
ecwid_search_customers1 field changed- changed
Input schema / $schemaPrevious value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
- Changed
ecwid_search_orders1 field changed- changed
Input schema / $schemaPrevious value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
- Changed
ecwid_search_products1 field changed- changed
Input schema / $schemaPrevious value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
- Changed
ecwid_update_order1 field changed- changed
Input schema / $schemaPrevious value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
12 tool updates
- First observed
ecwid_adjust_product_inventory - First observed
ecwid_get_category - First observed
ecwid_get_customer - First observed
ecwid_get_order - First observed
ecwid_get_product - First observed
ecwid_get_store_profile - First observed
ecwid_list_categories - First observed
ecwid_list_discount_coupons - First observed
ecwid_search_customers - First observed
ecwid_search_orders - First observed
ecwid_search_products - First observed
ecwid_update_order
Related MCP Connectors
Manage products, orders, customers, inventory, and store configuration
Read Megaventory products, stock, orders and partners; create clients, sales and purchase orders.
201Query Loyverse POS receipts, shifts, items, inventory and customers, and update stock and customers.
Read shops, catalog blueprints, print providers, products and orders; create and publish products.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceIntegrates with CS-Cart REST API to fetch products and orders, enabling product search and order retrieval for e-commerce management.7 npmMIT
- FlicenseNot gradedqualityDmaintenanceEnables interaction with e-commerce storefronts through a standardized API. Provides access to product catalogs, inventory management, and customer operations for online retail platforms.-
- AlicenseNot gradedqualityFmaintenanceEnables comprehensive management of Tiendanube and Nuvemshop stores, supporting operations for products, orders, customers, and categories. It provides flexible integration through SSE, HTTP, and STDIO transport modes with full Docker support.6MIT
- FlicenseNot gradedqualityCmaintenanceEnables AI to view and manage e-commerce data such as products, orders, and coupons, and perform actions like updating prices, stock, and generating sales reports.-
Glama MCP Gateway
Add one secure layer between your agents and this server.