Skip to main content
Plugin ID: firecrawl | Auth: API Key (Bearer token, fc- prefix)

Tools

firecrawl.scrape

Name: Scrape Page Scrape a single URL and return its content as markdown, HTML, or structured data. Handles JavaScript rendering, anti-bot measures, and proxies automatically. Input:
ParameterTypeRequiredDefaultDescription
urlstringYesURL to scrape
formatsstring[]No["markdown"]"markdown", "html", "rawHtml", "links", "screenshot"
onlyMainContentbooleanNotrueExtract only main content, removing nav/footers
timeoutintegerNo30000Timeout in milliseconds (1000-300000)
Output:
{
  "success": true,
  "markdown": "# Page Title\n\nArticle content...",
  "html": null,
  "links": ["https://example.com/related"],
  "metadata": { "title": "Page Title", "description": "...", "url": "https://example.com", "statusCode": 200 }
}

Name: Web Search Search the web and optionally scrape the content of each result. Input:
ParameterTypeRequiredDefaultDescription
querystringYesSearch query (max 500 chars)
limitintegerNo10Number of results (1-100)
scrapeOptionsobjectNoIf provided, also scrape each result page
Output:
{
  "success": true,
  "results": [
    { "title": "Result Title", "url": "https://example.com", "description": "Snippet...", "markdown": "# Full page content..." }
  ]
}

firecrawl.extract

Name: Extract Data Extract structured data from one or more URLs using an LLM. Provide a natural language prompt and/or JSON Schema for output structure. Input:
ParameterTypeRequiredDefaultDescription
urlsstring[]YesURLs to extract from (supports wildcards like example.com/*)
promptstringYesNatural language description of what to extract
schemaobjectNoJSON Schema for output structure
enableWebSearchbooleanNofalseAllow web search for additional context
Output:
{
  "success": true,
  "data": { "company_name": "Acme Corp", "funding_round": "Series B", "amount": 50000000 }
}

firecrawl.crawl

Name: Crawl Site Start an asynchronous crawl of a website. Returns a job ID to poll with firecrawl.crawl_status. Input:
ParameterTypeRequiredDefaultDescription
urlstringYesStarting URL to crawl
limitintegerNo100Max pages to crawl
maxDepthintegerNo3Max link depth to follow
includePathsstring[]NoRegex patterns for paths to include
excludePathsstring[]NoRegex patterns for paths to exclude
Output:
{ "success": true, "id": "crawl_abc123", "url": "https://status.firecrawl.dev/crawl/crawl_abc123" }

firecrawl.crawl_status

Name: Crawl Status Check the status and retrieve results of an async crawl job. Input:
ParameterTypeRequiredDescription
crawlIdstringYesCrawl job ID from firecrawl.crawl
Output:
{
  "status": "completed",
  "total": 25,
  "completed": 25,
  "data": [
    { "url": "https://example.com/page1", "markdown": "# Page content...", "title": "Page 1" }
  ]
}

firecrawl.map

Name: Map Site URLs Discover all URLs on a website without scraping their content. Input:
ParameterTypeRequiredDescription
urlstringYesWebsite URL to map
Output:
{
  "success": true,
  "links": ["https://example.com/", "https://example.com/about", "https://example.com/blog"]
}