Back to Marketingskills

Firecrawl

tools/integrations/firecrawl.md

2.2.04.4 KB
Original Source

Firecrawl

Web scraping API that turns single pages or full sites into clean LLM-ready markdown. Handles JS rendering, anti-bot defenses, and proxy rotation so you can extract structured data from individual public business sites.

Capabilities

IntegrationAvailableNotes
APIREST API + Python/Node SDKs
MCPOfficial Firecrawl MCP server
CLI-None official
SDKNode, Python, Go, Rust

Authentication

Core Operations

Scrape a single page

bash
POST https://api.firecrawl.dev/v1/scrape
Authorization: Bearer fc-YOUR_API_KEY

{
  "url": "https://joescoffeeshop.com",
  "formats": ["markdown", "html"]
}

Returns the page as clean markdown (LLM-ready, no nav cruft) plus optional raw HTML.

Map a site (discover all URLs)

bash
POST https://api.firecrawl.dev/v1/map

{
  "url": "https://example.com",
  "limit": 100
}

Returns a list of URLs found on the site. Use this to identify key pages (/pricing, /about, /contact, /team) before scraping individually.

Crawl multiple pages

bash
POST https://api.firecrawl.dev/v1/crawl

{
  "url": "https://example.com",
  "limit": 20,
  "scrapeOptions": {
    "formats": ["markdown"]
  }
}

Crawls multiple pages from a single site. Use sparingly — costs scale with pages. Set limit and includePaths to target specific URL patterns.

Extract structured data

bash
POST https://api.firecrawl.dev/v1/extract

{
  "urls": ["https://joescoffeeshop.com"],
  "schema": {
    "phone": "string",
    "address": "string",
    "hours": "string",
    "email": "string"
  }
}

Returns data matching the schema — useful when you want consistent fields across many sites rather than raw markdown.

Search the web

bash
POST https://api.firecrawl.dev/v1/search

{
  "query": "\"Joe's Coffee Shop\" Boulder Colorado",
  "limit": 10
}

Web search + scrape of top results. Useful for cross-source verification (find a business's official site when you only have a name + location).

MCP Tools (when used via MCP server)

ToolPurpose
firecrawl_scrapeSingle-page extraction
firecrawl_mapURL discovery on a site
firecrawl_crawlMulti-page crawl
firecrawl_extractSchema-driven structured data
firecrawl_searchWeb search + scrape

When to Use

  • Local SMB prospecting: verify a business's website status (live, weak, missing) at the URL level after manual Maps/Yelp discovery
  • Single-target enrichment: pull contact info, hours, services from a business's own site
  • Competitor research: scrape competitor pricing, features, customer pages (this is the primary use in competitor-profiling skill)
  • Programmatic page extraction: when you need many sites' homepages or about pages in a consistent format
  • JS-heavy sites: when the page won't render with a simple curl because content loads after page load

When NOT to Use

Critical — do not use Firecrawl to scrape platforms hosting prospects:

  • Google Maps / Google search results — Google ToS prohibits bulk extraction
  • LinkedIn — explicit ToS violation, will get scraper accounts banned and risks legal exposure
  • Yelp — ToS prohibits commercial scraping
  • Apollo / ZoomInfo / Clearbit listings — their ToS prohibits using competing data extracts
  • Any platform you don't have a legitimate basis to extract from at scale

Use Firecrawl for: the business's own website (which you found via manual discovery on those platforms). That's the line — discovery happens on platforms, extraction happens on individual public business sites.

Pricing

Rate Limits

  • Default: tier-dependent (typically 5–20 concurrent requests on paid plans)
  • Per-page cost varies by content type and rendering needs

Relevant Skills

  • prospecting (site enrichment for individual business URLs)
  • competitor-profiling (primary use: full-site competitor analysis)
  • ai-seo (scrape your own content for AI search optimization)
  • content-strategy (scrape industry sites for content gap analysis)