Raptor documentation

Raptor is a local-first SEO toolkit. It crawls a site, analyses it against every check in its catalogue, and reports the result as JSON, CSV, a self-contained HTML report, or structured output over MCP.

The design assumption behind everything here: the primary surface is the MCP server, and the conversation is the report. The HTML dashboard exists, but token-efficient structured output for an agent matters more.

The documents

Start here

  1. 1

    Install

    Raptor isn't on Homebrew or crates.io yet, so for now you build it from source. You'll need Rust: the installer is one command and takes a couple of minutes. The public repository isn't open yet, so these are the steps for when it is.

    In a checkout of the repository:

    Shell
    $ cargo build --release

    That produces the program at target/release/raptor. To be able to type raptor from anywhere:

    Shell
    $ cp target/release/raptor ~/.local/bin/
  2. 2

    Run your first audit

    Shell
    $ raptor crawl https://example.com/

    It writes an HTML report to open in your browser, one self-contained file that works offline, and the same data as JSON for tools and scripts. Add --csv for a spreadsheet.

    By default Raptor waits between requests and obeys robots.txt. Only crawl sites you own or have permission to audit.

  3. 3

    Connect it to Claude

    If you use Claude Code:

    Shell
    $ claude mcp add raptor -- /full/path/to/target/release/raptor serve --mcp

    Now you can ask in plain English. MCP is the standard that lets Claude call tools on your machine; Raptor speaks it, so Claude can run crawls and read results directly. Its tools are in MCP and REST.

A note on reading these docs

Where a check or a number is described here, it is the one the code actually applies — thresholds are quoted from the source, not from general SEO advice. Where Raptor deliberately disagrees with another tool, or where a check is knowingly approximate, the document says so rather than implying more precision than exists.

The shape of a session

Almost everything starts with a crawl, which produces a crawl.json. The other commands are consumers of that file rather than separate crawlers:

Text
raptor crawl https://example.com/ -o crawl.json
                     |
                     +--> crawl.html       the report: self-contained, no network at open time
                     +--> crawl.csv        one row per page (with --csv)
                     |
                     +--> raptor link crawl.json      internal link graph
                     +--> raptor sitemap crawl.json   XML sitemap of indexable pages

raptor inspect is the exception: it audits a single URL directly and needs no crawl.