Patent & IP Risk
Ruiguan Trademark Graphic Detection MCP Tool
Detect graphic trademarks in product images by comparing against registered trademark databases across 15 major trademark offices using YOLO-based object detection and visual similarity.
MCP tool name
nexscope_ruiguan_trademark_graphic_detectionEquivalent REST API path
https://claw-callback.nexscope.ai/api/skill-api/v1/skills/ruiguan-trademark-graphic-detection/runJSON-RPC method
tools/callAuthentication
Send the user API key as a bearer token on every MCP JSON-RPC request.
Authorization: Bearer nk_xxxxxxxxxxxxxxxxxIf 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": "ruiguan-trademark-graphic-detection-1",
"method": "tools/call",
"params": {
"name": "nexscope_ruiguan_trademark_graphic_detection",
"arguments": {
"enableRadar": false,
"enableLocalizing": false,
"topNumber": 10,
"imageUrl": "https://m.media-amazon.com/images/I/719mRAn2VrL._AC_SL1500_.jpg",
"regions": "US"
}
}
}REST API equivalent
POST https://claw-callback.nexscope.ai/api/skill-api/v1/skills/ruiguan-trademark-graphic-detection/runCanonical detail URL
https://www.nexscope.ai/mcp-map/ruiguan-trademark-graphic-detectionArguments
| Name | Type | Required | Meaning |
|---|---|---|---|
imageUrl | string | required | Product image URL or Base64-encoded image data (maximum 1,000 characters) Example: https://m.media-amazon.com/images/I/719mRAn2VrL._AC_SL1500_.jpg |
topNumber | integer | required | Maximum number of YOLO bounding boxes to return (default 5, maximum 100). The actual result count may be lower Example: 1 |
productTitle | string | optional | Product title used for context-aware detection (maximum 1,000 characters) Example: {} |
trademarkName | string | optional | Possible graphic-logo name used to narrow the search (maximum 1,000 characters) Example: {} |
regions | string | optional | Comma-separated country or region codes to inspect. Defaults to all regions. Supported values: US (United States), WO (WIPO), ES (Spain), GB (United Kingdom), DE (Germany), IT (Italy), CA (Canada), MX (Mexico), EM (European Union), AU (Australia), FR (France), JP (Japan), TR (Turkey), BX (Benelux), and CN (China) Example: US |
enableLocalizing | boolean | optional | Whether to enable image cropping (default false) Example: false |
enableRadar | boolean | optional | Whether to enable radar monitoring (default true) Example: false |
Response fields
Treat structuredContent as the programmatic API response payload.
| Name | Type | Required | Meaning |
|---|---|---|---|
boundingBoxCount | integer | optional | Number of detection results Example: 1 |
data[].radarResult | string | optional | Radar detection result Example: {} |
total | integer | optional | Number of records Example: 1 |
data | array | optional | Detection results; see the fields below Example: [] |
detectId | string | optional | Detection ID Example: example-id |
columns | array | optional | Column definitions used for rendering Example: [] |
costToken | integer | optional | Tokens consumed Example: 1 |
type | string | optional | Rendering style Example: {} |
data[].image | string | optional | URL of the matched trademark image Example: https://example.com/image.jpg |
data[].boundingBox | string | optional | Comma-separated YOLO coordinates Example: {} |
data[].subRadarResult | string | optional | Sub-radar detection result Example: {} |
data[].applicationNumber | string | optional | Application number Example: {} |
data[].niceClassName | string | optional | Comma-separated Nice Classification names Example: {} |
data[].applicantName | string | optional | Comma-separated rights-holder names Example: {} |
data[].tradeMarkStatus | string | optional | Trademark status. Values: "DEL", "ended", "registered", "act", "pend", "filed", or an empty string Example: {} |
data[].niceClass | array | optional | Nice Classification details Example: [] |
data[].similarity | number | optional | Similarity score from 0 to 1; higher values indicate greater similarity Example: 1 |
data[].registrationNumber | string | optional | Registration number Example: {} |
data[].registrationOfficeCode | string | optional | Trademark registration office Example: {} |
data[].registrationDate | string | optional | Registration date Example: 2026-01-01 |
data[].bid | string | optional | Logo identifier Example: example-id |
data[].trademarkName | string | optional | Text trademark name found in the image Example: {} |
data[].applicationDate | string | optional | Application date Example: 2026-01-01 |
errcode | integer | optional | Upstream status code returned by the provider. Example: {} |
errmsg | string | optional | Upstream status message returned by the provider. Example: {} |
code | string | optional | Provider-specific status code. Example: {} |
msg | string | optional | Provider-specific status message. Example: {} |
message | string | optional | Provider-specific message. Example: {} |
title | string | optional | Provider-specific response title. Example: {} |
sourceType | string | optional | Provider-specific source platform type. Example: {} |
sourceTool | string | optional | Provider-specific source tool name. Example: {} |
costTime | integer | optional | Execution time reported by the upstream provider. Example: {} |
page | integer | optional | Current page returned by the upstream provider. Example: {} |
pageSize | integer | optional | Page size returned by the upstream provider. Example: {} |
pageItemCount | integer | optional | Item count on the current page returned by the upstream provider. Example: {} |
totalPage | integer | optional | Total page count returned by the upstream provider. Example: {} |
dataSnapshotMonth | string | optional | Data snapshot month returned by the upstream provider. Example: {} |
Examples
Example arguments
{
"enableRadar": false,
"enableLocalizing": false,
"topNumber": 10,
"imageUrl": "https://m.media-amazon.com/images/I/719mRAn2VrL._AC_SL1500_.jpg",
"regions": "US"
}Example structuredContent
{
"boundingBoxCount": 1,
"total": 1,
"data": [
{
"image": "https://example.com/image.jpg",
"niceClass": [],
"similarity": 1,
"registrationDate": "2026-01-01",
"bid": "example-id",
"applicationDate": "2026-01-01"
}
],
"detectId": "example-id",
"columns": [],
"costToken": 1
}