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://claw-callback.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": {
"amazonDomain": "amazon.com",
"imageUrl": "https://m.media-amazon.com/images/I/31SkgVLWSuL._SL75_.jpg",
"aggregateByKeepaData": false
}
}
}REST API equivalent
POST https://claw-callback.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 | Meaning |
|---|---|---|---|
total | integer | optional | Total rows Example: 1 |
totalCount | integer | optional | Total count Example: 1 |
perPage | integer | optional | Items per page Example: 1 |
currentPage | integer | optional | Current page Example: 1 |
type | string | optional | Rendering style Example: {} |
sourceType | string | optional | Source type Example: {} |
columns | array | optional | Column definitions used for rendering Example: [] |
costToken | integer | optional | Tokens consumed Example: 1 |
products | array | optional | Product list; see the product fields below Example: [] |
asin | string | optional | ASIN Example: B072MQ5BRX |
title | string | optional | Product title Example: {} |
imageUrl | string | optional | Image URL Example: https://example.com/image.jpg |
asinUrl | string | optional | Amazon ASIN detail URL Example: B072MQ5BRX |
price | number | optional | Current price in the marketplace currency Example: 1 |
oldPrice | number | optional | List price Example: 1 |
products[].currency | string | optional | Currency Example: {} |
rating | number | optional | Current rating from 0.0 to 5.0 Example: 1 |
ratings | integer | optional | Rating count Example: 1 |
products[].brand | string | optional | Brand Example: {} |
sourceTool | string | optional | Source tool Example: {} |
salesRank | integer | optional | Sales rank from Keepa Example: 1 |
salesRank30 | integer | optional | Average sales rank over the past 30 days from Keepa Example: 1 |
salesRank90 | integer | optional | Average sales rank over the past 90 days from Keepa Example: 1 |
salesRank180 | integer | optional | Average sales rank over the past 180 days from Keepa Example: 1 |
monthlySalesUnits | integer | optional | Monthly units sold from Keepa Example: 1 |
monthlySalesRevenue | number | optional | Monthly sales revenue from Keepa Example: 1 |
monthlySalesUnits1MonthAgo~monthlySalesUnits12MonthsAgo | integer | optional | Monthly sales from 1 through 12 months ago, from Keepa Example: 1 |
reviewCount | integer | optional | Review count from Keepa Example: 1 |
fbaFees | number | optional | FBA fulfillment fee in the marketplace currency from Keepa Example: 1 |
profit | number | optional | Profit margin percentage from Keepa; for example, 25.5 means 25.5% Example: 1 |
referralFeePercentage | number | optional | Referral fee percentage from Keepa Example: 1 |
products[].fulfillment | string | optional | Fulfillment method from Keepa: AMZ, FBA, or FBM Example: {} |
primePrice | number | optional | Prime price from Keepa Example: 1 |
buyBoxSellerId | string | optional | Buy Box seller ID from Keepa Example: example-id |
sellerNum | integer | optional | Seller count from Keepa Example: 1 |
variationNum | integer | optional | Variation count from Keepa Example: 1 |
parentAsin | string | optional | Parent ASIN from Keepa Example: B072MQ5BRX |
availableDate | string | optional | Listing date from Keepa in yyyy-MM-dd HH:mm:ss format Example: 2026-01-01 |
lastUpdate | string | optional | Last update time from Keepa in yyyy-MM-dd HH:mm:ss format Example: 2026-01-01 |
products[].manufacturer | string | optional | Manufacturer from Keepa Example: {} |
products[].model | string | optional | Model from Keepa Example: {} |
products[].color | string | optional | Color from Keepa Example: {} |
products[].material | string | optional | Primary materials used in the product construction, from Keepa Example: {} |
products[].weight | string | optional | Weight in grams from Keepa Example: {} |
products[].dimension | string | optional | Dimensions from Keepa Example: {} |
itemLength | integer | optional | Product length in millimeters from Keepa; 0 or -1 when unavailable Example: 1 |
itemWidth | integer | optional | Product width in millimeters from Keepa; 0 or -1 when unavailable Example: 1 |
itemHeight | integer | optional | Product height in millimeters from Keepa; 0 or -1 when unavailable Example: 1 |
packageLength | integer | optional | Package length in millimeters from Keepa Example: 1 |
packageWidth | integer | optional | Package width in millimeters from Keepa Example: 1 |
packageHeight | integer | optional | Package height in millimeters from Keepa Example: 1 |
products[].packageWeight | string | optional | Package weight in grams from Keepa Example: {} |
products[].packageDimensions | string | optional | Package dimensions from Keepa Example: {} |
packageQuantity | integer | optional | Number of items in the package from Keepa; 0 or -1 when unavailable Example: 1 |
products[].dimensionsType | string | optional | Dimension type from Keepa Example: {} |
products[].categoryTree | string | optional | Category tree from Keepa Example: {} |
categoryTreeId | string | optional | Category tree ID from Keepa Example: example-id |
rootCategory | integer | optional | Root category ID from Keepa Example: 1 |
isAdultProduct | boolean | optional | Whether the product is classified as adult content by Keepa Example: false |
isHazmat | boolean | optional | Whether the product is classified as hazardous by Keepa Example: false |
urlSlug | string | optional | URL slug from Keepa Example: https://example.com/image.jpg |
productImageUrls | array | optional | Product image URLs from Keepa Example: [] |
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: {} |
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
{
"amazonDomain": "amazon.com",
"imageUrl": "https://m.media-amazon.com/images/I/31SkgVLWSuL._SL75_.jpg",
"aggregateByKeepaData": false
}Example structuredContent
{
"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": []
}