1688 Sourcing
1688 Sourcing: image Search API
1688 Sourcing: image Search API.
MCP tool name
nexscope_data_alibaba1688_image_searchMCP endpoint
https://api.nexscope.ai/mcpJSON-RPC method
tools/callAuthentication
Use OAuth 2.1 Authorization Code with PKCE and the mcp:tools scope. API keys remain supported as a compatibility option.
Authorization: Bearer nk-xxxxxxxxxxxxxxxxxIf authentication fails, ask the user to open API Access and copy a valid key.
Call this MCP tool
Initialize an MCP 2025-11-25 Streamable HTTP session at https://api.nexscope.ai/mcp, then use tools/call.
{
"jsonrpc": "2.0",
"id": "data-alibaba1688-image-search-1",
"method": "tools/call",
"params": {
"name": "nexscope_data_alibaba1688_image_search",
"arguments": {
"filter": "1688Selection,totalEpScoreLv1,qrr0",
"imageUrl": "https://m.media-amazon.com/images/I/719mRAn2VrL._AC_SL1500_.jpg",
"page": 1,
"pageSize": 20,
"sort": "{\"price\":\"desc\"}"
}
}
}MCP 2025-11-25 · Streamable HTTPProgress is delivered on the original POST SSE response. GET SSE carries notifications; reconnecting must query existing asynchronous work rather than submit again.
Arguments
| Name | Type | Required | Description |
|---|---|---|---|
imageUrl | string | optional | Image URL, maximum length 1000; only supports png/jpg/jpeg; choose one of `imageBase64`, `imageId` Example: {} |
imageBase64 | string | optional | Pure Base64 encoding, does not contain `data:image/jpeg;base64,` prefix; only supports png/jpg/jpeg; choose one of `imageUrl` and `imageId` Example: {} |
imageId | string | optional | 1688 picture ID; it is recommended to carry `page>1` when paging, which can speed up the response; choose one of three `imageUrl` and `imageBase64` Example: {} |
page | integer | optional | Page number, starting from 1 Example: 1 |
pageSize | integer | optional | The number of products per page cannot exceed 50 Example: 20 |
priceStart | string | optional | Price filter starting value (RMB), such as `10` Example: {} |
priceEnd | string | optional | Price filter end value (RMB), such as `100` Example: {} |
filter | string | optional | Filter conditions, multiple conditions separated by commas; see the table below for valid values Example: {} |
sort | string | optional | JSON format `{sort field: sorting method}`; valid fields are `price`, `monthSold`, `rePurchaseRate` Example: {
"monthSold": "desc"
} |
keyword | string | optional | Keywords to further search in the results Example: {} |
productCollectionId | string | optional | Pallet ID, single choice; see the table below for valid values Example: {} |
Response fields
Treat structuredContent as the programmatic API response payload.
| Name | Type | Required | Description |
|---|---|---|---|
imageId | string | optional | The image ID after uploading; returning it during paging query can speed up the process Example: {} |
total | integer | optional | Quantity of products on this page Example: {} |
totalPage | integer | optional | Total pages Example: {} |
sourceType | string | optional | Source type, fixed to `1688` Example: {} |
type | string | optional | Rendering style, fixed to `productWorkbenches` Example: {} |
columns | array | optional | Render column definition Example: {} |
costToken | integer | optional | Consume token Example: {} |
products | array | optional | Product list, see table below Example: {} |
offerId | string | optional | Product ID Example: {} |
asin | string | optional | Item number, same as `offerId` Example: {} |
imageUrl | string | optional | Product pictures Example: {} |
title | string | optional | Product title Example: {} |
price | number | optional | Wholesale price (yuan) Example: {} |
consignPrice | number | optional | Price for one piece (yuan) Example: {} |
salesQuantity | integer | optional | Number of pieces sold per month Example: {} |
estimatedSalesAmount | number | optional | Estimated sales Example: {} |
asinUrl | string | optional | Product link Example: {} |
isOnePsale | string | optional | Whether to ship on behalf of one piece (yes/no) Example: {} |
isJxhy | string | optional | Whether to select supply sources (yes/no) Example: {} |
sellerIdentities | string | optional | Merchant identity (super factory/powerful merchant/integrity member) Example: {} |
offerIdentities | string | optional | Product label (carefully selected) Example: {} |
repurchaseRate | string | optional | Repurchase rate Example: {} |
tradeScore | string | optional | Product Transaction Rating Example: {} |
compositeServiceScore | string | optional | Comprehensive service experience points Example: {} |
sendGoodsAddressText | string | optional | Place of shipment Example: {} |
deliveryTime | string | optional | Shipping time (24/48 hours) Example: {} |
quantityBegin | integer | optional | Minimum batch size Example: {} |
hasPromotion | string | optional | Is there a marketing campaign (yes/no) Example: {} |
promotionType | string | optional | marketing type Example: {} |
isPatentProduct | string | optional | Is it a patented product (yes/no) Example: {} |
isSelect | string | optional | Cross-Border Select Pallet Identification Example: {} |
currency | string | optional | Currency, fixed to `¥` Example: {} |
sourceType | string | optional | Source type, fixed to `1688` Example: {} |
dataType | string | optional | Data type, fixed to `monthlyData` Example: {} |
Examples
Example arguments
{
"filter": "1688Selection,totalEpScoreLv1,qrr0",
"imageUrl": "https://m.media-amazon.com/images/I/719mRAn2VrL._AC_SL1500_.jpg",
"page": 1,
"pageSize": 20,
"sort": "{\"price\":\"desc\"}"
}Example structuredContent
{
"code": 0,
"cost": "-1",
"data": {},
"msg": null,
"time": "2026-01-01 00:00:00",
"traceId": null,
"ts": "0"
}