Claude Cursor Skill

firecrawl-build-scrape

Integrate Firecrawl `/scrape` into product code for single-page extraction. Use when an app already has a URL and needs markdown, HTML, links, screenshots, metadata, or structured page output. Prefer this skill over broader crawl patterns when the feature is page-level.

LLM Mart · 0 points · 0 views 0 listing impressions 0 install-command copies
Virus-scanned Reviewed automatically before listing.

Full trust report

Download firecrawl-skills-skills_build_firecrawl-build-scrape-8507156.zip · 2 KB
Part of firecrawl/skills — 33 skills

Install

skills CLI npx skills add https://github.com/firecrawl/skills/tree/main/skills/build/firecrawl-build-scrape
Claude Code claude plugin marketplace add https://llmmart.ai/marketplace.json && claude plugin install firecrawl-skills@llmmart
Git git clone https://github.com/firecrawl/skills.git

The skills CLI installs just this skill, for any of its supported agents. Claude Code installs the whole firecrawl/skills collection as a plugin from our marketplace. Git is the plain clone.

Skill manifest

Firecrawl Build Scrape

Use this when the application already has the URL and needs content from one page.

Use This When

  • the feature starts from a known URL
  • you need page content for retrieval, summarization, enrichment, or monitoring
  • you want the default extraction primitive before considering /interact

Default Recommendations

  • Return markdown unless the feature truly needs another format.
  • Use onlyMainContent for article-like pages where nav and chrome add noise.
  • Add waits or other rendering options only when the page needs them.

Freshness and Liveness

  • Firecrawl reuses recently indexed content, which is what makes repeat reads of the same URL fast. Set maxAge (milliseconds) to bound how old a reused copy may be, or maxAge: 0 to skip index reuse for a freshness-critical read.
  • Read metadata.cacheState and metadata.cachedAt to see what you actually got.
  • A successful scrape reports what the page returned. Whether the thing the page describes is still active is a source-specific judgment your code makes.
  • See references/freshness-and-liveness.md for the tradeoff, the metadata, and the decision rule.

Common Product Patterns

  • knowledge ingestion from known URLs
  • enrichment from a company, product, or docs page
  • pricing, changelog, and documentation extraction
  • page-level quality checks or monitoring

Escalation Rules

Implementation Notes

  • Keep the integration narrow: one feature, one URL, one extraction contract.
  • Treat /scrape as the default primitive for downstream LLM or indexing pipelines.
  • Request richer formats only when the consumer needs them, such as links, screenshots, or branding data.

Docs (Source of Truth)

Read the source-of-truth page for your project language before writing integration code:

See Also

Files (skills)
  • references
    • freshness-and-liveness.md 2.3 KB
      # Freshness and Liveness
      
      Two separate questions. Keep them separate in code:
      
      - **Freshness** — how old is this content? Controlled by `maxAge`.
      - **Liveness** — is the thing the page describes still active? A source-specific
        judgment your application makes from the content.
      
      ## `maxAge` and the Cache Tradeoff
      
      Firecrawl reuses recently indexed content, which is what makes repeat reads of
      the same URL fast and cheap. `maxAge` is the maximum age, in milliseconds, of an
      indexed copy that `/scrape` may return.
      
      - Omit `maxAge` and Firecrawl chooses the window itself, tuning it per domain.
        This is the right default for most reads.
      - Set `maxAge` explicitly when the feature has a real staleness bound.
      - `maxAge: 0` skips index reuse and takes the live scrape path. It costs
        latency, and it surfaces live-site failures that a reused copy would have
        masked, so spend it on reads where staleness would cause a wrong or costly
        decision.
      
      `/parse` is always uncached: it ignores a client `maxAge` and does not store its
      result, so there is no freshness knob to set there.
      
      ## Verifying What You Got
      
      From `/scrape` response metadata:
      
      - `cacheState` — `"hit"` or `"miss"`, present only when index reuse was
        eligible. With `maxAge: 0` the field is absent, which is itself the
        confirmation that no indexed copy was used.
      - `cachedAt` — ISO timestamp of the reused copy, present on a `"hit"`.
      - `sourceURL` — the URL you requested.
      - `url` — the URL the response came from. Differing values mean the request was
        redirected. Equal values are not proof that no redirect occurred, because
        `url` falls back to the requested URL when the engine reports none.
      - `statusCode` — the HTTP status of the response.
      
      ## Deciding Liveness
      
      Firecrawl supplies page evidence; your application interprets it in its own
      terms. `200` plus non-empty content means the fetch succeeded, not that the item
      described by the page is still active — plenty of sites serve a full page for a
      removed record.
      
      - Read the rendered content for the source's own signals.
      - Prefer a source-specific API or identifier where one exists. Those usually
        state a status that the rendered page only implies.
      - When the evidence is inconclusive, keep the state `unknown` and stop before an
        expensive or irreversible step rather than assuming active.
      
  • SKILL.md 3.7 KB
    ---
    name: firecrawl-build-scrape
    description: Integrate Firecrawl `/scrape` into product code for single-page extraction. Use when an app already has a URL and needs markdown, HTML, links, screenshots, metadata, or structured page output. Prefer this skill over broader crawl patterns when the feature is page-level.
    license: ISC
    metadata:
      author: firecrawl
      version: "0.1.0"
      homepage: https://www.firecrawl.dev
      source: https://github.com/firecrawl/skills
    inputs:
      - name: FIRECRAWL_API_KEY
        description: Firecrawl API key for hosted Firecrawl requests.
        required: true
      - name: FIRECRAWL_API_URL
        description: Optional base URL for self-hosted Firecrawl deployments.
        required: false
    references:
      - references/freshness-and-liveness.md
    ---
    
    # Firecrawl Build Scrape
    
    Use this when the application already has the URL and needs content from one page.
    
    ## Use This When
    
    - the feature starts from a known URL
    - you need page content for retrieval, summarization, enrichment, or monitoring
    - you want the default extraction primitive before considering `/interact`
    
    ## Default Recommendations
    
    - Return `markdown` unless the feature truly needs another format.
    - Use `onlyMainContent` for article-like pages where nav and chrome add noise.
    - Add waits or other rendering options only when the page needs them.
    
    ## Freshness and Liveness
    
    - Firecrawl reuses recently indexed content, which is what makes repeat reads of the same URL fast. Set `maxAge` (milliseconds) to bound how old a reused copy may be, or `maxAge: 0` to skip index reuse for a freshness-critical read.
    - Read `metadata.cacheState` and `metadata.cachedAt` to see what you actually got.
    - A successful scrape reports what the page returned. Whether the thing the page describes is still active is a source-specific judgment your code makes.
    - See [references/freshness-and-liveness.md](references/freshness-and-liveness.md) for the tradeoff, the metadata, and the decision rule.
    
    ## Common Product Patterns
    
    - knowledge ingestion from known URLs
    - enrichment from a company, product, or docs page
    - pricing, changelog, and documentation extraction
    - page-level quality checks or monitoring
    
    ## Escalation Rules
    
    - If you do not have the URL yet, start with [firecrawl-build-search](../firecrawl-build-search/SKILL.md).
    - If content requires clicks, typing, or multi-step navigation, escalate to [firecrawl-build-interact](../firecrawl-build-interact/SKILL.md).
    
    ## Implementation Notes
    
    - Keep the integration narrow: one feature, one URL, one extraction contract.
    - Treat `/scrape` as the default primitive for downstream LLM or indexing pipelines.
    - Request richer formats only when the consumer needs them, such as links, screenshots, or branding data.
    
    ## Docs (Source of Truth)
    
    Read the source-of-truth page for your project language before writing integration code:
    
    - **Node / TypeScript**: [docs.firecrawl.dev/agent-source-of-truth/node](https://docs.firecrawl.dev/agent-source-of-truth/node)
    - **Python**: [docs.firecrawl.dev/agent-source-of-truth/python](https://docs.firecrawl.dev/agent-source-of-truth/python)
    - **Rust**: [docs.firecrawl.dev/agent-source-of-truth/rust](https://docs.firecrawl.dev/agent-source-of-truth/rust)
    - **Java**: [docs.firecrawl.dev/agent-source-of-truth/java](https://docs.firecrawl.dev/agent-source-of-truth/java)
    - **Elixir**: [docs.firecrawl.dev/agent-source-of-truth/elixir](https://docs.firecrawl.dev/agent-source-of-truth/elixir)
    - **cURL / REST**: [docs.firecrawl.dev/agent-source-of-truth/curl](https://docs.firecrawl.dev/agent-source-of-truth/curl)
    
    ## See Also
    
    - [firecrawl-build](../firecrawl-build/SKILL.md)
    - [firecrawl-build-search](../firecrawl-build-search/SKILL.md)
    - [firecrawl-build-interact](../firecrawl-build-interact/SKILL.md)
    

Comments (0)

Sign in to join the conversation.

No comments yet.

Reviews (0)

No reviews yet.

Related