TikTok Shop Product Details
TikTok Shop Product Details: shop/product/detail API
TikTok Shop Product Details: shop/product/detail API.
MCP tool name
nexscope_data_tiktok_shop_product_detailMCP 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-tiktok-shop-product-detail-1",
"method": "tools/call",
"params": {
"name": "nexscope_data_tiktok_shop_product_detail",
"arguments": {
"productInput": "1729937400435937604",
"region": "US"
}
}
}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 |
|---|---|---|---|
productInput | string | required | TikTok HTTPS product URL (host must be `tiktok.com` or its subdomain, port must be omitted or `443`, path must contain consecutive `product/<19-digit ID>`), or 19-digit product ID. Product ID must be passed as a string to avoid loss of numeric precision. Example: {} |
region | string | optional | Uppercase site codes: `US`, `GB`, `ID`, `MY`, `TH`, `VN`. `PH`, `SG`, `DE`, `FR`, `IT`, `ES`. Example: US |
Response fields
Treat structuredContent as the programmatic API response payload.
| Name | Type | Required | Description |
|---|---|---|---|
errcode | integer | optional | Business status code; `200` indicates success. Example: {} |
errmsg | string | optional | Business status message; `ok` on success. Example: {} |
data | array | optional | Arranged product array; 1 item is fixed when successful. Example: {} |
total | integer | optional | Fixed to `1` on success. Example: {} |
costToken | integer | optional | Consume token. Example: {} |
type | string | optional | Fixed to `tableListWorkbenches`. Example: {} |
columns | array | optional | Rendering column definitions generated based on the product's top-level fields. Example: {} |
productId | string | optional | Product ID. Example: {} |
status | integer | optional | Platform product status code; cannot be used alone to determine saleability. Example: {} |
title | string | optional | Product title. Example: {} |
category | object | optional | Category name and ID. Example: {} |
pricing | object | optional | Currency, selling price, original price, discount and price original fields. Example: {} |
sales | object | optional | Expose the sold quantity and sales display fields. Example: {} |
inventory | object | optional | Total inventory, SKUs, sales attributes, SKU prices and default selections. Example: {} |
media | object | optional | Image URL and image metadata. Example: {} |
seller | object | optional | Store ID, name, rating, region, and available store fields. Example: {} |
reviews | object | optional | Public comment profile, may be empty. Example: {} |
shipping | object | optional | Logistics and distribution module, may be empty. Example: {} |
actions | object | optional | Add-on, purchase and collection status. Example: {} |
additional | object | optional | Promotions, user benefits, and other human-readable product modules can be large. Example: {} |
Examples
Example arguments
{
"productInput": "1729937400435937604",
"region": "US"
}Example structuredContent
{
"code": 0,
"cost": "-1",
"data": {},
"msg": null,
"time": "2026-01-01 00:00:00",
"traceId": null,
"ts": "0"
}