Nexscope

IMPORTANT ASYNCHRONOUS TASK WORKFLOW

  1. Call this MCP generation tool once and read taskId from structuredContent.
  2. Do not call the generation tool again while the task is PENDING or RUNNING.
  3. Wait at least 5 seconds, then call nexscope_media_task_result with skillSlug set to sales-talking-video, the exact taskId, and the same bearer API key. While the task remains PENDING or RUNNING, use 5, 10, 20, and 30-second progressive backoff. Never query more often than once every 5 seconds.
  4. Stop querying when the task succeeds or fails. On success, return the final Nexscope resource URLs and the returned count as the actual charged credits.
  5. Never invent a taskId and never expose internal provider names or provider resource URLs.

Multimodal AI

Sales Talking Video API MCP Tool

Create a product-selling video from prompt and product image references.

MCP tool name
nexscope_sales_talking_video
Legacy MCP endpoint
/api/skill-api/v1/mcp
JSON-RPC method
tools/call

Authentication

Send the user API key as a bearer token on every MCP JSON-RPC request.

Authorization: Bearer nk-xxxxxxxxxxxxxxxxx

If authentication is missing or invalid, ask the user to open API Access and copy a valid key before calling this tool.

Call this MCP tool

Use tools/call with the MCP tool name below. The arguments object should match the table on this page.

{
  "jsonrpc": "2.0",
  "id": "sales-talking-video-1",
  "method": "tools/call",
  "params": {
    "name": "nexscope_sales_talking_video",
    "arguments": {
      "prompt": "Introduce this shockproof phone case in an upbeat tone.",
      "imageList": [
        "https://example.com/product.jpg"
      ],
      "videoType": "seedance-2-0-fast",
      "videoTime": 10,
      "aspectRatio": "9:16",
      "isPro": false,
      "resolution": "720p"
    }
  }
}
Legacy endpoint
POST /api/skill-api/v1/mcp
Canonical detail URL
https://www.nexscope.ai/mcp-map/sales-talking-video

Asynchronous task workflow

This capability uses a create-and-query flow. Creating the task and retrieving its final generated resources are two connected requests.

  1. 1. Create onceCall the MCP tool once and keep the returned taskId.
  2. 2. Query with backoffCall nexscope_media_task_result with this skill slug and task ID. Wait at least 5 seconds first; while pending or running, back off at 5, 10, 20, then 30-second intervals.
  3. 3. Use final resultStop at a terminal status. Successful results contain Nexscope resource URLs and the actual charged-credit count.
MCP task result call
{
  "jsonrpc": "2.0",
  "id": "sales-talking-video-result-1",
  "method": "tools/call",
  "params": {
    "name": "nexscope_media_task_result",
    "arguments": {
      "skillSlug": "sales-talking-video",
      "taskId": "TASK_ID_FROM_THE_GENERATION_RESULT"
    }
  }
}
REST fallback
GET https://api.nexscope.ai/api/skill-api/v1/skills/sales-talking-video/tasks/{taskId}

Arguments

NameTypeRequiredMeaning
promptstringrequired
Sales script or creative prompt.
Example: Introduce this shockproof phone case in an upbeat tone.
imageListarrayrequired
Public product image URLs. Provide up to 30 images for Seedance 2.5 or up to 9 images for the other supported models.
Example: [ "https://example.com/product.jpg" ]
videoTypestringrequired
Video model.
Available options
  • seedance-2-0
  • seedance-2-0-fast
  • seedance-2-0-mini
  • seedance-2-5
  • happyhorse-v2
Example: seedance-2-0-fast
videoTimeintegeroptional
Target duration in seconds. Seedance 2.0, Fast, Mini, and HappyHorse V2 support 5, 10, or 15; Seedance 2.5 also supports 30.
Example: 10
aspectRatiostringoptional
Target aspect ratio: 16:9, 9:16, 1:1, 4:3, 3:4, or 21:9.
Example: 9:16
isProbooleanoptional
Enable Pro mode for any Seedance model. HappyHorse V2 does not support Pro mode. When enabled without resolution, the default is 720p.
Example: false
resolutionstringoptional
Target resolution. Seedance 2.0 and 2.5 support 480p, 720p, or 1080p; Seedance Fast and Mini support 480p or 720p; HappyHorse V2 supports 720p or 1080p.
Example: 720p

Response fields

Treat structuredContent as the programmatic API response payload.

NameTypeRequiredDescription
dataanyrequired
Data value used by this API operation.
codeintegerrequired
0 means accepted or successful; nonzero is a platform error.
msgstring | nullrequired
Msg value used by this API operation.
tsstringrequired
Epoch milliseconds.
timestringrequired
Server local time: yyyy-MM-dd HH:mm:ss.
coststringrequired
Elapsed milliseconds, never credits; -1 outside web requests.
traceIdstring | nullrequired
Trace id value used by this API operation.

Any of option 1 — requires taskId, status, result

NameTypeRequiredDescription
dataobjectrequired
Data value used by this API operation.
data.taskIdstringrequired
Task id value used by this API operation.
data.statusstringrequired
Status value used by this API operation.
Allowed: PENDING, RUNNING, SUCCEEDED, FAILED, TIMEOUT
data.resultanyrequired
Result value used by this API operation.

Any of option 1

NameTypeRequiredDescription
data.resultobjectrequired
Completed generation output retained from the task result. Fields vary by capability; generated resources use Nexscope-hosted URLs and any count represents charged Nexscope credits. This is the business output, not a task creation receipt.

Any of option 2

NameTypeRequiredDescription
data.resultnullrequired
Result value used by this API operation.

Any of option 2

NameTypeRequiredDescription
datanullrequired
Data value used by this API operation.

Examples

Example arguments

{
  "prompt": "Introduce this shockproof phone case in an upbeat tone.",
  "imageList": [
    "https://example.com/product.jpg"
  ],
  "videoType": "seedance-2-0-fast",
  "videoTime": 10,
  "aspectRatio": "9:16",
  "isPro": false,
  "resolution": "720p"
}

Example structuredContent

{
  "data": {
    "taskId": "example-task",
    "status": "PENDING",
    "result": null
  },
  "code": 0,
  "msg": null,
  "ts": "0",
  "time": "2026-01-01 00:00:00",
  "cost": "-1",
  "traceId": null
}