TRO Risk Detection MD
Product IP & Court Order Risk Check
Screen product images for potential intellectual property risks, including temporary restraining orders (TROs). Call it via REST API or MCP.
MCP tool name
nexscope_maidalv_product_tro_detectionMCP 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": "maidalv-product-tro-detection-1",
"method": "tools/call",
"params": {
"name": "nexscope_maidalv_product_tro_detection",
"arguments": {
"language": "zh",
"mainProductImage": "https://example.com/product.jpg"
}
}
}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 |
|---|---|---|---|
mainProductImage | string | required | Main product image as a public URL or data:image/...;base64, URI; maximum 1,000 characters. Example: https://example.com/product.jpg |
referenceImages | array | optional | Up to 3 reference images, each a public URL or image data URI. Example: [] |
otherProductImages | array | optional | Up to 5 additional product images, each a public URL or image data URI. Example: [] |
ipImages | array | optional | Up to 3 intellectual-property evidence images, each a public URL or image data URI. Example: [] |
referenceText | string | optional | Similar-product text, maximum 1,000 characters. Example: Wireless speaker |
description | string | optional | Product description, preferably the title; maximum 1,000 characters. Example: Portable wireless speaker |
ipKeywords | array | optional | Up to 20 intellectual-property keywords. Example: [
"speaker"
] |
language | string | optional | Legal report language: zh (default) or en; affects report only. Example: zh |
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 | Status description, `ok` when successful Example: {} |
status | string | optional | Analyze the overall status, `success` when successful Example: {} |
checkId | string | optional | The unique identifier for this test Example: {} |
type | string | optional | Rendering style, such as `tableListWorkbenches` Example: {} |
costToken | integer | optional | The token consumed by this call Example: {} |
total | integer | optional | The number of high-risk infringement items, that is, the length of the `results` array Example: {} |
riskLevel | string | optional | Overall risk assessment: `High Risk`, `Medium Risk` or `Low Risk` Example: {} |
results | array | optional | List of high-risk potential infringement items, please see the "Infringement Item Fields" below for the fields. Example: {} |
nonResults | array | optional | A list of IP items that are not high risk or low similarity, including information about possible TRO plaintiffs. See the "Infringement Item Fields" below for the fields. Example: {} |
columns | array | optional | Rendered column definitions for display only; length may differ from data array Example: {} |
ipType | string | optional | IP type: `Trademark`, `Copyright` or `Patent` Example: {} |
text | string | optional | IP text content such as trademark text, patent title, or copyright title Example: {} |
ipOwner | string | optional | Intellectual property right holder Example: {} |
regNo | string | optional | Registration number, possibly an array of JSON strings, such as `["1221667"]` Example: {} |
riskLevel | string | optional | Risk level: `High Risk`, `Medium Risk`, or `Low Risk`; does not appear if there is no rating Example: {} |
riskScore | number | optional | 0-10 Numeric risk score; does not appear if there is no score Example: {} |
riskDescription | string | optional | Risk level text description; does not appear if there is no score Example: {} |
ipAssetUrls | string[] | optional | IP Evidence Image URL List Example: {} |
plaintiffId | integer | optional | TRO Plaintiff ID, only appears if the IP appears in a TRO case Example: {} |
plaintiffName | string | optional | TRO plaintiff name, appears only if the IP appears in a TRO case Example: {} |
numberOfCases | integer | optional | Number of cases filed by this plaintiff; may be `null` if case details are not available Example: {} |
lastCaseDocket | string | optional | Court docket number of the most recent case; may be `null` if case details are not available Example: {} |
lastCaseDateFiled | string | optional | Date the most recent case was filed; may be `null` if case details are not available Example: {} |
report | string | optional | AI-generated legal assessment report, the language is determined by the `language` parameter Example: {} |
Examples
Example arguments
{
"language": "zh",
"mainProductImage": "https://example.com/product.jpg"
}Example structuredContent
{}