Apiguru Amazon Data

app.apiguru由 apiguru.app 发布官方发布者v1.1.60更新于 Oct 31, 2026

Live Amazon product, review, search, deal, offer/stock and seller data across 23 marketplaces.

已验证Streamable HTTP可网页运行网页搜索与抓取数据与分析商业与电商

概览

AI 生成的概览

让助手获取覆盖 23 个站点的亚马逊实时数据:商品详情、评论、关键词搜索、促销、卖家报价与卖家资料。

可以做什么
  • 查询单个 ASIN 的完整商品记录,或用更便宜的批量调用一次补全最多 20 个 ASIN
  • 读取商品评分分布与评论摘要,并按关键词结合价格、品牌、成色和促销条件搜索商品
  • 对比某 ASIN 的卖家报价、购物车归属与实时库存
  • 按类目查看畅销榜排名,以及当前促销信息流中的折扣与活动时间
  • 考察卖家:店铺商品列表、买家反馈以及批量店铺资料
  • 列出可用接口及其价格与当前访问模式,并向服务方免费提交反馈
适用场景
适合需要当前亚马逊数据而非静态或缓存数据的场景,例如价格与报价比较、评论口碑分析、类目排名查询和卖家资质核查。也适用于跨多个国家站点的购物、市场与竞品分析任务。
运行要求
可作为远程 HTTP 端点使用,也可通过 npm 或 PyPI 包 apiguru-mcp 在本地以 stdio 运行(需 Node.js 或 Python)。无需账号:不带密钥时走无密钥网关,有少量免费试用额度。可选的环境变量 APIGURU_API_KEY(或请求头 X-API-KEY)可提高额度;APIGURU_BASE_URL 仅用于自建或测试环境。需要网络访问。
安装前请注意
付费工具按条或按次计费,404 仍会计费而 503 不计费。免费额度用尽后,调用会返回 x402 付款要求,支持 x402 的客户端可用钱包中的 USDC 直接支付,可能在无提示的情况下产生支出;没有钱包时需用户在服务方账户页登录。API 密钥属于机密,应通过环境变量或请求头提供,不要粘贴到对话中。通过反馈工具提交的内容会发送给服务方。

安装

在 SourceWeft 中

  1. 打开 控制台中的 Apiguru Amazon Data,将其添加到工作区。
  2. 为需要使用其工具的对话启用该服务。

Web executable,通过 Streamable HTTP。 远程服务在工作区中配置后即可从网页运行时运行。

交给智能体安装

把这段提示词粘贴到 Claude Code、Codex、Cursor 等智能体,或 SourceWeft 对话中。智能体会读取该服务器的安装指南,先向你展示发布者、端点和登录方式,经你同意后再把它添加到你的客户端。密钥不会写进任何命令。

阅读 https://sourceweft.com/mcp/app.apiguru%2Famazon-data/install.md,并按其中说明把这个 MCP 服务器接入我的客户端。修改任何配置之前,先告诉我它的发布者、端点和登录方式,等我确认。不要把 API 密钥写进命令或我会提交的文件;问我密钥应从哪里获取。

查看智能体所依据的安装指南

其他 MCP 客户端

把它添加到你客户端的 mcpServers 配置中。

{
  "mcpServers": {
    "apiguru-amazon-data": {
      "type": "http",
      "url": "https://mcp.apiguru.app/mcp"
    }
  }
}

README

Apiguru Agent Kit

Everything needed for an AI agent to discover, call and pay for the Apiguru Amazon Data API — with no account, no API key and no subscription.

Try it -- no signup, no headers:

bash
curl 'https://agent.apiguru.app/agent/v1/v2/product-details/B09DJLW458/US'

That returns the live product record (title, price, rating, variants) as JSON, with _links to its reviews and offers. Three calls a day are free; after that pay per call with x402, or use an API key. Agents start at https://agent.apiguru.app/llms.txt.

Install in your agent

ClientHow
Claude Codeclaude mcp add --transport http apiguru https://mcp.apiguru.app/mcp or /plugin marketplace add apiguru-app/agent-kit then /plugin install apiguru@apiguru
claude.ai, Claude Desktop, ChatGPTadd connector https://mcp.apiguru.app/account and sign in
Codex CLIcodex mcp add apiguru --url https://mcp.apiguru.app/mcp
CursorAdd to Cursor (runs npx -y apiguru-mcp)
VS CodeInstall in VS Code
Gemini CLIgemini extensions install https://github.com/apiguru-app/agent-kit
Hermes, OpenClaw, any stdio clientnpx -y apiguru-mcp (npm, Node only) or uvx apiguru-mcp (PyPI)
Skill only (any agent)npx skills add apiguru-app/agent-kit or ClawHub apiguru-amazon-data

Why this exists

The API is gated behind register → verify email → get key → top up. Every step assumes a human. Agents cannot do any of it, so agent traffic bounces off the front door.

And agents don't browse — they query indexes: the x402 Bazaar, the MCP Registry, ClawHub. Apiguru was in none of them, and the repo had no OpenAPI spec at all, so there was nothing machine-readable to publish.

Telling us what is broken

Agents are the ones who find the defects in this API, so there are two ways back to us and neither costs anything:

  • GitHub issues — preferred: https://github.com/apiguru-app/agent-kit/issues. A thread can hold a reply, and a fix gets linked back to it.
  • The wall, for callers with no GitHub account: one unauthenticated POST https://dash.apiguru.app/api/v1/feedback with {"message": "...", "category": "bug|wish|praise|question|other", "endpoint": "/search", "agent": "your-name/1.0", "contact": "optional"}. No key, no signup, never billed. Read it at https://dash.apiguru.app/feedback, or GET the same URL for JSON.
  • Over MCP: the free send_feedback tool. From the skill: python scripts/probe.py feedback --message "..." --category bug.

This is not decoration. 1.1.3 exists because an agent reported that search returned the brand as product_title, null for every product_num_ratings, and delivery text with the words welded together.

What is in this repository

PathWhat it is
skill/apiguru-amazon-data/The agent skill: SKILL.md, references, and scripts/probe.py
mcp/The MCP server published to PyPI as apiguru-mcp
npm/The npm bridge, apiguru-mcp
plugin/ + .claude-plugin/The Claude Code plugin and its marketplace entry
spec/endpoints.json and the generated openapi.json / llms.txt

The hosted service that serves these endpoints is operated separately and is not part of this repository.

Licence

See LICENSE.

来源:README.md,提交 0261964

工具

12

product_details

Full product detail for a single ASIN

Use for one product's current listing. Not for several ASINs (product_details_batch), seller offers or stock (offers_stock), or review text (product_reviews). Fetches the complete product record for one ASIN on one marketplace: title, price, star rating, rating count, images, description, feature bullets, variations and category. Price: $0.003 per call. 404 means the ASIN is absent from that marketplace and IS billed. 503 is a temporary failure on our side and is NOT billed - retry. Bullet points and specs are what Amazon shows for the listing; on multi-variant listings they can describe the product family rather than the exact variant. A null field means Amazon did not show it. Keys of `product_information`, `tech_specs` and the other specification tables are trimmed: Amazon prints some rows twice, once with a trailing space ("Package Dimensions "), and the copies are merged under the clean name; when they differ the listing's own value wins (the second copy of "ASIN" on a variant often names the parent).

输入参数geoasin必填fieldscompact

product_reviews

Customer reviews for a single ASIN

Use for what customers say about one product. Not for its full review history (Amazon serves full and star-filtered review lists only to signed-in accounts) or for seller feedback (seller_reviews). Returns the overall rating, rating count, review_histogram (percent of all ratings per star), Amazon's 'customers say' AI summary where that marketplace shows one, and the reviews on the product page (typically up to 8 from this marketplace and 5 from other countries), each with rating, review_date, review_country, from_this_marketplace, verified flag and helpful_votes; from_rating/to_rating keep a star window. Price: $0.003 per call. Same 404-billed / 503-not-billed semantics as product_details. No paging or sort: the reviews are those on the product page; review_coverage says how many and from where. from_rating/to_rating filter them. review_histogram (here and on product_details) gives the share of every rating. customers_say is null where Amazon shows no summary (several marketplaces never do); customers_say_note then says so.

输入参数geoasin必填to_ratingfrom_ratingmax_reviews

product_details_batch

Product detail for up to 20 ASINs in one call

Use to enrich a list of ASINs in one call; compare the ASINs in `results` with the ones you sent. Batch variant of product_details. Accepts a comma-separated ASIN list, deduplicates it, and fetches all of them concurrently. Far cheaper and faster than N single calls. Price: $0.0024 per item (max 20). Billed per ASIN processed, including ones that come back not-found. More than 20 ASINs returns 413. Bullet points and specs are what Amazon shows for the listing; on multi-variant listings they can describe the product family rather than the exact variant. A null field means Amazon did not show it. ASINs Amazon has no record for on that marketplace are listed in not_returned (billed, like a not-found product_details call; retrying will not help). The batch record comes from Amazon's app, not the product page: price, rating, availability, images, bullets and variants, but no best-seller ranks, no category path and no merchant (seller) id. For those call product_details per ASIN. On an API key both cost one request per ASIN, so the batch saves calls and time, not money; keyless (x402) it is also cheaper per item. Compact rows carry brand, weight {raw, unit, value} and dimension {length, width, height, unit, raw} in product_details' shape, read from the row's product_attributes (package dimensions first); outside amazon.com Amazon's app prints centimetres under an inches label, so there dimension.unit is cm while raw keeps Amazon's text.

输入参数geoasins必填fieldscompact

offers_stock

Live offers and inventory for up to 10 ASINs

Use to compare sellers' current offers and see who holds the buy box, and, with check_inventory, how many units a buyer can add to the cart now. The stock number is not a sales estimate. Not for the listing's own details (product_details). Returns the current offer list per ASIN (seller, price, condition, buy-box winner) and, optionally, the actual purchasable stock quantity. Price: $0.0045 per item (max 10). Billed per lookup, which is more than one per ASIN when check_inventory is true. offers_count=winner returns only the offer flagged is_buybox_winner (offers_total keeps the full count); it used to scope only the inventory check and return every offer. /scrape is a legacy alias for the same handler. When Amazon will not return the offer list for an ASIN, the result carries source=product_page: the featured (buy-box) offer read from the product page, offers_on_amazon (how many offers Amazon says exist) and a note; other sellers' offers and stock are then not included. With check_inventory, a cart check that cannot read a quantity is retried once on another session; one that still fails says so on the offer, inventory_response {"error": "cart check failed", "code": "cart_check_failed", "retryable": true}, is not billed, and never reads as a quantity of 0. Each offer carries `ships_from` (the "Ships from" name: Amazon for FBA, else the seller), `delivery_message` (the offer's own delivery promise, e.g. "FREE delivery Friday, October 16 on orders shipped by Amazon over $35") and `delivery_message_secondary` (the "Or fastest delivery ..." line), null when the offer shows none. `delivery` is the same value as `ships_from`, kept for existing integrations; it never held delivery information. A row for an ASIN that could not be answered carries `error`, `code`, `http_status`, `billed`, `retryable` and `next_step`, like a top-level error: `upstream_unavailable` (not billed, retry that ASIN), `no_offers` ("No offers found": the offer list holds no offer that can be bought

输入参数geoasins必填conditionoffers_countcheck_inventory

best_sellers

Best-seller rankings for a category

Use for what sells best in a department right now. The rank is Amazon's, not a sales figure. Best-seller rankings for a department of one marketplace, 50 per page. Every answer carries the department it resolved to and how (category_resolution: by slug, name or a fragment of a name, with a hint when a fragment such as 'shoes' landed on the whole 'Clothing, Shoes & Jewelry' department, or 'subcategory' when a word such as 'camera' named a subcategory), available_categories (that marketplace's departments with slugs; MCP: with compact=false) and available_subcategories (the children of the node shown, with the ids subcategory_code takes). On amazon.com subcategory_code also takes any browse node id at any depth, or a name resolved under the department ("women's shoes", "mules & clogs"); category.subcategory_path gives the node's full path and category.heading the page's own title line. Price: $0.003 per call. No required parameters - calling it bare returns US appliances page 1. `category` accepts a slug, a display name, one of the older US department names, or a unique fragment; category_resolution.via says which, and a fragment match adds a hint naming the subcategories that carry the word, with ids. On amazon.com the whole browse tree is known: subcategory_code takes any node id or a name at any depth, subcategory_name and subcategory_path are filled without a fetch, and available_subcategories lists the node's real children (empty on a leaf). Other marketplaces name only what their navigation showed. page is capped at 5 (a 400 beyond, not a 500). `rank` is the position within the requested list on this page. Rows are the same for every marketplace; only the department vocabulary differs, and the answer carries it.

输入参数geopagelimitfieldscompactcategorysubcategory_code

deals

Current Amazon deals with filters

Use for items currently promoted in Amazon's deals feed. Not for one product's price (product_details); for a brand by name use search with brand= and today_deals=true. Returns the current Amazon deals feed: ASIN, title, deal price, list price, discount, deal badge, start/end time and product links. Filter by department (categories), brand id (brands), rating cut-off, price bounds, minimum discount and Prime program. Every answer carries available_filters (the category and brand ids this marketplace accepts, with names), filters_applied / filters_ignored (what took effect) and next_offset (the next page, null when the feed ends). Price: $0.003 per call. Filters are by id: categories takes a department id or name, brands takes brand ids only; available_filters in every answer lists both with names, and filters_applied / filters_ignored report what Amazon honoured. A page is 30 rows; page with offset=next_offset (null when exhausted); total_count caps at 500. min_price, max_price, min_discount and max_discount are applied to the rows after retrieval, scanning up to 3 feed pages per call, so a page can hold fewer than 30 rows and total_count does not reflect them. An empty answer carries a hint saying why. Deal prices expire: check deal_ends_at. The older price_range and discount_range parameters are still accepted, as buckets (1-5 = under 25 / 25-50 / 50-100 / 100-200 / 200 and up; 1-4 = 10 / 25 / 50 / 70 percent off or more) or as bands such as 25-50 and 70+.

输入参数geolimitbrandsfieldsoffsetcompactmax_pricemin_pricecategoriesmax_discountmin_discountprime_exclusive另有 2 个

seller_profile_batch

Seller profiles for up to 10 seller IDs

Use to vet sellers: name, rating and feedback counts as Amazon displays them. Returns the storefront profile for each seller id: business name, rating, feedback counts, address and marketplace presence. Price: $0.0036 per item (max 10). Seller ID validation is all-or-nothing: one malformed id rejects the entire request with 400. Every row in results is an object with `status`: `ok` (the profile), `not_found` (Amazon has no page for that id on this marketplace; billed, like a 404) or `unavailable` (could not be retrieved right now; NOT billed on the keyed path, `retryable: true`). A row is never null. billable_requests_count counts ok + not_found rows; on the pay-per-call rail the per-item quote is settled up front, so retry `unavailable` ids in a separate call rather than expecting a partial refund. On agent.apiguru.app the answer also carries `success` and `_links.self`; `billable_requests_count` is there on your own key only.

输入参数geoseller_ids必填

seller_products

Products listed by a seller

Use to list one seller's storefront. Products listed by a seller: a storefront search. Takes the same filters as search -- query, page, sort_by, category_id, min_price / max_price, product_condition, brand, today_deals, deal_type -- and answers with filters_applied, filters_ignored and available_filters like search does. Price: $0.003 per call. A malformed seller_id is a free 400, as on seller_profile_batch. metadata.total_pages counts every page of the result (48 rows a page), but Amazon serves at most 7 pages of one query: metadata.reachable_pages is how far page can go, and when it is less, pagination_note says how to see the rest (min_price/max_price bands or category_id). _links.next is the next page while there is one; a page past the end is a free 400 page_out_of_range. Invalid sort_by, price, product_condition or deal_type is a free 400 that lists the allowed values. No single sort order lists a whole storefront: Amazon's relevance order (the default) can count far fewer products than the store holds and repeats products across pages, and other orders include products it leaves out (measured on one store: relevance 321, NEWEST 1,898; on another, relevance and NEWEST shared 90 of 161 products). Page 1 of a storefront without `query` carries `coverage_note` with the recipe: page through sort_by=RELEVANCE and sort_by=NEWEST, split a store larger than 336 products into min_price/max_price bands, dedupe by asin. An empty storefront carries `note`: Amazon reports 0 products for a seller with no listings on that marketplace and for an id that is not a seller alike, so check it with seller_profile_batch (`_links.seller_profile`). Rows have the search row shape: `offers_count` is null unless the card shows a count, and `product_brand` is null on most storefront cards (Amazon prints no brand line there; product_details has `brand_name`).

输入参数geopagebrandlimitqueryfieldscompactsort_bydeal_typemax_pricemin_priceseller_id必填另有 3 个

seller_reviews

Feedback reviews for a seller

Use for a seller's customer feedback (service, shipping). Not for product reviews (product_reviews). Returns paginated seller feedback, optionally filtered to a star-rating window. Price: $0.003 per call. from_rating and to_rating are optional; omit both for unfiltered feedback. A page holds 5 reviews and the answer carries current_page and has_next_page; Amazon exposes no total, so page until has_next_page is false (up to page 100).

输入参数geopagelimitfieldscompactseller_id必填to_ratingfrom_rating

list_capabilities

List endpoints, prices and marketplaces (free)

List every Apiguru endpoint with its price, required parameters and supported marketplaces, plus your current access mode, cache and session budget. Free: answers locally with no network request and no charge. Call this before paid tools if you need to plan.

无需输入参数。

send_feedback

Report a bug or request a feature (free)

Report a bug, ask for a field, or say what would make this API more useful. Free: never billed, no API key needed. Prefer GitHub if you have an account -- an issue at https://github.com/apiguru-app/agent-kit/issues gets a reply on the thread, this wall does not. Use this tool when you have no GitHub account or nothing to attach one to. message: what happened or what you want. Be specific: the tool, the parameters, the field, what you expected, what you got, and the request_id from the answer. One issue per entry -- a five-point list cannot be closed point by point. category: bug | wish | praise | question | other endpoint: which tool or path it is about, e.g. "search". agent: what you are, e.g. "acme-pricing-bot/2.1". Optional. contact: a GitHub handle or email if you want a reply. Shown publicly on the wall. Optional.

输入参数agentcontactmessage必填categoryendpoint

版本历史

23
  1. v1.1.60最新Oct 31, 2026
  2. v1.1.58Oct 29, 2026
  3. v1.1.57Oct 26, 2026
  4. v1.1.56Oct 21, 2026
  5. v1.1.55Oct 17, 2026
  6. v1.1.54Oct 11, 2026
  7. v1.1.53Oct 11, 2026
  8. v1.1.52Oct 10, 2026
  9. v1.1.51Oct 6, 2026
  10. v1.1.50Oct 2, 2026
  11. v1.1.48Oct 1, 2026
  12. v1.1.46Sep 30, 2026
  13. v1.1.42Sep 30, 2026
  14. v1.1.40Sep 29, 2026
  15. v1.1.38Sep 29, 2026
  16. v1.1.36Sep 27, 2026
  17. v1.1.35Sep 27, 2026
  18. v1.1.33Sep 27, 2026
  19. v1.1.32Sep 27, 2026
  20. v1.1.30Sep 26, 2026
  21. v1.1.29Sep 21, 2026
  22. v1.1.28Sep 21, 2026
  23. v1.1.25Sep 16, 2026

评分

已满足适用检查项的 100%

该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。

  • 近 30 天内可连通必需25 分
  • 已声明认证方式必需10 分
  • 已列出工具必需15 分
  • 描述必需15 分
  • 图标10 分
  • 文档15 分
  • 许可证10 分