IMPORTANT ASYNCHRONOUS TASK WORKFLOW
- Call this MCP generation tool once and read taskId from structuredContent.
- Do not call generation again while pending or running.
- Query nexscope_media_task_result with this skill slug, the exact taskId, and the same bearer credential using progressive backoff.
Multimodal AI
Jewelry Text Design API
Generate linked text for jewelry or accessory designs.
MCP tool name
nexscope_jewelry_text_designMCP 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": "jewelry-text-design-1",
"method": "tools/call",
"params": {
"name": "nexscope_jewelry_text_design",
"arguments": {
"fontSize": 10,
"fontname": "UyghurMerdane",
"left": false,
"prompt": "hello",
"right": false
}
}
}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.
Asynchronous task workflow
- 1. Create once
Keep the returned taskId.
- 2. Query with backoff
Use nexscope_media_task_result after 5 seconds, then 10, 20, and 30 seconds.
- 3. Use final result
Stop at success, failure, or timeout.
{
"jsonrpc": "2.0",
"id": "jewelry-text-design-result-1",
"method": "tools/call",
"params": {
"name": "nexscope_media_task_result",
"arguments": {
"skillSlug": "jewelry-text-design",
"taskId": "TASK_ID_FROM_THE_GENERATION_RESULT"
}
}
}Arguments
| Name | Type | Required | Description |
|---|---|---|---|
fontname | string | required | Font name. Available options
Example: UyghurMerdane |
fontSize | integer | required | Output font size. Example: 10 |
left | boolean | optional | Whether to add a ring on the left side. Defaults to false. Example: false |
right | boolean | optional | Whether to add a ring on the right side. Defaults to false. Example: false |
prompt | string | required | Jewelry text content. Example: hello |
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 β requires taskId, status, result
| Name | Type | Required | Description |
|---|---|---|---|
data | object | required | Data value used by this API operation. |
data.result | any | required | 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. |
data.status | string | required | Status value used by this API operation. Allowed: PENDING, RUNNING, SUCCEEDED, FAILED, TIMEOUT |
data.taskId | string | required | Task id value used by this API operation. |
Any of option 1
| Name | Type | Required | Description |
|---|---|---|---|
data.result | object | required | 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
| Name | Type | Required | Description |
|---|---|---|---|
data.result | null | required | 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
| Name | Type | Required | Description |
|---|---|---|---|
data | null | required | Data value used by this API operation. |
Examples
Example arguments
{
"fontSize": 10,
"fontname": "UyghurMerdane",
"left": false,
"prompt": "hello",
"right": false
}Example structuredContent
{
"code": 0,
"cost": "-1",
"data": {
"result": null,
"status": "PENDING",
"taskId": "example-task"
},
"msg": null,
"time": "2026-01-01 00:00:00",
"traceId": null,
"ts": "0"
}