Product Page Extractor

dev.workers.mohamed-bahaa53000.product-extractorPublished by product-extractor.mohamed-bahaa53000.workers.devOfficial publisherv1.1.2Updated Nov 2, 2026

Price & stock checks, catalog enrichment: product URL or HTML to JSON, with price_source. RapidAPI

Overview

AI-generated overview

Remote MCP server that turns a product page URL or raw HTML into structured JSON with price, stock, brand and identifiers.

What you can do
  • Extract product data from a URL or supplied HTML: name, brand, SKU/GTIN/MPN, price, currency, availability, images, rating, review count and all offers, with a price_source field showing where the price came from.
  • Optionally include an LLM-ready Markdown copy of the page or the raw JSON-LD blocks.
  • Batch-extract up to 10 URLs in one call, with per-page ok/error results (paid endpoint only).
When to use it
Useful for agents doing competitor price and stock checks, catalog enrichment with GTIN/MPN/brand for product matching, or converting a product page into Markdown for an LLM to read.
Requirements
A remote Streamable HTTP endpoint; nothing to install locally. The demo endpoint needs no key but is limited to 10 tool calls per IP per UTC day with no batch. The paid RapidAPI endpoint requires the X-RapidAPI-Key and X-RapidAPI-Host headers; a free Basic plan exists, Pro is paid. Clients that only support stdio can bridge via npx mcp-remote.
Before you install
The paid endpoint sends requests through RapidAPI and bills per request, so usage can cost money. The X-RapidAPI-Key header is a secret and should be kept out of shared configs. Pages and HTML are not stored beyond standard request logs, but URLs and HTML are sent to a third-party hosted service. It does not bypass anti-bot pages or run JavaScript, so prices may come back null.

Installation

In SourceWeft

  1. Open Product Page Extractor in the dashboard and add it to a workspace.
  2. Enable the server for the chats that should use its tools.

Web executable via Streamable HTTP. Remote servers run from the web runtime once configured in a workspace.

Use with an agent

Paste this prompt into Claude Code, Codex, Cursor or another agent — or into SourceWeft chat. The agent reads this server's install guide, shows you its publisher, endpoint and sign-in, and adds it to your client once you agree. Keys never go into a command.

Read https://sourceweft.com/mcp/dev.workers.mohamed-bahaa53000.product-extractor%2Fproduct-page-extractor/install.md and connect the MCP server it describes to my client. Before changing any config, show me its publisher, endpoint and sign-in method and wait for my OK. Never put an API key in a command or in a file I would commit; ask me where it should come from.

Read the install guide the agent follows

Other MCP clients

Add this to your client's mcpServers config.

{
  "mcpServers": {
    "product-page-extractor": {
      "type": "http",
      "url": "https://product-extractor.mohamed-bahaa53000.workers.dev/demo/mcp"
    }
  }
}

README

Product Page Extractor: remote MCP server

[Product Page Extractor logo]

For e-commerce and pricing teams: turn any product page URL (or HTML you already have) into clean JSON with price, stock, brand and identifiers.

1. Connect (free, no key; works in Claude Desktop, Cursor, Cline, VS Code and any client that supports remote Streamable HTTP):

json
{  "mcpServers": {    "product-extractor": {      "url": "https://product-extractor.mohamed-bahaa53000.workers.dev/demo/mcp"    }  }}

2. Ask: "What's the price and stock status of https://www.allbirds.com/products/mens-tree-runners?" Your agent calls:

json
{"name":"extract_product","arguments":{"url":"https://www.allbirds.com/products/mens-tree-runners"}}

3. Get (real output from the free demo endpoint, trimmed):

json
{"name":"Men's Tree Runner","brand":"Allbirds","price":100,"currency":"USD","in_stock":true,"price_source":"json-ld"}

What makes it different

  • Shows where the price came from. Each result has a price_source field (json-ld, microdata, meta, or null), so your agent can tell a structured price apart from a guess. If a page renders its price with JavaScript, you get null rather than a wrong number.
  • Works on raw HTML, not just URLs. Already scraped the page, or the site blocks bots? Pass the html (up to 2 MB) and skip the fetch.
  • Returns every offer, not just the first price: variants, sellers and sale prices, up to 50 per page.
  • LLM-ready Markdown of the page with include=markdown, or the raw JSON-LD blocks with include=jsonld.
  • MCP-native with a free, keyless demo endpoint, so an agent can try it with one line of config.

It doesn't get past anti-bot pages (Amazon, Best Buy, REI) and doesn't run JavaScript. For those, fetch the HTML yourself and pass it in.

No-code version

Not building an agent? Try it free in your browser: no key or sign-up, 10 pages a day. Swap the url= value for any product page and you get the JSON back.

Try it free

  • No key, right now: point any MCP client at https://product-extractor.mohamed-bahaa53000.workers.dev/demo/mcp (10 tool calls per IP per day).
  • Free RapidAPI plan: 50 requests/month on the Basic plan, no card needed. Pro is $9.99 for 5,000.

This is a hosted (remote) MCP server using Streamable HTTP. There's nothing to install or run locally. This repository holds only the documentation and the MCP Registry manifest; the server code is not open source.

EndpointAuthLimits
https://product-extractor.mohamed-bahaa53000.workers.dev/demo/mcpnonefree, 10 tool calls per IP per UTC day, no batch
https://product-page-extractor.p.rapidapi.com/mcpX-RapidAPI-Key + X-RapidAPI-Host headerspaid per request via RapidAPI (free Basic plan available)

Official MCP Registry name: dev.workers.mohamed-bahaa53000.product-extractor/product-page-extractor

Tools

  • extract_product: url or html, plus an optional include (product,meta,markdown,jsonld). Data is read from schema.org JSON-LD, microdata and OpenGraph.
  • extract_batch: up to 10 URLs in one call, with ok/error for each page (paid endpoint only).

Use cases

  • Price and stock checks for agents doing competitor monitoring.
  • Catalog enrichment: GTIN/MPN/brand for product matching.
  • Turning a product page into Markdown for an LLM to read.

Examples

Ask your agent: "What's the price and stock status of https://www.allbirds.com/products/mens-tree-runners?" It calls:

json
{"name":"extract_product","arguments":{"url":"https://www.allbirds.com/products/mens-tree-runners"}}

Already have the HTML (from your own crawler, or a site that blocks bots)? Pass it in and skip the fetch:

json
{"name":"extract_product","arguments":{"html":"<html>...</html>","include":"product,markdown"}}

Plain REST works too:

bash
curl "https://product-extractor.mohamed-bahaa53000.workers.dev/demo/v1/extract?url=https://www.allbirds.com/products/mens-tree-runners"

Connect

json
{  "mcpServers": {    "product-extractor": {      "url": "https://product-extractor.mohamed-bahaa53000.workers.dev/demo/mcp"    }  }}

Paid / production (RapidAPI):

json
{  "mcpServers": {    "product-extractor": {      "url": "https://product-page-extractor.p.rapidapi.com/mcp",      "headers": {        "X-RapidAPI-Key": "YOUR_RAPIDAPI_KEY",        "X-RapidAPI-Host": "product-page-extractor.p.rapidapi.com"      }    }  }}

For clients that only support stdio: npx -y mcp-remote https://product-extractor.mohamed-bahaa53000.workers.dev/demo/mcp

Notes

  • Stateless. Pages and HTML aren't stored beyond standard request logs.
  • Only fetches public http/https pages.

License

MIT for this repository's docs and config examples (see LICENSE). The hosted service is proprietary.

Source: README.md at commit 067c6c4

Tools

1

extract_product

Extract product data from a page

Turn a product page URL (or raw HTML) into clean JSON: name, brand, SKU/GTIN/MPN, price, currency, availability/in_stock, images, rating, review count and every offer, read from schema.org JSON-LD, microdata and OpenGraph. Add include=markdown for an LLM-ready Markdown copy of the page, or include=jsonld for the raw blocks. Use it for price checks, competitor monitoring and catalog enrichment. Sites that block bots or render prices only with JavaScript can return price null; the result says where the price came from (price_source).

Parametersurlhtmlinclude

Version history

1
  1. v1.1.2LatestOct 18, 2026

Score

90% of the applicable checks met

How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.

  • Reached in the last 30 daysRequired25 pts
  • Auth declaredRequired10 pts
  • Tools listedRequired15 pts
  • DescriptionRequired15 pts
  • Logo10 pts
  • Documentation15 pts
  • License10 pts

    Declare a license in the repository or the registry entry.