---
name: "firecrawl-web-to-markdown"
description: "Turn entire websites into clean, LLM-ready Markdown and structured JSON with Firecrawl."
metadata:
  author: "Mendable"
  version: "1.0.0"
  runtime_compatibility:
    - "codex"
    - "claude-code"
    - "cursor"
    - "windsurf"
triggers:
  - "scrape website to markdown firecrawl"
  - "crawl entire domain firecrawl"
  - "extract structured json firecrawl"
permissions:
  fs_read: true
  fs_write: "workspace"
  shell_exec: false
  net_access: false
---

# Firecrawl Clean Markdown Extraction for LLMs

Scrapes and crawls web domains using Firecrawl API: stripping navigational chrome, ads, and footers, extracting clean semantic Markdown, and returning structured JSON using LLM schema extraction.

## When to Invoke
Invoke this skill whenever you need to:
- scrape website to markdown firecrawl
- crawl entire domain firecrawl
- extract structured json firecrawl

## Execution SOP & Rules
1. Use app.scrape_url(url, params={'formats': ['markdown']}) to fetch clean content.
2. Use app.crawl_url(url, params={'limit': 100, 'scrapeOptions': {'formats': ['markdown']}}) for full domains.
3. Provide JSON schema parameters to the extract endpoint for automated semantic field mapping.
4. Cache extracted markdown locally to avoid redundant API usage on static documentation pages.

## Verification Checklist
- Run local linting, syntax validation, and type-checks before reporting completion.
- Ensure all created or modified files adhere to workspace boundaries and avoid uncommitted secrets.
- Verify tests or build commands exit cleanly with return code 0.
