scrape-webpage
Scrapes a webpage and converts it to markdown format
Turn a web page into clean Markdown, with a vision model clicking through the cookie banners and paywalls that block the content.
LABSCO SUMMARY
Most page-to-Markdown tools hand you the cookie wall. This one screenshots the page, asks a vision model what to click, and repeats until the content is visible — which is why it needs a model key that plain scrapers do not. Every scrape costs a few vision calls, so it earns its place on pages a simple fetch cannot reach.
A single-tool scraper: scrape-webpage drives Puppeteer in stealth mode, extracts the main content with Mozilla's Readability, and converts it to Markdown with Turndown.
A key for a vision-capable model — an OpenAI model by default, with any OpenAI-compatible endpoint usable instead. Node and npm; the browser runs locally.
One command plus a key — npx -y puppeteer-vision-mcp-server, then supply credentials
USE CASES
Let the vision loop dismiss the banner and return the article body as Markdown.
Pull a docs page with its code blocks and tables preserved rather than collapsed into prose.
Ask for the same-domain links alongside the Markdown and you get the page plus where it leads.
Run it with the browser visible and watch which overlay it is getting stuck on.
Counted once with only startup setup. Other versions, modes or optional credentials may expose a different list.
scrape-webpageScrapes a webpage and converts it to markdown format
BEFORE YOU INSTALL
1 tool when we connected.
All 3 documented setups run the server on your machine.
CONTEXT COST
Rated by the size of the one tool definition that rides along on every turn
INSTALLATION
npx -y puppeteer-vision-mcp-server{
"mcpServers": {
"web-scraper": {
"command": "npx",
"args": [
"-y",
"puppeteer-vision-mcp-server"
],
"env": {
"OPENAI_API_KEY": "<YOUR_OPENAI_API_KEY>"
}
}
}
}{
"mcpServers": {
"puppeteer-vision-mcp": {
"url": "http://localhost:3001/sse",
"env": {
"TRANSPORT_TYPE": "sse"
}
}
}
}{
"mcpServers": {
"puppeteer-vision-mcp": {
"url": "http://localhost:3001/mcp",
"env": {
"TRANSPORT_TYPE": "http"
}
}
}
}