Skip to content

v0.4.13 - #406

Merged
D4Vinci merged 14 commits into
mainfrom
dev
Aug 9, 2026
Merged

v0.4.13#406
D4Vinci merged 14 commits into
mainfrom
dev

Conversation

@D4Vinci

@D4Vinci D4Vinci commented Aug 9, 2026

Copy link
Copy Markdown
Owner

A new update bringing feed spiders and a smarter MCP server 🎉

Note

🚀 New Stuff and quality of life changes

  • New feed spider templates. XMLFeedSpider iterates over the nodes of any XML feed (RSS, Atom, product feeds, etc.), and CSVFeedSpider iterates over CSV rows as dictionaries. Both decompress gzipped feeds automatically. (Check the docs)
    from scrapling.spiders import XMLFeedSpider
    
    class RSSSpider(XMLFeedSpider):
        name = "rss"
        start_urls = ["https://example.com/feed.xml"]
    
        async def parse_node(self, response, node):
            yield {"title": node.findtext("title"), "link": node.findtext("link")}
    
    result = RSSSpider().start()
  • Upgraded the MCP server to MCP SDK v2 and made it smarter. The server now ships instructions that teach your AI agent how to use the tools efficiently; every tool declares annotations so clients like Claude Code can auto-approve the read-only ones; tool descriptions are leaner to save tokens; and the server advertises its version and logo to MCP clients. (Check the docs)
  • Added a scrapling-mcp command that maps directly to scrapling mcp, so registering Scrapling with MCP clients and registries that expect a single command is now a one-liner.
  • Unpinned Playwright/Patchright and browser versions. The generated browser User-Agent now always matches the exact Chromium version your installed Playwright/Patchright drives, so Scrapling no longer pins their versions and you can upgrade them freely. Run scrapling install --force after updating to refresh the browsers.

🐛 Bug Fixes

  • Fixed importing Scrapling crashing with a browserforge ValueError when the fingerprints data package lags behind the browser versions. (Fixes #394, #396, and #400)
  • Fixed the MCP bulk browser tools mis-sizing their page pools, which made bulk_fetch fail on batches of more than 50 URLs and bulk_stealthy_fetch fetch all URLs through a single tab, by @Yigtwxx in #393.

Project

  • New AI Contribution Policy: AI-assisted contributions are welcome but must be disclosed in the PR or issue; submissions that look like undisclosed AI output get labeled and closed.

🙏 Special thanks to the community for all the continuous testing and feedback


Big shoutout to our Platinum Sponsors

@D4Vinci
D4Vinci merged commit 64bc700 into main Aug 9, 2026
12 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

MCP server crashes on macOS at import: ValueError "No headers based on this input from browserforge

2 participants