您可以請求 LLM 或 AI 代理從文件中提取資料,讓答案來自文件引擎,而不是模型對貼上的檔案的閱讀。只要在 Docker 容器中本機執行 GroupDocs.Parser.Mcp 伺服器,一個提示即可返回文字、表格、嵌入的圖像或條碼值:

invoice.pdf 說了什麼,表格裡有什麼?

步驟說明(含設定與故障排除)請參閱文件:How to extract document data with AI agents using MCP.

為什麼 AI 代理仍需要提取工具?

聊天模型只能知道放入其上下文視窗的內容。將 PDF 貼入聊天,模型只能處理客戶端所展平的文字,結果會出現欄位合併、掃描檔案為空等情況,且無法判斷是哪一種情形。提取伺服器將這一步驟從模型中抽離:代理呼叫工具,文件引擎在容器內讀取檔案,代理收到結果。模型接著執行它擅長的工作——對交給它的值進行推理。

GroupDocs.Parser.Mcp 向 MCP 相容客戶端(如 Claude Desktop、Claude Code、Cursor、VS Code 搭配 GitHub Copilot 以及 Windsurf)公開七個工具。五個用於提取資料(extract_text、extract_tables、extract_images、extract_barcodes、extract_metadata),一個用於檢查(get_document_info),一個用於回報授權狀態(get_license_status)。

方法 1:直接詢問值,讓代理選擇工具

將請求表述為關於文件的問題,代理會將問題映射到相應工具。

您的提問 代理呼叫的工具
「它說了什麼?」 extract_text
「表格裡有什麼?」 extract_tables
「誰寫的,什麼時候?」 extract_metadata
「保存圖形。」 extract_images
「條碼編碼了什麼?」 extract_barcodes

extract_text 支援 PDF、DOCX、XLSX、PPTX、TXT、HTML、CSV、EML、MSG、RTF、ODT、EPUB 以及超過 50 種其他格式,因此相同提示可用於電子郵件或試算表。非常大的輸出會以標記截斷,若要處理長報告請逐頁提問:

請逐頁提取這份 40 頁報告的文字,並為每個章節做摘要。

範例會話(節錄):

You:    What does invoice.pdf say, and what is in its table?
Agent:  [calls extract_text, extract_tables]
        Invoice 2026-0412 from Northwind Supplies, dated 3 October.
        The table has 3 rows (item, quantity, amount); the amounts add up to 1,240.00.

方法 2:在信任空結果前先檢查文字層

數位原生 PDF 具備文字層;掃描件則沒有。對掃描頁面執行 extract_text 會返回很少或沒有內容,這正是檔案的真實狀態。讓代理先測試再提取:

這份文件有多少頁,是否有可提取的文字?

get_document_info 會回傳檔名、類型、頁數與大小,且不會修改任何內容;一次單頁的 extract_text 呼叫則可顯示是否存在文字。兩個低成本的呼叫即可區分「檔案為空」與「檔案為影像」。此伺服器不包含 OCR 步驟,掃描件中的印刷文字仍是像素。條碼是例外,方法 3 會說明。

方法 3:提取文字無法觸及的內容

表格、圖像與條碼各有專屬工具,因為將它們平鋪成文字會失去其實用價值。

  • extract_tables 會回傳可在聊天中渲染的 Markdown 表格,或在傳入 format: "json" 時回傳 JSON 行。
  • extract_images 會將每個嵌入圖像保存至輸出資料夾,檔名為 <basename>_image<N>.<ext>。
  • extract_barcodes 能解碼 Code128、QR Code、PDF417、DataMatrix、EAN-13、EAN-8、UPC、Aztec 等,甚至可在掃描頁面上偵測,因為引擎模型會在點陣圖中找出條碼。

請將 invoice.pdf 的明細項目以 JSON 形式提取,然後保存第 1 頁的圖像。

代理需要提取還是轉換?

這是不同的工作,選錯伺服器會造成混亂。

您的需求 伺服器
從文件中取得值:文字、表格、條碼、屬性 GroupDocs.Parser.Mcp
將文件轉換為其他格式,保留版面 GroupDocs.Conversion.Mcp
為 RAG 提供整份文件的乾淨 Markdown GroupDocs.Markdown.Mcp
編輯或移除 Metadata,而不僅是讀取 GroupDocs.Metadata.Mcp

許多工作流程會同時使用兩個伺服器:先轉換以便匯入,再解析以提取。

使用 Docker 本機執行

此伺服器僅以 Docker 映像提供。引擎內嵌約 234 MB 的 ONNX 模型,超過 250 MB 限制的 NuGet 套件無法使用 dnx 指令。將文件資料夾掛載為 /data:

docker run --rm -i -v $(pwd)/documents:/data \
  ghcr.io/groupdocs-parser/parser-net-mcp:latest

您的 AI 客戶端會以子行程方式透過 stdio 啟動容器。沒有入站埠,文件始終保留在本機。Claude Desktop、Claude Code、VS Code、Cursor、Windsurf、Cline 與 Codex 的客戶端設定請參考 Register in AI clients。

有哪些限制?

  • 評估模式。 未授權時提取功能受限;具體限制請見函式庫的授權頁面。先讓代理執行 get_license_status,將未授權的輸出視為煙霧測試,而非完整讀取。
  • 無 OCR。 掃描件中的文字無法提取。
  • 僅支援 Docker。 必須安裝 Docker;映像檔較大,請只拉取一次。

FAQ

我可以在本機使用 Claude 提取 PDF 文字,而不上傳檔案嗎?
可以。伺服器在您機器的容器中執行,Claude Desktop 透過 stdio 與之通訊,檔案從掛載資料夾讀取,並不會傳送至提取服務。

為什麼代理對某些 PDF 沒有回應?
檔案很可能是沒有文字層的掃描件。先讓代理執行 get_document_info 並呼叫一次單頁 extract_text 以確認,之後可使用 extract_barcodes 處理條碼,或使用 OCR 工具處理文字。

GroupDocs.Parser.Mcp 有 dnx 指令嗎?
沒有。此產品僅支援 Docker,安裝方式皆為 docker run 或透過 MCP 客戶端條目啟動 Docker。

深入了解