# Seo Firecrawl > Rastreo, scraping y mapeo de sitio completo vía Firecrawl MCP. Úsalo para 'crawl site', 'map site', 'full crawl', 'find all pages', 'broken links' o 'JS rendering'. Fuente: https://skillsagentes.com/skills/agricidaniel/claude-seo/seo-firecrawl Markdown: https://skillsagentes.com/skills/agricidaniel/claude-seo/seo-firecrawl.md Repositorio: https://github.com/AgriciDaniel/claude-seo Autor: AgriciDaniel Licencia: MIT Actualizado: el mes pasado Coste de contexto: 60 tok instalada, 2k tok al activarse, 2.1k tok con todos los archivos del bundle Bundle: 2 archivos, 8 KB Permisos que pide: ninguno declarado ## Instalación Un skill son archivos markdown: los mismos archivos valen para cualquier agente y lo único que cambia es el directorio de destino, es decir la bandera `--agent`. Añade `-g` para instalarlo en todos los proyectos de la máquina. ```bash # Claude Code npx -y skills add AgriciDaniel/claude-seo --skill seo-firecrawl --agent claude-code # Cursor npx -y skills add AgriciDaniel/claude-seo --skill seo-firecrawl --agent cursor # Codex npx -y skills add AgriciDaniel/claude-seo --skill seo-firecrawl --agent codex # Gemini CLI npx -y skills add AgriciDaniel/claude-seo --skill seo-firecrawl --agent gemini # Windsurf npx -y skills add AgriciDaniel/claude-seo --skill seo-firecrawl --agent windsurf # Cline npx -y skills add AgriciDaniel/claude-seo --skill seo-firecrawl --agent cline ``` ## Qué hace - Rastrea un sitio completo con extracción de contenido (`firecrawl_crawl`) o solo descubre la estructura de URLs sin contenido, más barato (`firecrawl_map`) - Hace scraping de una sola página con renderizado JS completo (`firecrawl_scrape`), útil para SPAs que `fetch_page.py` no puede leer - Busca dentro de un sitio ya rastreado (`firecrawl_search`) para validar huecos de contenido o encontrar oportunidades de enlazado interno ## Cuándo usarla - El usuario pide rastrear o mapear un sitio completo, encontrar enlaces rotos, o analizar una SPA renderizada en JS ## Qué la activa - "Rastrea todo mi sitio y encuentra enlaces rotos" - "Mapea la estructura de URLs de example.com" ## Antes de instalar - Requiere `extensions/firecrawl/install.sh`; el tier gratuito da 500 créditos/mes (1 crédito por página rastreada o scrapeada). ## Archivos - LICENSE.txt — 143 B - SKILL.md — 8 KB ## SKILL.md Reproducido tal cual desde AgriciDaniel/claude-seo bajo MIT. Esta sección es el documento original y está en inglés. # Firecrawl Extension for Claude SEO This skill requires the Firecrawl extension to be installed: ```bash ./extensions/firecrawl/install.sh ``` **Check availability:** Before using any Firecrawl tool, verify the MCP server is connected by checking if `firecrawl_scrape` or any Firecrawl tool is available. If tools are not available, inform the user the extension is not installed and provide install instructions. ## Quick Reference | Command | Purpose | |---------|---------| | `/seo firecrawl crawl ` | Full-site crawl with content extraction | | `/seo firecrawl map ` | Discover site structure (URLs only, fast) | | `/seo firecrawl scrape ` | Single-page scrape with JS rendering | | `/seo firecrawl search ` | Search within a crawled site | ## Commands ### crawl -- Full-Site Crawl Crawl an entire website starting from the given URL. Returns page content, metadata, and links for all discovered pages. **MCP Tool:** `firecrawl_crawl` **Parameters:** - `url` (required): Starting URL to crawl - `limit`: Max pages to crawl (default: 100, max: 500) - `maxDepth`: Max link depth from start URL (default: 3) - `includePaths`: Array of glob patterns to include (e.g., `["/blog/*"]`) - `excludePaths`: Array of glob patterns to exclude (e.g., `["/admin/*", "/api/*"]`) - `scrapeOptions.formats`: Output formats -- `["markdown", "html", "links"]` **SEO Usage Patterns:** 1. **Comprehensive audit crawl**: Crawl full site, extract all pages for subagent analysis 2. **Section-focused crawl**: Use `includePaths` to audit only `/blog/*` or `/products/*` 3. **Broken link detection**: Crawl with `["links"]` format, check all hrefs for 404s 4. **Content inventory**: Extract all page titles, meta descriptions, H1s at scale 5. **SPA/JS-rendered sites**: Firecrawl renders JavaScript, solving the Issue #11 problem **Example orchestration for `/seo audit`:** ``` 1. firecrawl_map(url) -> get all URLs (fast, no content) 2. Filter to top 50 most important pages (homepage, key sections) 3. firecrawl_crawl(url, limit=50) -> get full content 4. Feed content to seo-technical, seo-content, seo-schema agents ``` **Cost awareness:** - Free tier: 500 credits/month - 1 credit = 1 page crawled or scraped - Map operations are cheaper (0.5 credits per URL discovered) - Always inform user of estimated credit usage before large crawls ### map -- Site Structure Discovery Discover all URLs on a website without fetching content. Fast and credit-efficient. **MCP Tool:** `firecrawl_map` **Parameters:** - `url` (required): Website URL to map - `limit`: Max URLs to discover (default: 5000) - `search`: Optional search term to filter URLs **SEO Usage Patterns:** 1. **Sitemap comparison**: Map site, compare discovered URLs vs XML sitemap 2. **Orphan page detection**: URLs in sitemap but not linked from any page 3. **Crawl budget analysis**: Total indexable pages vs pages linked from homepage 4. **URL pattern analysis**: Identify URL structure patterns, duplicates, parameter bloat 5. **Pre-audit discovery**: Run map first, then targeted crawl on key sections **Output:** Array of URLs. Present as: ``` Site: example.com Pages discovered: 342 URL Pattern Breakdown: /blog/* - 128 pages (37%) /products/* - 89 pages (26%) /category/* - 45 pages (13%) /pages/* - 32 pages (9%) / (root pages) - 48 pages (14%) ``` ### scrape -- Single-Page Deep Scrape Scrape a single page with full JavaScript rendering. More thorough than `fetch_page.py` because it executes JS and waits for dynamic content. **MCP Tool:** `firecrawl_scrape` **Parameters:** - `url` (required): Page URL to scrape - `formats`: Output formats -- `["markdown", "html", "links", "screenshot"]` - `onlyMainContent`: Strip nav/footer/sidebar (default: true) - `waitFor`: CSS selector or milliseconds to wait for content - `timeout`: Request timeout in ms (default: 30000) - `actions`: Browser actions before scraping (click, scroll, wait) **SEO Usage Patterns:** 1. **SPA content extraction**: Scrape JS-rendered React/Vue/Angular pages 2. **Dynamic content audit**: Pages with lazy-loaded content below the fold 3. **Paywall/login detection**: Identify content behind authentication walls 4. **Main content extraction**: Use `onlyMainContent` for clean E-E-A-T analysis 5. **Screenshot capture**: Use `screenshot` format for visual analysis **When to use scrape vs fetch_page.py:** | Scenario | Use | |----------|-----| | Static HTML page | `fetch_page.py` (no API cost) | | JS-rendered SPA | `firecrawl_scrape` (renders JS) | | Need response headers | `fetch_page.py` (returns headers) | | Need clean markdown | `firecrawl_scrape` (better extraction) | | Rate-limited/blocked | `firecrawl_scrape` (handles anti-bot) | ### search -- Site-Scoped Search Search within a website for specific content. Useful for finding pages related to a topic without crawling everything. **MCP Tool:** `firecrawl_search` **Parameters:** - `query` (required): Search query - `url` (required): Website to search within - `limit`: Max results (default: 10) - `scrapeOptions.formats`: Output format for matched pages **SEO Usage Patterns:** 1. **Content gap validation**: Search for a keyword on the site to check if content exists 2. **Internal linking opportunities**: Find pages mentioning a topic that could link to each other 3. **Duplicate content detection**: Search for key phrases to find near-duplicates 4. **Competitor content research**: Search competitor site for specific topics ## Cross-Skill Integration ### With seo-audit (full audit) When Firecrawl is available during `/seo audit`: 1. Use `firecrawl_map` to discover all site URLs 2. Compare with XML sitemap (seo-sitemap) to find orphan/missing pages 3. Select top pages for deep analysis 4. Feed crawled content to all subagents (technical, content, schema, geo) 5. Report total crawlable pages, URL patterns, and crawl depth ### With seo-technical - Broken link detection: crawl all internal links, check for 404s - Redirect chain mapping: follow all redirects, flag chains > 2 hops - Mixed content detection: check HTTP resources on HTTPS pages - Canonical verification: compare canonical URLs with actual URLs ### With seo-sitemap - Sitemap coverage: % of crawled pages present in sitemap - Orphan pages: pages found by crawl but missing from sitemap - Stale sitemap entries: URLs in sitemap that return 404/410 ### With seo-content - Content extraction: feed clean markdown to E-E-A-T analysis - Thin content detection: identify pages with < 300 words at scale - Duplicate content: compare content across pages for near-duplicates ### With seo-schema - Schema extraction: pull JSON-LD from all crawled pages - Schema coverage: % of pages with structured data - Schema validation: batch-validate extracted schemas ## Error Handling | Error | Cause | Resolution | |-------|-------|-----------| | `FIRECRAWL_API_KEY not set` | MCP not configured | Run `./extensions/firecrawl/install.sh` | | `402 Payment Required` | Credits exhausted | Check usage at firecrawl.dev/app, upgrade plan | | `429 Too Many Requests` | Rate limited | Wait 60s, reduce crawl concurrency | | `408 Timeout` | Page too slow to render | Increase `timeout`, try without JS rendering | | `403 Forbidden` | Site blocks crawling | Check robots.txt, may need to skip this site | **Graceful fallback:** If Firecrawl is unavailable, inform the user and suggest: 1. Use `fetch_page.py` for single-page analysis (no API cost) 2. Use `WebFetch` tool for basic HTML retrieval 3. Install Firecrawl: `./extensions/firecrawl/install.sh` ## Dónde encaja - Categoría: [SEO y GEO](https://skillsagentes.com/categorias/seo-geo.md) — Keywords, auditorías on-page, datos estructurados y visibilidad en respuestas de IA. - Creador: [AgriciDaniel](https://skillsagentes.com/creators/agricidaniel.md) — 31 skills en el directorio - [Todas las skills](https://skillsagentes.com/skills.md) - [Ranking de instalaciones](https://skillsagentes.com/ranking.md) ## Otras skills del mismo repositorio - [Seo Google](https://skillsagentes.com/skills/agricidaniel/claude-seo/seo-google.md): APIs SEO de Google: Search Console, PageSpeed Insights, CrUX con historial de 25 semanas, Indexing API y tráfico orgánico de GA4. Da datos reales de campo para Core Web Vitals, indexación, rendimiento de búsqueda y tráfico. - [Seo Flow](https://skillsagentes.com/skills/agricidaniel/claude-seo/seo-flow.md): Integración del framework FLOW: SEO basado en evidencia con el ciclo Find → Leverage → Optimize → Win. Expone 41 prompts de IA por etapa desde la base de conocimiento FLOW (CC BY 4.0). - [Seo](https://skillsagentes.com/skills/agricidaniel/claude-seo/seo.md): Análisis SEO integral para cualquier sitio: auditorías completas, análisis de una página, SEO técnico (rastreo, indexación, CWV con INP), schema, E-E-A-T, imágenes, sitemaps y GEO para AI Overviews/ChatGPT/Perplexity. - [Seo Audit](https://skillsagentes.com/skills/agricidaniel/claude-seo/seo-audit.md): Auditoría SEO completa del sitio con delegación paralela a sub-agentes. Rastrea hasta 500 páginas, detecta el tipo de negocio, delega en hasta 15 especialistas (8 siempre + 7 condicionales) y genera un health score. - [Seo Cluster](https://skillsagentes.com/skills/agricidaniel/claude-seo/seo-cluster.md): Agrupación semántica de keywords basada en solapamiento real de SERP (no similitud de texto) para planear arquitectura de contenido. Diseña clusters hub-and-spoke con matriz de enlaces internos y genera una visualización interactiva. ## Skills relacionadas - [Seo Seranking](https://skillsagentes.com/skills/agricidaniel/claude-seo/seo-seranking.md): Analista de visibilidad en IA con SE Ranking (extensión). Sigue el Share-of-Voice en ChatGPT, Gemini, Perplexity, AI Overviews y AI Mode en una sola consulta. - [Seo Competitor Pages](https://skillsagentes.com/skills/agricidaniel/claude-seo/seo-competitor-pages.md): Genera páginas de comparación y alternativas optimizadas para SEO: layouts 'X vs Y', páginas 'alternativas a X', matrices de funciones, schema y optimización de conversión. - [Seo Ecommerce](https://skillsagentes.com/skills/agricidaniel/claude-seo/seo-ecommerce.md): Análisis de SEO para e-commerce: visibilidad en Google Shopping, inteligencia de marketplace de Amazon, validación de schema Product, análisis de precios de competidores y brechas de keywords entre orgánico y Shopping. - [Seo Images](https://skillsagentes.com/skills/agricidaniel/claude-seo/seo-images.md): Análisis de optimización de imágenes para SEO y rendimiento: alt text, tamaño de archivo, formato, imágenes responsive, lazy loading, prevención de CLS, ranking en SERP de imágenes y optimización de archivos. - [Seo Maps](https://skillsagentes.com/skills/agricidaniel/claude-seo/seo-maps.md): Inteligencia de mapas para SEO local: rastreo de ranking en grilla geográfica, auditoría de GBP vía API, inteligencia de reseñas en Google/Tripadvisor/Trustpilot, verificación cruzada de NAP y mapeo de competidores por radio. --- Skills Agentes · [Índice de páginas en markdown](https://skillsagentes.com/sitemap.md) · [Inicio](https://skillsagentes.com/index.md)