Amazon Marketplace Intelligence
Amazon Search By Image MCP Tool
Perform image-based visual product search on Amazon across 8 marketplaces. Use an image URL to find visually similar products, with optional Keepa enrichment for sales data.
MCP tool name
nexscope_amazon_search_by_imageEquivalent REST API path
https://api.nexscope.ai/api/skill-api/v1/skills/amazon-search-by-image/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": "amazon-search-by-image-1",
"method": "tools/call",
"params": {
"name": "nexscope_amazon_search_by_image",
"arguments": {
"imageUrl": "https://m.media-amazon.com/images/I/31SkgVLWSuL._SL75_.jpg",
"amazonDomain": "amazon.com",
"aggregateByKeepaData": false
}
}
}REST API equivalent
POST https://api.nexscope.ai/api/skill-api/v1/skills/amazon-search-by-image/runCanonical detail URL
https://www.nexscope.ai/mcp-map/amazon-search-by-imageArguments
| Name | Type | Required | Meaning |
|---|---|---|---|
imageUrl | string | required | Valid, publicly accessible image URL (maximum 1,000 characters) Example: https://m.media-amazon.com/images/I/31SkgVLWSuL._SL75_.jpg |
amazonDomain | string | required | Amazon marketplace. Supported domains: United States (amazon.com), United Kingdom (amazon.co.uk), Germany (amazon.de), France (amazon.fr), Italy (amazon.it), Spain (amazon.es), Japan (amazon.co.jp), and India (amazon.in). Default: amazon.com Example: amazon.com |
sort | string | optional | Sort by price, rating, or rating count. Values: default, price-asc-rank, price-desc-rank, rating-asc-rank, rating-desc-rank, ratings-asc-rank, and ratings-desc-rank Example: {} |
deliveryZip | string | optional | Delivery postal code or city within the selected marketplace. If omitted, the marketplace default is used. Maximum 1,000 characters. Defaults: United States=10001, United Kingdom=EC1A 1BB, Germany=10115, France=75001, Italy=00100, Spain=28001, Japan=100-0001, and India=110034 Example: {} |
countryOrAreaCode | string | optional | Destination country or region code for cross-border delivery, such as CN, JP, KR, TW, HK, MO, SG, TH, VN, PH, or MY. Do not provide this together with deliveryZip. Amazon India does not support cross-border destination settings. Maximum 1,000 characters Example: {} |
aggregateByKeepaData | boolean | optional | Whether to enrich results with Keepa data such as sales rank, monthly sales, FBA fees, and dimensions Example: false |
Response fields
Treat structuredContent as the programmatic API response payload.
| Name | Type | Required | Description |
|---|---|---|---|
data | any | required | Data value used by this API operation. |
code | integer | required | 0 means accepted or successful; nonzero is a platform error. |
msg | string | null | required | Msg value used by this API operation. |
ts | string | required | Epoch milliseconds. |
time | string | required | Server local time: yyyy-MM-dd HH:mm:ss. |
cost | string | required | Elapsed milliseconds, never credits; -1 outside web requests. |
traceId | string | null | required | Trace id value used by this API operation. |
Any of option 1
| Name | Type | Required | Description |
|---|---|---|---|
data | object | required | Data value used by this API operation. |
data.total | integer | optional | Total rows Example: 1 |
data.totalCount | integer | optional | Total count Example: 1 |
data.perPage | integer | optional | Items per page Example: 1 |
data.currentPage | integer | optional | Current page Example: 1 |
data.type | string | optional | Rendering style Example: null |
data.sourceType | string | optional | Source type Example: null |
data.columns | array | optional | Column definitions used for rendering Example: [] |
data.costToken | integer | optional | Tokens consumed Example: 1 |
data.products | array | optional | Product list; see the product fields below Example: [] |
data.asin | string | optional | ASIN Example: B072MQ5BRX |
data.title | string | optional | Product title Example: null |
data.imageUrl | string | optional | Image URL Example: https://example.com/image.jpg |
data.asinUrl | string | optional | Amazon ASIN detail URL Example: B072MQ5BRX |
data.price | number | optional | Current price in the marketplace currency Example: 1 |
data.oldPrice | number | optional | List price Example: 1 |
data.products[].currency | string | optional | Currency Example: null |
data.rating | number | optional | Current rating from 0.0 to 5.0 Example: 1 |
data.ratings | integer | optional | Rating count Example: 1 |
data.products[].brand | string | optional | Brand Example: null |
data.sourceTool | string | optional | Source tool Example: null |
data.salesRank | integer | optional | Sales rank from Keepa Example: 1 |
data.salesRank30 | integer | optional | Average sales rank over the past 30 days from Keepa Example: 1 |
data.salesRank90 | integer | optional | Average sales rank over the past 90 days from Keepa Example: 1 |
data.salesRank180 | integer | optional | Average sales rank over the past 180 days from Keepa Example: 1 |
data.monthlySalesUnits | integer | optional | Monthly units sold from Keepa Example: 1 |
data.monthlySalesRevenue | number | optional | Monthly sales revenue from Keepa Example: 1 |
data.monthlySalesUnits1MonthAgo~monthlySalesUnits12MonthsAgo | integer | optional | Monthly sales from 1 through 12 months ago, from Keepa Example: 1 |
data.reviewCount | integer | optional | Review count from Keepa Example: 1 |
data.fbaFees | number | optional | FBA fulfillment fee in the marketplace currency from Keepa Example: 1 |
data.profit | number | optional | Profit margin percentage from Keepa; for example, 25.5 means 25.5% Example: 1 |
data.referralFeePercentage | number | optional | Referral fee percentage from Keepa Example: 1 |
data.products[].fulfillment | string | optional | Fulfillment method from Keepa: AMZ, FBA, or FBM Example: null |
data.primePrice | number | optional | Prime price from Keepa Example: 1 |
data.buyBoxSellerId | string | optional | Buy Box seller ID from Keepa Example: example-id |
data.sellerNum | integer | optional | Seller count from Keepa Example: 1 |
data.variationNum | integer | optional | Variation count from Keepa Example: 1 |
data.parentAsin | string | optional | Parent ASIN from Keepa Example: B072MQ5BRX |
data.availableDate | string | optional | Listing date from Keepa in yyyy-MM-dd HH:mm:ss format Example: 2026-01-01 |
data.lastUpdate | string | optional | Last update time from Keepa in yyyy-MM-dd HH:mm:ss format Example: 2026-01-01 |
data.products[].manufacturer | string | optional | Manufacturer from Keepa Example: null |
data.products[].model | string | optional | Model from Keepa Example: null |
data.products[].color | string | optional | Color from Keepa Example: null |
data.products[].material | string | optional | Primary materials used in the product construction, from Keepa Example: null |
data.products[].weight | string | optional | Weight in grams from Keepa Example: null |
data.products[].dimension | string | optional | Dimensions from Keepa Example: null |
data.itemLength | integer | optional | Product length in millimeters from Keepa; 0 or -1 when unavailable Example: 1 |
data.itemWidth | integer | optional | Product width in millimeters from Keepa; 0 or -1 when unavailable Example: 1 |
data.itemHeight | integer | optional | Product height in millimeters from Keepa; 0 or -1 when unavailable Example: 1 |
data.packageLength | integer | optional | Package length in millimeters from Keepa Example: 1 |
data.packageWidth | integer | optional | Package width in millimeters from Keepa Example: 1 |
data.packageHeight | integer | optional | Package height in millimeters from Keepa Example: 1 |
data.products[].packageWeight | string | optional | Package weight in grams from Keepa Example: null |
data.products[].packageDimensions | string | optional | Package dimensions from Keepa Example: null |
data.packageQuantity | integer | optional | Number of items in the package from Keepa; 0 or -1 when unavailable Example: 1 |
data.products[].dimensionsType | string | optional | Dimension type from Keepa Example: null |
data.products[].categoryTree | string | optional | Category tree from Keepa Example: null |
data.categoryTreeId | string | optional | Category tree ID from Keepa Example: example-id |
data.rootCategory | integer | optional | Root category ID from Keepa Example: 1 |
data.isAdultProduct | boolean | optional | Whether the product is classified as adult content by Keepa Example: false |
data.isHazmat | boolean | optional | Whether the product is classified as hazardous by Keepa Example: false |
data.urlSlug | string | optional | URL slug from Keepa Example: https://example.com/image.jpg |
data.productImageUrls | array | optional | Product image URLs from Keepa Example: [] |
data.costTime | integer | optional | Execution time reported by the upstream provider. Example: null |
data.page | integer | optional | Current page returned by the upstream provider. Example: null |
data.pageSize | integer | optional | Page size returned by the upstream provider. Example: null |
data.pageItemCount | integer | optional | Item count on the current page returned by the upstream provider. Example: null |
data.totalPage | integer | optional | Total page count returned by the upstream provider. Example: null |
data.dataSnapshotMonth | string | optional | Data snapshot month returned by the upstream provider. Example: null |
Any of option 2
| Name | Type | Required | Description |
|---|---|---|---|
data | null | required | Data value used by this API operation. |
Examples
Example arguments
{
"imageUrl": "https://m.media-amazon.com/images/I/31SkgVLWSuL._SL75_.jpg",
"amazonDomain": "amazon.com",
"aggregateByKeepaData": false
}Example structuredContent
{
"data": {
"total": 1,
"totalCount": 1,
"perPage": 1,
"currentPage": 1,
"columns": [],
"costToken": 1,
"products": [],
"asin": "B072MQ5BRX",
"imageUrl": "https://example.com/image.jpg",
"asinUrl": "B072MQ5BRX",
"price": 1,
"oldPrice": 1,
"rating": 1,
"ratings": 1,
"salesRank": 1,
"salesRank30": 1,
"salesRank90": 1,
"salesRank180": 1,
"monthlySalesUnits": 1,
"monthlySalesRevenue": 1,
"monthlySalesUnits1MonthAgo~monthlySalesUnits12MonthsAgo": 1,
"reviewCount": 1,
"fbaFees": 1,
"profit": 1,
"referralFeePercentage": 1,
"primePrice": 1,
"buyBoxSellerId": "example-id",
"sellerNum": 1,
"variationNum": 1,
"parentAsin": "B072MQ5BRX",
"availableDate": "2026-01-01",
"lastUpdate": "2026-01-01",
"itemLength": 1,
"itemWidth": 1,
"itemHeight": 1,
"packageLength": 1,
"packageWidth": 1,
"packageHeight": 1,
"packageQuantity": 1,
"categoryTreeId": "example-id",
"rootCategory": 1,
"isAdultProduct": false,
"isHazmat": false,
"urlSlug": "https://example.com/image.jpg",
"productImageUrls": []
},
"code": 0,
"msg": null,
"ts": "0",
"time": "2026-01-01 00:00:00",
"cost": "-1",
"traceId": null
}