Product Page Extractor
Turn a product page URL, or raw HTML you already have, into clean JSON: price, currency, stock, SKU/GTIN/MPN, images, rating and every offer. Each result says where the price came from (price_source), so agents can tell a structured price from a guess. Optional LLM-ready Markdown. Free keyless demo.
Hosted MCP Server
npx add-mcp 'https://product-extractor.mohamed-bahaa53000.workers.dev/demo/mcp'Installs into Claude Code, Codex, Cursor and more
Documentation
Product Page Extractor: remote MCP server
Give it a product page URL, or HTML you already have, and get back clean JSON: name, brand, price, currency, stock, SKU/GTIN/MPN, images, rating, and every offer.
What makes it different
- Shows where the price came from. Each result has a
price_sourcefield (json-ld,microdata,meta, ornull), so your agent can tell a structured price apart from a guess. If a page renders its price with JavaScript, you getnullrather 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 withinclude=jsonld. - MCP-native with a free, keyless demo endpoint, so an agent can try it with one line of config.
Example (live, from the free demo):
{"name":"Men's Tree Runner","brand":"Allbirds","price":100,"currency":"USD","in_stock":true,"price_source":"json-ld"}
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.
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.
- Using n8n? Get competitor price monitoring installed in your n8n for $149, done for you.
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.
| Endpoint | Auth | Limits |
|---|---|---|
https://product-extractor.mohamed-bahaa53000.workers.dev/demo/mcp | none | free, 10 tool calls per IP per UTC day, no batch |
https://product-page-extractor.p.rapidapi.com/mcp | X-RapidAPI-Key + X-RapidAPI-Host headers | paid per request via RapidAPI (free Basic plan available) |
Official MCP Registry name: dev.workers.mohamed-bahaa53000.product-extractor/product-page-extractor
Tools
extract_product:urlorhtml, plus an optionalinclude(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:
{"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:
{"name":"extract_product","arguments":{"html":"<html>...</html>","include":"product,markdown"}}
Plain REST works too:
curl "https://product-extractor.mohamed-bahaa53000.workers.dev/demo/v1/extract?url=https://www.allbirds.com/products/mens-tree-runners"
Connect
{
"mcpServers": {
"product-extractor": {
"url": "https://product-extractor.mohamed-bahaa53000.workers.dev/demo/mcp"
}
}
}
Paid / production (RapidAPI):
{
"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.