AI Content Generation
Product Description Generator
Create or query asynchronous product-description generation tasks.
MCP tool name
nexscope_product_description_generatorMCP 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": "product-description-generator-1",
"method": "tools/call",
"params": {
"name": "nexscope_product_description_generator",
"arguments": {
"imageUrls": [],
"model": "GEM_3_FLASH",
"operation": "create",
"prompt": "Write a product description for a wireless speaker.",
"thinkingLevel": "minimal"
}
}
}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 |
|---|---|---|---|
operation | string | optional | create (default) or query. Example: create |
prompt | string | optional | Product-copy generation instruction; required by create. Example: Write a product description for a wireless speaker. |
imageUrls | array | optional | Media URLs used as context. Pass an empty array for text-only generation; use up to 10 images or typically one video. Example: [] |
thinkingLevel | string | optional | Reasoning level required by create. GEM_3_1_PRO does not support minimal. Example: minimal |
model | string | optional | Text-generation model. GEM_3_FLASH is the default. Example: GEM_3_FLASH |
memberId | string | optional | Optional provider member identifier used by create and query. Example: |
taskId | string | optional | Provider task ID returned by create; required by operation=query. Example: 123456789 |
Response fields
Treat structuredContent as the programmatic API response payload.
| Name | Type | Required | Description |
|---|---|---|---|
code | integer | required | 0 means accepted or successful; nonzero is a platform error. |
cost | string | required | Elapsed milliseconds, never credits; -1 outside web requests. |
data | any | required | Data value used by this API operation. |
msg | string | null | required | Msg value used by this API operation. |
time | string | required | Server local time: yyyy-MM-dd HH:mm:ss. |
traceId | string | null | required | Trace id value used by this API operation. |
ts | string | required | Epoch milliseconds. |
Any of option 1
| Name | Type | Required | Description |
|---|---|---|---|
data | object | required | Data value used by this API operation. |
data.completionTokens | integer | optional | Output token count when the task succeeds. Example: 350 |
data.content | string | optional | Generated product copy when the task succeeds. Example: Example product description. |
data.costTime | integer | optional | Execution time reported by the upstream provider. Example: null |
data.costToken | integer | optional | Provider-reported token cost. Example: 1 |
data.dataSnapshotMonth | string | optional | Data snapshot month returned by the upstream provider. Example: null |
data.page | integer | optional | Current page returned by the upstream provider. Example: null |
data.pageItemCount | integer | optional | Item count on the current page returned by the upstream provider. Example: null |
data.pageSize | integer | optional | Page size returned by the upstream provider. Example: null |
data.promptTokens | integer | optional | Input token count when the task succeeds. Example: 120 |
data.sourceTool | string | optional | Provider-specific source tool name. Example: null |
data.sourceType | string | optional | Provider-specific source platform type. Example: null |
data.status | string | optional | Task status such as PROCESSING, SUCCESS, or FAILED. Example: PROCESSING |
data.taskId | string | optional | Asynchronous generation task ID. Example: 123456789 |
data.title | string | optional | Provider-specific response title. Example: null |
data.totalPage | integer | optional | Total page count returned by the upstream provider. Example: null |
data.totalTokens | integer | optional | Total token count when the task succeeds. Example: 470 |
data.type | string | optional | Provider-specific render or payload type. Example: null |
Any of option 2
| Name | Type | Required | Description |
|---|---|---|---|
data | null | required | Data value used by this API operation. |
Examples
Example arguments
{
"imageUrls": [],
"model": "GEM_3_FLASH",
"operation": "create",
"prompt": "Write a product description for a wireless speaker.",
"thinkingLevel": "minimal"
}Example structuredContent
{
"code": 0,
"cost": "-1",
"data": {
"completionTokens": 350,
"content": "Example product description.",
"costToken": 1,
"promptTokens": 120,
"status": "PROCESSING",
"taskId": "123456789",
"totalTokens": 470
},
"msg": "Generation failed.",
"time": "2026-01-01 00:00:00",
"traceId": null,
"ts": "0"
}