scribe-me
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@scribe-mescrape https://docs.example.com/getting-started"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
scribe-me
Scrape web pages to clean Markdown via headless Chromium. Available as a standalone CLI tool and as a Claude Code MCP tool + skill.
Setup
npm install
npx playwright install chromium
npm linkRelated MCP server: chromium-mcp
CLI Usage
Single URL
scribe-me -p <project> -u <url> [-c <class>]Batch (file of URLs)
scribe-me -p <project> -f <file> [-c <class>]The file is plain text with one URL per line. Lines starting with # are ignored. The scraper runs 3 pages concurrently against a single shared Chromium instance.
Flag | Description |
| Project name — output is organized under |
| Single URL to scrape |
| Path to a file with one URL per line (use instead of |
| CSS class of the content container to extract |
Output files are written to scribe-me/<project>/ with timestamped filenames:
scribe-me/freewheel/2026-02-27 03:53:23-Getting-Started-with-the-Buzz-API.mdContainer Detection
If -c is provided, the scraper targets that class. Otherwise it walks a fallback list of common content selectors (main, article, [role="main"], #content, etc.) and picks the first with meaningful text content, falling back to <body>.
MCP Server
The same scraping logic is exposed as MCP tools for use inside Claude Code:
scrape-to-markdown— scrape a single URLscrape-batch-to-markdown— scrape an array of URLs (3 concurrent, shared browser)
Add to ~/.claude/settings.json:
{
"mcpServers": {
"scribe-me": {
"command": "node",
"args": ["/absolute/path/to/src/mcp-server.js"]
}
}
}Claude Code Skill
The /scrape skill chains the MCP tool with an AI cleanup pass. It scrapes the page, then has Claude clean up the resulting markdown — removing UI artifacts ("Suggest Edits" links, "Did this page help you?" prompts, empty heading anchors, ToC blocks), fixing malformed headings, and improving code block formatting.
/scrape joshlehman https://www.joshlehman.com -c contentIf any arguments are missing, the skill prompts for them interactively.
Skill Installation
Copy the skill prompt to your Claude Code commands directory:
cp commands/scrape.md ~/.claude/commands/scrape.mdArchitecture
bin/
scribe-me.js # CLI entry point (Commander)
src/
scraper.js # Core: Playwright + Turndown
container-finder.js # Heuristic content container detection
file-writer.js # Directory creation + timestamped file writing
sanitize.js # Filename sanitization
mcp-server.js # MCP server wrapping scraper
commands/
scrape.md # Claude Code /scrape skill promptThis server cannot be deployed
Maintenance
Related MCP Connectors
MCP server (stdio): fetch web pages as clean readable markdown via the AgentForge API
MCP server for web extraction and rendering via AceDataCloud WebExtrator
Document-to-Markdown MCP server — convert PDF, Office and HTML into LLM-ready Markdown.
Hosted MCP server: convert PDFs to clean, LLM-ready Markdown with tables, formulas and OCR.
Related MCP Servers
- AlicenseAqualityCmaintenanceMCP server that converts URLs to clean Markdown/Text for LLM agents.2535 npm5MIT
- AlicenseAqualityDmaintenanceMCP server for web fetching and automation using Chromium headless browser. Enables fetching pages as markdown, taking screenshots, automating interactions, and extracting data via CSS selectors.5MIT
- AlicenseNot gradedqualityCmaintenanceMCP server for retrieving web pages as clean Markdown, with configurable detail levels and optional Chromium rendering for JavaScript-heavy pages.1MIT
- FlicenseAqualityDmaintenanceMCP server for Cloudflare Browser Rendering Crawl API. Fetches and crawls web pages, returning clean Markdown optimized for LLM consumption.3-