Summary
Let your AI work with your SHEIN seller shop: orders, buyer address and tracking upload, parcel tracking, products with prices and stock, stock and price updates, categories and attributes, after-sales cases and returns.
Guided setup
Connect SHEIN Seller to ChatGPT in 2 minutes
Start a free trial on AnythingMCP Cloud, connect SHEIN Seller in the guided setup, then add your MCP URL to ChatGPT. No code and no server to run.
No credit card · 7-day trial · Self-host alternative available
AnythingMCP's plugin in ChatGPT's directory answers questions from your company databases on AnythingMCP Cloud (PostgreSQL, MySQL, SQL Server, Oracle, SAP HANA, SQLite, MongoDB, read-only): open the listing (opens in a new tab) and click Install plugin. Every other connector is added to ChatGPT as a custom MCP server with your AnythingMCP MCP URL.
Try asking
Example prompts for SHEIN Seller
Click any prompt to copy it. Paste into Claude, ChatGPT, Cursor, Gemini, Copilot or OpenClaw to run it against this connector.
Claude is AI and can make mistakes. Please double-check responses.
💡 No install? Use cloud.anythingmcp.com directly. Sign in, click Connectors → SHEIN Seller, paste the App ID and App Secret, click Authorize with Provider and approve with the shop's main account on SHEIN, mint an MCP API key and you're done. No Docker, no
git clone, no local server.
SHEIN Seller + ChatGPT
Let your AI work with your SHEIN seller shop: orders, buyer address and tracking upload, parcel tracking, products with prices and stock, stock and price updates, categories and attributes, after-sales cases and returns.
Prerequisites
See the full setup instructions baked into the connector (visible in the in-app store when you select the connector). The required environment variables for this connector are:
SHEIN_API_HOST, SHEIN_APP_ID, SHEIN_APP_SECRET
Step 1 — Get credentials
What you need: a SHEIN Open Platform developer account of the type Seller Self-Developed (verified with the shop's merchant information), an approved app of the shop's cooperation mode, and the shop's main account to approve it. About 20 minutes of work, plus SHEIN's reviews of the account and the app.
- Register at https://open.sheincorp.com, choose the developer type Seller Self-Developed and submit the merchant information it asks for (all of it is in the seller backend). The type cannot be changed once approved.
- In the console open Application Management and create an application. Pick the application type of the shop's cooperation mode: Self-Operated or Semi-Managed for a marketplace shop (a shop in several modes needs one app per mode). Name, icon and description are shown to sellers and cannot be edited after submitting. SHEIN reviews the app; until it is approved there is no valid App ID or App Secret.
- On the app's details page check the API Permission Package: the order, product, inventory, after-sales and return APIs must be subscribed (usually granted with the approval; otherwise click Apply for Permission Package). Add this server's outbound IP address to the app's IP whitelist: SHEIN refuses production calls from any other address (
openapi00002). On AnythingMCP Cloud the setup page shows the address. - Copy the App ID into
SHEIN_APP_IDand the App Secret intoSHEIN_APP_SECRET, and pick the API address forSHEIN_API_HOST:https://openapi.sheincorp.comfor self-operated and semi-managed apps,https://openapi.sheincorp.cnfor fully managed, SHEIN-operated and other apps. - Install the connector and click Authorize with Provider (the last step of the setup guide does it). SHEIN's page opens: sign in to the seller backend with the shop's main account and click the authorize button. SHEIN sends the browser back to
<SERVER_URL>/api/shein-auth/callback(on AnythingMCP Cloud:https://cloud.anythingmcp.com/api/shein-auth/callback) and the connector fetches the shop's key within the 10 minutes SHEIN allows.
The shop key: SHEIN hands over the shop's openKeyId and secretKey (the secretKey encrypted with the App Secret, which AnythingMCP decrypts once); both are stored encrypted on the connector. SHEIN documents no lifetime and no renewal for them. An authorization ends when the seller unbinds the app or resets the key, the shop is closed, SHEIN resets or unbinds it, or it expires: calls then fail with openapi00004 ("The user has expired"), the connector shows that it needs a new authorization, and someone clicks Authorize with Provider again.
How it signs: every call carries x-lt-openKeyId, x-lt-timestamp (Unix milliseconds) and x-lt-signature: five random characters followed by the Base64 of the lower-case hex HMAC-SHA256 of openKeyId×tamp&path, keyed with the secretKey plus those five characters. The query is not signed. A timestamp is valid for 5 minutes, so the server clock must be right.
Where to start: shein_get_store_info checks the authorization and names the shop; shein_list_sites gives the site codes and currencies.
- Orders:
shein_list_orders(a window of at most 48 hours is mandatory), thenshein_get_ordersfor up to 30 at once. Only orders with stockMode 3 are shipped by the seller; printOrderStatus 1 means the order can be handled now. - Shipping it yourself:
shein_get_order_address(handle_type 2 also moves the order to be shipped),shein_list_warehouse_addresses,shein_list_shipping_channels, thenshein_upload_tracking_numbersper piece (goodsId).shein_get_logistics_trackfollows the parcel. SHEIN marks the order shipped when the carrier scans it.shein_confirm_out_of_stockis switched off at install. - Products:
shein_search_products(codes, shelf status, prices, stock and campaign locks),shein_list_products(all codes),shein_get_product(one SPU in full). For new listings:shein_get_category_tree,shein_get_attribute_templates,shein_list_brands.shein_set_skc_shelf_statusis switched off at install. - Stock and prices:
shein_list_warehouses,shein_get_stock,shein_update_stock(with an idempotency key per line),shein_update_prices(raises may wait for SHEIN's price review).shein_get_sku_salesgives units sold for managed shops. - After sales:
shein_list_after_sales_ordersandshein_get_after_sales_orders,shein_list_return_ordersandshein_get_return_ordersonly read;shein_sign_return_orderis switched off at install.
Codes, times and amounts: SPU, SKC and SKU codes (spuName, skcName, skuCode) are SHEIN's; supplierCode and supplierSku are the seller's own. A SKU sold several times has one goodsId per piece, and tracking numbers, cancellations and return receipts work per goodsId. goodsId values are 64-bit numbers: the connector reads every id too long for a JavaScript number as text with its exact digits, and the tools take ids as text and send them to SHEIN as numbers, so copy them exactly as an order or return shows them. Order, after-sales and return windows are Beijing time (UTC+8) as yyyy-MM-dd HH:mm:ss; order details answer with yyyy-MM-dd'T'HH:mm:ss.SSSZ, tracking events with Unix milliseconds. Amounts are decimals in the currency named next to them (orderCurrency, currency, currencyCode).
Limits: every API has its own calls-per-second limit per app (20 for product search, 30 to 300 for the others), answered with openapi00006 or 832213 when exceeded. Order and return lists page by 30, product search by 10; an order window returns at most 10,000 orders, the product list at most 50,000 codes. The same SKC and site can change shelf status once per 20 minutes.
Answers and errors: SHEIN answers with code "0" and the result in info; any other code is an error with msg and a traceId to quote to SHEIN support within three days. The connector asks for English messages (language: en). openapi00001: the signature was refused; with a correct server clock this means the shop key changed (re-authorized or reset elsewhere), so authorize again. openapi00002: this server's IP address is not on the app's whitelist. openapi00003: the app has no permission for this API, the API is not for the shop's mode, or the developer account is disabled. openapi00004: the authorization has ended; authorize again. Write calls that take a list answer code 0 and name the refused lines (failedList, failure_results or info).
Step 2 — Install the adapter
curl -fsSL https://raw.githubusercontent.com/HelpCode-ai/anythingmcp/main/docker-compose.quickstart.yml -o docker-compose.yml
printf 'JWT_SECRET=%s\nENCRYPTION_KEY=%s\n' "$(openssl rand -hex 32)" "$(openssl rand -hex 32)" > .env
docker compose up -d
Step 3 — Add the connector in ChatGPT
Your server URL: in AnythingMCP, open MCP Servers → the server this connector is on, and copy its URL (
https://cloud.anythingmcp.com/mcp/…). Use it wherever this guide showsYOUR_SERVER_ID.
ChatGPT adds MCP servers as plugins on its Plugins page, on the web and on paid plans. Developer mode is no longer needed. In a Business workspace only admins and owners can add one; in Enterprise and Edu an admin can grant the Create plugins with MCPs permission.
- Go to chatgpt.com/plugins, click Add, then Add custom MCP server.
- Enter a name, e.g. Name:
SHEIN Seller. - Under Connection, enter the Server URL
https://cloud.anythingmcp.com/mcp/YOUR_SERVER_IDand keep Authentication on OAuth. - Select I understand and want to continue, then Create as a plugin. When ChatGPT asks, sign in to AnythingMCP and allow access.
- Install the new plugin from your personal plugins, then type @ in a chat and pick it.
Available tools
| Tool | What it does |
|---|---|
shein_get_store_info | The authorized SHEIN shop: storeInfo (supplierId, storeName and storeStatus 1 enabled or 0 disabled, the last two for self-operated and… |
shein_list_sites | The sites the shop sells on: main_site and main_site_name, then sub_site_list with site_abbr (the site code the price and shelf tools take… |
shein_list_orders | List customer orders of a self-operated or semi-managed shop in a time window of at most 48 hours. Returns count and orderList, each with… |
shein_get_orders | Read up to 30 orders in full: orderStatus, orderType (1 normal, 2 exchange), printOrderStatus (1 when the address can be exported and a… |
shein_get_order_address | Export the buyer's shipping address of one order: receiveMsgList with firstName, middleName, lastName, country, province, city, district… |
shein_list_warehouse_addresses | The seller's shipping warehouse addresses for SHEIN partner logistics: openApiAddressInfos with warehouseAddressCode (what… |
shein_list_shipping_channels | The carriers this shop may use: expressChannels for its own shipping (site, expressIdCode such as UPS or DHL ecommerce, expressChannelCode)… |
shein_upload_tracking_numbers | Upload, replace or delete the tracking numbers of an order the seller ships itself, per piece (goodsId from shein_get_orders; several… |
shein_get_logistics_track | Tracking events of an order's parcel or of a return: trackInfo, one entry per waybill with carrier, waybillNo, waybillType (1 first leg, 2… |
shein_confirm_out_of_stock | Cancel one piece of an order because it is out of stock: its storageTag becomes 3 and SHEIN later refunds the buyer (newGoodsStatus 6).… |
shein_search_products | Search the shop's products by SHEIN codes, the seller's own codes, shelf status, category and time. Returns meta.count and data, one entry… |
shein_list_products | List every published product as codes only: data with spuName, skcName and skuCodeList (up to 40 SKUs per SKC). For names, prices and stock… |
shein_get_product | One approved SPU in full: categoryId, productTypeId, brandCode, supplierCode, productMultiNameList and productMultiDescList per language… |
shein_get_category_tree | The product categories this shop may use, as a tree: category_id, category_name, parent_category_id, last_category (true for a leaf)… |
shein_get_attribute_templates | The attributes this shop may or must fill for up to 10 product types: per product_type_id, attribute_infos with attribute_id… |
shein_list_brands | The brands this shop may publish under: data with brand_code and brand_name. No parameters |
shein_list_warehouses | The seller's warehouses of a self-operated or semi-managed shop: list with warehouseCode (what shein_update_stock needs when the shop has… |
shein_get_stock | Stock of SKUs, SKCs or SPUs: goodsInventory per SKC with skuList, each with skuCode, totalInventoryQuantity, totalUsableInventory (what can… |
shein_update_stock | Change the sellable stock of up to 100 SKUs of a self-operated or semi-managed shop. Each item: idempotencyKey (a unique text; a repeat… |
shein_update_prices | Set the selling price of up to 100 SKUs per site (self-operated shops). Each item: productCode (the skuCode), site (a sub-site such as… |
shein_get_sku_sales | Units sold per SKU: dataList with skuCode, realTimeSaleCnt (today), cydSaleCnt (yesterday), c7dSaleCnt and c30dSaleCnt (last 7 and 30 days)… |
shein_set_skc_shelf_status | Put SKCs on shelf or take them off shelf on chosen sites, up to 100 entries. Each entry: skc_name, site_list (sub-sites such as shein-fr)… |
shein_list_after_sales_orders | List after-sales cases of a self-operated or semi-managed shop in a window of at most 48 hours: count and list with aftersalesOrderNo… |
shein_get_after_sales_orders | Read up to 10 after-sales cases: site, orderNo, returnOrderNo, aftersalesOrderSubStatus, aftersalesResolutionPlan (1 return and refund, 2… |
shein_list_return_orders | List return orders of a self-operated or semi-managed shop in a window (48 hours by default): count and returnOrderList with returnOrderNo… |
shein_get_return_orders | Read up to 30 return orders: returnOrderStatus, orderNo, site, noReturnGoodsSign (1 refund without return), returnOrderTagCode, tracking… |
shein_sign_return_order | Confirm that the seller received returned pieces of a return order (goodsId values from shein_get_return_orders). This settles the return… |
Example prompts
- "Which SHEIN orders from the last 24 hours can I handle now?"
- "Upload the UPS tracking number 1Z999AA10123456784 for both pieces of order GSH12345678901."
- "Which of my SKUs have fewer than 10 units in stock?"
- "Set the stock of SKU code I8xk2m4p0q in my main warehouse to 60."
- "Which return orders and after-sales cases came in this week, and what do the buyers say?"
FAQ
Do I paste a shop key or token? No. You paste the App ID and App Secret of your approved SHEIN app and click Authorize with Provider. SHEIN's page asks the shop's main account to approve, and the connector fetches and stores the shop's key itself. When the authorization ends, click Authorize with Provider again.
Which shops does it work for? Orders, tracking, stock updates and returns are for self-operated and semi-managed shops; prices can be set by self-operated shops only. Products, categories, brands, sites and stock reads also work for fully managed shops. Pick the API address of your app type: openapi.sheincorp.com for self-operated and semi-managed, openapi.sheincorp.cn for fully managed. SHEIN only accepts calls from addresses on the app's IP whitelist; on AnythingMCP Cloud the setup page shows the address to add.
Which tools install switched off? shein_confirm_out_of_stock, which cancels an order line, shein_set_skc_shelf_status, which takes products off shelf, and shein_sign_return_order, which confirms a return. Nothing in the connector moves money, books paid logistics or decides an after-sales case.
Does the free ChatGPT plan work with custom MCP servers? OpenAI documents custom MCP servers for paid plans only; the Free plan is not on its list.
Next steps
Was this guide helpful?