CrawlEngine MCP
# CrawlEngine MCP (Lite Edition)
[](LICENSE)
[](https://python.org)
[](https://modelcontextprotocol.io)
**CrawlEngine MCP** is a resilient Model Context Protocol server that gives AI agents in **Claude Desktop**, **Cursor**, **Windsurf**, and **Antigravity** clean web-reading superpowers without choking context windows on raw HTML or getting instantly blocked by basic anti-bot firewalls.
---
## ๐ท๏ธ Why CrawlEngine MCP?
Most default web-fetching tools used by AI models suffer from severe drawbacks:
1. **Raw HTML Token Bloat:** A 150KB web page contains ~90% useless boilerplate (navbars, tracking pixels, CSS bundles, cookie banners) that burns LLM tokens and induces hallucinations.
2. **Instant HTTP 403 Blocks:** Default Python `urllib` or `requests` User-Agents trigger anti-bot WAFs immediately.
3. **Broken Relative Links:** Naive scrapers return unnavigable relative paths (`/docs/quickstart`) instead of canonical URLs.
**CrawlEngine** solves this by rotating realistic modern browser fingerprints and transforming messy DOM trees into pristine, semantic Markdown.
---
## โก Features (Lite Edition)
- ๐งน **Semantic Markdown Conversion**: Strips scripts, styles, popups, cookie consent overlays, and ads, keeping only the core article or documentation.
- ๐ญ **Realistic Browser Fingerprinting**: Automatically rotates `User-Agent`, `Sec-Ch-Ua`, and platform headers across Chrome, Safari, and Firefox.
- ๐ **Deep Link Discovery**: Extracts all outbound and internal links with anchor text.
- ๐ท๏ธ **Metadata Extraction**: Gathers OpenGraph, Twitter Cards, meta descriptions, and canonical URLs.
- ๐ชถ **Zero Complex Dependencies**: Pure Python using `httpx` and `beautifulsoup4`.
---
## ๐ Quick Setup in 2 Minutes
### 1. Installation
```bash
git clone https://github.com/johannschiffer/crawlengine-mcp.git
cd crawlengine-mcp
pip install -r requirements.txt
```
### 2. Configure Claude Desktop (`claude_desktop_config.json`)
On Linux: `~/.config/Claude/claude_desktop_config.json`
On macOS: `~/Library/Application Support/Claude/claude_desktop_config.json`
On Windows: `%APPDATA%\Claude\claude_desktop_config.json`
```json
{
"mcpServers": {
"crawlengine": {
"command": "python",
"args": ["-m", "crawlengine.server"],
"cwd": "/path/to/crawlengine-mcp"
}
}
}
```
### 3. Verify via CLI
```bash
python -m crawlengine.cli scrape https://news.ycombinator.com
```
---
## ๐ ๏ธ MCP Tools Exposed to AI Agents
| Tool | Parameters | Description |
|---|---|---|
| `scrape_url` | `url`, `extract_markdown`, `timeout` | Fetches web page and extracts clean, token-efficient Markdown |
| `extract_links` | `url`, `internal_only` | Returns structured array of hyperlinks with anchor texts |
| `extract_metadata` | `url` | Retrieves page title, meta description, and OpenGraph data |
---
## ๐ Need Enterprise Anti-Bot Scraping? Upgrade to CrawlEngine Pro
Dealing with complex JavaScript SPAs, Cloudflare Turnstile, or scraping behind proxy pools?
| Feature | Lite (Open Source) | Pro ($14.99 USD) |
|---|:---:|:---:|
| **Semantic Markdown Extraction** | โ
| โ
|
| **Browser Fingerprint Rotation** | โ
| โ
|
| **OpenGraph & Link Extraction** | โ
| โ
|
| **Automatic Headless Browser Fallback** *(Playwright Chromium)* | โ | โ
|
| **JavaScript SPA Hydration** *(React, Next.js, Vue)* | โ | โ
|
| **Proxy Pool Rotation** *(HTTP & SOCKS5 with auto-ejection)* | โ | โ
|
| **Structured Data Extractor** *(JSON-LD, Pricing Tables, Products)* | โ | โ
|
| **Production Docker Container** | โ | โ
|
| **Full Pytest Suite & Anti-Detection Guide** | โ | โ
|
๐ **[Get CrawlEngine Pro on Gumroad ($14.99)](https://johanld.gumroad.com/l/crawlengine-mcp-pro)**
---
## ๐ License
MIT License. See [LICENSE](LICENSE) for details.
TDQS
Scored across 3 tools
Each tool targets a distinct page-extraction concern: full content as Markdown, hyperlinks, and metadata. An agent can choose unambiguously based on the desired output.
All names follow a verb_noun snake_case pattern (scrape_url, extract_links, extract_metadata). The two extract_* tools share a clear family, and the slight verb difference is semantically appropriate.
Three tools is a lean but reasonable surface for a page-level scraping utility, and each tool earns its place. However, for a server branded as a 'CrawlEngine,' the count feels slightly under-scoped for crawling workflows.
The set covers single-page content, links, and metadata, but no tool actually crawls a site, follows extracted links, or handles batches/sitemaps. This is a notable gap for a crawl engine, though an agent could chain extract_links and scrape_url manually.