Skip to main content
Glama
logimu-shopping-mcp

logimu-shopping-mcp

deals

Read-onlyIdempotent

Fetch live Amazon sale listings filtered by department, discount, price, rating, brand, or collection to find current discounts, Lightning offers, coupons, and Prime-only items.

Instructions

LIVE Amazon Today's Deals: the deals page of one marketplace, read from Amazon at request time and filtered the way Amazon's own page filters it - department (category_id), deal collection (deal_types: lightning_deal, trending, coupons, started_today, ending_today; or any collection id an answer lists), percent off, price, Prime Exclusive, minimum rating, brand. USE WHEN the user asks what is on sale or discounted on Amazon right now, wants today's deals or lightning deals in a department, deals above a discount or under a price, coupon deals, or deals ending today. DON'T USE for one product's price history or past price drops (product with offer_history), for who sells a product right now (offers), for a keyword search (serp, shopping) or for what sells best in a category (bestsellers). RETURNS deals[] (position, asin, title, link, image, deal_id, deal_link, deal_type e.g. BEST_DEAL / LIGHTNING_DEAL, is_lightning_deal, deal_state, percent_claimed, ends_at, deal_price and list_price {value, currency, symbol, label}, percent_off, savings, deal_badge, is_prime_price, coupon {text, amount, promotion_id, link}, brand, brand_id, department_ids, product_group, product_type, variations), categories[] (category_id, name, selected: the departments to pass back as category_id), collections[] (id, name: pass back as collection), facets (brands with ids, reviewRating, price and percentOff ranges, accessType), selected_filters, filter_check (per requested filter: applied / not_applied / unverified), pagination (page, page_size, pages_fetched, start_index, returned, has_more, partial), amazon (marketplace_id, locale, currency), observed_at and cached. HONESTY: an empty deals list is a real answer (e.g. no lightning deals running at this hour); a filter Amazon did not apply (filter_check not_applied, e.g. a category_id that is not one of the marketplace's deals departments) is refused as an error, never billed, instead of serving the unfiltered page; unverified filters are served, so say so before relying on them; there is no total count (has_more says whether the last page came back full) and no deal start time; ends_at only where Amazon shows a countdown; list_price is Amazon's reference price with its own label (RRP, Was, Typical ...), null when the page shows none. LATENCY is SECONDS: ~10-30s a page (pages=5 up to ~2 min); an identical request within 15 min may come from our cache in milliseconds. MARKETPLACES us, uk, de, ca, au, fr, it, es, jp, mx, br (no Walmart). COST API key required (the free no-signup lane cannot run live fetches). 1 credit per deals page fetched that returned at least one deal, whatever its size (30, 60, 90 or 120 deals are all 1 credit, so page_size=120 gives the most deals per credit), cached or fresh; a page with no deals, an empty list, a blocked or busy fetch and bad input are never billed.

Input Schema

NameRequiredDescriptionDefault
urlNoOptional: an Amazon deals URL (/deals, /events/deals or /gp/goldbox). The host decides the marketplace and its query string is kept (e.g. a filtered deals page copied from the browser).
pageNo1-based page of the deals list.
brandNoA brand id from facets.brands of a previous answer (e.g. 811979|dreame).
pagesNoConsecutive pages merged into one answer, starting at page (stops early on a short page). 1 credit per page that returned deals.
countryNoThe Amazon marketplace whose deals page to read. Required unless url is given; with url it must match the URL's marketplace.
discountNoRainforest form of min_discount (50_percent_off = at least 50% off). Not together with min_discount.
max_priceNoMaximum deal price in the marketplace currency (Amazon applies whole units; a fraction is rounded up).
min_priceNoMinimum deal price in the marketplace currency (Amazon applies whole units; a fraction is rounded down).
page_sizeNoDeals per page; Amazon serves steps of 30 only. Every page is 1 credit whatever its size, so 120 gives the most deals per credit.
collectionNoAny other collection id from collections[] of a previous answer (collections differ per marketplace and over time). Not together with deal_types.
deal_typesNoOne of Amazon's stable deal collections. Not together with collection.
category_idNoA deals department id from categories[] of a previous answer (Amazon applies one department at a time).
max_discountNoMaximum percent off (0-100).
min_discountNoMinimum percent off (0-100).
minimum_ratingNoOnly products rated at least this many stars (1-4).
prime_exclusiveNotrue = Prime Exclusive deals only.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Addedv1.8.0

TDQS

A4.8/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations cover the safety profile (readOnly, idempotent, openWorld, non-destructive), but the description goes well beyond structured fields: it discloses that an empty list is a real answer, that an unapplied filter is refused as an error rather than billed, that unverified filters are served with a caveat, that there is no total count and no deal start time, and that list_price is Amazon's labeled reference price. It also states latency (10-30s per page, cache within 15 min) and per-page credit billing, including which outcomes are never billed.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Front-loaded with the resource and the USE/DON'T USE routing, then organized into clear labeled sections (RETURNS, HONESTY, LATENCY, MARKETPLACES, COST) that make it skimmable despite its length. It is long and duplicates a little structured data (the marketplace list mirrors the country enum, page_size credit note restates the schema), but the RETURNS block is genuinely needed given no output schema exists.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a 16-parameter live-scraping tool with no output schema, the description supplies the full return shape (deals[], categories[], collections[], facets, selected_filters, filter_check, pagination, amazon, observed_at, cached), the honesty caveats, latency, marketplaces, and cost model. An agent has everything needed to call it correctly and interpret the result.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the baseline is 3, and the description mostly echoes the filter set already documented in the schema. It does add cross-call flow meaning the schema lacks: category_id, brand, and collection values are meant to be passed back from categories[]/facets.brands/collections[] of a previous answer, which clarifies how the chained filter call is meant to be constructed.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource (read Amazon's live Today's Deals page for one marketplace) and names exactly which siblings it is not for (product/offer_history, offers, serp, shopping, bestsellers). An agent can separate this from every other sibling without opening a schema.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicit USE WHEN block enumerates the triggering intents (what's on sale now, lightning deals in a department, deals above a discount/under a price, coupons, ending today) and an explicit DON'T USE block routes to the correct alternatives for price history, sellers, keyword search, and bestsellers. Nothing is left to inference.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.