Skip to content
verify mcp Beta VerifyMCP is currently in beta. If you notice any issues, email [email protected] and we’ll put it right.

com.webotee/amazon-product-research-mcp

REMOTE · APP.WEBOTEE.COM · SCANNED AUG 3

Amazon brand, seller, niche & buy-box intelligence inside your own Claude or ChatGPT.

Available components

+9 this week 73 Trust /100
Trust breakdown (6 categories)

How this component scores in each security and reliability category. Every signal is checked automatically against the live server, and we only credit what we can confirm. How we score →

Endpoint Security94
Transport & Reachability100
Schema Quality & AI Usability53
  • AI-judged instruction clarity (good).Pass
  • Context-footprint check failed: tool/resource definitions use about 22707 tokens (~298/item across 76 items; 76 tools + 0 resources), over budget; trim descriptions and params. See how to fix → Fail
  • Usage-examples check failed: none of the tools include examples. See how to fix → Fail
Stability & Change Management27
  • Stability observed for 8 of 30 days with no destabilising changes; credit accrues until the full window elapses.Partial
Tool Coverage80
  • 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
  • 40% of tool parameters carry a description.Partial
Capabilities60
  • Spec-recency check failed: implements MCP spec 2025-06-18; the latest is 2026-07-28. See how to fix → Fail
Install

Add this component to your MCP client. Where a client-specific snippet is available, pick your client below and copy it straight into your config; otherwise use the connection detail shown.

remote · app.webotee.com

# add to Claude Code
claude mcp add --transport http com-webotee-amazon-product-research-mcp https://app.webotee.com/mcp
# ~/.codex/config.toml
[mcp_servers.com-webotee-amazon-product-research-mcp]
url = "https://app.webotee.com/mcp"
// opencode.json
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "com-webotee-amazon-product-research-mcp": {
      "type": "remote",
      "url": "https://app.webotee.com/mcp",
      "enabled": true
    }
  }
}
# add to OpenClaw
openclaw mcp add com-webotee-amazon-product-research-mcp --url https://app.webotee.com/mcp --transport streamable-http
# ~/.hermes/config.yaml
mcp_servers:
  com-webotee-amazon-product-research-mcp:
    url: "https://app.webotee.com/mcp"
// mcp.json
{
  "mcpServers": {
    "com-webotee-amazon-product-research-mcp": {
      "type": "http",
      "url": "https://app.webotee.com/mcp"
    }
  }
}

The mcpServers block is a cross-client convention. Remote transports vary, so check your client's docs.

Changelog

Every change we have recorded for this component, newest first. Security-relevant changes are always shown. ▲ marks a change for the better, ▼ a change for the worse; unmarked changes are neutral.

  • 2 Aug 26 +1

    No change was recorded against any check on this day. Stability & Change Management went from 20 to 23. That category is still filling its 30-day observation window: 6 days of observed history at the previous scan, 7 at this one. The score rises as the window fills, whether or not the server changes.

  • 31 Jul 26 +8
    • We updated how we score, so this day's move reflects our rubric, not a change to the server See what changed → functional
  • 30 Jul 26 −1
    • We updated how we score, so this day's move reflects our rubric, not a change to the server See what changed → functional
  • 29 Jul 26 +1

    No change was recorded against any check on this day. Stability & Change Management went from 7 to 10. That category is still filling its 30-day observation window: 2 days of observed history at the previous scan, 3 at this one. The score rises as the window fills, whether or not the server changes.

  • 27 Jul 26 +1
    • We updated how we score, so this day's move reflects our rubric, not a change to the server See what changed → functional
  • 26 Jul 26 63

    First indexed and scored.

Diagnostics

Diagnostic detail from the automated scan of this channel: what the scanner observed at each step, so you can see exactly where a check passed or failed. It is informational only and never changes the trust score.

Captured 3 Aug 2026 · Probed https://app.webotee.com/mcp

TLS valid

Negotiated TLS 1.3 with TLS_AES_128_GCM_SHA256 .

Subject Issuer Valid from Valid until Key Signature Serial
CN=app.webotee.com CN=YE1,O=Let's Encrypt,C=US 24 Jul 2026 22 Oct 2026 ECDSA 256 ECDSA-SHA384 550890efae4b73c651bcd2abf2d4d0e823f
SANs: app.webotee.com
CN=YE1,O=Let's Encrypt,C=US (CA) CN=Root YE,O=ISRG,C=US 3 Sept 2025 2 Sept 2028 ECDSA 384 ECDSA-SHA384 5ddd70dd31f801c85c186a7a04b80afe
CN=Root YE,O=ISRG,C=US (CA) CN=ISRG Root X2,O=Internet Security Research Group,C=US 13 May 2026 2 Sept 2032 ECDSA 384 ECDSA-SHA384 872165fc34b6e5fba8add5b3705fb53a
CN=ISRG Root X2,O=Internet Security Research Group,C=US (CA) CN=ISRG Root X1,O=Internet Security Research Group,C=US 13 May 2026 2 Sept 2032 ECDSA 384 SHA256-RSA 6c8f1dc727c7117f7baf853ac980f9cd
DNSSEC insecure

Validation of app.webotee.com. Not signed

Zone DS Keys Algorithms Outcome
. trust_anchor 20326, 38696 8, 8 Verified
com. present 19718 13 Verified
webotee.com. absent Unsigned (proven) parent-signed NSEC/NSEC3 proves an unsigned delegation
Authentication Enforced and verified

The endpoint asked for a token and published valid RFC 9728 metadata describing how to get one.

Result Enforced and verified
Enforced On tool calls
HTTP status 200

WWW-Authenticate challenge Bearer resource_metadata="https://app.webotee.com/.well-known/oauth-protected-resource"

Bearer resource_metadata="https://app.webotee.com/.well-known/oauth-protected-resource"
Header Value
strict-transport-security max-age=15552000
x-content-type-options nosniff
x-frame-options SAMEORIGIN
referrer-policy strict-origin-when-cross-origin

Protected resource metadata

Document https://app.webotee.com/.well-known/oauth-protected-resource
Retrieved Yes
Resource https://app.webotee.com/mcp
Authorisation server https://app.webotee.com
Transports 2 probes
Transport URL Outcome Status Location
streamable-http https://app.webotee.com/mcp Verified 200
http (plaintext) http://app.webotee.com/mcp HTTPS enforced 301 https://app.webotee.com/mcp
MCP tools — 76 exposed · ~22,514 tokens

The tools this component advertises to a client, with an estimated token cost for each. Expand a tool to see its parameters and schema. The per-tool counts are indicative and are not scored directly; the schema's total context footprint is one signal in Schema Quality & AI Usability.

Tool Tokens
map_violations_today ~290

Show active MAP (Minimum Advertised Price) violations for products in the workspace. Use when the user asks 'MAP violations', 'who is selling below MAP', 'price violations today', 'are there any MAP breaches', or any MAP-enforcement question.

NameTypeReqDescription
brandstringFilter to a specific brand. Omit for all workspace brands.
brand_containsstringSubstring match on brand (use `brand` for an exact match).
first_seen_fromstringYYYY-MM-DD.
first_seen_tostring
last_seen_fromstring
last_seen_tostring
limitinteger
max_map_floor_usdnumber
max_observed_price_usdnumber
max_violation_pctnumberMaximum violation percentage below MAP.
min_map_floor_usdnumber
min_observed_price_usdnumber
min_violation_pctnumberMinimum violation percentage below MAP (default 0, meaning any violation).
product_title_containsstring
retailer_domainstringExact retailer domain (case-insensitive).
retailer_domain_containsstring
retailer_namestringExact retailer name (case-insensitive).
retailer_name_containsstring

No output schema declared.

No examples provided.

my_competitors ~169

Who's competing with the seller on their OWN products. Pass an ASIN from your catalog to see the full competitor list for that listing (who wins the buy-box, FBA/FBM, observed price, how long they've been on it) plus your own buy-box / undercut status. Omit the ASIN to get your most-contested products (most competing sellers / where you're being undercut). Requires a connected store (Starter+). Use for 'who am I competing with', 'am I losing the buy-box', 'who else sells B0...', 'where am I under pressure'.

NameTypeReqDescription
asinstringOptional — a specific ASIN from your catalog.
marketplace_idinteger1 = Amazon UK, 2 = Amazon US (default)

No output schema declared.

No examples provided.

my_opportunities ~111

What to source NEXT, adjacent to what the seller already sells. Seeds Webotee's undercompeted-brand and underserved-niche engines from the seller's OWN connected catalog (their dominant brands and categories), excluding brands they already carry. Requires a connected store (Starter+). Use for 'what should I source next', 'expand my catalog', 'adjacent opportunities', 'what else could I sell'.

NameTypeReqDescription
marketplace_idinteger1 = Amazon UK, 2 = Amazon US (default)

No output schema declared.

No examples provided.

my_products ~197

The seller's OWN connected Amazon catalog fused with Webotee market intelligence. Each product shows EXACT account data (your price, your inventory, FBA/FBM, listing status) alongside OBSERVED/ESTIMATED market data (sourcing score, the observed market buy-box price, how many sellers are on the listing, estimated 30-day units, cross-marketplace spread) and a price_vs_market read (below_market / at_market / above_market). Requires a connected store (Starter+). Use when the seller asks about their own products, 'how am I priced vs the market', 'which of my products are under pressure', or 'show my catalog'.

NameTypeReqDescription
brandstringOptional — only products of this brand.
marketplace_idinteger1 = Amazon UK, 2 = Amazon US (default)
sortstringOrdering: score (default), undercut, price, inventory.

No output schema declared.

No examples provided.

my_store ~126

Store-level summary of the seller's connected Amazon catalog: number of products tracked, distinct brands, FBA vs FBM split, total on-hand inventory units (EXACT, from the account), average Webotee sourcing score, how many products are currently undercut, and how many have a cross-marketplace (Walmart) opportunity. Requires a connected store (Starter+). Use for 'how is my store doing', 'summarise my catalog', or a dashboard overview.

NameTypeReqDescription
marketplace_idinteger1 = Amazon UK, 2 = Amazon US (default)

No output schema declared.

No examples provided.

operator_brands_by_competition ~274

Given one or more operator (seller) names, return the brands they carry ranked by seller competition level. Use when the user asks 'which brands sold by these operators have the least competition', 'out of these operators, show me brands with fewest sellers', 'low-competition brands for operator X', or any follow-up that chains operator names to brand-level competition metrics.

NameTypeReqDescription
brandstringExact brand (case-insensitive).
brand_containsstring
limitinteger
marketplace_idinteger1 = Amazon UK, 2 = Amazon US (default)
max_asin_countnumber
max_competitor_countnumber
max_observed_buybox_days_3mnumber
max_operator_fba_share_pctnumber
min_asin_countnumber
min_competitor_countnumber
min_observed_buybox_days_3mnumber
min_operator_fba_share_pctnumber
operator_namesarrayyesList of seller/operator names to look up.
sortstringSort by competitor count: 'asc' (least competition first, default) or 'desc'.

No output schema declared.

No examples provided.

operator_buybox_losses ~490

For ONE operator (seller), find the ASINs where it's losing the buy-box — it carries the listing but holds less than `max_buybox_share_pct` of the buy-box — ranked by estimated 30-day revenue at risk. Each leak returns who's winning the box, the operator's vs the winner's sanitized price and the gap, how many sellers are on the listing, a `situation` (price_gap | tied_price | amazon_in_box | reseller_swarm), a `suggested_action` (reprice_to_win | enable_fba | defend_match_only | evaluate_or_exit), and a `suggested_target_price` when the box is winnable on price. Totals include the recoverable price-gap-only revenue. Use when the user asks 'where is seller X losing the buy-box', 'X's buy-box leaks', 'which ASINs should X reprice', 'where is X leaving money on the table', or 'what's X's revenue at risk'. Sortable by revenue-at-risk (default), price gap, buy-box share, or listing revenue.

NameTypeReqDescription
exclude_amazon_in_boxbooleanDrop ASINs where Amazon holds the box (you can't win those).
fulfillment_instringComma-separated operator fulfillment to keep (FBA, FBM).
limitintegerLeaks to return (default 25, max 100). This tool pages.
marketplace_idinteger1 = Amazon UK, 2 = Amazon US (default).
max_buybox_share_pctnumberOnly ASINs where the operator holds LESS than this share of the buy-box (0-1; default 0.75 — i.e. it's not dominating).
min_est_revenue_30dnumberOnly ASINs with estimated 30-day listing revenue >= this.
min_pricenumberOnly ASINs whose listing price >= this (skip pennies).
operator_namestringyesSeller/operator name.
situation_instringComma-separated situations to keep (price_gap, tied_price, amazon_in_box, reseller_swarm).
sortstringSort the leaks: revenue_at_risk (default), price_gap_pct (biggest recoverable gap), buybox_share (lowest first), or listing_revenue.

No output schema declared.

No examples provided.

operator_category_dominance ~197

Show which product categories an operator dominates. Returns categories ranked by the operator's brand count and observed buybox days in each. Use when the user asks 'what categories does this seller focus on', 'operator category breakdown', 'where does Amazon Warehouse dominate', or any category-scoped operator question.

NameTypeReqDescription
category_namestringExact category name (case-insensitive).
category_name_containsstring
limitinteger
marketplace_idinteger1 = Amazon UK, 2 = Amazon US (default)
max_brand_countnumber
max_total_asinsnumber
max_total_observed_buybox_daysnumber
min_brand_countnumber
min_total_asinsnumber
min_total_observed_buybox_daysnumber
operator_namestringyesSeller/operator name.

No output schema declared.

No examples provided.

operator_classifier ~133

Label what kind of operator a seller is — amazon, brand-direct, likely-authorized-retailer, arbitrage, or reseller — from our cross-brand operator signals (how many brands they span, their fulfilment mix, their primary brand). Use when the user asks 'what kind of seller is this', 'is this an authorized retailer or an arbitrage seller', 'classify this operator'. Heuristic label, not a legal determination. Amazon US/UK.

NameTypeReqDescription
marketplace_idinteger1 = Amazon UK, 2 = Amazon US (default)
operator_namestringyesSeller/operator name.

No output schema declared.

No examples provided.

operator_compare ~467

ASIN-level buy-box head-to-head between two operators (sellers). For the ASINs BOTH carry (contested), returns who holds the buy-box (winner), each operator's buy-box share, their sanitized average prices and the price gap, how many OTHER sellers are on the listing, whether Amazon holds the box, and a `situation` tag (amazon_in_box | reseller_swarm | tied_price | price_gap) — plus operator_a's estimated 30-day revenue-at-risk. Also returns each side's WHITESPACE: high-revenue ASINs that operator wins which the OTHER doesn't carry (expansion targets). Use when the user asks 'compare seller A vs seller B', 'where do these two sellers overlap / compete', 'who wins the buy-box between them', 'show me the head-to-head', or 'what does A sell that B doesn't'. Sortable by revenue-at-risk (default), price gap, or share gap.

NameTypeReqDescription
brandstringOptional — scope the comparison to a single brand's ASINs (catalog sizes, contested, and whitespace are all limited to that brand). Omit for all brands.
contested_onlybooleanIf true, skip the whitespace sections (only the head-to-head contested list).
include_whitespacebooleanInclude each side's whitespace ASINs (default true).
limitintegerContested ASINs to return (default 25, max 100). This tool pages.
marketplace_idinteger1 = Amazon UK, 2 = Amazon US (default).
min_est_revenue_30dnumberOnly contested ASINs with estimated 30-day listing revenue >= this.
operator_astringyesFirst operator/seller name (the focal seller — revenue-at-risk + situation are from A's view).
operator_bstringyesSecond operator/seller name.
sortstringSort the contested list: revenue_at_risk (operator_a's 30d revenue at risk, default), price_gap (abs A-vs-B price gap), or share_gap (abs buy-box share gap).
whitespace_forstringWhich side's whitespace to compute (default both).

No output schema declared.

No examples provided.

operator_concentration ~313

Operator concentration (HHI) across a set of ASINs or a brand's catalog — reveals when the same operator quietly controls many of the 'independent' listings. Returns the HHI, a concentration label, and the top operators with how many listings each dominates. Use for private-label fragmentation checks: 'how concentrated is this niche', 'who controls this brand's listings', 'is one operator running most of these'. Amazon US/UK. Optional filters (all default to no filter): min/max hhi (gates the whole analysis by its concentration index); on the top_operators list — operator (exact, case-insensitive) + operator_contains, min/max share_pct, min/max listings_controlled.

NameTypeReqDescription
asinsarrayASIN set to analyze.
brandstringOr a brand whose catalog to analyze.
limitinteger
marketplace_idinteger1 = Amazon UK, 2 = Amazon US (default)
max_hhinumber
max_listings_controllednumber
max_share_pctnumber
min_hhinumberOnly return the analysis if its HHI >= this (else empty top_operators).
min_listings_controllednumber
min_share_pctnumber
operatorstringKeep only this operator (exact, case-insensitive) in top_operators.
operator_containsstring

No output schema declared.

No examples provided.

operator_lost_brands ~193

Show brands an operator recently stopped selling (churn signal). Use when the user asks 'what brands did this seller drop', 'operator churn', 'brands lost by X', or any question about an operator shrinking their catalog.

NameTypeReqDescription
brandstringExact brand (case-insensitive).
brand_containsstring
first_seen_fromstring
first_seen_tostring
last_seen_week_fromstringYYYY-MM-DD lower bound on last_seen_week.
last_seen_week_tostring
limitinteger
marketplace_idinteger1 = Amazon UK, 2 = Amazon US (default)
operator_namestringyesSeller/operator name.
since_daysintegerWindow to compare (default 30, max 180). Brands present before but absent in the last since_days.

No output schema declared.

No examples provided.

operator_new_brands ~170

Show brands an operator recently started selling. Use when the user asks 'what new brands did this seller pick up', 'operator new brands', 'what is Amazon Warehouse selling now that it wasn't before', or any question about an operator expanding their catalog.

NameTypeReqDescription
brandstringExact brand (case-insensitive).
brand_containsstring
first_seen_fromstringYYYY-MM-DD lower bound on first_seen.
first_seen_tostring
limitinteger
marketplace_idinteger1 = Amazon UK, 2 = Amazon US (default)
operator_namestringyesSeller/operator name.
since_daysintegerHow far back to look for new brands (default 30, max 180).

No output schema declared.

No examples provided.

operator_new_on_brand ~432

Operators newly OBSERVED on a brand in a recent window — counted at BRAND level: a seller's FIRST observation anywhere across the brand's ASINs falls in the window. This is coverage-robust (a long-present seller was almost certainly seen on some ASIN earlier, so they correctly drop out) — a trustworthy directional 'new on the brand' count, not the inflated per-ASIN number. Still first-OBSERVED, not provably first-to-market. Returns each operator with first_observed, how many of the brand's ASINs we've seen them on, and whether still active. Use for 'who's new on <brand>', 'who's newly showing up on my brand', 'recent sellers on <brand>'. Amazon US/UK. since_days already bounds first_observed below; optional filters (all default to no filter): operator (exact, case-insensitive) + operator_contains, first_observed_from/_to, min/max n_asins_on_brand, min/max total_days_seen, min/max observed_buybox_days, still_active (true/false).

NameTypeReqDescription
brandstringyesThe brand to watch.
first_observed_fromstringYYYY-MM-DD lower bound on first_observed.
first_observed_tostring
limitinteger
marketplace_idinteger1 = Amazon UK, 2 = Amazon US (default)
max_n_asins_on_brandnumber
max_observed_buybox_daysnumber
max_total_days_seennumber
min_n_asins_on_brandnumber
min_observed_buybox_daysnumber
min_total_days_seennumber
operatorstringExact operator/seller name (case-insensitive).
operator_containsstring
since_daysintegerWindow in days (default 30, max 180).
still_activebooleanKeep only operators last seen within 7 days (true) or not (false).

No output schema declared.

No examples provided.

operator_resells_what ~491

The arbitrage sourcing feed: given an ASIN (or a seller/operator name), find the OTHER ASINs the operators on that listing also resell, ranked by sourcing fit (our composite sourcing score) then estimated 30-day sales. De-duped against the ASINs the user already tracks, so it surfaces NEW candidates. Use when the user says 'what else does this seller carry', 'find more like this from the same operators', 'arbitrage leads from this ASIN's sellers'. Each candidate ASIN also carries product brand, title, and price (or price range) plus its fulfillment (FBA/FBM/AMZ + amz/fba pct). Amazon US/UK. Optional filters (all default to no filter): min/max sourcing_score, est_units_30d, buybox_avg_price; resold_by_contains; the shared product/fulfillment block (product_brand, product_title_contains, min/max_price, fulfillment_in, amz/fba pct).

NameTypeReqDescription
asinstringAn ASIN whose operators to expand from.
fulfillment_instringComma-separated FBA/FBM/AMZ to keep.
limitinteger
marketplace_idinteger1 = Amazon UK, 2 = Amazon US (default)
max_buybox_avg_pricenumber
max_est_units_30dnumber
max_fulfillment_amz_dom_pctnumber
max_fulfillment_fba_pen_pctnumber
max_pricenumber
max_sourcing_scorenumber
min_buybox_avg_pricenumber
min_est_units_30dnumber
min_fulfillment_amz_dom_pctnumber
min_fulfillment_fba_pen_pctnumber
min_pricenumber
min_sourcing_scorenumberOnly candidates with sourcing score >= this.
operator_namestringOr a seller/operator name directly.
product_brandstringExact product brand (case-insensitive).
product_brand_containsstring
product_title_containsstring
resold_by_containsstringKeep candidates resold by a seller whose name contains this.

No output schema declared.

No examples provided.

operator_top_asins ~658

Show the ASINs an operator wins the buybox on most often, ranked by ESTIMATED 30-day sales by default. For each ASIN it returns the operator's estimated units sold and revenue in the last 30 days (est_units_30d, est_revenue_30d — the product's sales estimate weighted by the operator's buy-box share) plus the operator's BUYBOX SHARE (percent of observed days it held the buybox; normalized, not raw days). Sortable by est_sales (default), observed buybox days won, price, or days seen. Use when the user asks 'what ASINs does this seller win on', 'top ASINs for operator X', 'what does this seller sell the most of', 'best products for this seller', or any ASIN-level operator drill-down. Each ASIN also carries product brand, title, and price (or price range) plus its fulfillment (FBA/FBM/AMZ + amz/fba pct).

NameTypeReqDescription
asinstringExact ASIN match.
asin_containsstring
est_basis_instringComma-separated sales-estimate sources to keep.
first_seen_fromstringYYYY-MM-DD.
first_seen_tostring
fulfillment_instringComma-separated FBA/FBM/AMZ to keep.
last_seen_fromstring
last_seen_tostring
limitintegerNumber of ASINs to return (default 10, max 50).
marketplace_idinteger1 = Amazon UK, 2 = Amazon US (default)
max_buybox_avg_pricenumber
max_buybox_share_pctnumber
max_days_seennumber
max_est_revenue_30dnumber
max_est_units_30dnumber
max_fulfillment_amz_dom_pctnumber
max_fulfillment_fba_pen_pctnumber
max_observed_buybox_daysnumber
max_pricenumber
min_buybox_avg_pricenumber
min_buybox_share_pctnumberOnly ASINs where the operator's buybox share >= this.
min_days_seennumber
min_est_revenue_30dnumber
min_est_units_30dnumber
min_fulfillment_amz_dom_pctnumber
min_fulfillment_fba_pen_pctnumber
min_observed_buybox_daysnumber
min_pricenumber
operator_namestringyesSeller/operator name.
product_brandstringExact product brand (case-insensitive).
product_brand_containsstring
product_title_containsstring
sortstringSort order: est_sales (estimated 30-day revenue, default), buybox_days (observed buybox days won), price, or days_seen.

No output schema declared.

No examples provided.

operator_top_brands ~364

Show the brands an operator sells the most of, ranked by ESTIMATED 30-day sales by default. For each brand the operator carries it returns the operator's estimated units sold and revenue in the last 30 days (est_units_30d, est_revenue_30d — the estimated sales of the ASINs the operator wins for that brand, weighted by its buy-box share), the number of the brand's ASINs the operator wins, and observed buybox days. Use when the user asks 'what brands does this seller sell the most of', 'top brands for operator X', 'which brands make this seller the most money', or any brand-level operator drill-down by sales. For brand competition (fewest sellers) instead of sales, use operator_brands_by_competition.

NameTypeReqDescription
brandstringExact brand (case-insensitive).
brand_containsstring
limitinteger
marketplace_idinteger1 = Amazon UK, 2 = Amazon US (default)
max_asin_countnumber
max_est_revenue_30dnumber
max_est_units_30dnumber
max_observed_buybox_daysnumber
min_asin_countnumber
min_est_revenue_30dnumber
min_est_units_30dnumber
min_observed_buybox_daysnumber
operator_namestringyesSeller/operator name.
sortstringSort order: est_sales (estimated 30-day revenue, default), est_units, buybox_days (observed buybox days), or asin_count.

No output schema declared.

No examples provided.

operator_xmarket_presence ~90

Check whether an operator sells on Amazon US, Amazon UK, and/or Walmart. Returns per-marketplace brand count, ASIN count, and observed buybox days. Use when the user asks 'does this seller sell on Walmart too', 'cross-marketplace presence', 'is this operator on Amazon UK', or any multi-marketplace operator question.

NameTypeReqDescription
operator_namestringyesSeller/operator name.

No output schema declared.

No examples provided.

playbook_create ~234

Save a reusable per-model research workflow (a 'playbook') the user can re-run or schedule. Provide a template_key (one of: brand_watch, new_brand_radar, replenishment_watch, arbitrage_feed, defend_my_niche, find_my_next_niche, brand_defense_daily, expansion_radar, dropship_watch, spread_hunter, map_sweep, operator_network_expose, gating_risk_guardian) with its scope, OR custom steps. scope holds the inputs every step shares (e.g. {"brand":"Nike"} or an ASIN). Use when the user says 'save this as a weekly check', 'make a playbook for ...', 'automate this research'.

NameTypeReqDescription
namestringyesThe playbook's label.
schedulestringRun cadence (default = template's or manual).
scopeobjectShared inputs for the steps, e.g. {"brand":"Nike"}.
stepsarrayCustom ordered [{tool,args}] (instead of a template).
template_keystringBuilt-in template to seed from.

No output schema declared.

No examples provided.

playbook_list ~148

List the workspace's saved playbooks (name, schedule, last run) and the built-in templates available. Use when the user asks 'what playbooks do I have', 'show my saved workflows', 'what automations are set up'.

NameTypeReqDescription
activebooleanOnly active (true) or only paused (false) playbooks.
last_run_at_fromstringYYYY-MM-DD; only playbooks last run on/after this.
last_run_at_tostring
schedule_instringComma-separated cadences to keep (manual/daily/weekly).
template_key_instringComma-separated template keys to keep.

No output schema declared.

No examples provided.

playbook_run_now ~63

Run a saved playbook right now and return its digest (also saved to the in-app inbox). Use when the user says 'run my <name> playbook', 'check my brand watch now', 'run that workflow'.

NameTypeReqDescription
namestringyes

No output schema declared.

No examples provided.

playbook_schedule ~66

Set how often a saved playbook runs automatically (manual, daily, or weekly). Use when the user says 'run this weekly', 'schedule my playbook daily', 'stop the automatic runs' (manual).

NameTypeReqDescription
namestringyes
schedulestringyes

No output schema declared.

No examples provided.

risk_assessment ~413

Risk + protection assessment for an ASIN or brand. Returns composite risk score (0-100), recent MAP violation events (≤10, each with the offending ASIN's product brand, title, price or price range and fulfillment FBA/FBM/Amazon), unauthorized seller list (≤10), and 1-3 recommended actions. Use for 'flag risk events on my brand' or 'is this ASIN risky?' style prompts.

NameTypeReqDescription
asinstring
brandstring
buybox_sellerstringExact offending buy-box seller (case-insensitive).
buybox_seller_containsstring
daysintegerLookback window for MAP events. Default 30.
event_date_fromstringYYYY-MM-DD.
event_date_tostring
fulfillment_instringComma-separated FBA/FBM/AMZ to keep.
kind_instringComma-separated flagged-event kinds to keep (e.g. map_violations,amazon_dominated).
marketplace_idinteger1 = Amazon UK, 2 = Amazon US (default)
max_countnumber
max_fulfillment_amz_dom_pctnumber
max_fulfillment_fba_pen_pctnumber
max_listed_pricenumber
max_pricenumber
min_countnumber
min_fulfillment_amz_dom_pctnumber
min_fulfillment_fba_pen_pctnumber
min_listed_pricenumber
min_pricenumber
product_brandstringExact product brand (case-insensitive).
product_brand_containsstring
product_title_containsstring
severity_instringComma-separated severities to keep (high/medium/low).

No output schema declared.

No examples provided.

search_products ~382

Free-text keyword search over Amazon product titles + descriptions. Use when the user names a PRODUCT TYPE or keywords (e.g. 'stainless steel water bottle', 'cat litter box', 'magnetic phone mount') rather than a specific brand, category, or ASIN. Returns the top matching products ranked by relevance with brand, price, 30-day demand, fulfillment (FBA/Amazon/FBM) and rating. Optional filters narrow the result by any returned field: product_brand, min/max_price, fulfillment_in (FBA/FBM/AMZ), min/max demand, and min/max rating.

NameTypeReqDescription
fulfillment_instringComma-separated FBA/FBM/AMZ to keep.
keywordsstringyesFree-text product keywords, e.g. 'stainless steel water bottle'.
marketplace_idinteger1 = Amazon UK, 2 = Amazon US (default). Amazon only.
max_demand_revenue_30dnumber
max_demand_units_30dnumber
max_fulfillment_amz_dom_pctnumber
max_fulfillment_fba_pen_pctnumber
max_pricenumber
max_ratingnumber
max_rating_countnumber
min_demand_revenue_30dnumber
min_demand_units_30dnumber
min_fulfillment_amz_dom_pctnumber
min_fulfillment_fba_pen_pctnumber
min_pricenumber
min_ratingnumber
min_rating_countnumber
product_brandstringExact product brand (case-insensitive).
product_brand_containsstring

No output schema declared.

No examples provided.

set_cost_floor ~170

Record the user's cost basis (landed unit cost) for an ASIN so later checks can flag when the buy box drops below their cost and compute true net spread; the saved/cleared confirmation also echoes the ASIN's product brand, title and price (or price range) and its fulfillment (FBA/FBM/AMZ). Use when the user says 'my cost on B0... is $12', 'set my cost basis', 'I pay $X for this'. One ASIN per call; pass cost 0 to clear.

NameTypeReqDescription
asinstringyesThe 10-character ASIN.
cost_floornumberyesYour landed unit cost (marketplace currency). 0 clears it.
marketplace_idintegerMarketplace (2 = Amazon US).

No output schema declared.

No examples provided.

shopping_search ~559

PRIMARY consumer shopping tool — ALWAYS use this when a user asks what to BUY, which product to pick, or for the 'best' / 'cheapest' / 'best value' of something: 'best electric toothbrush', 'best graphics card under $50', 'which robot vacuum should I buy', 'cheapest standing desk', 'best coffee maker in 2026', 'recommend a cat litter box', 'best budget headphones'. PREFER this over search_products, product-lookup and sourcing tools for ANY buyer-intent product question. Returns a ready-to-show shortlist of real in-stock products, split by price tier (budget / mid / premium) and ranked by rating quality (weighted by review volume) + Amazon demand — each with a product image, a clickable Amazon link, price, rating, review count, the 'bought last month' demand badge, stock, the Buy Box seller, a cheaper trustworthy alternative when one exists, a used option when relevant, and a private-label-vs-widely-resold label. Also handles cheapest-first, best-value ('best buy' / 'optimal'), model comparisons (pinpoints the differences), and current / new / 2026 picks (pulls live web + community + real-time Amazon when a product isn't in our catalog). Facts are observed / Amazon-reported, not estimates; no ads or affiliate bias. (Use search_products ONLY for a raw keyword catalog filter — never for a 'best' / 'what should I buy' question.)

NameTypeReqDescription
attributesarrayTokens that MUST appear in the product title, e.g. ['3.5mm'] or ['5090'].
category_hintsarrayCategory words the right product lives in, e.g. ['instrument cables','audio cables'].
exclude_termsarrayWords indicating the WRONG product, e.g. ['ethernet','usb'] for an audio patch cable.
keywordsstringCore product keywords to search (product noun + essential attributes), no 'best'/brand.
marketplace_idinteger1 = Amazon UK, 2 = Amazon US (default), 3 = Walmart US, 4 = Amazon CA, 5 = Amazon AU, 6 = Amazon DE.
max_pricenumberOptional price ceiling.
min_pricenumberOptional price floor.
querystringyesWhat to buy, e.g. 'best electric toothbrush for sensitive gums'.
sortstring'best' = rating-first per class/tier (default); 'cheapest' = lowest-price-first; 'value' = best quality-per-dollar ('best buy'/'optimal'). Auto-detected from the query.

No output schema declared.

No examples provided.

top_expanding_operators ~307

Find sellers (operators) expanding into the most NEW brands in a recent window. Use when the user asks 'operators expanding into new brands', 'sellers growing fastest by brand count', 'who is moving into new brands this month', or any cross-cutting operator question without a specific seller named.

NameTypeReqDescription
limitinteger
marketplace_idinteger1 = Amazon UK, 2 = Amazon US (default)
max_avg_ratingnumber
max_avg_rating_countnumber
max_new_brands_in_windownumber
max_operator_fba_share_pctnumber
max_total_asinsnumber
max_total_brandsnumber
max_total_observed_buybox_daysnumber
min_avg_ratingnumber
min_avg_rating_countnumber
min_new_brandsintegerMinimum new-brand count to surface (default 3).
min_operator_fba_share_pctnumber
min_total_asinsnumber
min_total_brandsnumber
min_total_observed_buybox_daysnumber
seller_namestringExact seller/operator name (case-insensitive).
seller_name_containsstring
window_daysintegerDays back for 'new' brands (default 30, max 90).

No output schema declared.

No examples provided.

top_sourcing_picks ~599

Find top sourcing-pick ASINs across the entire catalog with optional filters: max retail price, min retail price, category, brand, exclude gated, exclude Amazon private label. Use when the user asks 'top sourcing picks', 'best ASINs to source', 'ASINs under $X with rising demand', 'fastest growing ASINs', or any cross-cutting question where they have NOT named a specific entity yet. Each pick carries product brand, title and price (or price range) plus fulfillment (FBA/FBM/Amazon) alongside the sourcing scores.

NameTypeReqDescription
asinstringExact ASIN match.
asin_containsstring
brandstring
categorystring
exclude_amazon_plboolean
exclude_gatedboolean
fulfillment_instringComma-separated FBA/FBM/AMZ to keep.
limitintegerNumber of products to return (default 10, max 50).
marketplace_idinteger1 = Amazon UK, 2 = Amazon US (default)
max_composite_scorenumber
max_fulfillment_amz_dom_pctnumber
max_fulfillment_fba_pen_pctnumber
max_gating_risk_scorenumber
max_margin_signalnumber
max_number_of_ratingsnumber
max_ratingnumber
max_retail_pricenumber
max_sold_30d_revenuenumber
min_composite_scorenumber
min_fulfillment_amz_dom_pctnumber
min_fulfillment_fba_pen_pctnumber
min_gating_risk_scorenumber
min_margin_signalnumber
min_number_of_ratingsnumber
min_ratingnumber
min_retail_pricenumber
min_sold_30d_revenuenumber
min_velocity_scoreintegerMinimum velocity sub-score (0-100). >=90 = 'rising demand' (top ~3%%), >=70 = 'moderate growth' (top ~10%%). >=50 covers 97%% of ASINs and is not a meaningful filter.
product_title_containsstringKeyword title search across the WHOLE catalog (FULLTEXT, token-AND any order — may also match the product description), ranked by sourcing score. Broader recall than a literal substring: 'ceiling fan…
scopestringtracked = only ASINs from brands on the user's watchlist; universe = all. Default universe.

No output schema declared.

No examples provided.

top_velocity_brands ~457

Find top brands by 90-day unit velocity (brand_velocity_90d_units_day). Optional filters: scope (tracked = user's watchlist, universe = all), category, minimum velocity, exclude Amazon private label, exclude gated. Use when the user asks 'fastest selling brands', 'top velocity brands', 'brands I track by velocity', 'what brands move the most units?', or 'best selling brands in [category]'. When the user says 'my brands' or 'brands I track', set scope=tracked.

NameTypeReqDescription
brandstringExact brand match (case-insensitive).
brand_containsstring
categorystringCategory root name to filter (optional).
dominant_category_velocity_tier_instringComma-separated velocity tiers to keep.
exclude_amazon_plbooleanExclude Amazon private label brands. Default true.
exclude_gatedbooleanExclude brands gated to 3P sellers. Default true.
limitintegerMax results (capped at 10). Default 10.
marketplace_idinteger1 = Amazon UK, 2 = Amazon US (default)
max_control_scorenumber
max_pct_asins_gated_to_3pnumber
max_seller_churn_30d_delta_vs_cat_ppnumber
max_seller_churn_30d_pctnumber
max_sold_30d_revenuenumber
max_winner_diversitynumber
min_control_scorenumber
min_pct_asins_gated_to_3pnumber
min_seller_churn_30d_delta_vs_cat_ppnumber
min_seller_churn_30d_pctnumber
min_sold_30d_revenuenumber
min_velocitynumberMinimum units/day threshold (optional).
min_winner_diversitynumber
scopestringtracked = only brands on the user's watchlist; universe = all brands. Default universe.

No output schema declared.

No examples provided.

unauthorized_sellers ~362

List the sellers winning a brand's buy box — the resellers and arbitrage operators you're up against — each classified (authorized-retailer / arbitrage / Amazon / brand-direct / reseller). If you've saved an authorized list (authorized_seller_set) it instead flags the UNAUTHORIZED sellers. Use when the user asks 'which operators dominate the buy box on <brand>', 'who else is selling my brand', 'unauthorized sellers on Nike', 'find rogue sellers', or any brand buy-box / protection question.

NameTypeReqDescription
authorized_sellersarrayOptional. Authorized seller names — sellers NOT in this list are flagged. If omitted (and none saved), all buy-box-winning sellers are returned, classified.
brandstringyesBrand name (case-insensitive).
first_seen_fromstringYYYY-MM-DD.
first_seen_tostring
last_seen_fromstring
last_seen_tostring
limitinteger
marketplace_idinteger1 = Amazon UK, 2 = Amazon US (default)
max_asins_touchednumber
max_avg_pricenumber
max_observed_buybox_daysnumber
min_asins_touchednumber
min_avg_pricenumber
min_observed_buybox_daysnumber
operator_type_instringComma-separated classifications to keep (cold path only, when no authorized list is set): e.g. arbitrage, reseller, amazon, brand-direct, authorized-retailer.
seller_namestringExact seller name (case-insensitive).
seller_name_containsstring

No output schema declared.

No examples provided.

watchlist_add ~179

Create or add to a saved tracking list the user can monitor over time. list_type is one of asin, brand, seller, niche; name is the user's label for the list; items are the identifiers to track (ASINs, brand names, seller names, or niche keys). Captures a baseline of the current observed state so a later 'what changed' check can show new sellers and score moves. Use when the user says 'track these ASINs', 'add Nike to my brand watchlist', 'start monitoring ...'.

NameTypeReqDescription
itemsarrayyesIdentifiers to add.
list_typestringyesasin | brand | seller | niche
marketplace_idintegerMarketplace (2 = Amazon US).
namestringyesThe list's label (e.g. 'Q4 arbitrage candidates').

No output schema declared.

No examples provided.

watchlist_add_rule ~358

Resolve a natural-language watchlist request into concrete ASINs the user can add. Use when the user says 'watch this brand', 'alert me when X loses a seller', 'add Nike to my watchlist', or any watchlist-creation intent. Returns matching ASINs with current scores plus product identity (brand, title, price or price range) and fulfillment (FBA/FBM/AMZ with amz/fba share) so the user can confirm which to add.

NameTypeReqDescription
asinstringSpecific ASIN to add. If provided, brand is ignored.
asin_containsstring
brandstringBrand name to find watchable ASINs for.
fulfillment_instringComma-separated FBA/FBM/AMZ to keep.
limitinteger
marketplace_idinteger1 = Amazon UK, 2 = Amazon US (default)
max_buybox_avg_pricenumber
max_composite_scorenumber
max_fulfillment_amz_dom_pctnumber
max_fulfillment_fba_pen_pctnumber
max_observed_buybox_daysnumber
max_pricenumber
min_buybox_avg_pricenumber
min_composite_scorenumberOnly candidates with sourcing composite score >= this.
min_fulfillment_amz_dom_pctnumber
min_fulfillment_fba_pen_pctnumber
min_observed_buybox_daysnumber
min_pricenumber
product_title_containsstring

No output schema declared.

No examples provided.

watchlist_delta ~370

Show what changed on the user's sourcing watchlist since last check. Returns each tracked ASIN with its score delta plus product identity (brand, title, price or price range) and fulfillment (FBA/FBM/AMZ with amz/fba share). Use when the user asks 'what changed on my watchlist', 'watchlist updates', 'any changes this week', or any watchlist-status question.

NameTypeReqDescription
asinstringExact ASIN match.
asin_containsstring
fulfillment_instringComma-separated FBA/FBM/AMZ to keep.
limitinteger
marketplace_idintegerMarketplace to scope to: 1 = Amazon UK, 2 = Amazon US (default), 3 = Walmart US. One marketplace per call.
max_current_scorenumber
max_fulfillment_amz_dom_pctnumber
max_fulfillment_fba_pen_pctnumber
max_previous_scorenumber
max_pricenumber
max_score_deltanumber
min_current_scorenumberOnly tracked ASINs with current sourcing score >= this.
min_fulfillment_amz_dom_pctnumber
min_fulfillment_fba_pen_pctnumber
min_previous_scorenumber
min_pricenumber
min_score_deltanumber
product_brandstringExact product brand (case-insensitive).
product_brand_containsstring
product_title_containsstring
since_daysintegerHow far back to look for changes (default 7, max 30).

No output schema declared.

No examples provided.

watchlist_diff ~402

Show what changed on a saved tracking list versus its captured baseline — new sellers observed on the tracked ASINs and sourcing-score moves. Each changed ASIN also carries product identity (brand, title, price or price range) and fulfillment (FBA/FBM/AMZ with amz/fba share). Use when the user asks 'what changed on <list>', 'any updates on my watchlist', 'new sellers on the ASINs I track'. Re-run watchlist_add to reset the baseline to the current state.

NameTypeReqDescription
asinstringOnly the change row for this exact ASIN.
asin_containsstring
fulfillment_instringComma-separated FBA/FBM/AMZ to keep.
list_typestringDefaults to asin.
max_current_scorenumber
max_current_seller_countnumber
max_dropped_sellersnumber
max_fulfillment_amz_dom_pctnumber
max_fulfillment_fba_pen_pctnumber
max_new_sellersnumber
max_pricenumber
max_score_deltanumber
min_current_scorenumber
min_current_seller_countnumber
min_dropped_sellersnumber
min_fulfillment_amz_dom_pctnumber
min_fulfillment_fba_pen_pctnumber
min_new_sellersnumberOnly ASINs that gained at least this many new sellers.
min_pricenumber
min_score_deltanumber
namestringyesThe list name to diff.
product_brandstringExact product brand (case-insensitive).
product_brand_containsstring
product_title_containsstring

No output schema declared.

No examples provided.

watchlist_list ~131

List the workspace's saved tracking lists (name, type, item count, whether a baseline is set). Use when the user asks 'what am I tracking', 'show my watchlists', 'my saved lists'.

NameTypeReqDescription
list_type_instringComma-separated list types to keep (asin/brand/seller/niche).
max_item_countnumber
min_item_countnumberOnly lists with at least this many items.
updated_at_fromstringYYYY-MM-DD; only lists updated on/after this.
updated_at_tostring

No output schema declared.

No examples provided.

watchlist_remove ~100

Remove items from a saved tracking list, or delete the whole list. Provide list_type + name; give items to drop just those, or omit items to delete the entire list. Use when the user says 'stop tracking ...', 'remove ... from my watchlist', 'delete my ... list'.

NameTypeReqDescription
itemsarrayItems to remove; omit to delete the list.
list_typestringyes
namestringyes

No output schema declared.

No examples provided.

watchlist_stats ~581

BULK report of key Amazon stats for the user's WHOLE watchlist in ONE call — every tracked ASIN in the workspace's sourcing watchlist for a marketplace, in a single pass. Use this report instead of looping a per-ASIN tool over the whole watchlist. Each tracked ASIN returns its composite sourcing score, distinct seller count, buy-box leader share, fulfillment (FBA/FBM/AMZ with amz/fba pct), product brand/title and price (or price range). Also returns a top-level summary across the whole watchlist (tracked total, scored count, average score, score buckets, Amazon-dominant / FBA-dominant counts, single-seller vs high-competition counts). Use when the user asks 'show stats for my whole watchlist', 'summarize my watchlist', 'which of my tracked ASINs are single-seller / Amazon-dominant / high-competition', 'score distribution of my watchlist', or any bulk watchlist overview. One call covers the entire watchlist — do NOT call a per-ASIN tool in a loop.

NameTypeReqDescription
asinstringExact ASIN match.
asin_containsstring
fulfillment_instringComma-separated FBA/FBM/AMZ to keep.
limitinteger
marketplace_idintegerMarketplace to scope to: 1 = Amazon UK, 2 = Amazon US (default), 3 = Walmart US. One marketplace per call.
max_amz_dominance_pctnumber
max_buybox_share_pctnumber
max_composite_scorenumber
max_fba_penetration_pctnumber
max_pricenumber
max_seller_countnumber
min_amz_dominance_pctnumberOnly ASINs with Amazon buy-box dominance >= this percent.
min_buybox_share_pctnumberOnly ASINs where the buy-box leader's share >= this percent.
min_composite_scorenumberOnly tracked ASINs with composite sourcing score >= this.
min_fba_penetration_pctnumberOnly ASINs with FBA penetration >= this percent.
min_pricenumber
min_seller_countnumberOnly ASINs with >= this many distinct sellers.
product_brandstringExact product brand (case-insensitive).
product_brand_containsstring
sortstringSort order (all descending): score (composite sourcing score, default), seller_count (distinct sellers), buybox_share (buy-box leader share), amz_dominance, fba_penetration, or price.

No output schema declared.

No examples provided.