Amazon Products

io.github.jbeshir由 GitHub 帳號 jbeshir 發布v1.0.1更新於 Oct 30, 2026

Search for products and get detailed product information from Amazon across multiple regional sites.

概覽

AI 產生的概覽

透過無頭 Chrome 瀏覽器在 22 個 Amazon 區域網站搜尋商品並取得商品詳情,回傳價格、評分與變體資訊。

可以做什麼
  • 列出支援的 Amazon 區域及其 ID、名稱與貨幣
  • 依關鍵字在指定區域搜尋商品,回傳價格、評分與 Prime 資格
  • 依 ASIN 取得商品詳情,包括價格、描述、特色、評分、供貨狀況與變體
適用情境
適合在挑選商品時讓助理查詢 Amazon 商品列表、比較各國網站的價格,或查看供貨與變體狀況。
執行需求
以 stdio 方式在本機執行,僅支援桌面端。需要安裝 Google Chrome 或 Chromium(伺服器會以無頭模式啟動它);Linux 上建議使用非 snap 版本,可用 CHROME_EXEC_PATH 指定執行檔路徑。選用環境變數 AMAZON_REGION 可設定預設區域(預設為 us)。README 另提供內含 Chrome 的 Docker 映像。需要能連上 Amazon 的網路。
安裝前請注意
它透過偽裝自動化特徵的無頭瀏覽器擷取 Amazon 頁面,可能與 Amazon 的服務條款衝突。Amazon 可能回傳 WAF 挑戰或 CAPTCHA 頁面,遇到 CAPTCHA 會直接回報錯誤。它只讀取商品資訊,不會下單購買。請求會送往 Amazon 各區域網站。

安裝

在 SourceWeft 中

  1. 開啟 儀表板中的 Amazon Products,將其新增到工作區。
  2. 為需要使用其工具的對話啟用該服務。

Desktop only,透過 STDIO。 STDIO 服務會啟動本機處理程序,因此需要 SourceWeft 桌面主機。

其他 MCP 客戶端

參照 儲存庫 中的啟動說明。

README

Amazon Products MCP Server

An MCP server for searching and getting product details from Amazon. Supports 22 regional Amazon sites, extracts prices, ratings, features, availability, and product variants. Uses a headless Chrome browser to render pages and handle Amazon's anti-bot protections. Communicates over stdio and works with any MCP-compatible client such as Claude Desktop or Claude Code.

Getting Started

Requirements

  • Google Chrome or Chromium installed (the server launches it in headless mode)

    On Linux, avoid snap-packaged Chromium (Ubuntu's default chromium package). It is known to hang indefinitely — both on graceful CDP tab-close and on OS-level process reaping after a forced kill — when launched as a descendant of certain parent processes (observed running under Claude Desktop's Electron process tree). The hang was 100% reproducible under that setup and never reproduced with the same code against a non-snap Chrome/Chromium build. Install Google Chrome or a non-snap Chromium build instead, and point CHROME_EXEC_PATH at it if it isn't picked up automatically.

Configuration

VariableRequiredDescription
AMAZON_REGIONNoDefault Amazon region (default: us). Can be overridden per request.
CHROME_EXEC_PATHNoPath to the Chrome/Chromium binary to launch. Leave unset to use automatic detection. See the note above about snap-packaged Chromium on Linux.

Install from source

Requires Go 1.27.3+.

go install github.com/jbeshir/mcp-servers/amazon-products/cmd/amazon-products-mcp@latest

Docker

The Docker image bundles a headless Chrome shell, so no local Chrome installation is needed.

docker build -t amazon-products-mcp ./amazon-productsdocker run -e AMAZON_REGION=us amazon-products-mcp

Claude Desktop

Add to your Claude Desktop configuration (claude_desktop_config.json):

json
{  "mcpServers": {    "amazon-products": {      "command": "/path/to/amazon-products-mcp",      "env": { "AMAZON_REGION": "us" }    }  }}

Claude Code

claude mcp add amazon-products -- env AMAZON_REGION=us /path/to/amazon-products-mcp

Tools

ToolDescription
list_regionsList all supported Amazon regions with their IDs, names, and currencies
search_productsSearch for products on Amazon by keyword. Returns prices, ratings, and Prime eligibility. Parameters: query (required), region (optional)
get_product_detailsGet detailed product info by ASIN including price, description, features, rating, availability, and variants. Parameters: asin (required), region (optional)

Supported Regions

IDNameDomainCurrency
aeUnited Arab Emiratesamazon.aeAED
auAustraliaamazon.com.auAUD
beBelgiumamazon.com.beEUR
brBrazilamazon.com.brBRL
caCanadaamazon.caCAD
deGermanyamazon.deEUR
egEgyptamazon.egEGP
esSpainamazon.esEUR
frFranceamazon.frEUR
ieIrelandamazon.co.ukGBP
inIndiaamazon.inINR
itItalyamazon.itEUR
jpJapanamazon.co.jpJPY
mxMexicoamazon.com.mxMXN
nlNetherlandsamazon.nlEUR
plPolandamazon.plPLN
saSaudi Arabiaamazon.saSAR
seSwedenamazon.seSEK
sgSingaporeamazon.sgSGD
trTurkeyamazon.com.trTRY
ukUnited Kingdomamazon.co.ukGBP
usUnited Statesamazon.comUSD

Key Concepts

  • ASIN -- Amazon Standard Identification Number. A 10-character alphanumeric ID (e.g. B09CDRVQZC) that uniquely identifies a product on Amazon. Used as the primary key for get_product_details.
  • Regions -- Each Amazon region maps to a specific domain (e.g. us maps to amazon.com, de maps to amazon.de). The region determines which site is scraped and which currency prices are reported in. A default region is set via AMAZON_REGION and can be overridden per request.
  • Variants -- Product variations along dimensions like size, color, or style. Each variant dimension lists its options with states: SELECTED (currently viewed), AVAILABLE (can be selected), or UNAVAILABLE (out of stock). Each available option includes an ASIN for fetching that specific variant.
  • WAF challenges -- Amazon's Web Application Firewall sometimes returns a 503 page with a JavaScript challenge instead of the real content. The browser handles this by navigating to the Amazon homepage first to acquire cookies, then retrying the target URL with a 3-second delay between attempts (up to 3 attempts).
  • CAPTCHA detection -- If Amazon presents a CAPTCHA page, the server detects it and returns an error immediately rather than timing out. This is a distinct condition from WAF challenges and cannot be bypassed automatically.
  • Anti-detection -- The headless browser overrides JavaScript properties (navigator.webdriver, navigator.plugins, window.chrome) and uses a realistic user agent and window size to reduce the chance of being identified as automation.

Architecture Overview

mermaid
graph LR    Client["MCP Client<br/>(Claude Desktop, Claude Code)"]    Server["amazon-products-mcp<br/>MCP Server (3 tools)"]    Scraper["Datasource<br/>region-specific"]    Browser["Headless Chrome<br/>(chromedp)"]    Amazon["Amazon<br/>22 regional sites"]
    Client -- "JSON-RPC over stdio" --> Server    Server --> Scraper    Scraper --> Browser    Browser -- "HTTPS" --> Amazon

The server has three internal layers:

  • cmd/amazon-products-mcp -- Entry point. Reads AMAZON_REGION from the environment, creates the shared browser instance and MCP server, and starts the stdio transport.
  • internal/server -- Registers 3 MCP tools, resolves the target region per request, and formats responses as JSON.
  • internal/scraper -- Two components: Datasource builds Amazon URLs for a given region and parses returned HTML into structured data. Browser manages a shared headless Chrome instance, handles WAF challenges/retries, and waits for page rendering to complete.

Data Flow

mermaid
sequenceDiagram    participant C as MCP Client    participant S as MCP Server    participant B as Headless Browser
    C->>S: search_products(query, region)    S->>B: Fetch(searchURL)
    Note over B: Open new tab    B->>B: Navigate to Amazon homepage    Note over B: Acquire WAF cookies    B->>B: Navigate to search URL    B->>B: Wait for DOM stability
    alt WAF 503 challenge        B->>B: Wait 3s, retry (up to 3x)    end    alt CAPTCHA detected        B-->>S: ErrCAPTCHA        S-->>C: Error: CAPTCHA page    end
    B-->>S: Rendered HTML    S->>S: Parse HTML into products    S-->>C: Product results (JSON)

Each request runs in its own browser tab for concurrency safety. The browser waits for either a specific CSS selector (#productTitle for product pages) or DOM stability (body content unchanged for 2 consecutive polls at 500ms intervals) before capturing HTML.

來源:amazon-products/README.md,提交 27dc1b2

工具

0
SourceWeft 尚未在沙箱中啟動過該軟體包,因此其工具未知。

版本歷史

2
  1. v1.0.1最新Oct 29, 2026
  2. v1.0.0Sep 16, 2026

評分

已滿足適用檢查項的 50%

該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。

  • 近 30 天內可連通25 分

    請保持端點能夠回應 MCP 握手;SourceWeft 每 30 天探測一次。

  • 已宣告認證方式10 分

    請在註冊中心條目中宣告憑證請求標頭,或保持端點能夠回應探測,以便判定其認證方式。

  • 已列出工具15 分

    請讓伺服器在無憑證時回應 tools/list,或發布可在沙箱中無憑證啟動的軟體包。

  • 描述必需15 分
  • 圖示10 分
  • 文件15 分
  • 授權條款10 分