/ 目錄 / 演練場 / Fetch
● 官方 modelcontextprotocol ⚡ 即開即用

Fetch

作者 modelcontextprotocol · modelcontextprotocol/servers

讓 Claude 存取網路最簡單的方式 — 輸入 URL,取得乾淨的 Markdown。無需 JS 渲染、無需 API 金鑰、輕鬆便利。

標準的 Fetch MCP。輸入 URL、下載網頁、移除樣板程式碼、轉換為 Markdown,回傳一個區塊。適合靜態網頁、文件、變更紀錄、RSS — 任何不需要 JavaScript 執行的地方。對於 SPA 和反爬蟲網站,改用 Firecrawl 或 Chrome DevTools。

為什麼要用

核心特性

即時演示

實際使用效果

fetch.replay ▶ 就緒
0/0

安裝

選擇你的客戶端

~/Library/Application Support/Claude/claude_desktop_config.json  · Windows: %APPDATA%\Claude\claude_desktop_config.json
{
  "mcpServers": {
    "fetch": {
      "command": "uvx",
      "args": [
        "mcp-server-fetch"
      ]
    }
  }
}

開啟 Claude Desktop → Settings → Developer → Edit Config。儲存後重啟應用。

~/.cursor/mcp.json · .cursor/mcp.json
{
  "mcpServers": {
    "fetch": {
      "command": "uvx",
      "args": [
        "mcp-server-fetch"
      ]
    }
  }
}

Cursor 使用與 Claude Desktop 相同的 mcpServers 格式。專案級設定優先於全域。

VS Code → Cline → MCP Servers → Edit
{
  "mcpServers": {
    "fetch": {
      "command": "uvx",
      "args": [
        "mcp-server-fetch"
      ]
    }
  }
}

點擊 Cline 側欄中的 MCP Servers 圖示,然後選 "Edit Configuration"。

~/.codeium/windsurf/mcp_config.json
{
  "mcpServers": {
    "fetch": {
      "command": "uvx",
      "args": [
        "mcp-server-fetch"
      ]
    }
  }
}

格式與 Claude Desktop 相同。重啟 Windsurf 生效。

~/.continue/config.json
{
  "mcpServers": [
    {
      "name": "fetch",
      "command": "uvx",
      "args": [
        "mcp-server-fetch"
      ]
    }
  ]
}

Continue 使用伺服器物件陣列,而非映射。

~/.config/zed/settings.json
{
  "context_servers": {
    "fetch": {
      "command": {
        "path": "uvx",
        "args": [
          "mcp-server-fetch"
        ]
      }
    }
  }
}

加入 context_servers。Zed 儲存後熱重載。

claude mcp add fetch -- uvx mcp-server-fetch

一行命令搞定。用 claude mcp list 驗證,claude mcp remove 移除。

使用場景

實戰用法: Fetch

摘要來自 URL 的文章或部落格文章

👤 任何人丟連結到聊天並問「這說的是什麼?」 ⏱ ~3 min beginner

何時使用: 你找到無付費牆的文章、文件頁面或部落格文章,想要摘要和意見但不想自己讀。

步驟
  1. 以 Markdown 輸出方式取得
    取得 https://example.com/blog/post 並給我前約 3000 字元的乾淨 Markdown。✓ 已複製
    → 內容到達時標題正常且沒有導航垃圾
  2. 摘要並提取重點
    用 5 點摘要。列出作者提到的任何具體數字或主張,並附上他們出現的句子。✓ 已複製
    → 有項目符號的摘要加上引用,不是意譯
  3. 批評
    作者主要論點的最強反駁是什麼?要具體。✓ 已複製
    → 真實的批評,不是「另一方面...」那種模棱兩可的東西

結果: 30 秒內有用地讀完文章,包含可驗證的引用。

注意事項
  • 網頁是 JS 渲染的,取得返回幾乎空的 shell — 先檢查第一次取得的輸出 — 如果看起來短得離譜或寫著「Loading...」,切換到 Firecrawl 或 Chrome DevTools MCP
  • 長網頁被 max_length 截斷 — 使用 start_index 分頁:第二次呼叫時設 start_index: 5000 從第一次的結束處繼續
搭配使用: memory

查看廠商變更紀錄這週改了什麼

👤 追蹤依賴版本發佈或競爭對手功能的開發者 ⏱ ~5 min beginner

何時使用: 你依賴的函式庫在靜態頁面發佈發佈備註,已經一個月沒檢查了。

步驟
  1. 取得變更紀錄頁面
    取得 https://vendor.com/changelog 並列出自 2026-03-01 以來的每個發佈,包含日期和該版本改動的單行摘要。✓ 已複製
    → 按時間順序排列的清單,附上日期
  2. 按影響分類
    將每個分類為:破壞性改動、新功能、bug 修復、內部。標記任何標示為破壞性或已棄用的項目。✓ 已複製
    → 每個發佈都有標籤,破壞性項目都被標記
  3. 指出對我們的影響
    我們主要用這個函式庫來實現 <功能 X>。這些改動中哪些影響我們的使用,以及我們應該採取什麼行動(如果有的話)?✓ 已複製
    → 可行動的清單,不是籠統的「檢查備註」

結果: 2 分鐘內知道你是否需要更新版本並測試,或者完全跳過這個發佈。

注意事項
  • 變更紀錄分頁 — 首頁只有最近 2 個月 — 用 start_index 捲動或明確取得存檔 URL
  • GitHub 發佈頁面現在透過 JS 渲染 — 改用原始 API:https://api.github.com/repos/owner/repo/releases 回傳 JSON 不需要 JS
搭配使用: github · memory

將 RFC 或文件頁面拉進編寫任務的上下文

👤 實作規範或 API 整合的工程師 ⏱ ~15 min intermediate

何時使用: 你在針對公開規範編寫程式碼(OAuth、RFC 9457 問題詳情、REST API 參考文件),希望 Claude 有權威來源。

步驟
  1. 取得規範頁面
    取得 https://datatracker.ietf.org/doc/html/rfc9457 為 Markdown。只回傳第 1-4 節。✓ 已複製
    → 規範性章節的乾淨 Markdown
  2. 根據它實作
    以那份 RFC 為真理來源,寫給我 TypeScript 型別加驗證器用於問題詳情物件。在註解中引用具體的節號。✓ 已複製
    → 含有內聯 // per RFC 9457 §3.1 引用的程式碼
  3. 邊界情況檢查
    根據同一份 RFC,我的實作沒有處理哪些邊界情況或可選欄位?決定是否要處理或記錄選擇。✓ 已複製
    → 針對規範的誠實缺口分析

結果: 一個忠實於規範的實作,具有可在代碼審查中舉證的可追蹤引用。

注意事項
  • IETF 頁面很大 — 整份 RFC 可能超過上下文預算 — 只用錨點連結或 start_index 取得你需要的章節,不要取全份文件
搭配使用: filesystem · github

組合

與其他 MCP 搭配,撬動十倍槓桿

fetch + filesystem

在本地保存取得的頁面以供離線 RAG 或存檔

取得 https://docs.anthropic.com/en/docs/mcp 並保存為 /knowledge/anthropic/mcp.md。✓ 已複製
fetch + memory

記住頁面的關鍵事實讓你下次不用重新取得

取得 Stripe 定價頁面並將每筆交易的手續費存作 'stripe-pricing' 實體上的觀察,含今日日期。✓ 已複製

取得多個來源,然後逐步推理

取得這 3 篇關於主題 X 的競爭文章。用序列思考找出它們真正的分歧處對比只是用不同的詞。✓ 已複製

工具

此 MCP 暴露的能力

工具輸入參數何時呼叫成本
fetch url: str, max_length?: int (default 5000), start_index?: int, raw?: bool 將單一 URL 取為 Markdown;設 raw=true 略過 Markdown 轉換 免費(僅頻寬成本)

成本與限制

運行它的成本

API 配額
無配額 — 僅受你的頻寬和目標網站速率限制
每次呼叫 Token 數
預設 max_length 是 5000 字元(約 1500 tokens);長頁面需要多次呼叫
費用
免費
提示
如果你發現自己常常在相同頁面分頁,取得一次後透過 filesystem MCP 快取它。

安全

權限、密鑰、影響範圍

憑證儲存:
資料出站: 直接從你的機器到目標 URL — 無代理、無第三方

故障排查

常見錯誤與修復

內容看起來短到不合理(<200 字元)

頁面可能是 JS 渲染的。透過在 curl 中查看 URL 確認;如果 curl 輸出也很小,fetch 幫不了 — 用 Firecrawl 或 chrome-devtools MCP。

驗證: curl -sL <url> | wc -c
403 禁止存取

網站攔截非瀏覽器的使用者代理。Fetch MCP 預設發送現代 UA;如果仍被攔截,網站明確禁止抓取 — 尊重那個決定。

robots.txt 不允許

對於使用者主動、一次性的取得(不是自主爬蟲),你可以根據伺服器文件停用 robots 檢查。不要對代理迴圈停用。

截斷 — 回應在句子中間被切斷

增加 max_length 或再呼叫一次,設 start_index 為上一次呼叫結束的地方。

替代方案

Fetch 對比其他方案

替代方案何時用它替代權衡
Firecrawl目標是 JS 渲染的 SPA,或你需要透過規範做結構化 JSON 提取免費額度後需付費;增加第三方依賴
Chrome DevTools MCP你需要與頁面互動(點擊、登入、捲動)來揭露內容更重量級 — 啟動真實瀏覽器;每頁更慢
Brightdata MCP目標主動攔截資料中心 IP 且你需要住宅代理企業定價;對大多數需求來說太超過

更多

資源

📖 閱讀 GitHub 上的官方 README

🐙 查看未解決的 issue

🔍 瀏覽全部 400+ MCP 伺服器和 Skills