Agenty

官方

使用AI進行網頁抓取、爬蟲及變更偵測

你可以用 Agenty MCP 做什麼?

  • 將頁面轉換為 Markdown — 要求將 URL 或原始 HTML 轉換為乾淨、可讀的 Markdown,使用 markdown 工具產生適合 LLM 的內容。
  • 擷取螢幕截圖 — 使用 screenshot 擷取全頁或裁剪的 PNG/JPEG 影像,並支援自訂視窗大小與裝置模擬。
  • 抓取渲染後的 HTML — 使用 scrape 在動態內容載入後,取得 JavaScript 密集型頁面的完整渲染 HTML。
  • 提取結構化資料 — 使用 extract 透過 CSS 選擇器或 XPath 提取特定欄位,例如價格、標題或評論。
  • 產生 PDF — 使用 pdf 將頁面匯出為 PDF,並可設定格式、邊距、橫向模式及頁首/頁尾選項。
  • 探索網站結構 — 使用 sitemap 讀取網站的 sitemap.xml,並傳回所有發現的 URL,支援排除模式。

文件

Agenty AI 提供了一個模型上下文協定(MCP)伺服器,讓 Claude、Cursor 等 AI 助手,以及任何相容 MCP 的用戶端,都能直接使用瀏覽器自動化工具。您可以利用 LLM 模型擷取螢幕截圖、產生 PDF、抓取網頁、提取結構化資料、將頁面轉換為 Markdown 等。

在本文中,我將介紹如何連線到 Agenty 的 MCP 伺服器,以及如何使用每個可用的工具。

先決條件

在連線之前,您需要:

  • 一個 Agenty AI 帳戶和 API 金鑰
  • 一個相容 MCP 的用戶端,例如 Claude Desktop、Cursor、Windsurf,或任何支援模型上下文協定的工具
  • 如果您使用 CLI 或本機設定檔,則需要 Node.js 18 或更新版本

如何連線

將以下設定新增到您的 MCP 用戶端。對於 Claude Desktop,請將此設定放在 claude_desktop_config.json 中。對於 Cursor,請將其放在您的 .cursor/mcp.json 檔案中。

{
  "mcpServers": {
    "agenty": {
      "url": "https://api.agenty.ai/mcp",
      "headers": {
        "Authorization": "Bearer YOUR_API_KEY"
      }
    }
  }
}

YOUR_API_KEY 替換為您 Agenty AI > 設定 > API 金鑰中的金鑰。新增完成後,重新啟動您的用戶端,Agenty 工具就會出現在工具清單中。對於支援 OAuth 或基於權杖登入的用戶端,您可以透過 Agenty AI 的登入流程直接進行驗證,而無需手動貼上金鑰。

可用工具

Agenty MCP 伺服器提供了 11 個工具,涵蓋了最常見的瀏覽器自動化需求。每個工具都接受 URL 或原始 HTML 作為輸入,並附帶用於控制瀏覽器行為的選用參數。

Available Tools in Agenty MCP

Markdown MCP

markdown 工具會載入頁面,移除導覽列、頁尾、指令碼、廣告和其他樣板內容,並將剩餘的可讀內容轉換為乾淨的 Markdown。它可以將相對連結解析為絕對 URL,並移除資料影像。

這對於將網頁內容提供給 LLM、建立 RAG 管線,或儲存文章的可讀版本特別有用。

範例提示:

「將 網頁抓取 - 維基百科 轉換為 Markdown」

「取得這篇部落格文章的 Markdown 內容:https://example.com/article

Website scraping preview using Claude desktop

螢幕截圖 MCP

螢幕截圖工具會啟動真實的瀏覽器,載入頁面,並將其擷取為 PNG 或 JPEG 影像。它支援全頁截圖、裁剪區域、自訂視窗大小、裝置模擬,以及調整大小和旋轉等影像處理。

當您想要頁面的視覺快照、需要記錄 UI,或想驗證網站特定螢幕尺寸下的外觀時,這會很有用。

範例提示:

「拍攝 https://example.com 的全頁截圖,並以 PNG 格式回傳」

「使用 iPhone 14 視窗大小拍攝 https://agenty.ai 的行動裝置截圖」

網頁抓取 MCP

網頁抓取工具會在真實瀏覽器中載入 URL,並完整執行 JavaScript,然後回傳渲染後的 HTML。與簡單的 HTTP 請求不同,它會等待動態內容載入,因此對於單頁應用程式和大量使用 JavaScript 的頁面來說非常可靠。

當您需要頁面的原始 HTML,且內容必須與所有指令碼執行後使用者所見的完全一致時,請使用此工具。

範例提示:

「抓取 https://news.ycombinator.com 的 HTML,並回傳完整的渲染內容」

「抓取此頁面,並等待 3 秒讓動態內容載入:https://example.com/dashboard

網頁爬蟲 MCP

連結爬取工具會渲染頁面,並提取 DOM 中找到的每個超連結。它會回傳所有錨點 href 的平面清單,您可以用它來建立爬蟲佇列、稽核內部連結,或探索內容。

範例提示:

「找出 https://agenty.ai 上的所有連結」

「從 https://example.com/blog 提取每個連結,並給我一份文章 URL 清單」

PDF MCP

PDF 工具會在真實瀏覽器中渲染頁面,並將其匯出為 PDF。您可以設定頁面格式(A4、Letter 等)、啟用橫向模式、設定邊界、顯示或隱藏背景,並提供自訂的頁首和頁尾。

範例提示:

「以 A4 格式為 https://agenty.ai 產生 PDF,並啟用列印背景」

「為 https://example.com/report 建立橫向 PDF」

資料提取 MCP

提取工具會渲染頁面,並使用 CSS 選擇器或 XPath 提取結構化資料。它適合從渲染後的頁面中提取特定欄位,例如產品價格、評論數量、職稱,或任何重複出現的元素。

範例提示:

「從 https://example.com/products 提取產品名稱和價格」

「取得 https://news.ycombinator.com 的所有標題」

網站地圖 MCP

網站地圖爬蟲工具會讀取網站的 sitemap.xml,追蹤網站地圖索引檔案,並回傳所有發現的 URL 的完整清單。它支援排除模式,以過濾掉特定路徑。

使用此工具可以快速了解網站的完整結構,或為大型網站建立爬蟲清單。

範例提示:

「找出 https://agenty.ai 網站地圖中的所有 URL」

「取得 https://example.com 的網站地圖,並排除任何包含 /blog/ 的 URL」

重新導向追蹤 MCP

重新導向擷取工具會追蹤給定 URL 的所有 HTTP 重新導向,並回傳完整的鏈結,包括每個中間 URL、狀態碼和最終目的地。

這對於偵錯損壞的連結、驗證標準 URL,以及稽核聯盟或短連結很有幫助。

範例提示:

「追蹤 https://bit.ly/some-link 的所有重新導向」

「顯示 https://example.com/old-page 的重新導向鏈結」

電子郵件抓取器 MCP

電子郵件抓取工具會載入一個或多個 URL(一次最多十個),並提取渲染頁面上找到的所有電子郵件地址。它可以處理混淆的地址和動態載入的聯絡人區塊。

範例提示:

「找出 https://example.com/contact 上的所有電子郵件地址」

「從這三個頁面抓取電子郵件:https://site1.comhttps://site2.comhttps://site3.com

內容 MCP

內容工具會在 JavaScript 執行後回傳頁面的完整渲染 HTML。它類似於抓取,但針對需要最終 DOM 狀態而非抓取管線的使用案例進行了最佳化。

範例提示:

「取得 https://example.com/app 的渲染 HTML 內容」

快照 MCP

快照工具會擷取頁面的無障礙樹 — 一個結構化的清單,包含所有互動式和可讀元素,例如按鈕、連結、輸入框和標題。這是為需要導覽或理解頁面結構,但不想處理原始 HTML 的 AI 代理程式所設計的。

範例提示:

「拍攝 https://example.com 的無障礙快照,以便我了解頁面結構」

範例提示

以下是一些結合工具的多步驟範例:

稽核網站的內容:
「取得 https://example.com 的網站地圖,然後將前 5 個頁面轉換為 Markdown 並逐一摘要」

產生視覺報告:
「在行動裝置和桌面視窗大小下拍攝 https://agenty.ai 的截圖,並同時顯示兩者」

建立聯絡人清單:
「找出 https://example.com/team 上的所有連結,然後從每個團隊成員頁面抓取電子郵件地址」

驗證連結健康狀態:
「從 https://example.com/blog 提取所有連結,並追蹤任何未回傳 200 狀態碼的重新導向鏈結」

封存頁面:
「將 https://example.com/article 轉換為 Markdown,並產生 PDF 版本,兩者都使用絕對連結」

支援的參數

所有基於導覽的工具(螢幕截圖、PDF、抓取、內容、Markdown、連結、提取、重新導向)都共用一組常見的瀏覽器設定選項:

參數類型說明
urlstring要載入的頁面 URL。如果未提供 html,則為必填。
htmlstring要渲染的原始 HTML 字串,而非載入 URL。
waitForstring 或 number在擷取前等待 CSS 選擇器、等待特定毫秒數,或等待網路事件。
viewportobject設定 widthheightdeviceScaleFactorisMobilehasTouchisLandscape
devicestring模擬具名裝置,例如 iPhone 14 或 iPad Pro。
userAgentstring覆寫瀏覽器的使用者代理字串。
cookiesarray在頁面載入前注入 Cookie。
blockAdsboolean封鎖廣告網路請求。抓取工具預設啟用。
blockTrackersboolean封鎖追蹤和分析指令碼。
goToOptionsobject控制導覽 timeout(毫秒)和 waitUntil 策略(loaddomcontentloadednetworkidle0networkidle2)。
setExtraHTTPHeadersobject以鍵值對的形式新增自訂請求標頭。
rejectRequestPatternarray封鎖符合這些 URL 模式的請求。
requestInterceptorsarray攔截符合模式的請求,並回傳自訂回應。
authenticateobject為需要基本驗證的頁面設定 HTTP usernamepassword
anonymousobject透過代理伺服器路由,並跳過特定資源類型以進行匿名瀏覽。

螢幕截圖專用參數:

參數類型說明
options.fullPageboolean擷取整個可捲動頁面。預設為 true
options.typestring影像格式:pngjpeg。預設為 png
options.qualitynumberJPEG 品質,範圍從 0 到 100。
options.clipobject使用 xywidthheight 擷取特定區域。
options.omitBackgroundboolean使背景透明(僅限 PNG)。
manipulateobject使用 resizerotateflipflop 對影像進行後處理。
responseTypestring將影像回傳為 buffer(預設)或託管的 url

透過 MCP 使用螢幕截圖工具時,結果預設會以託管 URL 的形式回傳。直接呼叫 API 時,responseType 預設為 buffer。設定 responseType: 'url' 以改為接收託管連結。

PDF 專用參數:

參數類型說明
options.formatstring頁面大小:A4LetterLegalTabloidLedgerA0A6
options.landscapeboolean以橫向方向渲染。
options.marginobject設定 topbottomleftright 邊界。
options.printBackgroundboolean在輸出中包含 CSS 背景。
options.displayHeaderFooterboolean在每個頁面上顯示頁首和頁尾。
options.headerTemplatestring頁首的 HTML 範本。
options.footerTemplatestring頁尾的 HTML 範本。
options.pageRangesstring列印特定頁面,例如 1-5
options.scalenumber縮放頁面內容。
emulateMediastringscreenprint 媒體類型渲染。
responseTypestring將 PDF 回傳為 buffer(預設)或託管的 url

透過 MCP 使用 PDF 工具時,結果預設會以託管 URL 的形式回傳。直接呼叫 API 時,responseType 預設為 buffer。設定 responseType: 'url' 以改為接收託管連結。

速率限制與公平使用

每個 API 金鑰都有依方案而定的每月請求上限。執行時間較長、含有大量 JavaScript 或大型 PDF 的頁面會消耗更多資源。請使用 blockAdsblockTrackers 來加速請求,並減少抓取工作負載的頻寬使用量。

Agenty AI 的請求和回應結構刻意與最廣泛使用的瀏覽器自動化 API 保持相容,包括 BrowserlessFirecrawl、Cloudflare Browser Rendering 及類似服務。如果您已經在使用這些供應商之一,只需更新 base URL 和 API 金鑰即可切換到 Agenty AI,無需重寫現有的請求。

供應商遷移方式
Browserless變更 base URL 和 API 金鑰。所有參數皆相容。
Firecrawl變更 base URL 和 API 金鑰。Scrape、markdown 和 crawl 端點可直接對應。
Cloudflare Browser Rendering變更 base URL 和 auth 標頭。Screenshot 和 content 參數皆相容。
Puppeteer HTTP APIs大多數 goToOptions 和 page 選項可 1:1 對應。