Você pode solicitar a um LLM ou agente de IA que extraia dados de documentos e fazer com que a resposta venha de um mecanismo de documentos, não da leitura do modelo de um arquivo colado. Com o servidor GroupDocs.Parser.Mcp em execução localmente em um contêiner Docker, um prompt retorna o texto, uma tabela, as imagens incorporadas ou o valor de um código de barras:

O que o invoice.pdf diz, e o que há em sua tabela?

A versão passo a passo com configuração e solução de problemas está na documentação: How to extract document data with AI agents using MCP.

Por que um agente de IA precisa de uma ferramenta de extração?

Um modelo de chat só conhece o que está colocado em sua janela de contexto. Cole um PDF em um chat e o modelo trabalha a partir de qualquer texto que o cliente conseguiu achatar dele, então colunas colapsam, digitalizações chegam vazias e ninguém pode dizer qual das duas coisas aconteceu. Um servidor de extração move essa etapa para fora do modelo: o agente chama uma ferramenta, um mecanismo de documentos lê o arquivo dentro do contêiner, e o agente recebe o resultado. O modelo então faz o que faz de melhor, que é raciocinar sobre os valores que lhe foram entregues.

GroupDocs.Parser.Mcp expõe sete ferramentas para clientes compatíveis com MCP, como Claude Desktop, Claude Code, Cursor, VS Code com GitHub Copilot e Windsurf. Cinco extraem dados (extract_text, extract_tables, extract_images, extract_barcodes, extract_metadata), uma inspeciona (get_document_info) e uma relata licenciamento (get_license_status).

Forma 1: Pergunte pelo valor e deixe o agente escolher a ferramenta

Formule a solicitação como uma pergunta sobre o documento. O agente mapeia a pergunta para uma ferramenta.

Você pergunta Ferramenta que o agente chama
“O que ele diz?” extract_text
“O que há na tabela?” extract_tables
“Quem o escreveu e quando?” extract_metadata
“Salvar as figuras.” extract_images
“O que o código de barras codifica?” extract_barcodes

extract_text suporta PDF, DOCX, XLSX, PPTX, TXT, HTML, CSV, EML, MSG, RTF, ODT, EPUB e mais de 50 formatos adicionais, então o mesmo prompt funciona em um e‑mail e em uma planilha. Saídas muito grandes são truncadas com um marcador, portanto, para um relatório extenso peça página por página:

Extraia o texto deste relatório de 40 páginas página por página e resuma cada seção.

Exemplo de sessão (abreviado):

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.

Forma 2: Verifique a camada de texto antes de confiar em um resultado vazio

Um PDF nascido digitalmente possui camada de texto; uma digitalização não tem. Em uma página escaneada extract_text retorna pouco ou nada, o que é uma declaração correta sobre o arquivo. Faça o agente testar isso antes de extrair:

Quantas páginas tem este documento e ele possui texto extraível?

get_document_info devolve o nome do arquivo, tipo, contagem de páginas e tamanho sem modificar nada, e uma chamada de extract_text de uma página mostra se há texto. Duas chamadas baratas separam “este arquivo está vazio” de “este arquivo é uma imagem”. Não há etapa de OCR neste servidor, portanto palavras impressas em uma digitalização permanecem como pixels. Códigos são a exceção, e a Forma 3 os cobre.

Forma 3: Extraia o que a extração de texto não consegue alcançar

Tabelas, imagens e códigos de barras têm cada um uma ferramenta dedicada, porque achatar eles em texto perde o que os torna úteis.

  • extract_tables devolve tabelas Markdown que são renderizadas no chat, ou linhas JSON quando você passa format: "json".
  • extract_images salva cada imagem incorporada na pasta de saída como <basename>_image<N>.<ext>.
  • extract_barcodes decodifica Code128, QR Code, PDF417, DataMatrix, EAN-13, EAN-8, UPC, Aztec e mais, inclusive em páginas escaneadas, porque os modelos do mecanismo detectam códigos na imagem rasterizada.

Extraia os itens de linha de invoice.pdf como JSON, então salve as imagens da página 1.

O agente precisa de extração ou conversão?

São trabalhos diferentes, e escolher o servidor errado gera confusão.

Você quer Servidor
Valores de um documento: texto, uma tabela, um código de barras, propriedades GroupDocs.Parser.Mcp
O documento em outro formato, layout preservado GroupDocs.Conversion.Mcp
Markdown limpo de todo o documento para RAG GroupDocs.Markdown.Mcp
Metadados editados ou removidos, não apenas lidos GroupDocs.Metadata.Mcp

Muitos pipelines usam dois servidores: converter para ingestão, analisar para extração.

Execute localmente com Docker

Este servidor é distribuído apenas como imagem Docker. O mecanismo incorpora cerca de 234 MB de modelos ONNX, o que coloca um pacote NuGet acima do limite de 250 MB, portanto não há comando dnx. Monte uma pasta de documentos como /data:

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

Seu cliente de IA inicia o contêiner como um processo filho via stdio. Não há portas de entrada, e os documentos permanecem na máquina. A configuração por cliente para Claude Desktop, Claude Code, VS Code, Cursor, Windsurf, Cline e Codex está em Register in AI clients.

Quais são os limites?

  • Modo de avaliação. Sem licença, a extração é limitada; os limites exatos estão na licensing page da biblioteca. Peça ao agente que execute get_license_status primeiro e trate a saída não licenciada como um teste rápido, não como uma leitura completa.
  • Sem OCR. Texto em uma digitalização não pode ser extraído.
  • Apenas Docker. Você precisa ter Docker instalado; a imagem é grande, então faça o pull uma única vez.

FAQ

Posso extrair texto de um PDF com Claude localmente, sem enviá‑lo?
Sim. O servidor roda em um contêiner na sua máquina e o Claude Desktop se comunica com ele via stdio, de modo que o arquivo é lido da pasta montada e não enviado a um serviço de extração.

Por que o agente não devolve nada para alguns PDFs?
Provavelmente o arquivo é uma digitalização sem camada de texto. Peça ao agente para executar get_document_info e uma chamada de extract_text de uma página para confirmar, então use extract_barcodes para códigos ou uma ferramenta de OCR para palavras.

Existe um comando dnx para GroupDocs.Parser.Mcp?
Não. Este produto é somente Docker, portanto toda instalação usa docker run ou uma entrada de cliente MCP que lança o Docker.

Aprofunde