Skip to content

com.webotee/amazon-product-research-mcp

by webotee.com · remote · no sign-in to list tools · v1.0.0 · published by com.webotee

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

Deletes · 4Changes · 41

94 tools: 4 can delete or cancel things, 41 change things and 49 only read.

Scanned Oct 21, 2026

8 checks matched something in the tool definitions. No finding is not a safety guarantee. How the checks work.

claude mcp add --transport http amazon-product-research https://app.webotee.com/mcp

Findings

Matches of fixed checks, with the text they matched.

8 warn
  • The server marks "evaluate_asin_sourcing" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

    Matched text

    annotations: {"readOnlyHint":true,"destructiveHint":false,"openWorldHint":true}; The name "evaluate_asin_sourcing" says "evaluate": a word for a change.

    What this check looks for
  • The server marks "evaluate_brand" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

    Matched text

    annotations: {"readOnlyHint":true,"destructiveHint":false,"openWorldHint":false}; The name "evaluate_brand" says "evaluate": a word for a change.

    What this check looks for
  • The server marks "evaluate_category_for_private_label" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

    Matched text

    annotations: {"readOnlyHint":true,"destructiveHint":false,"openWorldHint":false}; The name "evaluate_category_for_private_label" says "evaluate": a word for a change.

    What this check looks for
  • The server marks "watchlist_add_rule" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

    Matched text

    annotations: {"readOnlyHint":true,"destructiveHint":false,"openWorldHint":false}; The name "watchlist_add_rule" says "add": a word for a change.

    What this check looks for
  • The server marks "operator_classifier" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

    Matched text

    annotations: {"readOnlyHint":true,"destructiveHint":false,"openWorldHint":false}; The description's first verb is "label": a word for a change.

    What this check looks for
  • The server marks "find_product_across_web" as not read-only (readOnlyHint: false), and its words say it reads.

    Matched text

    annotations: {"readOnlyHint":false,"destructiveHint":false,"openWorldHint":true}; The name "find_product_across_web" says "find": a word for reading.

    What this check looks for
Show 2 more findings
  • The server marks "my_store" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

    Matched text

    annotations: {"readOnlyHint":true,"destructiveHint":false,"openWorldHint":false}; The name "my_store" says "store": a word for a change.

    What this check looks for
  • The server marks "start_here" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

    Matched text

    annotations: {"readOnlyHint":true,"destructiveHint":false,"openWorldHint":false}; The name "start_here" says "start": a word for a change.

    What this check looks for

Tools

Open a tool for its reasons and full description. Descriptions are the publisher's own words, shown as they are.

94 tools

Deletes or cancels 4Claude Code: deny
  • authorized_seller_setSave the authorized sellers for a brand you own/manage — the whitelist that makes 'unauthorized seller' detection possible.No findings

    Why it is in this group

    • The name "authorized_seller_set" says "set": a word for a change.
    • The server marks it destructive (destructiveHint: true).
    Description, as the server wrote it
    Save the authorized sellers for a brand you own/manage — the whitelist that makes 'unauthorized seller' detection possible. The brand must already be tracked in this workspace. Use when the user says 'these are my authorized sellers for X', 'add Y to my authorized list', 'set my brand's approved resellers'. Pass the seller names exactly as they appear on Amazon.

    Annotations the server declares

    • title: Authorized Seller Set
    • readOnlyHint: false
    • destructiveHint: true
    • openWorldHint: false
  • set_cost_floorRecord 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 confirma…No findings

    Why it is in this group

    • The name "set_cost_floor" says "set": a word for a change.
    • The server marks it destructive (destructiveHint: true).
    Description, as the server wrote it
    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.

    Annotations the server declares

    • title: Set Cost Floor
    • readOnlyHint: false
    • destructiveHint: true
    • openWorldHint: false
  • track_productKeep Amazon products on a frequent live refresh (every 2-24 hours, depending on plan) for 30 days, so their buy-box price, buy-box seller, stock state and offer count are re-read a…No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    • The server marks it destructive (destructiveHint: true).
    Description, as the server wrote it
    Keep Amazon products on a frequent live refresh (every 2-24 hours, depending on plan) for 30 days, so their buy-box price, buy-box seller, stock state and offer count are re-read and kept as a time series. Read the results with list_tracked (all tracked products) or product_dossier (one product). action=stop removes products from your tracked list. Use when the user says 'track this ASIN', 'watch the buy box on these', 'monitor these competitor listings'. No e-mail alerts - ask for the latest points instead. Amazon marketplaces only.

    Annotations the server declares

    • title: Track Product
    • readOnlyHint: false
    • destructiveHint: true
    • openWorldHint: true
  • watchlist_removeRemove items from a saved tracking list, or delete the whole list.No findings

    Why it is in this group

    • The name "watchlist_remove" says "remove": a word for removing or ending something.
    • The server marks it destructive (destructiveHint: true).
    Description, as the server wrote it
    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'.

    Annotations the server declares

    • title: Watchlist Remove
    • readOnlyHint: false
    • destructiveHint: true
    • openWorldHint: false
Changes things 41Claude Code: ask
  • asin_bsr_historyBest Sellers Rank (BSR) HISTORY for one Amazon ASIN — the observed rank series over time, with first/last observation dates, plus the product's identity (brand, title, price, ratin…No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
    Description, as the server wrote it
    Best Sellers Rank (BSR) HISTORY for one Amazon ASIN — the observed rank series over time, with first/last observation dates, plus the product's identity (brand, title, price, rating, current BSR). Use when the user asks how an ASIN's rank/demand has MOVED: 'BSR history for B0…', 'is this product's rank improving', 'rank trend over the last months'. For WHO sells it over time use asin_buybox_history instead; for a live snapshot right now use collect_asin_now. Amazon marketplaces only; one ASIN per call.

    Annotations the server declares

    • title: ASIN Bsr History
    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: false
  • asin_keywordsReverse ASIN on Amazon US: the observed head search terms where a product appeared on page 1 (organic rank, or a sponsored unit in the page), dated, organic first.No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
    Description, as the server wrote it
    Reverse ASIN on Amazon US: the observed head search terms where a product appeared on page 1 (organic rank, or a sponsored unit in the page), dated, organic first. Pass asins (up to 10, yours first) to compare with competitors: each keyword shows every competitor's rank, asins_on_page, and gap=true where a competitor is on page 1 and the first product is not; gaps_only=true keeps only those. Coverage is head search terms and page 1 only (the coverage block gives the counts), so a product shows fewer keywords than a full search index would. Not volume figures. Amazon US only.

    Annotations the server declares

    • title: ASIN Keywords
    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: false
  • asin_profit_calcEstimate whether an ASIN can hit a target profit margin given current buybox price, estimated FBA fees, and Amazon referral fee.No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
    Description, as the server wrote it
    Estimate whether an ASIN can hit a target profit margin given current buybox price, estimated FBA fees, and Amazon referral fee. Use when the user asks 'can I make money on this ASIN', 'profit calculator', 'margin estimate for B08N5WRWNW', 'is this ASIN profitable to sell', or any margin/profit question. Also returns product brand, title, price (or price range) and fulfillment (FBA/FBM/AMZ + amz/fba pct) for the ASIN.

    Annotations the server declares

    • title: ASIN Profit Calc
    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: true
  • brand_under_attackDetect whether a brand is under competitive attack: an elevated NEW-ENTRANT RATE (brand-level newly-observed sellers vs the trailing-month baseline) combined with buy-box churn.No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
    Description, as the server wrote it
    Detect whether a brand is under competitive attack: an elevated NEW-ENTRANT RATE (brand-level newly-observed sellers vs the trailing-month baseline) combined with buy-box churn. Uses brand-level first-seen (a seller's first observation anywhere across the brand's ASINs), which is stable under scraper-coverage growth — not the inflated per-ASIN count. Use when the user asks 'is my brand being targeted', 'brand under attack', 'new sellers flooding my listings', 'is someone targeting this brand'.

    Annotations the server declares

    • title: Brand Under Attack
    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: false
  • brand_xmarketCheck whether a brand sells on Amazon US, Amazon UK, and/or Walmart.No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
    Description, as the server wrote it
    Check whether a brand sells on Amazon US, Amazon UK, and/or Walmart. Returns per-marketplace seller count, ASIN count, observed buybox days, and control score. Use when the user asks 'does this brand sell on Walmart', 'cross-marketplace presence for Nike', 'is this brand on Amazon UK', or any multi-marketplace brand question.

    Annotations the server declares

    • title: Brand Cross-Market
    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: false
  • collect_asin_nowPull a LIVE, on-demand snapshot of a single Amazon ASIN right now — current title, price, live offers and the sellers on the listing today — and return it alongside Webotee's histo…No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    Description, as the server wrote it
    Pull a LIVE, on-demand snapshot of a single Amazon ASIN right now — current title, price, live offers and the sellers on the listing today — and return it alongside Webotee's historical brand and seller intelligence, including the ASIN's product brand, title and price (or price range) and its fulfillment (FBA/FBM/AMZ). Use when the user gives a specific ASIN and wants its CURRENT/today's data rather than the pre-collected dataset (e.g. 'check ASIN B0... right now', 'who's on this listing today and at what price'). Every Amazon marketplace; one ASIN per call.

    Annotations the server declares

    • title: Collect ASIN Now
    • readOnlyHint: false
    • destructiveHint: false
    • openWorldHint: true
  • competitive_landscapeMap the competitive landscape for a brand or category root.No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
    Description, as the server wrote it
    Map the competitive landscape for a brand or category root. Returns top 10 sellers by observed buybox days held, top 10 brands by winner-diversity HHI, plus week-over-week deltas. Use when the user asks 'who's winning this category?' or 'who controls the buybox here?'.

    Annotations the server declares

    • title: Competitive Landscape
    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: false
  • evaluate_asin_sourcingEvaluate a single ASIN for FBA sourcing.1 finding

    Why it is in this group

    • The name "evaluate_asin_sourcing" says "evaluate": a word for a change.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.

    Findings

    • Warn

      The server marks "evaluate_asin_sourcing" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

      Matched text

      annotations: {"readOnlyHint":true,"destructiveHint":false,"openWorldHint":true}; The name "evaluate_asin_sourcing" says "evaluate": a word for a change.

      What this check looks for
    Description, as the server wrote it
    Evaluate a single ASIN for FBA sourcing. Returns composite sourcing score (0-100), 5-dimension breakdown (velocity, gating, friction, margin, brand_posture), estimated 30-day demand (units_30d_final + est_revenue_30d) with its source/badge_band/confidence, a data_coverage flag (full vs velocity_only — so a null demand reads as a coverage gap, not zero sales), star rating + review count (with a rating_coverage flag), brand-level FBA/Amazon dominance, and a red-flag list. Also returns the product brand, title, and price (or price range) plus the ASIN's fulfillment (FBA/FBM/AMZ + amz/fba pct). Use when the user asks 'should I buy this?', 'how fast does this sell?', or shares an ASIN and wants a sourcing recommendation.

    Annotations the server declares

    • title: Evaluate ASIN Sourcing
    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: true
  • evaluate_brandEvaluate a brand for portfolio inclusion.1 finding

    Why it is in this group

    • The name "evaluate_brand" says "evaluate": a word for a change.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.

    Findings

    • Warn

      The server marks "evaluate_brand" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

      Matched text

      annotations: {"readOnlyHint":true,"destructiveHint":false,"openWorldHint":false}; The name "evaluate_brand" says "evaluate": a word for a change.

      What this check looks for
    Description, as the server wrote it
    Evaluate a brand for portfolio inclusion. Returns brand-level control posture, winner diversity (HHI), Amazon retail dominance %, FBA penetration %, catalog churn rate, total bought-past-month volume, estimated 30-day revenue, avg ship-by days, cross-brand operator count, plus the top 10 ASINs by composite sourcing score (each with product brand, title, price or price range, and fulfillment FBA/FBM/AMZ + amz/fba pct). Use when the user names a brand and asks 'is this worth carrying?', 'how does this brand look?', 'what is the churn rate?', or 'how fast does this brand ship?'.

    Annotations the server declares

    • title: Evaluate Brand
    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: false
  • evaluate_category_for_private_labelAssess whether a category or niche (ANY depth — e.g.1 finding

    Why it is in this group

    • The name "evaluate_category_for_private_label" says "evaluate": a word for a change.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.

    Findings

    • Warn

      The server marks "evaluate_category_for_private_label" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

      Matched text

      annotations: {"readOnlyHint":true,"destructiveHint":false,"openWorldHint":false}; The name "evaluate_category_for_private_label" says "evaluate": a word for a change.

      What this check looks for
    Description, as the server wrote it
    Assess whether a category or niche (ANY depth — e.g. 'Terrariums') is winnable for a NEW private-label brand. Use for 'is X winnable for private label', 'should I private-label X', 'is the X niche good for a new brand', 'can I launch my own brand in X'. Returns a per-signal pass/fail breakdown and a Strong / Moderate / Weak verdict based on Amazon's footprint, seller fragmentation, demand, and price band.

    Annotations the server declares

    • title: Evaluate Category For Private Label
    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: false
  • find_product_across_webFind where one product sits across the open web — a live cross-retailer price check — with every price anchored to Webotee's independently-observed Amazon buy-box.1 finding

    Why it is in this group

    • The name "find_product_across_web" says "find": a word for reading.
    • The server marks it as not read-only (readOnlyHint: false).

    Findings

    • Warn

      The server marks "find_product_across_web" as not read-only (readOnlyHint: false), and its words say it reads.

      Matched text

      annotations: {"readOnlyHint":false,"destructiveHint":false,"openWorldHint":true}; The name "find_product_across_web" says "find": a word for reading.

      What this check looks for
    Description, as the server wrote it
    Find where one product sits across the open web — a live cross-retailer price check — with every price anchored to Webotee's independently-observed Amazon buy-box. Give ONE identifier (asin, upc, gtin, or title + brand) and a mode: price_compare (default, all retailers vs the Amazon buy-box), cheaper (only sources below the buy-box), dropship (net margin after estimated Amazon fees), or supplier (wholesale-class sources). Returns each source's price, class, spread vs the buy-box, and a durability read from our 16-month history. The Amazon anchor also carries the product brand, title, and price (or price range) plus its fulfillment (FBA/FBM/AMZ + amz/fba pct). One product per call.

    Annotations the server declares

    • title: Find Product Across Web
    • readOnlyHint: false
    • destructiveHint: false
    • openWorldHint: true
  • gating_repricing_adviceRecommend ungate / arbitrage / avoid for an ASIN, with a 3-bullet rationale citing named metrics (gating_score, amz_retail_dominance_pct, fba_pct, brand_posture).No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
    Description, as the server wrote it
    Recommend ungate / arbitrage / avoid for an ASIN, with a 3-bullet rationale citing named metrics (gating_score, amz_retail_dominance_pct, fba_pct, brand_posture). Also returns the ASIN's product brand, title and price (or price range) plus fulfillment (FBA/FBM/Amazon). Use for 'should I try to ungate this?' / 'how should I price this?'.

    Annotations the server declares

    • title: Gating Repricing Advice
    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: false
  • keyword_cross_marketplaceCheck which of the 11 Amazon marketplaces a keyword was observed in Amazon's own autocomplete suggestions, with first/last observed dates and an example current suggestion-list pos…No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
    Description, as the server wrote it
    Check which of the 11 Amazon marketplaces a keyword was observed in Amazon's own autocomplete suggestions, with first/last observed dates and an example current suggestion-list position per marketplace. Use when a seller asks 'does anyone type X on Amazon Germany/Japan/…', compares keyword presence across countries, or plans a marketplace expansion (pair with brand_xmarket / operator_xmarket_presence). Exact-keyword match — not volumes, not rankings. Amazon marketplaces only.

    Annotations the server declares

    • title: Keyword Cross Marketplace
    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: false
  • keyword_demandKeywords observed in Amazon's own autocomplete suggestions for a seed term, per marketplace: the current suggestion list(s) for the seed's prefix (each term with its position 1-10 …No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
    Description, as the server wrote it
    Keywords observed in Amazon's own autocomplete suggestions for a seed term, per marketplace: the current suggestion list(s) for the seed's prefix (each term with its position 1-10 within that list) plus related observed vocabulary starting with the seed, with the marketplaces each term was observed in. Use for listing/backend keyword language, 'what do buyers type for X', or seeding niche/product research with real buyer phrases. No volume figures and no organic-ranking data — observed suggestion vocabulary only. Amazon marketplaces only.

    Annotations the server declares

    • title: Keyword Demand
    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: false
  • keyword_rankingsPage 1 of Amazon US search for a keyword as last OBSERVED (head search terms from Amazon's own autocomplete, each observed about once a week): products in organic order with brand,…No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
    Description, as the server wrote it
    Page 1 of Amazon US search for a keyword as last OBSERVED (head search terms from Amazon's own autocomplete, each observed about once a week): products in organic order with brand, price and their latest buy-box seller (AMZ = Amazon, FBA, FBM), the Sponsored Brands units in the page, the Amazon's Choice (Overall Pick) holder, Amazon's result count, who holds the page by brand and by seller, and the products that entered or left page 1 since the previous observation. Use for: who sells on page 1 for a search, which brands and resellers dominate it, who advertises on it. Dated weekly samples, not live and not volume figures (amazon_search_results reads the live page). Amazon US only.

    Annotations the server declares

    • title: Keyword Rankings
    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: false
  • live_bestsellersAmazon Best Sellers list for one category, as Amazon shows it now: up to 100 products in rank order (rank, ASIN, title, price, rating, ratings count), the category's full breadcrum…No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
    Description, as the server wrote it
    Amazon Best Sellers list for one category, as Amazon shows it now: up to 100 products in rank order (rank, ASIN, title, price, rating, ratings count), the category's full breadcrumb path, and its subcategories with their URLs. With only marketplace_id (no url) it returns the marketplace's top-level best-seller categories, so you can walk the tree: root -> category -> subcategory, always with a URL from a previous answer. Use when the user asks what sells best in a category right now or wants a top-100 list. For keyword searches use amazon_search_results or search_products. Fresh lists take 15-35 seconds; Amazon refreshes them hourly, so recent lists return instantly. Amazon marketplaces only.

    Annotations the server declares

    • title: Live Bestsellers
    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: true
  • live_offersLIVE Amazon offers for one product: every seller offering it right now, read from Amazon's 'All offers' view at request time (every page).No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
    Description, as the server wrote it
    LIVE Amazon offers for one product: every seller offering it right now, read from Amazon's 'All offers' view at request time (every page). Each offer has the seller and seller id, price, shipping, condition, buy box, FBA / FBM / Amazon, Prime, ships-from, the delivery promise and the seller's feedback; the answer adds the buy-box winner, offer counts by fulfillment, whether Amazon sells it, and the lowest new and used prices. Use when the user asks who sells a product right now, the current buy-box winner, the cheapest offer, or needs a fresh seller list before buying, sourcing or repricing. For history use product_dossier or asin_buybox_history. Takes 4-12 seconds. Amazon marketplaces only.

    Annotations the server declares

    • title: Live Offers
    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: true
  • my_competitorsWho's competing with the seller on their OWN products.No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
    Description, as the server wrote it
    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'.

    Annotations the server declares

    • title: My Competitors
    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: false
  • my_opportunitiesWhat to source NEXT, adjacent to what the seller already sells.No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
    Description, as the server wrote it
    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'.

    Annotations the server declares

    • title: My Opportunities
    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: false
  • my_productsThe seller's OWN connected Amazon catalog fused with Webotee market intelligence.No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
    Description, as the server wrote it
    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'.

    Annotations the server declares

    • title: My Products
    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: false
  • my_storeStore-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)…1 finding

    Why it is in this group

    • The name "my_store" says "store": a word for a change.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.

    Findings

    • Warn

      The server marks "my_store" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

      Matched text

      annotations: {"readOnlyHint":true,"destructiveHint":false,"openWorldHint":false}; The name "my_store" says "store": a word for a change.

      What this check looks for
    Description, as the server wrote it
    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.

    Annotations the server declares

    • title: My Store
    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: false
  • operator_brands_by_competitionGiven one or more operator (seller) names, return the brands they carry ranked by seller competition level.No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
    Description, as the server wrote it
    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.

    Annotations the server declares

    • title: Operator Brands By Competition
    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: false
  • operator_buybox_lossesFor 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-…No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
    Description, as the server wrote it
    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.

    Annotations the server declares

    • title: Operator Buybox Losses
    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: false
  • operator_classifierLabel 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 spa…1 finding

    Why it is in this group

    • The description's first verb is "label": a word for a change.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.

    Findings

    • Warn

      The server marks "operator_classifier" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

      Matched text

      annotations: {"readOnlyHint":true,"destructiveHint":false,"openWorldHint":false}; The description's first verb is "label": a word for a change.

      What this check looks for
    Description, as the server wrote it
    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.

    Annotations the server declares

    • title: Operator Classifier
    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: false
  • operator_concentrationOperator concentration (HHI) across a set of ASINs or a brand's catalog — reveals when the same operator quietly controls many of the 'independent' listings.No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
    Description, as the server wrote it
    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.

    Annotations the server declares

    • title: Operator Concentration
    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: false
  • operator_new_on_brandOperators 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.No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
    Description, as the server wrote it
    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).

    Annotations the server declares

    • title: Operator New On Brand
    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: false
  • operator_resells_whatThe 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 sourci…No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
    Description, as the server wrote it
    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).

    Annotations the server declares

    • title: Operator Resells What
    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: false
  • operator_xmarket_presenceCheck whether an operator sells on Amazon US, Amazon UK, and/or Walmart.No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
    Description, as the server wrote it
    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.

    Annotations the server declares

    • title: Operator Cross-Market Presence
    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: false
  • playbook_createSave a reusable per-model research workflow (a 'playbook') the user can re-run or schedule.No findings

    Why it is in this group

    • The name "playbook_create" says "create": a word for a change.
    Description, as the server wrote it
    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'.

    Annotations the server declares

    • title: Playbook Create
    • readOnlyHint: false
    • destructiveHint: false
    • openWorldHint: false
  • playbook_run_nowRun a saved playbook right now and return its digest (also saved to the in-app inbox).No findings

    Why it is in this group

    • The name "playbook_run_now" says "run": a word for a change.
    Description, as the server wrote it
    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'.

    Annotations the server declares

    • title: Playbook Run Now
    • readOnlyHint: false
    • destructiveHint: false
    • openWorldHint: false
  • playbook_scheduleSet how often a saved playbook runs automatically (manual, daily, or weekly).No findings

    Why it is in this group

    • The name "playbook_schedule" says "schedule": a word for a change.
    Description, as the server wrote it
    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).

    Annotations the server declares

    • title: Playbook Schedule
    • readOnlyHint: false
    • destructiveHint: false
    • openWorldHint: false
  • product_dossierFull dossier for ONE Amazon product, by ASIN or by retail barcode (UPC / EAN / GTIN / ISBN-13): current price, buy-box seller and condition, every current seller (price, FBA/FBM/Am…No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
    Description, as the server wrote it
    Full dossier for ONE Amazon product, by ASIN or by retail barcode (UPC / EAN / GTIN / ISBN-13): current price, buy-box seller and condition, every current seller (price, FBA/FBM/Amazon, delivery), stock state, BSR and category, rating and review count, Amazon's bought-past-month badge, dimensions and weight, plus observed history - price changes, stock changes, sub-daily buy-box points for frequently refreshed products, rating history. Set include_history=true for the long series (per-seller offer history and the daily buy-box price back to 2023 on Amazon US, BSR history). Use when the user has a specific product and asks 'what does this sell for now', 'who is on this listing', 'has the price moved', 'is it in stock', 'analyse this ASIN', or gives a barcode from a supplier list. Answers from stored observations in milliseconds; refresh=true reads the live Amazon page (10-30 seconds). Amazon marketplaces only.

    Annotations the server declares

    • title: Product Dossier
    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: true
  • product_page_contentThe observed page-content record for one Amazon ASIN: description (with its source — prose vs 'About this item' bullets vs brand A+ content), feature bullets, breadcrumb category p…No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
    Description, as the server wrote it
    The observed page-content record for one Amazon ASIN: description (with its source — prose vs 'About this item' bullets vs brand A+ content), feature bullets, breadcrumb category path, image-gallery URLs, variation count + parent ASIN, stock state, and first/last-observed timestamps. Set include_reviews=true to append the featured customer reviews shown on the page (rating, title, trimmed text, verbatim date, verified flag, helpful votes; reviewer names are not stored, so author is always null). Use when the user asks what a product's page says or shows — its description, bullets, images, categories, variations — or wants the reviews on a listing. Amazon marketplaces only.

    Annotations the server declares

    • title: Product Page Content
    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: false
  • risk_assessmentRisk + protection assessment for an ASIN or brand.No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
    Description, as the server wrote it
    Risk + protection assessment for an ASIN or brand. Returns composite risk score (0-100), recent price-drop / MAP events (≤10: a buy-box price at least 10% below the product's usual price, won by a seller other than the brand's own store; each with the 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.

    Annotations the server declares

    • title: Risk Assessment
    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: false
  • seller_profileThe stored Amazon SELLER PROFILE for one seller - by seller id (the 'A...' code in /sp?seller=...No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
    Description, as the server wrote it
    The stored Amazon SELLER PROFILE for one seller - by seller id (the 'A...' code in /sp?seller=... or the seller_id on an offer) or by the seller/operator name the other tools use. RETURNS the seller's star rating, lifetime and 12-month rating counts, positive-feedback % (with its period), feedback per period (30 d / 90 d / 12 m / lifetime: average rating + count), the rating histogram, up to 5 recent feedback entries (date / rating / struck ONLY - never a buyer's name or text), the business block where the seller publishes one on Amazon (legal name, registration / VAT numbers, address, phone, e-mail, representative; null on au/ca), and tracking (since when and how often Webotee has observed the seller). include_history=true adds the rating-change points and storefront-size points, oldest first, UTC. USE WHEN the user asks who a seller is, how it is rated, whether its rating moved, or wants the legal entity behind a storefront. It reads Webotee's seller store (re-read about every 14 days) - it never fetches Amazon live; a seller not stored yet answers not_yet_tracked. For what a seller SELLS use the operator_* tools. Amazon marketplaces only.

    Annotations the server declares

    • title: Seller Profile
    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: false
  • start_hereA short guide to what Webotee can do and which tools to use, by selling model: wholesale and online arbitrage, private label, brand owners, and agencies.1 finding

    Why it is in this group

    • The name "start_here" says "start": a word for a change.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.

    Findings

    • Warn

      The server marks "start_here" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

      Matched text

      annotations: {"readOnlyHint":true,"destructiveHint":false,"openWorldHint":false}; The name "start_here" says "start": a word for a change.

      What this check looks for
    Description, as the server wrote it
    A short guide to what Webotee can do and which tools to use, by selling model: wholesale and online arbitrage, private label, brand owners, and agencies. Use at the start of a session, when the user asks 'what can you do with Webotee', or when they only know one tool.

    Annotations the server declares

    • title: Start Here
    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: false
  • watchlist_addCreate or add to a saved tracking list the user can monitor over time.No findings

    Why it is in this group

    • The name "watchlist_add" says "add": a word for a change.
    Description, as the server wrote it
    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 ...'.

    Annotations the server declares

    • title: Watchlist Add
    • readOnlyHint: false
    • destructiveHint: false
    • openWorldHint: false
  • watchlist_add_ruleResolve a natural-language watchlist request into concrete ASINs the user can add.1 finding

    Why it is in this group

    • The name "watchlist_add_rule" says "add": a word for a change.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.

    Findings

    • Warn

      The server marks "watchlist_add_rule" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

      Matched text

      annotations: {"readOnlyHint":true,"destructiveHint":false,"openWorldHint":false}; The name "watchlist_add_rule" says "add": a word for a change.

      What this check looks for
    Description, as the server wrote it
    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.

    Annotations the server declares

    • title: Watchlist Add Rule
    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: false
  • watchlist_statsBULK 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.No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
    Description, as the server wrote it
    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.

    Annotations the server declares

    • title: Watchlist Stats
    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: false
  • watchlist_webwideBulk web-wide (open-web / off-Amazon) price + MAP findings across your whole watchlist, in one call — reads already-collected results, does not run a live scan.No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
    Description, as the server wrote it
    Bulk web-wide (open-web / off-Amazon) price + MAP findings across your whole watchlist, in one call — reads already-collected results, does not run a live scan. Returns every tracked ASIN with its open-web source count, cheapest off-Amazon price (+ the domain), how many web sources violate MAP, how many are unauthorized sellers, the Amazon buy-box anchor price, and how much cheaper the web is vs Amazon. ASINs not yet scanned show 0 sources / never-scanned. Use for 'where is my whole watchlist cheaper off Amazon', 'web-wide MAP across everything I track', or 'which tracked products are undercut on the open web'. For a live single-product cross-retailer check use find_product_across_web instead.

    Annotations the server declares

    • title: Watchlist Webwide
    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: false
  • webotee_accountThe user's Webotee plan and usage: plan and price, subscription status and renewal or end date, AI Connect calls used today against the plan's daily limit, today's use of the live …No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
    Description, as the server wrote it
    The user's Webotee plan and usage: plan and price, subscription status and renewal or end date, AI Connect calls used today against the plan's daily limit, today's use of the live tools (live offers, live product refreshes, live searches, best-seller lists, cross-web checks), and how much of this month's live-data allowance is used. Use when the user asks about their plan, limits, remaining calls or why a live tool was paused.

    Annotations the server declares

    • title: Webotee Account
    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: false
Only reads 49Claude Code: allow
  • amazon_search_resultsFetch a LIVE Amazon search-results page (SERP) right now — the ranked organic + sponsored listings a shopper would see this minute for a query, with position, ASIN, title, price, r…No findings

    Why it is in this group

    • The name "amazon_search_results" says "search": a word for reading.
    Description, as the server wrote it
    Fetch a LIVE Amazon search-results page (SERP) right now — the ranked organic + sponsored listings a shopper would see this minute for a query, with position, ASIN, title, price, rating and badges. Use when the user wants CURRENT ranking/visibility: 'who ranks for "dog bed" on Amazon right now', 'is my ASIN on page 1 for this keyword', 'what's sponsored vs organic for this search'. This is a real-time fetch (takes ~10-40 seconds) — for warehouse keyword search use search_products; for buying advice use shopping_search. Amazon marketplaces only; up to 3 pages per call.

    Annotations the server declares

    • title: Amazon Search Results
    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: true
  • asin_buybox_historyShow which sellers have been winning the buybox for an ASIN over time, AND how the competing-seller pool has changed month over month.No findings

    Why it is in this group

    • The description's first verb is "show": a word for reading.
    Description, as the server wrote it
    Show which sellers have been winning the buybox for an ASIN over time, AND how the competing-seller pool has changed month over month. Returns a per-week breakdown of buybox winners; a monthly distinct-seller-count series (seller_count_monthly, trailing ~6 months) plus a seller_trend label (stable/rising/falling) so you can say whether the seller pool is stable or volatile (more sellers piling on vs consolidating); plus the ASIN's product brand, title and price (or price range) and its fulfillment (FBA/FBM/AMZ). Use when the user asks 'who has been winning buybox on this ASIN', 'buybox history for B08N5WRWNW', 'seller rotation', 'has the buybox owner changed', 'is the seller pool stable or volatile', 'are more sellers piling onto this listing', or any ASIN buybox/seller timeline.

    Annotations the server declares

    • title: ASIN Buybox History
    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: false
  • asin_comparablesFind ASINs similar to a given ASIN by brand, price band, and seller count.No findings

    Why it is in this group

    • The description's first verb is "find": a word for reading.
    Description, as the server wrote it
    Find ASINs similar to a given ASIN by brand, price band, and seller count. Use when the user asks 'ASINs like this one', 'similar products', 'comparable ASINs', 'what else is like B08N5WRWNW', or any ASIN-level lookalike question. Each comparable carries product brand, title, price (or price range) and fulfillment (FBA/FBM/AMZ + amz/fba pct).

    Annotations the server declares

    • title: ASIN Comparables
    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: false
  • authorized_seller_listList the saved authorized sellers for a brand.No findings

    Why it is in this group

    • The name "authorized_seller_list" says "list": a word for reading.
    Description, as the server wrote it
    List the saved authorized sellers for a brand. Use when the user asks 'who are my authorized sellers for X', 'show my approved resellers', 'what's my whitelist for this brand'.

    Annotations the server declares

    • title: Authorized Seller List
    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: false
  • brand_buybox_trajectoryShow how a brand's buybox concentration has changed over time.No findings

    Why it is in this group

    • The description's first verb is "show": a word for reading.
    Description, as the server wrote it
    Show how a brand's buybox concentration has changed over time. Returns weekly seller counts and observed buybox days for the trailing window. Use when the user asks 'is this brand getting more competitive', 'concentration trend for Nike', 'how has seller count changed over time', or 'buybox trajectory'.

    Annotations the server declares

    • title: Brand Buybox Trajectory
    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: false
  • brand_new_asinsShow ASINs that recently appeared for a brand.No findings

    Why it is in this group

    • The description's first verb is "show": a word for reading.
    Description, as the server wrote it
    Show ASINs that recently appeared for a brand. Use when the user asks 'new products for Nike', 'recently added ASINs', 'what new listings does this brand have', or any question about a brand's recent catalog additions. Each ASIN carries product brand, title, price (or price range) and fulfillment (FBA/FBM/AMZ + amz/fba pct).

    Annotations the server declares

    • title: Brand New ASINs
    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: false
  • brand_similarFind brands similar to a given brand by category, price tier, and competition level.No findings

    Why it is in this group

    • The description's first verb is "find": a word for reading.
    Description, as the server wrote it
    Find brands similar to a given brand by category, price tier, and competition level. Use when the user asks 'brands like Nike', 'similar brands to source', 'show me comparable brands', 'what else is in this niche', or any cohort/lookalike question.

    Annotations the server declares

    • title: Brand Similar
    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: false
  • brands_gaining_sellersFind brands that recently gained the most newly-OBSERVED sellers (sellers whose first-seen date on the brand falls in the window) — an observation signal, NOT confirmed market entr…No findings

    Why it is in this group

    • The description's first verb is "find": a word for reading.
    Description, as the server wrote it
    Find brands that recently gained the most newly-OBSERVED sellers (sellers whose first-seen date on the brand falls in the window) — an observation signal, NOT confirmed market entry (sparse re-sampling can resurface long-present sellers as 'new'). Optional category filter. Use when the user asks 'brands gaining sellers in [category]', 'brands under hijacker pressure', 'who is seeing new entrants this month', or category-scoped seller-growth signals without naming a specific brand.

    Annotations the server declares

    • title: Brands Gaining Sellers
    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: false
  • brands_in_operator_networkFind brands that share operators/sellers with a target brand.No findings

    Why it is in this group

    • The description's first verb is "find": a word for reading.
    Description, as the server wrote it
    Find brands that share operators/sellers with a target brand. Returns brands ranked by how many operators they share. Use when the user asks 'what brands are in X's network?', 'brands related to Ninja', 'who else do Ninja's sellers carry?', 'brands in the same seller network', or 'brand family'. This reveals the operator graph — brands connected through shared distribution channels.

    Annotations the server declares

    • title: Brands In Operator Network
    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: false
  • bulk_product_lookupMatch a LIST of ASINs and/or retail barcodes (UPC / EAN / GTIN / ISBN) to Amazon in one call - e.g.No findings

    Why it is in this group

    • The name "bulk_product_lookup" says "lookup": a word for reading.
    Description, as the server wrote it
    Match a LIST of ASINs and/or retail barcodes (UPC / EAN / GTIN / ISBN) to Amazon in one call - e.g. a supplier price list or invoice - and return one row per item: ASIN, title, brand, current price, buy-box seller and fulfillment, whether Amazon sells it, seller count, BSR and category, rating, bought-past-month badge, how the barcode was resolved, and when it was observed. Unknown barcodes are searched on Amazon itself. Use for wholesale / online-arbitrage list screening before deeper checks with asin_profit_calc, evaluate_asin_sourcing or live_offers. Up to 25-200 items per call depending on plan. Amazon marketplaces only.

    Annotations the server declares

    • title: Bulk Product Lookup
    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: true
  • buybox_loss_alertFind the ASINs where a brand you own has LOST the buy box to a seller outside your authorized list — ranked by estimated revenue at stake — so you can act on the costliest first.No findings

    Why it is in this group

    • The description's first verb is "find": a word for reading.
    Description, as the server wrote it
    Find the ASINs where a brand you own has LOST the buy box to a seller outside your authorized list — ranked by estimated revenue at stake — so you can act on the costliest first. Each flagged ASIN carries its product brand, title and price (or price range) plus its fulfillment (FBA/FBM/AMZ). Save your authorized list first (authorized_seller_set) for precise flagging; without it, ASINs where a third-party operator holds the buy box are flagged. Use when the user asks 'where am I losing the buy box on <brand>', 'buy-box loss on my ASINs', 'which of my listings did I lose'.

    Annotations the server declares

    • title: Buybox Loss Alert
    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: false
  • categories_amazon_retreatingFind categories where Amazon is retreating — net brand exits exceed entries over 90 days (amazon_expansion_net_90d < 0).No findings

    Why it is in this group

    • The description's first verb is "find": a word for reading.
    Description, as the server wrote it
    Find categories where Amazon is retreating — net brand exits exceed entries over 90 days (amazon_expansion_net_90d < 0). Returns categories ordered by retreat magnitude. Use when the user asks 'where is Amazon pulling back?', 'which categories is Amazon leaving?', or 'Amazon retreat opportunities'.

    Annotations the server declares

    • title: Categories Amazon Retreating
    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: false
  • category_metricsReturn the full metric set for ONE category at any depth — a root OR a sub-category niche like 'Terrariums'.No findings

    Why it is in this group

    • The description's first verb is "return": a word for reading.
    Description, as the server wrote it
    Return the full metric set for ONE category at any depth — a root OR a sub-category niche like 'Terrariums'. Covers demand (30-day revenue, units, velocity tier), competition (heat, diversity, brand/ASIN/seller counts), Amazon presence (retail dominance, private-label share, FBA penetration, 90-day brand expansion), price, ship-by days, and close-outs. Use for 'show me the metrics/stats for category X', 'how big is the X category', or to pull the numbers behind a niche question.

    Annotations the server declares

    • title: Category Metrics
    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: false
  • category_new_entrantsFind brands newly OBSERVED in a category — the first date our daily sampling saw the brand there falls in the window.No findings

    Why it is in this group

    • The description's first verb is "find": a word for reading.
    Description, as the server wrote it
    Find brands newly OBSERVED in a category — the first date our daily sampling saw the brand there falls in the window. An observation signal, NOT confirmed first-ever entry (sparse re-sampling can resurface a long-present brand as 'new'). Use when the user asks 'new brands in Electronics', 'what brands just entered this category', 'emerging brands in Toys', 'category new entrants'.

    Annotations the server declares

    • title: Category New Entrants
    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: false
  • category_top_growersFind brands in a category with the biggest recent growth in seller count and observations.No findings

    Why it is in this group

    • The description's first verb is "find": a word for reading.
    Description, as the server wrote it
    Find brands in a category with the biggest recent growth in seller count and observations. Use when the user asks 'fastest growing brands in Toys', 'top growers in this category', 'which brands are trending up', or any category-scoped growth question.

    Annotations the server declares

    • title: Category Top Growers
    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: false
  • category_undercompeted_brandsFind specific BRANDS within a category that have proven multi-seller demand but are still under-competed (a min-seller floor drops single-seller / brand-owner-only listings).No findings

    Why it is in this group

    • The description's first verb is "find": a word for reading.
    Description, as the server wrote it
    Find specific BRANDS within a category that have proven multi-seller demand but are still under-competed (a min-seller floor drops single-seller / brand-owner-only listings). Returns BRANDS — not niches or sub-categories. Use for 'undercompeted brands in <category>', 'low competition brands in Toys', 'which brands can I source in <category>'. Do NOT use for 'under-served niches', 'niches in <category>', or 'find a niche to enter' — those are SUBCATEGORY questions; use find_underserved_niches instead.

    Annotations the server declares

    • title: Category Undercompeted Brands
    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: false
  • filter_brands_by_fba_shareReturn brands whose FBA buybox share is below or above a threshold.No findings

    Why it is in this group

    • The description's first verb is "return": a word for reading.
    Description, as the server wrote it
    Return brands whose FBA buybox share is below or above a threshold. FBA share is computed as fba_buybox_days / total_buybox_days * 100 (percentage, 0-100). Use fba_share < 40 to find FBM-heavy brands (carriers hold real inventory) or fba_share > 80 for FBA-dominated brands. Supports sort by control_score (heat), unique_sellers, or brand_bought_past_month_30d. For a single NAMED brand's profile, evaluate_brand is the better first call — this tool is for screening lists.

    Annotations the server declares

    • title: Filter Brands By FBA Share
    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: false
  • filter_operators_by_fba_shareReturn operators whose FBA buybox share is below or above a threshold.No findings

    Why it is in this group

    • The description's first verb is "return": a word for reading.
    Description, as the server wrote it
    Return operators whose FBA buybox share is below or above a threshold. FBA share is 0-100 (percentage). For a single NAMED seller's profile, the operator-profile tools (operator_classifier / operator_top_brands) are the better first call — this tool is for screening lists. Use fba_share < 50 to find FBM-leaning operators (likely carrying real inventory) or fba_share > 80 for FBA-heavy flippers. Supports optional brand filter to narrow to operators selling a specific brand.

    Annotations the server declares

    • title: Filter Operators By FBA Share
    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: false
  • find_brands_with_high_seller_churnFind brands experiencing high seller churn relative to their category.No findings

    Why it is in this group

    • The name "find_brands_with_high_seller_churn" says "find": a word for reading.
    Description, as the server wrote it
    Find brands experiencing high seller churn relative to their category. Returns brands where seller_churn_30d_delta_vs_cat_pp >= the specified threshold (default 5pp). Optionally filtered by category. Use when the user asks about 'brands losing sellers', 'high churn brands', or 'seller instability'.

    Annotations the server declares

    • title: Find Brands With High Seller Churn
    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: false
  • find_deconcentrating_brandsFind brands where buybox concentration dropped over the last quarter — more sellers are entering, creating opportunity for new entrants.No findings

    Why it is in this group

    • The name "find_deconcentrating_brands" says "find": a word for reading.
    Description, as the server wrote it
    Find brands where buybox concentration dropped over the last quarter — more sellers are entering, creating opportunity for new entrants. Use when the user asks 'brands losing control', 'deconcentrating brands', 'brands opening up to competition', 'gentrification opportunities', or any question about brands becoming less monopolized.

    Annotations the server declares

    • title: Find Deconcentrating Brands
    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: false
  • find_new_operatorsFind operators (sellers) we FIRST OBSERVED selling recently — their earliest observation in our data falls in the window.No findings

    Why it is in this group

    • The name "find_new_operators" says "find": a word for reading.
    Description, as the server wrote it
    Find operators (sellers) we FIRST OBSERVED selling recently — their earliest observation in our data falls in the window. An observation signal, NOT confirmed market entry: sparse sampling can surface a long-present seller the first time we see them. Different from top_expanding_operators (existing operators adding brands). Use when the user asks 'new sellers this month', 'who just started selling', 'newly seen operators', or any question about emerging/newly-observed sellers.

    Annotations the server declares

    • title: Find New Operators
    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: false
  • find_single_seller_brandsFind brands where a single operator controls 100 percent of observed buybox days.No findings

    Why it is in this group

    • The name "find_single_seller_brands" says "find": a word for reading.
    Description, as the server wrote it
    Find brands where a single operator controls 100 percent of observed buybox days. These are either gated/exclusive or operator-acquired brands. Use when the user asks 'brands with one seller', 'exclusive brands', 'single-seller brands', 'monopoly brands', or any question about brands with no competition.

    Annotations the server declares

    • title: Find Single Seller Brands
    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: false
  • find_sourcing_opportunitiesGiven an Amazon ASIN, diagnose its business model (private-label / wholesale / arbitrage) and find real-world supplier, wholesale and arbitrage matches across the web, then return …No findings

    Why it is in this group

    • The name "find_sourcing_opportunities" says "find": a word for reading.
    Description, as the server wrote it
    Given an Amazon ASIN, diagnose its business model (private-label / wholesale / arbitrage) and find real-world supplier, wholesale and arbitrage matches across the web, then return an HONEST sourcing read: a viability qualifier (green/yellow/red), the specific move + required differentiation, conservative economics, named risks (IP, tariffs, MOQ, saturation, gating, dropship policy) and validation steps. A credible lead generator, not get-rich advice. Scout+.

    Annotations the server declares

    • title: Find Sourcing Opportunities
    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: true
  • find_undercompeted_brandsFind brands with low seller competition but real sales presence.No findings

    Why it is in this group

    • The name "find_undercompeted_brands" says "find": a word for reading.
    Description, as the server wrote it
    Find brands with low seller competition but real sales presence. The flagship sourcing discovery tool. Use when the user asks 'find brands with few sellers', 'low competition brands', 'undercompeted brands under $50', 'brands I could source with little competition', or any variant of 'find me something to sell'. Pass seed_brand when user mentions a reference brand ('brands like Ninja', 'low competition in the same category as OXO') to constrain results to the same root category.

    Annotations the server declares

    • title: Find Undercompeted Brands
    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: false
  • find_underserved_nichesFind UNDER-SERVED NICHES — real SUBCATEGORIES with genuine demand but room to compete, ranked by private-label winnability from 2-year marketplace data.No findings

    Why it is in this group

    • The name "find_underserved_niches" says "find": a word for reading.
    Description, as the server wrote it
    Find UNDER-SERVED NICHES — real SUBCATEGORIES with genuine demand but room to compete, ranked by private-label winnability from 2-year marketplace data. Returns CATEGORIES / sub-categories (e.g. 'Wireless Earbuds', 'Cable Organizers'), NEVER brands. This is the RIGHT tool for ANY niche-discovery question: 'under-served niches', 'niches in <category>', 'find a niche to enter', 'what niche should I sell in', 'underserved categories', 'gaps in <department>', 'where's the opportunity in <category>'. When the user names a department or category (e.g. 'electronics', 'home & kitchen'), pass it as category_name to scope the niches to that area. Do NOT use category_undercompeted_brands or find_undercompeted_brands for niche questions — those return BRANDS, not niches.

    Annotations the server declares

    • title: Find Underserved Niches
    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: false
  • list_trackedList the products this workspace keeps on a live refresh (set up with track_product), each with its current price, buy-box seller and fulfillment, stock state, seller count, the re…No findings

    Why it is in this group

    • The name "list_tracked" says "list": a word for reading.
    Description, as the server wrote it
    List the products this workspace keeps on a live refresh (set up with track_product), each with its current price, buy-box seller and fulfillment, stock state, seller count, the refresh interval and when it was last read, plus the most recent buy-box points (price and seller over time). Use when the user asks 'what changed on my tracked products', 'show my tracked ASINs', 'any buy-box changes'.

    Annotations the server declares

    • title: List Tracked
    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: false
  • lookup_product_by_barcodeLook up products by retail barcode: UPC-12, EAN-13 or GTIN-14.No findings

    Why it is in this group

    • The name "lookup_product_by_barcode" says "lookup": a word for reading.
    Description, as the server wrote it
    Look up products by retail barcode: UPC-12, EAN-13 or GTIN-14. Use when the user gives a numeric product barcode (from a shelf tag, an invoice, a supplier price list, a wholesale catalog) and wants to know which Amazon or Walmart listing it maps to — e.g. 'what is UPC 050875825598 on Amazon', 'match these barcodes to ASINs'. Returns the matched products (best match first — priced and recently observed rows lead) with ASIN, brand, title, price, rating and image. A barcode we have not seen on a listing is searched on Amazon itself (10-20 seconds the first time). One barcode per call; for a list use bulk_product_lookup.

    Annotations the server declares

    • title: Lookup Product By Barcode
    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: true
  • map_violations_todayShow active MAP (Minimum Advertised Price) violations for products in the workspace.No findings

    Why it is in this group

    • The description's first verb is "show": a word for reading.
    Description, as the server wrote it
    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.

    Annotations the server declares

    • title: MAP Violations Today
    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: false
  • market_listsRanked discovery lists from observed Amazon buy-box data, 25 rows per page.No findings

    Why it is in this group

    • The name "market_lists" says "list": a word for reading.
    Description, as the server wrote it
    Ranked discovery lists from observed Amazon buy-box data, 25 rows per page. kind=brand_movers: brands gaining (direction=up) or losing (down) distinct buy-box sellers fastest over 30 or 90 days. seller_movers: sellers whose buy-box footprint grew or shrank most. top_brands: brands ranked by buybox_days / sellers / control_score / asins / revenue / amazon_share, optionally within a root category_id. top_sellers: third-party sellers ranked by brands / buybox_days / asins / revenue (the biggest cross-brand operators). top_categories: categories ranked by asins / brands / heat / revenue / price / sellers (root categories, or the children of parent_id). Use to DISCOVER brands, sellers or categories - sourcing leads, brands under seller pressure, the biggest resellers - then drill in with evaluate_brand, seller_profile or category_metrics. Amazon marketplaces only.

    Annotations the server declares

    • title: Market Lists
    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: false
  • operator_category_dominanceShow which product categories an operator dominates.No findings

    Why it is in this group

    • The description's first verb is "show": a word for reading.
    Description, as the server wrote it
    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.

    Annotations the server declares

    • title: Operator Category Dominance
    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: false
  • operator_compareASIN-level buy-box head-to-head between two operators (sellers).No findings

    Why it is in this group

    • The name "operator_compare" says "compare": a word for reading.
    Description, as the server wrote it
    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.

    Annotations the server declares

    • title: Operator Compare
    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: false
  • operator_lost_brandsShow brands an operator recently stopped selling (churn signal).No findings

    Why it is in this group

    • The description's first verb is "show": a word for reading.
    Description, as the server wrote it
    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.

    Annotations the server declares

    • title: Operator Lost Brands
    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: false
  • operator_new_brandsShow brands an operator recently started selling.No findings

    Why it is in this group

    • The description's first verb is "show": a word for reading.
    Description, as the server wrote it
    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.

    Annotations the server declares

    • title: Operator New Brands
    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: false
  • operator_top_asinsShow the ASINs an operator wins the buybox on most often, ranked by ESTIMATED 30-day sales by default.No findings

    Why it is in this group

    • The description's first verb is "show": a word for reading.
    Description, as the server wrote it
    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).

    Annotations the server declares

    • title: Operator Top ASINs
    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: false
  • operator_top_brandsShow the brands an operator sells the most of, ranked by ESTIMATED 30-day sales by default.No findings

    Why it is in this group

    • The description's first verb is "show": a word for reading.
    Description, as the server wrote it
    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.

    Annotations the server declares

    • title: Operator Top Brands
    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: false
  • playbook_listList the workspace's saved playbooks (name, schedule, last run) and the built-in templates available.No findings

    Why it is in this group

    • The name "playbook_list" says "list": a word for reading.
    Description, as the server wrote it
    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'.

    Annotations the server declares

    • title: Playbook List
    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: false
  • search_productsFree-text keyword search over Amazon product titles + descriptions.No findings

    Why it is in this group

    • The name "search_products" says "search": a word for reading.
    Description, as the server wrote it
    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.

    Annotations the server declares

    • title: Search Products
    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: false
  • top_expanding_operatorsFind sellers (operators) expanding into the most NEW brands in a recent window.No findings

    Why it is in this group

    • The description's first verb is "find": a word for reading.
    Description, as the server wrote it
    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.

    Annotations the server declares

    • title: Top Expanding Operators
    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: false
  • top_sourcing_picksFind 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.No findings

    Why it is in this group

    • The description's first verb is "find": a word for reading.
    Description, as the server wrote it
    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.

    Annotations the server declares

    • title: Top Sourcing Picks
    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: false
  • top_velocity_brandsFind top brands by 90-day unit velocity (brand_velocity_90d_units_day).No findings

    Why it is in this group

    • The description's first verb is "find": a word for reading.
    Description, as the server wrote it
    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.

    Annotations the server declares

    • title: Top Velocity Brands
    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: false
  • unauthorized_sellersList 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 / re…No findings

    Why it is in this group

    • The description's first verb is "list": a word for reading.
    Description, as the server wrote it
    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.

    Annotations the server declares

    • title: Unauthorized Sellers
    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: false
  • watchlist_deltaShow what changed on the user's sourcing watchlist since last check.No findings

    Why it is in this group

    • The description's first verb is "show": a word for reading.
    Description, as the server wrote it
    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.

    Annotations the server declares

    • title: Watchlist Delta
    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: false
  • watchlist_diffShow what changed on a saved tracking list versus its captured baseline — new sellers observed on the tracked ASINs and sourcing-score moves.No findings

    Why it is in this group

    • The name "watchlist_diff" says "diff": a word for reading.
    Description, as the server wrote it
    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.

    Annotations the server declares

    • title: Watchlist Diff
    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: false
  • watchlist_listList the workspace's saved tracking lists (name, type, item count, whether a baseline is set).No findings

    Why it is in this group

    • The name "watchlist_list" says "list": a word for reading.
    Description, as the server wrote it
    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'.

    Annotations the server declares

    • title: Watchlist List
    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: false
  • webotee_job_statusCheck the status of a live Amazon refresh kicked off for an ASIN (returns its current snapshot when ready).No findings

    Why it is in this group

    • The name "webotee_job_status" says "status": a word for reading.
    Description, as the server wrote it
    Check the status of a live Amazon refresh kicked off for an ASIN (returns its current snapshot when ready). job_id is the ASIN. Use after a tool says a live refresh is collecting.

    Annotations the server declares

    • title: Webotee Job Status
    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: false
  • xmkt_pricing_compareCross-marketplace (Amazon vs Walmart) pricing comparison.No findings

    Why it is in this group

    • The name "xmkt_pricing_compare" says "compare": a word for reading.
    Description, as the server wrote it
    Cross-marketplace (Amazon vs Walmart) pricing comparison. Returns matched pairs from mv_product_identity with current Amazon price, current Walmart price, delta %, and a coarse Amazon-FBA profitability check. Each pair also carries the Amazon ASIN's product brand, title and catalog price (or price range) plus fulfillment (FBA/FBM/Amazon). Use for arbitrage / sourcing questions ('cheaper on Walmart?'). Single-ASIN or by-brand.

    Annotations the server declares

    • title: Cross-Market Pricing Compare
    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: false

This is not a safety rating, and no finding is not a safety guarantee. The groups and findings come from fixed checks of the tool definitions the server returned on the date shown, not from its code or what it does when called. How the checks work.

Install

Pinned to version 1.0.0. Values in angle brackets are yours to fill in.

claude mcp add --transport http amazon-product-research https://app.webotee.com/mcp

Run in a terminal.

Claude Code permissions

Allow the reads, ask before a change, deny the deletes. Paste into .claude/settings.json.

.claude/settings.json
{
  "permissions": {
    "allow": [
      "mcp__amazon-product-research__lookup_product_by_barcode",
      "mcp__amazon-product-research__amazon_search_results",
      "mcp__amazon-product-research__xmkt_pricing_compare",
      "mcp__amazon-product-research__find_brands_with_high_seller_churn",
      "mcp__amazon-product-research__categories_amazon_retreating",
      "mcp__amazon-product-research__top_velocity_brands",
      "mcp__amazon-product-research__top_sourcing_picks",
      "mcp__amazon-product-research__top_expanding_operators",
      "mcp__amazon-product-research__brands_gaining_sellers",
      "mcp__amazon-product-research__find_undercompeted_brands",
      "mcp__amazon-product-research__operator_compare",
      "mcp__amazon-product-research__brand_buybox_trajectory",
      "mcp__amazon-product-research__category_undercompeted_brands",
      "mcp__amazon-product-research__unauthorized_sellers",
      "mcp__amazon-product-research__operator_new_brands",
      "mcp__amazon-product-research__operator_lost_brands",
      "mcp__amazon-product-research__operator_category_dominance",
      "mcp__amazon-product-research__find_single_seller_brands",
      "mcp__amazon-product-research__find_new_operators",
      "mcp__amazon-product-research__find_deconcentrating_brands",
      "mcp__amazon-product-research__operator_top_asins",
      "mcp__amazon-product-research__operator_top_brands",
      "mcp__amazon-product-research__brand_similar",
      "mcp__amazon-product-research__brand_new_asins",
      "mcp__amazon-product-research__category_top_growers",
      "mcp__amazon-product-research__category_new_entrants",
      "mcp__amazon-product-research__category_metrics",
      "mcp__amazon-product-research__find_underserved_niches",
      "mcp__amazon-product-research__asin_comparables",
      "mcp__amazon-product-research__asin_buybox_history",
      "mcp__amazon-product-research__watchlist_delta",
      "mcp__amazon-product-research__map_violations_today",
      "mcp__amazon-product-research__filter_operators_by_fba_share",
      "mcp__amazon-product-research__filter_brands_by_fba_share",
      "mcp__amazon-product-research__brands_in_operator_network",
      "mcp__amazon-product-research__search_products",
      "mcp__amazon-product-research__shopping_search",
      "mcp__amazon-product-research__watchlist_list",
      "mcp__amazon-product-research__watchlist_diff",
      "mcp__amazon-product-research__playbook_list",
      "mcp__amazon-product-research__webotee_job_status",
      "mcp__amazon-product-research__authorized_seller_list",
      "mcp__amazon-product-research__buybox_loss_alert",
      "mcp__amazon-product-research__web_search",
      "mcp__amazon-product-research__alibaba_supplier_search",
      "mcp__amazon-product-research__find_sourcing_opportunities",
      "mcp__amazon-product-research__market_lists",
      "mcp__amazon-product-research__bulk_product_lookup",
      "mcp__amazon-product-research__list_tracked"
    ],
    "ask": [
      "mcp__amazon-product-research__asin_bsr_history",
      "mcp__amazon-product-research__evaluate_asin_sourcing",
      "mcp__amazon-product-research__evaluate_brand",
      "mcp__amazon-product-research__competitive_landscape",
      "mcp__amazon-product-research__risk_assessment",
      "mcp__amazon-product-research__gating_repricing_advice",
      "mcp__amazon-product-research__operator_brands_by_competition",
      "mcp__amazon-product-research__operator_xmarket_presence",
      "mcp__amazon-product-research__brand_xmarket",
      "mcp__amazon-product-research__brand_under_attack",
      "mcp__amazon-product-research__evaluate_category_for_private_label",
      "mcp__amazon-product-research__asin_profit_calc",
      "mcp__amazon-product-research__watchlist_add_rule",
      "mcp__amazon-product-research__watchlist_stats",
      "mcp__amazon-product-research__watchlist_webwide",
      "mcp__amazon-product-research__collect_asin_now",
      "mcp__amazon-product-research__watchlist_add",
      "mcp__amazon-product-research__operator_resells_what",
      "mcp__amazon-product-research__operator_concentration",
      "mcp__amazon-product-research__operator_new_on_brand",
      "mcp__amazon-product-research__operator_classifier",
      "mcp__amazon-product-research__playbook_create",
      "mcp__amazon-product-research__playbook_run_now",
      "mcp__amazon-product-research__playbook_schedule",
      "mcp__amazon-product-research__find_product_across_web",
      "mcp__amazon-product-research__operator_buybox_losses",
      "mcp__amazon-product-research__my_products",
      "mcp__amazon-product-research__my_store",
      "mcp__amazon-product-research__my_competitors",
      "mcp__amazon-product-research__my_opportunities",
      "mcp__amazon-product-research__product_page_content",
      "mcp__amazon-product-research__keyword_demand",
      "mcp__amazon-product-research__keyword_cross_marketplace",
      "mcp__amazon-product-research__seller_profile",
      "mcp__amazon-product-research__product_dossier",
      "mcp__amazon-product-research__live_offers",
      "mcp__amazon-product-research__live_bestsellers",
      "mcp__amazon-product-research__webotee_account",
      "mcp__amazon-product-research__start_here",
      "mcp__amazon-product-research__keyword_rankings",
      "mcp__amazon-product-research__asin_keywords"
    ],
    "deny": [
      "mcp__amazon-product-research__watchlist_remove",
      "mcp__amazon-product-research__set_cost_floor",
      "mcp__amazon-product-research__authorized_seller_set",
      "mcp__amazon-product-research__track_product"
    ]
  }
}

Tools that only read are allowed, tools that change things ask first, tools that delete or cancel are denied. It assumes the server is installed as amazon-product-research. Review it before you use it.