Bạn có thể yêu cầu một LLM hoặc AI agent trích xuất dữ liệu từ tài liệu và để câu trả lời đến từ một công cụ xử lý tài liệu, không phải từ việc mô hình đọc một tệp đã dán. Khi máy chủ GroupDocs.Parser.Mcp chạy cục bộ trong một container Docker, một lời nhắc sẽ trả về văn bản, bảng, hình ảnh nhúng hoặc giá trị mã vạch:
Invoice.pdf nói gì, và bảng trong nó chứa gì?
Phiên bản từng bước với cấu hình và khắc phục sự cố có trong tài liệu: How to extract document data with AI agents using MCP.
Tại sao một AI agent lại cần công cụ trích xuất dữ liệu?
Một mô hình trò chuyện chỉ biết những gì được đặt trong cửa sổ ngữ cảnh của nó. Dán một PDF vào chat và mô hình làm việc dựa trên bất kỳ văn bản nào mà client có thể làm phẳng ra từ nó, vì vậy các cột bị sụp, các bản scan xuất hiện trống và không ai có thể biết điều nào đã xảy ra. Một máy chủ trích xuất di chuyển bước này ra khỏi mô hình: agent gọi một công cụ, một công cụ xử lý tài liệu đọc tệp bên trong container, và agent nhận được kết quả. Sau đó mô hình thực hiện những gì nó giỏi, tức là suy luận dựa trên các giá trị đã được cung cấp.
GroupDocs.Parser.Mcp cung cấp bảy công cụ cho các client tương thích MCP như Claude Desktop, Claude Code, Cursor, VS Code với GitHub Copilot và Windsurf. Năm công cụ trích xuất dữ liệu (extract_text, extract_tables, extract_images, extract_barcodes, extract_metadata), một công cụ kiểm tra (get_document_info) và một công cụ báo cáo giấy phép (get_license_status).
Cách 1: Yêu cầu giá trị và để agent chọn công cụ
Diễn đạt yêu cầu dưới dạng câu hỏi về tài liệu. Agent sẽ ánh xạ câu hỏi tới một công cụ.
| Bạn hỏi | Công cụ mà agent gọi |
|---|---|
| “Nó nói gì?” | extract_text |
| “Bảng chứa gì?” | extract_tables |
| “Ai đã viết, và khi nào?” | extract_metadata |
| “Lưu các hình ảnh.” | extract_images |
| “Mã vạch mã hoá gì?” | extract_barcodes |
extract_text hỗ trợ PDF, DOCX, XLSX, PPTX, TXT, HTML, CSV, EML, MSG, RTF, ODT, EPUB và hơn 50 định dạng khác, vì vậy cùng một lời nhắc hoạt động trên email và trên bảng tính. Các đầu ra rất lớn sẽ bị cắt ngắn bằng một dấu hiệu, vì vậy đối với báo cáo dài hãy yêu cầu từng trang:
Trích xuất văn bản của báo cáo 40 trang này theo từng trang và tóm tắt mỗi phần.
Phiên làm việc mẫu (rút gọn):
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.
Cách 2: Kiểm tra lớp văn bản trước khi tin vào kết quả trống
Một PDF được tạo số có lớp văn bản; một bản scan thì không. Trên một trang scan, extract_text trả về ít hoặc không có gì, đây là một tuyên bố đúng về tệp. Hãy để agent kiểm tra điều này trước khi thực hiện trích xuất:
Tài liệu này có bao nhiêu trang, và có văn bản có thể trích xuất được không?
get_document_info trả về tên tệp, loại, số trang và kích thước mà không thay đổi gì, và một lời gọi extract_text một trang cho thấy liệu có văn bản hay không. Hai lời gọi rẻ tiền này tách biệt “tệp này trống” khỏi “tệp này là hình ảnh”. Máy chủ không có bước OCR, vì vậy các từ được in trong một bản scan vẫn là pixel. Mã là ngoại lệ, và Cách 3 sẽ đề cập đến chúng.
Cách 3: Lấy ra những gì việc trích xuất văn bản không thể chạm tới
Bảng, hình ảnh và mã vạch mỗi loại đều có công cụ riêng, vì việc làm phẳng chúng thành văn bản sẽ mất đi giá trị thực tế.
extract_tablestrả về các bảng Markdown hiển thị trong chat, hoặc các hàng JSON khi bạn truyềnformat: "json".extract_imageslưu mọi hình ảnh nhúng vào thư mục đầu ra dưới dạng<basename>_image<N>.<ext>.extract_barcodesgiải mã Code128, QR Code, PDF417, DataMatrix, EAN-13, EAN-8, UPC, Aztec và hơn thế nữa, kể cả trên các trang scan, vì các mô hình của engine phát hiện mã trong hình ảnh raster.
Trích xuất các mục dòng từ invoice.pdf dưới dạng JSON, sau đó lưu các hình ảnh từ trang 1.
Agent cần trích xuất hay chuyển đổi?
Đây là hai công việc khác nhau, và việc chọn sai máy chủ sẽ gây ra một vòng lặp nhầm lẫn.
| Bạn muốn | Máy chủ |
|---|---|
| Giá trị từ tài liệu: văn bản, bảng, mã vạch, thuộc tính | GroupDocs.Parser.Mcp |
| Tài liệu ở định dạng khác, giữ nguyên bố cục | GroupDocs.Conversion.Mcp |
| Markdown sạch của toàn bộ tài liệu cho RAG | GroupDocs.Markdown.Mcp |
| Siêu dữ liệu được chỉnh sửa hoặc xóa, không chỉ đọc | GroupDocs.Metadata.Mcp |
Nhiều pipeline sử dụng hai máy chủ: chuyển đổi để nhập liệu, phân tích để trích xuất.
Chạy cục bộ với Docker
Máy chủ này chỉ được cung cấp dưới dạng hình ảnh Docker. Engine nhúng khoảng 234 MB mô hình ONNX, khiến một gói NuGet vượt quá giới hạn 250 MB, vì vậy không có lệnh dnx. Gắn một thư mục tài liệu vào /data:
docker run --rm -i -v $(pwd)/documents:/data \
ghcr.io/groupdocs-parser/parser-net-mcp:latest
Client AI của bạn khởi chạy container như một tiến trình con qua stdio. Không có cổng vào, và các tài liệu vẫn ở trên máy. Cấu hình cho từng client (Claude Desktop, Claude Code, VS Code, Cursor, Windsurf, Cline và Codex) có trong Register in AI clients.
Những giới hạn là gì?
- Chế độ đánh giá. Không có giấy phép, việc trích xuất bị giới hạn; các giới hạn cụ thể có trên licensing page của thư viện. Hãy yêu cầu agent chạy
get_license_statustrước, và coi đầu ra không có giấy phép chỉ là kiểm tra nhanh, không phải đọc toàn bộ. - Không có OCR. Văn bản trong bản scan không thể được trích xuất.
- Chỉ Docker. Bạn cần cài đặt Docker; hình ảnh lớn, vì vậy chỉ kéo một lần.
FAQ
Tôi có thể trích xuất văn bản từ PDF bằng Claude cục bộ, mà không tải lên không?
Có. Máy chủ chạy trong một container trên máy của bạn và Claude Desktop giao tiếp với nó qua stdio, vì vậy tệp được đọc từ thư mục đã gắn và không được gửi tới dịch vụ trích xuất.
Tại sao agent trả về không có gì cho một số PDF?
Rất có thể tệp là bản scan không có lớp văn bản. Hãy yêu cầu agent chạy get_document_info và một lời gọi extract_text một trang để xác nhận, sau đó dùng extract_barcodes cho mã hoặc công cụ OCR cho từ ngữ.
Có lệnh dnx cho GroupDocs.Parser.Mcp không?
Không. Sản phẩm này chỉ hỗ trợ Docker, vì vậy mọi cài đặt đều dùng docker run hoặc một mục nhập client MCP khởi chạy Docker.
Đi sâu hơn
- Tài liệu, hướng dẫn chuẩn: How to extract document data with AI agents using MCP
- Trung tâm tài liệu: GroupDocs.Parser MCP Server
- Tiếp theo: Tables out of PDFs, into JSON, without an LLM guessing the cells
- Tiếp theo: Enforce consistent data capture with automated extraction workflows using MCP
- Tiếp theo: Scan-to-record automation with AI agents
- Kiến trúc on‑premise và mô hình bảo mật: 3 architectures for AI document processing, and the one that keeps files inside your network
- Câu hỏi: GroupDocs Parser forum
- Nguồn: GroupDocs.Parser.Mcp on GitHub