webclaw

Getting started

Two ways to run webclaw. The hosted API needs nothing installed and is below; self-hosting the open-source binary comes after it.

Hosted API

Nothing to install. Sign up at webclaw.io, copy the key from your dashboard, and run this. Every account starts on the free plan: 500 credits a month, no card. One credit is one page, and that includes JavaScript rendering, protected sites and AI extraction.

your first request
curl -X POST https://api.webclaw.io/v1/scrape \
  -H "Authorization: Bearer wc_your_key" \
  -H "Content-Type: application/json" \
  -d '{"url": "https://news.ycombinator.com", "formats": ["markdown"]}'

That returns the page as clean Markdown. Swap the URL for one you actually care about, including sites that usually block scrapers. Keys are prefixed with wc_.

Tip
Prefer your agent to set itself up? Point it at webclaw.io/auth.md and it will handle the key exchange on its own.

Self-hosting: install the CLI

The CLI, server and MCP server are AGPL-3.0 and run on your own hardware with no account. They do not include the hosted bot-protection handling or residential egress.

Windows x64: prebuilt ZIP

Download the Windows x64 ZIP from GitHub Releases, extract it, and open PowerShell in the folder containing webclaw.exe. This installation does not require Rust.

powershell
.\webclaw.exe --version
.\webclaw.exe https://example.com --format markdown

PowerShell requires the current-directory prefix shown above. Add the extracted folder to your user PATH to run webclaw from other folders. If Windows reports a missing Visual C++ runtime DLL, install the Microsoft Visual C++ Redistributable for x64. Native Windows ARM64 is not covered.

With Cargo from Git

Requires Rust and native build tools. The package is webclaw-cli and the executable is webclaw; it is not installed from crates.io. A first build can take several minutes.

bash
cargo install --git https://github.com/0xMassi/webclaw.git --tag v0.6.22 --locked webclaw-cli
Tip
On Windows, source installation requires the Rust MSVC toolchain, Visual Studio Build Tools with Desktop development with C++ and the Windows SDK, Git, CMake 3.22 or newer, LLVM with libclang, and NASM. Open a fresh Developer PowerShell after installation and make sure CMake and NASM are on PATH. If bindgen cannot find libclang.dll, set LIBCLANG_PATH to your LLVM bin folder. See the README installation guide for the commands. Docker on macOS runs Linux containers and does not test Windows compatibility.

From source

Clone the repository and build all three binaries in release mode.

bash
git clone --branch v0.6.22 https://github.com/0xMassi/webclaw.git
cd webclaw
cargo build --release --locked

The binaries will be at target/release/webclaw, target/release/webclaw-server, and target/release/webclaw-mcp.

Tip
Extraction depends on the target page. Some sites require rendering or sign-in, and protected pages can still fail. Check the returned content and error status before using a result.

Docker

Pull the official image and run the API server in a container.

bash
docker pull ghcr.io/0xmassi/webclaw:latest
run the API server
docker run --rm -p 127.0.0.1:3000:3000 -e WEBCLAW_API_KEY=local-example-key ghcr.io/0xmassi/webclaw:latest webclaw-server

The server will be available at http://localhost:3000. Send Authorization: Bearer local-example-key with requests to this example container. Choose your own key for regular use.

Your first extraction

The simplest usage: pass a URL. webclaw extracts the main content and outputs clean markdown by default.

markdown output (default)
webclaw https://example.com

Switch to LLM-optimized output for the most token-efficient representation. This runs a pipeline that strips images, removes emphasis, deduplicates links, merges stat blocks, and collapses whitespace.

LLM-optimized output
webclaw https://example.com -f llm

Use JSON format to get the full ExtractionResult with metadata, content, word count, and extracted URLs.

JSON output
webclaw https://example.com -f json

Start the API server

The OSS REST server exposes supported extraction operations over HTTP. Start it on a local port.

bash
webclaw-server --port 3000

Test it with a scrape request:

curl
curl -X POST http://localhost:3000/v1/scrape \
  -H "Content-Type: application/json" \
  -d '{"url": "https://example.com"}'
Note
Loopback development can run without authentication. A public bind requires a key unless open public access is explicitly enabled. Pass --api-key your_secret to require a Bearer token on all requests.

MCP server

The MCP server lets AI agents use webclaw as a tool. It communicates over stdio transport and works with Claude Desktop, Claude Code, Cursor, Windsurf, OpenCode, Codex, Antigravity, and any MCP-compatible client.

Add webclaw to your Claude Desktop configuration at ~/Library/Application Support/Claude/claude_desktop_config.json:

claude_desktop_config.json
{
  "mcpServers": {
    "webclaw": {
      "command": "npx",
      "args": ["-y", "@webclaw/mcp"]
    }
  }
}

npx fetches the launcher automatically — no binary path or build step. To run a source build instead, point command at target/release/webclaw-mcp.

The MCP server exposes 12 tools:

ToolDescription
scrapeExtract content from a single URL
crawlBFS crawl a website with depth control
mapDiscover URLs from sitemap.xml and robots.txt
batchExtract content from multiple URLs
extractLLM-powered JSON schema or prompt extraction
summarizeLLM-powered content summarization
diffTrack content changes between snapshots
brandExtract brand identity (colors, fonts, logo)
searchWeb search with structured results
researchDeep multi-source research (needs API key)
list_extractorsList available site-specific extractors
vertical_scrapeRun a site-specific extractor for typed JSON

Cloud API

For managed infrastructure, sign up at webclaw.io and create an API key from the dashboard. Keys are prefixed with wc_.

curl
curl -X POST https://api.webclaw.io/v1/scrape \
  -H "Authorization: Bearer wc_your_key" \
  -H "Content-Type: application/json" \
  -d '{"url": "https://example.com", "formats": ["markdown", "llm"]}'

Hosted and OSS endpoints overlap, but their options and response shapes differ. In particular, hosted crawls are asynchronous and OSS crawls return results directly. Check the self-hosting capability matrix before switching base URLs.

Tip
The hosted API starts free: 500 credits a month, no card. Paid plans go from $19/mo when you need more. Or self-host the AGPL-3.0 CLI / server on your own hardware, subject to its resource and provider limits.

Get started

Ready to build? Start extracting.

Cancel anytime. One key for every format and endpoint.

View on GitHub