scrapewright MCP server
online · 100% uptimeio.github.Ozymandias-Owens-2/scrapewright·v1.0.3·1 starsGive it a URL, get structured rows. A model writes the parser once; replays are free.
1 stars82 downloads/wk
Reviews
Write oneNobody has reviewed scrapewright yet.
If you have run it, two minutes of your experience saves the next person an afternoon.
scrapewright tools (5)
write = sends, deletes, buys or postsaccountFreeCredits left and this month's usage for the key in use.
crawl_siteFreeWalk a site and extract every item. Waits up to four minutes; a longer crawl returns a job_id to pass to crawl_status. `mode` picks how the items are found. "rows" (the default) reads every card on the listing itself and follows its pagination -- right for search results, categories and tables. "links" follows each card into its own page, for sites where an item has one. "like" starts from one example item page, given as `like_page`, and finds every other page shaped like it; pass `listing_url` as well when you know the stock or results page, because inferring it is the part that fails.
crawl_statusFreeFetch a crawl that outlived its call.
detect_siteFreeReport what platform a site runs on and which strategy to use. Cheap; call it before a large job.
extract_pageFreeExtract structured data from ONE page. ``fields`` declares your own schema, e.g. ["title", "salary:number", "tags:list"]; omit it for the product schema. First call on a new site compiles a recipe (300 credits); later calls replay it for 1 credit per row. A site nobody could read is remembered for a week and answered without calling the model, so re-reading a dead page costs nothing. `retry` asks anyway.
Public scan report
scanner v0.1.10 · 2026-10-16 · same rubric, same numbers if you re-run it
- Code scan37 source files scanned25/25
- Live reliabilityremote reachable in 1236ms20/20
- Tool poisoning5 tool descriptions checked15/15
- Auth qualityAPI key sent as a header8/15
- Maintenancelast push 1 days ago15/15
- Maintainer identityregistry namespace matches repository owner; GitHub account older than a year8/10
How scrapewright compares
Against every graded AI and agents MCP server, from our own scans and uptime checks. Updated after each scan run.
- Safety score
- 91/100
- higher than 88% of 4,461 AI and agents servers
- Tools
- 5
- the typical AI and agents server has 6
- Tools that change things
- 0%
- typical: 0%. Fewer write tools means less an agent can break
- Uptime
- 100%
- of our recent checks; the typical remote AI and agents server answers 100%
- Response time
- 367 ms
- faster than 40% of 2,334 AI and agents servers
- GitHub stars
- 1
- more than 50% of 2,713 AI and agents servers
- Downloads a week
- 82
- more than 57% of 1,554 AI and agents servers with a package
What its tools let an agent do: 5 read
Release history: 3 versions in the registry since 2026-09-03, latest 2026-09-29, typically one every 17 days.
Install scrapewright in Claude Code, Cursor or VS Code
claude mcp add --transport http scrapewright https://scrapewright.app/mcp
What the publisher says
From the scrapewright repository's README, as published. We do not edit it. Read it on GitHub
scrapewright
Give it a URL. It writes the scraper.
Most e-commerce catalog scraping splits into two worlds: sites on a known platform (Shopify, WooCommerce) that expose a clean JSON feed, and everything else — bespoke HTML where you hand-write a parser per site and re-write it every time the markup shifts. scrapewright collapses both into one call:
API — free, stable, no LLM.
- Detect the platform behind a URL.
- For known platforms, extract deterministically from their public catalog
it, and replay it deterministically forever after.
- For custom HTML, synthesize a reusable extractor once with an LLM, cache
The LLM is a compiler, not a runtime. It runs once per site to produce a recipe of CSS selectors; every page after that is parsed by plain BeautifulSoup at zero marginal cost. That is the whole cost-control story — no per-page model calls, no token bill that scales with your crawl.
┌─────────────┐
store URL ───▶ │ detect │
└──────┬──────┘
┌──────────────────┼──────────────────┐
▼ ▼ ▼
shopify woocommerce generic HTML
products.json wc/store/products (page mode)
│ │ │
│ deterministic │ ▼
│ (free) │ cached recipe? ──yes──▶ replay (free)
└────────┬─────────┘ │ no
▼ ▼
Product{} ◀───── selectors ── JSON-LD? ──yes──▶ Product{} (free)
▲ │ no
│ ▼
└──────── replay ◀── LLM synthesizes recipe ONCE ──▶ cacheEverything normalizes to one Product shape, so downstream code never knows or cares which path a record came from.
Install
pip install scrapewright # deterministic paths (Shopify, Woo, JSON-LD)
pip install "scrapewright[llm]" # + LLM recipe synthesis for custom HTML
pip install "scrapewright[llm,js,excel,mcp]" # + JS rendering, XLSX, MCP server
playwright install chromium # only needed for --jsUse it
from scrapewright import Scrapewright
sw = Scrapewright()
# Catalog mode — a whole Shopify/WooCommerce store, deterministically
for product in sw.scrape_catalog("https://shop.example.com", max_items=200):
print(product.brand, product.title, product.price, product.currency)
# Page mode — one custom-HTML product page.
# First call: tries JSON-LD (free); if absent, the LLM writes a recipe once.
# Every later call on that domain: replayed from the cached recipe, no LLM.
item = sw.scrape_page("https://boutique.example.com/products/wool-coat")
print(item.model_dump(exclude={"raw"}))
# Crawl mode — walk a WHOLE custom store from one listing/category URL.
# The frontier discovers product pages (deterministic, free); the first page
# pays the single synthesis cost, every other page replays the recipe.
for product in sw.crawl("https://boutique.example.com/collection", max_items=100):
print(product.title, product.price)CLI
Shortened. The full README is on GitHub.
Nothing above is checked by us. What we check is on the safety report.
scrapewright: common questions
- Is scrapewright MCP server safe?
- Yes, by our scan: it is graded A (91/100). Read the scrapewright safety report
- How do I install scrapewright?
- It runs remotely at scrapewright.app. Add it to Claude Code, Cursor, VS Code or Claude Desktop with the snippets above, or call it through the mcp.market gateway without installing anything.
- Does scrapewright need an API key?
- Yes. The registry entry asks for
ANTHROPIC_API_KEY,X-API-Key. - Is scrapewright maintained?
- The last commit was 21 days ago (2026-10-16). The latest release is v1.0.3.
- Is scrapewright up?
- 100% of our last 28 checks got an answer. We check remote servers about four times a day.
- What can I use instead of scrapewright?
- Servers from other publishers that do the same job: Figma Context MCP server, Agent-Native Plan MCP server and Mockserver MCP server.
- How does scrapewright compare with other AI and agents MCP servers?
- safety score 91/100 (higher than 88% of 4,461 AI and agents servers); tools 5 (the typical AI and agents server has 6); tools that change things 0% (typical: 0%. Fewer write tools means less an agent can break). Full comparison.
Alternatives to scrapewright
Same job from other publishers: the closest match first, then the best rated.
- Figma ContextGive your coding agent access to your Figma data. Implement designs in any framework in one-shot.not reviewedWidely usedB
- Agent-Native PlanStructured visual plans and PR recaps with diagrams, prototypes, annotations, and sharingnot reviewedEstablishedA
- MockserverMock, record/replay, verify and chaos-test any HTTP, REST, gRPC or LLM dependency over MCP.not reviewedEstablishedA
- OrcareplayRead, replay and fork recorded coding-agent runs.not reviewedEstablishedA
- CharlotteRenders web pages into structured, agent-readable representations using headless Chromium.not reviewedEstablishedA