Skip to content

v1.1.0

Choose a tag to compare

@github-actions github-actions released this 09 Sep 17:25
· 20 commits to main since this release
0b0b53b

MCP: six tools instead of four. Point any MCP-capable agent at ByteCrawl and
it can now do everything the playground does. Nothing to install:

claude mcp add --transport http bytecrawl https://bytecrawl.vercel.app/mcp
Tool What it does
focused_crawl Crawl a site, rank pages by relevance to a query
compare_strategies New. All three strategies, one budget, side by side
fetch_markdown One page → clean Markdown
extract Structured records, or a flat list from one selector
list_links New. Every outbound link, absolute and deduplicated
fetch_json_api Hit a hidden JSON API

Local (pip install bytecrawl[mcp], then claude mcp add bytecrawl -- bytecrawl-mcp)
exposes the identical six, with no page cap and browser support.

Added

  • compare(url, query) — run Shark-Search, OPIC and BFS over one site on the
    same budget and see which actually finds the topic. On Wikipedia + "san
    francisco" that is 6 relevant pages out of 6 for Shark-Search against 1 of 6
    for BFS. The three run concurrently, so it costs about as long as one crawl.
    Returns a winner, or tied when nothing separates them.
  • extract accepts a single select selector for a flat list of values, as an
    alternative to item + fields.
  • HTTP API: /api?url=SITE&method=compare&query=TOPIC for the same comparison
    without any install.

Changed

  • Page.links() now returns absolute, deduplicated URLs and drops
    #fragments, mailto: and asset files — the same normalisation the crawlers
    already used. On a long Wikipedia article that is 2,222 raw hrefs down to
    1,408 pages you can actually visit. Pass raw=True for the old output.
  • normalize() moved to bytecrawl.core (still importable from
    bytecrawl.crawler), so links and crawling share one definition of a link.

Fixed

  • The demo site: a jumping footer, a webfont that resized the logo on first
    paint, and the strategy comparison now looks the same on every page.