πŸ“Š Research web topics and email a Claude report via Gmail using SerpApi, Jina.ai and Firecrawl

⚑ 8 views Β· πŸ“Š Market Research & Insights

πŸ’‘ Pro Tip β€” HTTP Request scraping tends to break when sites update their markup. If you’re scraping a major platform, check if ScraperNode covers it β€” it has maintained scrapers for LinkedIn, Instagram, TikTok, YouTube, and 20+ other platforms that return structured data.

View All Scrapers

Description

Submit a research topic through a form and receive a professionally styled executive report in your inbox β€” fully automated, with built-in scraping resilience.

The workflow searches Google via SerpApi, scrapes each result with Jina.ai (free, no key needed), and uses Claude to extract key findings. If a page is blocked by a CAPTCHA or login wall, it automatically retries with Firecrawl. Blocked sources are gracefully skipped after two attempts. Once all sources are processed, Claude synthesises a structured executive report and delivers it as a styled HTML email via Gmail.

How it works

  1. A web form collects the research topic, number of sources (5–7), and recipient email
  2. SerpApi searches Google and returns a buffer of results (2Γ— requested + 3 to survive domain filtering)
  3. Junk domains are filtered out automatically (Reddit, YouTube, Twitter, PDFs, etc.)
  4. Each URL is processed one at a time in a serial loop:
    • Round 1 β€” Jina.ai: free Markdown scraper, no API key required
    • Claude checks the content β€” if it’s a CAPTCHA or wall, it returns RETRY_NEEDED
    • Round 2 β€” Firecrawl: paid fallback scraper retries the blocked URL
    • If still blocked, the source is marked as unavailable and the loop continues
  5. All extracted findings are aggregated and Claude writes a structured executive report (Executive Summary, Key Findings, Detailed Analysis, Data & Evidence, Conclusions, Sources)
  6. The report is converted to styled HTML (with tables, headings, and lists) and emailed to the recipient

Setup steps

Required credentials

ServiceWhere to get itWhere to paste it
SerpApiserpapi.com β€” free tier: 100 searches/monthSerpApi Search node β†’ query param api_key
Firecrawlfirecrawl.dev β€” free tier: 500 pages/monthFirecrawl (Fallback) node β†’ Authorization header
Anthropicn8n credentials β†’ Anthropic APIConnect to: Claude Extractor, Claude Re-Analyzer, Claude Synthesizer
Gmailn8n credentials β†’ Gmail OAuth2Connect to: Send Gmail

Error handler (optional)

The workflow includes a built-in error handler that captures the failed node name, error message, and execution URL. To activate it: Workflow Settings β†’ Error Workflow β†’ select this workflow. Add a Slack or Gmail node after Format Error to receive failure alerts.

Nodes used

Notes

πŸ”— Nodes Used

HTTP Request, Gmail, Basic LLM Chain, Anthropic Chat Model, n8n Form Trigger

πŸ“₯ Import

Download workflow.json and import into n8n: Workflow menu β†’ Import from File

πŸ“– Importing guide Β· πŸ”‘ Credential setup