Patent & IP Risk
Zhihuiya Patent Image Search MCP Tool
Perform visual similarity search for design patents using an image URL, with filtering by country, legal status, date ranges, Locarno classification, and assignee. Supports design patent types only (type D). For utility model patents, use ecommerce.zhihuiya-utility-patent-image-search instead.
MCP tool name
nexscope_zhihuiya_patent_image_searchEquivalent REST API path
https://claw-callback.nexscope.ai/api/skill-api/v1/skills/zhihuiya-patent-image-search/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": "zhihuiya-patent-image-search-1",
"method": "tools/call",
"params": {
"name": "nexscope_zhihuiya_patent_image_search",
"arguments": {
"stemming": 0,
"offset": 0,
"country": "US",
"url": "https://m.media-amazon.com/images/I/719mRAn2VrL._AC_SL1500_.jpg",
"patentType": "D",
"model": 1,
"preFilter": 1,
"isHttps": 1,
"limit": 5
}
}
}REST API equivalent
POST https://claw-callback.nexscope.ai/api/skill-api/v1/skills/zhihuiya-patent-image-search/runCanonical detail URL
https://www.nexscope.ai/mcp-map/zhihuiya-patent-image-searchArguments
| Name | Type | Required | Meaning |
|---|---|---|---|
url | string | required | Image URL (maximum 1,000 characters) Example: https://m.media-amazon.com/images/I/719mRAn2VrL._AC_SL1500_.jpg |
patentType | string | required | Patent type: D for a design patent or U for a utility model patent. Default: D Example: D |
model | integer | required | Image-search model. Design patents: 1 (smart association, recommended) or 2 (search this image). Utility model patents: 3 (match shape) or 4 (match shape, pattern, and color; recommended) Example: 1 |
country | string | optional | Patent authority codes for countries, organizations, or regions, separated by commas, for example CN,US,JP. Omit to search all patent authorities Example: {} |
loc | string | optional | LOC classifications (Locarno classification numbers). Join multiple classifications with AND, OR, or NOT Example: {} |
legalStatus | string | optional | Comma-separated patent legal-status codes. Values: 1 (published), 2 (substantive examination), 3 (granted), 8 (duplicate-grant avoidance), 11 (withdrawn), 12 (withdrawn-unspecified), 17 (deemed withdrawn), 18 (voluntarily withdrawn), 13 (rejected), 14 (fully revoked), 15 (expired), 16 (annual fee unpaid), 21 (rights restored), 22 (rights terminated), 23 (partially invalid), 24 (application terminated), 30 (abandoned), 19 (deemed abandoned), 20 (voluntarily abandoned), 25 (abandoned-unspecified), 222 (PCT did not enter designated state within designation period), 223 (PCT entered designated state within designation period), 224 (PCT entered designated state after designation period), and 225 (PCT did not enter designated state after designation period) Example: {} |
simpleLegalStatus | string | optional | Comma-separated simplified patent legal-status codes. Values: 0 (inactive), 1 (active), 2 (pending), 220 (PCT designation period expired), 221 (within PCT designation period), and 999 (unconfirmed) Example: {} |
assignees | string | optional | Applicant or patent owner (maximum 1,000 characters) Example: {} |
applyStartTime | string | optional | Patent application start date in yyyyMMdd format Example: {} |
applyEndTime | string | optional | Patent application end date in yyyyMMdd format Example: {} |
publicStartTime | string | optional | Patent publication start date in yyyyMMdd format Example: {} |
publicEndTime | string | optional | Patent publication end date in yyyyMMdd format Example: {} |
limit | integer | optional | Number of patents to return, from 1 to 100. Default: 10 Example: 5 |
offset | integer | optional | Result offset, from 0 to 1,000. Default: 0 Example: 0 |
field | string | optional | Result sort field: SCORE (relevance), APD (application date), PBD (publication date), or ISD (grant date). Default: SCORE Example: {} |
order | string | optional | Available when field is APD, PBD, or ISD: desc (descending) or asc (ascending). Default: desc Example: {} |
lang | string | optional | Preferred title language: original (original patent title), cn (Chinese-translated title), or en (English-translated title). Default: original Example: {} |
preFilter | integer | optional | Whether to enable country/LOC pre-filtering: 1 for enabled and 0 for disabled. Default: 1 Example: 1 |
stemming | integer | optional | Whether to enable stemming: 1 for enabled and 0 for disabled. Default: 0 Example: 0 |
mainField | string | optional | Primary patent fields, including title, abstract, claims, specification, publication number, application number, applicant, inventor, and IPC/UPC/LOC classifications (maximum 1,000 characters) Example: {} |
includeMachineTranslation | boolean | optional | Include machine-translated data in the search Example: false |
scoreExpansion | boolean | optional | Score expansion Example: false |
isHttps | integer | optional | Whether to return images over HTTPS: 1 for HTTPS and 0 for HTTP. Default: 0 Example: 1 |
returnImgId | boolean | optional | Whether to return img_id. Default: false Example: false |
Response fields
Treat structuredContent as the programmatic API response payload.
| Name | Type | Required | Meaning |
|---|---|---|---|
total | integer | optional | Number of records returned in this response Example: 1 |
allRecordsCount | integer | optional | Total number of matching records in the database Example: 1 |
data | array | optional | Matching patent records Example: [] |
columns | array | optional | Column definitions used for rendering Example: [] |
type | string | optional | Rendering style Example: {} |
costToken | integer | optional | Tokens consumed Example: 1 |
data[].patentId | string | optional | Similar patent ID Example: example-id |
data[].patentPn | string | optional | Similar patent number Example: {} |
data[].apno | string | optional | Application number Example: {} |
data[].title | string | optional | Patent title Example: {} |
data[].inventor | string | optional | Inventor Example: {} |
data[].originalAssignee | string | optional | Original assignee Example: {} |
data[].currentAssignee | string | optional | Current assignee Example: {} |
data[].authority | string | optional | Patent authority (country code) Example: {} |
data[].url | string | optional | URL of the similar patent drawing Example: https://example.com/image.jpg |
data[].score | number | optional | Similarity score; higher values indicate greater similarity. Available only when field is SCORE Example: 1 |
data[].loc | array | optional | LOC classification (Locarno classification number) Example: [] |
data[].locMatch | integer | optional | Whether a high-weight LOC class matched: 1 for matched and 0 for not matched. Available only when model=1 and field=SCORE Example: 1 |
data[].apdt | integer | optional | Application date (timestamp) Example: 1 |
data[].pbdt | integer | optional | Publication date (timestamp) Example: 1 |
data[].imgId | string | optional | Patent drawing img_id, returned only when returnImgId is true Example: example-id |
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
{
"stemming": 0,
"offset": 0,
"country": "US",
"url": "https://m.media-amazon.com/images/I/719mRAn2VrL._AC_SL1500_.jpg",
"patentType": "D",
"model": 1,
"preFilter": 1,
"isHttps": 1,
"limit": 5
}Example structuredContent
{
"total": 1,
"allRecordsCount": 1,
"data": [
{
"patentId": "example-id",
"url": "https://example.com/image.jpg",
"score": 1,
"loc": [],
"locMatch": 1,
"apdt": 1,
"pbdt": 1,
"imgId": "example-id"
}
],
"columns": [],
"costToken": 1
}