/firecrawl-scrape
Extract clean markdown from any URL, including JavaScript-rendered SPAs. Use this skill whenever the user provides a URL and wants its content, says "scrape", "grab", "fetch", "pull", "get the page", "extract from this URL", or "read this webpage". Handles JS-rendered pages,
$ npx -y skills add firecrawl/firecrawl-claude-plugin --skill firecrawl-scrape --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
- Fires itselfAuto-invocation. Claude auto-loads it when your prompt matches the work.Auto-invocation is when the right skill fires by itself at the right moment, driven by a FLOW.md router and a hook, instead of you invoking it by name. It is the difference between a skill being installed and a skill actually getting used.Read the full definition →
- You can call itInvoke it directly when you want it.
- Slash command
/firecrawl-scrape
Context preview
The summary Claude sees to decide when to auto-load this skill.
Extract clean markdown from any URL, including JavaScript-rendered SPAs. Use this skill whenever the user provides a URL and wants its content, says "scrape", "grab", "fetch", "pull", "get the page", "extract from this URL", or "read this webpage". Handles JS-rendered pages,
SKILL.md
firecrawl-scrape.SKILL.mdname: firecrawl-scrape
description: |
Extract clean markdown from any URL, including JavaScript-rendered SPAs. Use this skill whenever the user provides a URL and wants its content, says "scrape", "grab", "fetch", "pull", "get the page", "extract from this URL", or "read this webpage". Handles JS-rendered pages, multiple concurrent URLs, and returns LLM-optimized markdown. Use this instead of WebFetch for any webpage content extraction.
allowed-tools:
- Bash(firecrawl *)
- Bash(npx firecrawl *)
firecrawl scrape
Scrape one or more URLs. Returns clean, LLM-optimized markdown. Multiple URLs are scraped concurrently.
When to use
- You have a specific URL and want its content
- The page is static or JS-rendered (SPA)
- Step 2 in the [workflow escalation pattern](firecrawl-cli): search → **scrape** → map → crawl → interact
Quick start
# Basic markdown extraction
firecrawl scrape "<url>" -o .firecrawl/page.md
# Main content only, no nav/footer
firecrawl scrape "<url>" --only-main-content -o .firecrawl/page.md
# Wait for JS to render, then scrape
firecrawl scrape "<url>" --wait-for 3000 -o .firecrawl/page.md
# Multiple URLs (each saved to .firecrawl/)
firecrawl scrape https://example.com https://example.com/blog https://example.com/docs
# Get markdown and links together
firecrawl scrape "<url>" --format markdown,links -o .firecrawl/page.json
# Ask a question about the page
firecrawl scrape "https://example.com/pricing" --query "What is the enterprise plan price?"
Options
| Option | Description | | ------------------------ | ---------------------------------------------------------------- | | `-f, --format <formats>` | Output formats: markdown, html, rawHtml, links, screenshot, json | | `-Q, --query <prompt>` | Ask a question about the page content (5 credits) | | `-H` | Include HTTP headers in output | | `--only-main-content` | Strip nav, footer, sidebar — main content only | | `--wait-for <ms>` | Wait for JS rendering before scraping | | `--include-tags <tags>` | Only include these HTML tags | | `--exclude-tags <tags>` | Exclude these HTML tags | | `--redact-pii` | Redact personally identifiable information from output | | `-o, --output <path>` | Output file path |
Tips
- **Prefer plain scrape over `--query`.** Scrape to a file, then use `grep`, `head`, or read the markdown directly — you can search and reason over the full content yourself. Use `--query` only when you want a single targeted answer without saving the page (costs 5 extra credits).
- **Try scrape before interact.** Scrape handles static pages and JS-rendered SPAs. Only escalate to `interact` when you need interaction (clicks, form fills, pagination).
- Multiple URLs are scraped concurrently — check `firecrawl --status` for your concurrency limit.
- Single format outputs raw content. Multiple formats (e.g., `--format markdown,links`) output JSON.
- Always quote URLs — shell interprets `?` and `&` as special characters.
- Naming convention: `.firecrawl/{site}-{path}.md`
See also
- [firecrawl-search](../firecrawl-search/SKILL.md) — find pages when you don't have a URL
- [firecrawl-interact](../firecrawl-interact/SKILL.md) — when scrape can't get the content, use `interact` to click, fill forms, etc.
- [firecrawl-download](../firecrawl-download/SKILL.md) — bulk download an entire site to local files
Read more
name: firecrawl-scrape description: | Extract clean markdown from any URL, including JavaScript-rendered SPAs. Use this skill whenever the user provides a URL and wants its content, says "scrape", "grab", "fetch", "pull", "get the page", "extract from this URL", or "read this webpage". Handles JS-rendered pages, multiple concurrent URLs, and returns LLM-optimized markdown. Use this instead of WebFetch for any webpage content extraction. allowed-tools: - Bash(firecrawl *) - Bash(npx firecrawl *)
firecrawl scrape
Scrape one or more URLs. Returns clean, LLM-optimized markdown. Multiple URLs are scraped concurrently.
When to use
- You have a specific URL and want its content
- The page is static or JS-rendered (SPA)
- Step 2 in the [workflow escalation pattern](firecrawl-cli): search → **scrape** → map → crawl → interact
Quick start
# Basic markdown extraction firecrawl scrape "<url>" -o .firecrawl/page.md # Main content only, no nav/footer firecrawl scrape "<url>" --only-main-content -o .firecrawl/page.md # Wait for JS to render, then scrape firecrawl scrape "<url>" --wait-for 3000 -o .firecrawl/page.md # Multiple URLs (each saved to .firecrawl/) firecrawl scrape https://example.com https://example.com/blog https://example.com/docs # Get markdown and links together firecrawl scrape "<url>" --format markdown,links -o .firecrawl/page.json # Ask a question about the page firecrawl scrape "https://example.com/pricing" --query "What is the enterprise plan price?"
Options
| Option | Description | | ------------------------ | ---------------------------------------------------------------- | | `-f, --format <formats>` | Output formats: markdown, html, rawHtml, links, screenshot, json | | `-Q, --query <prompt>` | Ask a question about the page content (5 credits) | | `-H` | Include HTTP headers in output | | `--only-main-content` | Strip nav, footer, sidebar — main content only | | `--wait-for <ms>` | Wait for JS rendering before scraping | | `--include-tags <tags>` | Only include these HTML tags | | `--exclude-tags <tags>` | Exclude these HTML tags | | `--redact-pii` | Redact personally identifiable information from output | | `-o, --output <path>` | Output file path |
Tips
- **Prefer plain scrape over `--query`.** Scrape to a file, then use `grep`, `head`, or read the markdown directly — you can search and reason over the full content yourself. Use `--query` only when you want a single targeted answer without saving the page (costs 5 extra credits).
- **Try scrape before interact.** Scrape handles static pages and JS-rendered SPAs. Only escalate to `interact` when you need interaction (clicks, form fills, pagination).
- Multiple URLs are scraped concurrently — check `firecrawl --status` for your concurrency limit.
- Single format outputs raw content. Multiple formats (e.g., `--format markdown,links`) output JSON.
- Always quote URLs — shell interprets `?` and `&` as special characters.
- Naming convention: `.firecrawl/{site}-{path}.md`
See also
- [firecrawl-search](../firecrawl-search/SKILL.md) — find pages when you don't have a URL
- [firecrawl-interact](../firecrawl-interact/SKILL.md) — when scrape can't get the content, use `interact` to click, fill forms, etc.
- [firecrawl-download](../firecrawl-download/SKILL.md) — bulk download an entire site to local files
Turn any website into clean, LLM-ready markdown or structured data — directly from Claude Code. This plugin adds the Firecrawl CLI as a skill to Claude Code, giving it the ability to scrape, search, crawl, and map the web.
Repo: firecrawl/firecrawl-claude-plugin
Other skills on firecrawl.
- /firecrawl-agent
AI-powered autonomous data extraction that navigates complex sites and returns structured JSON. Use this skill when the user wants structured data from websites, needs to extract pricing tiers, product listings, directory entries, or any data as JSON with a schema. Triggers on
Open skill - /firecrawl-cli
Search, scrape, and interact with the web via the Firecrawl CLI. Use this skill whenever the user wants to search the web, find articles, research a topic, look something up online, scrape a webpage, grab content from a URL, get data from a website, crawl documentation, download
Open skill - /firecrawl-crawl
Bulk extract content from an entire website or site section. Use this skill when the user wants to crawl a site, extract all pages from a docs section, bulk-scrape multiple pages following links, or says "crawl", "get all the pages", "extract everything under /docs", "bulk
Open skill - /firecrawl-download
Download an entire website as local files — markdown, screenshots, or multiple formats per page. Use this skill when the user wants to save a site locally, download documentation for offline use, bulk-save pages as files, or says "download the site", "save as local files",
Open skill - /firecrawl-interact
Control and interact with a live browser session on any scraped page — click buttons, fill forms, navigate flows, and extract data using natural language prompts or code. Use when the user needs to interact with a webpage beyond simple scraping: logging into a site, submitting
Open skill - /firecrawl-map
Discover and list all URLs on a website, with optional search filtering. Use this skill when the user wants to find a specific page on a large site, list all URLs, see the site structure, find where something is on a domain, or says "map the site", "find the URL for", "what
Open skill

