Community研究與資料分析github.com

clanker25/claude-seo

透過 Firecrawl MCP 進行全站爬取、內容擷取與網站地圖建立。

claude-seo 是什麼?

這是一個專門為 Claude SEO 工具鏈設計的 Firecrawl 擴充技能,允許使用者對網站進行全站爬取、結構探索、單頁深層抓取以及站內搜尋。核心功能包括:`firecrawl_crawl` 可爬取最多 500 頁並提取 Markdown、HTML 或鏈接;`firecrawl_map` 可快速發現網站 URL 結構且耗費點數較低;`firecrawl_scrape` 支援 JavaScript 渲染,適合 SPA 動態內容;`firecrawl_search` 可在已爬取的站點內進行關鍵詞搜尋。此技能可與其他 SEO 子技能(如 seo-audit、seo-technical、seo-content、seo-sitemap、seo-schema)深度整合,用於斷鏈檢測、內容盤點、網址結構分析、架構驗證等場景。支援平台為任何可執行 Firecrawl MCP 的 Claude 環境。使用前需安裝 Firecrawl 擴充,並注意免費方案每月 500 點數限制。

相容平台✓Claude Code~Codex CLI~Cursor
npx skills add https://github.com/clanker25/claude-seo/tree/HEAD/extensions/firecrawl/skills/seo-firecrawl

Installed? Explore more 研究與資料分析 skills: affaan-m/uspto-database, affaan-m/scholar-evaluation, affaan-m/literature-review · View all 6 →

在你喜歡的 AI 中提問

開啟一個已預先載入此 Agent Skill 的新對話。

說明文件

用於 Claude SEO 的 Firecrawl 擴充

此技能需要先安裝 Firecrawl 擴充:

./extensions/firecrawl/install.sh

檢查可用性: 使用任何 Firecrawl 工具前,請先確認 MCP 伺服器已連線,方法是檢查 firecrawl_scrape 或其他 Firecrawl 工具是否可用。若工具不可用,請告知使用者擴充尚未安裝,並提供安裝說明。

快速參考

指令用途
/seo firecrawl crawl <url>全站爬取並提取內容
/seo firecrawl map <url>探索網站結構(僅 URL,快速)
/seo firecrawl scrape <url>單頁抓取(含 JS 渲染)
/seo firecrawl search <query> <url>在已爬取的網站內搜尋

指令

crawl — 全站爬取

從給定的起始 URL 開始爬取整個網站。回傳所有發現頁面的內容、元資料和鏈接。

MCP 工具: firecrawl_crawl

參數:

  • url(必填):起始爬取 URL
  • limit:最大爬取頁數(預設:100,最大值:500)
  • maxDepth:從起始 URL 算起的最大鏈接深度(預設:3)
  • includePaths:要包含的 glob 模式陣列(例如 ["/blog/*"])
  • excludePaths:要排除的 glob 模式陣列(例如 ["/admin/*", "/api/*"])
  • scrapeOptions.formats:輸出格式 — ["markdown", "html", "links"]

SEO 使用模式:

  1. 全面稽核爬取:爬取全站,提取所有頁面供子代理分析
  2. 特定區塊爬取:使用 includePaths 僅稽核 /blog/* 或 /products/*
  3. 失效鏈接檢測:以 ["links"] 格式爬取,檢查所有 href 是否回傳 404
  4. 內容盤點:大規模提取所有頁面標題、meta 描述、H1
  5. SPA/JS 渲染網站:Firecrawl 可渲染 JavaScript,解決第 11 號問題

/seo audit 的範例編排:

1. firecrawl_map(url) -> 取得所有 URL(快速,無內容)
2. 過濾出前 50 個最重要的頁面(首頁、關鍵區塊)
3. firecrawl_crawl(url, limit=50) -> 取得完整內容
4. 將內容提供給 seo-technical、seo-content、seo-schema 代理

成本注意:

  • 免費方案:每月 500 點數
  • 1 點數 = 爬取或抓取 1 頁
  • 地圖操作較便宜(每個發現的 URL 0.5 點數)
  • 進行大型爬取前,務必告知使用者預估點數用量

map — 網站結構探索

發現網站上所有 URL,但不擷取內容。快速且節省點數。

MCP 工具: firecrawl_map

參數:

  • url(必填):要探索的網站 URL
  • limit:最大發現 URL 數量(預設:5000)
  • search:可選搜尋詞,用於過濾 URL

SEO 使用模式:

  1. Sitemap 比對:探索網站後,將發現的 URL 與 XML sitemap 比對
  2. 孤頁檢測:存在於 sitemap 但未從任何頁面鏈接的 URL
  3. 爬取預算分析:可索引的總頁數 vs 從首頁可達的頁數
  4. URL 模式分析:辨識 URL 結構模式、重複內容、參數膨脹
  5. 稽核前探索:先執行 map,再對關鍵區塊進行目標性爬取

輸出: URL 陣列。呈現方式例如:

網站:example.com
發現頁數:342

URL 模式分佈:
  /blog/*          - 128 頁 (37%)
  /products/*      - 89 頁 (26%)
  /category/*      - 45 頁 (13%)
  /pages/*         - 32 頁 (9%)
  /(根頁面)      - 48 頁 (14%)

scrape — 單頁深層抓取

抓取單一頁面,並完整執行 JavaScript 渲染。較 fetch_page.py 更徹底,因為它會執行 JS 並等待動態內容。

MCP 工具: firecrawl_scrape

參數:

  • url(必填):要抓取的頁面 URL
  • formats:輸出格式 — ["markdown", "html", "links", "screenshot"]
  • onlyMainContent:移除導航欄、頁尾、側邊欄(預設:true)
  • waitFor:等待內容的 CSS 選擇器或毫秒數
  • timeout:請求超時時間(毫秒,預設:30000)
  • actions:抓取前的瀏覽器動作(點擊、滾動、等待)

SEO 使用模式:

  1. SPA 內容提取:抓取 JS 渲染的 React/Vue/Angular 頁面
  2. 動態內容稽核:包含摺疊以下懶加載內容的頁面
  3. 付費牆/登入檢測:辨識需要驗證才能存取的內容
  4. 主要內容提取:使用 onlyMainContent 進行乾淨的 E-E-A-T 分析
  5. 螢幕截圖:使用 screenshot 格式進行視覺分析

何時使用 scrape 與 fetch_page.py:

情境使用
靜態 HTML 頁面fetch_page.py(無 API 成本)
JS 渲染的 SPAfirecrawl_scrape(渲染 JS)
需要回應標頭fetch_page.py(回傳標頭)
需要乾淨的 Markdownfirecrawl_scrape(提取較佳)
被限速/封鎖firecrawl_scrape(處理反爬蟲)

search — 站內搜尋

在網站內搜尋特定內容。可用於尋找與某主題相關的頁面,無須爬取整個網站。

MCP 工具: firecrawl_search

參數:

  • query(必填):搜尋查詢
  • url(必填):要搜尋的網站
  • limit:最大結果數(預設:10)
  • scrapeOptions.formats:匹配頁面的輸出格式

SEO 使用模式:

  1. 內容缺口驗證:在網站上搜尋某關鍵詞,確認是否存在相關內容
  2. 內部鏈接機會:尋找提及某主題的頁面,可互相建立鏈接
  3. 重複內容檢測:搜尋關鍵短語,找出近似重複的頁面
  4. 競爭者內容研究:在競爭者網站上搜尋特定主題

跨技能整合

與 seo-audit(完整稽核)

當 Firecrawl 在 /seo audit 中可用時:

  1. 使用 firecrawl_map 發現所有網站 URL
  2. 與 XML sitemap(seo-sitemap)比對,找出孤頁/遺漏頁面
  3. 選取重要頁面進行深度分析
  4. 將爬取內容提供給所有子代理(技術、內容、架構、地理)
  5. 回報可爬取總頁數、URL 模式與爬取深度

與 seo-technical

  • 失效鏈接檢測:爬取所有內部鏈接,檢查是否回傳 404
  • 重新導向鏈路對映:追蹤所有重新導向,標記超過 2 跳的鏈路
  • 混合內容檢測:檢查 HTTPS 頁面上的 HTTP 資源
  • Canonical 驗證:比對 canonical URL 與實際 URL

與 seo-sitemap

  • Sitemap 覆蓋率:爬取頁面中有多少存在於 sitemap
  • 孤頁:爬取發現但 sitemap 中遺漏的頁面
  • 過期 sitemap 項目:存在於 sitemap 但回傳 404/410 的 URL

與 seo-content

  • 內容提取:將乾淨的 Markdown 提供給 E-E-A-T 分析
  • 內容過薄檢測:大規模找出字數少於 300 字的頁面
  • 重複內容:跨頁面比對內容,找出近似重複

與 seo-schema

  • 架構提取:從所有爬取頁面中擷取 JSON-LD
  • 架構覆蓋率:有結構化資料的頁面比例
  • 架構驗證:批次驗證提取的架構

錯誤處理

錯誤原因解決方案
FIRECRAWL_API_KEY not setMCP 未設定執行 ./extensions/firecrawl/install.sh
402 Payment Required點數用盡到 firecrawl.dev/app 檢查用量,升級方案
429 Too Many Requests請求過多等待 60 秒,降低爬取並發數
408 Timeout頁面渲染過慢增加 timeout,或嘗試不進行 JS 渲染
403 Forbidden網站封鎖爬取檢查 robots.txt,可能需要略過此網站

優雅降級: 若 Firecrawl 不可用,告知使用者並建議:

  1. 使用 fetch_page.py 進行單頁分析(無 API 成本)
  2. 使用 WebFetch 工具進行基本 HTML 取得
  3. 安裝 Firecrawl:./extensions/firecrawl/install.sh

Individual skills in this repo

This repo contains 2 individual skills — each has its own dedicated page.

相關技能