Scrapes, searches, maps, and crawls public websites locally through MCP, with optional Firecrawl support for JavaScript-heavy pages.
Copy the AI prompt to install this server into Claude Code, Cursor, or another agent โ or use 1-click editor setup below.
This server is confirmed live โ we successfully called its tools/list endpoint directly (see the verified badge above). We haven't yet sandbox-tested the stdio install command below specifically, which is a separate, ongoing check.
๐ก Paste the JSON block into your client's configuration file under mcpServers, then restart the application.
Inspect callable tools, capabilities, and parameters exposed to AI agents by Webcrawl MCP.
webcrawl_scrapeFetch a URL and extract main content as markdown.
webcrawl_searchSearch the web using DuckDuckGo.
webcrawl_mapDiscover URLs on a website. Fetches the given URL and extracts all same-domain links.
webcrawl_crawlCrawl multiple pages starting from a URL. Uses BFS to discover and fetch pages up to max_depth links away. Respects rate limiting between requests.
The andyliszewski/webcrawl-mcp MCP server gives MCP clients four web research tools: single-page scraping, DuckDuckGo search, same-domain URL mapping, and multi-page crawling. Scraped results are returned as Markdown together with a source indicator that identifies whether the content came from a normal HTTP request, a retry, or a Firecrawl fallback.
The local-first design is intended for public articles, documentation, blogs, and similar pages that do not require browser rendering. It can reduce dependence on external services because ordinary extraction happens on the machine running the server.
webcrawl_scrape fetches one URL and extracts its main content. Trafilatura handles the primary HTML-to-content conversion. If that output is unavailable or shorter than the quality threshold, the server can use Markdownify on the raw HTML, and then optionally call Firecrawl if the result remains poor.
webcrawl_search queries DuckDuckGo and can optionally scrape returned results. webcrawl_map starts at a page and returns links belonging to the same domain. webcrawl_crawl follows discovered pages breadth-first, up to the requested depth. Crawl requests include rate limiting between requests, and search usage may need spacing because DuckDuckGo can throttle bursts.
For HTTP transport errors such as 403, 429, or 503, a 429 response with a usable Retry-After header receives one bounded retry by default. Firecrawl transport fallback is opt-in.
Install the package with Python 3.12 or newer using pip install webcrawl-mcp. The executable is webcrawl-mcp; MCP clients can also run it through uvx with the package name as its argument. The README provides configuration examples for Claude Code and Claude Desktop, and notes that the standard command, argument, and environment structure also applies to clients such as Cursor and Cline.
All configuration variables are optional. USER_AGENT changes the HTTP user agent, REQUEST_TIMEOUT controls request timeouts, and POLITE_MODE controls the bounded 429 retry behavior. Set FIRECRAWL_API_KEY to enable Firecrawl fallback, and use FIRECRAWL_API_URL to change its endpoint. FALLBACK_ON_TRANSPORT_ERROR enables Firecrawl handling for selected transport failures when a key is present.
JavaScript-rendered pages may produce little content through local extraction. Configure a Firecrawl key for those cases, or use another approach when browser rendering is essential. Without that key, the server remains self-contained and does not use the Firecrawl fallback.
The tool is intended for public web content and includes per-domain rate limiting, but users must still follow each site's terms, robots.txt, applicable law, and reasonable request limits. The project is released under the MIT license.
Factual signals from GitHub, npm, and our automated checks โ not a rating.
No reviews yet โ be the first to share how this listing worked for you.
Showcase your server listing on GitHub or your project documentation. Embed this dynamic SVG badge to highlight official listing status and live engagement.
[](https://allmcps.com/mcp/andyliszewski-webcrawl-mcp)<a href="https://allmcps.com/mcp/andyliszewski-webcrawl-mcp"><img src="https://allmcps.com/api/badge/andyliszewski-webcrawl-mcp?style=directory" alt="Webcrawl MCP on AllMCPs" /></a>