/ Каталог / Песочница / pdf-reader-mcp
● Сообщество SylphxAI ⚡ Сразу

pdf-reader-mcp

автор SylphxAI · SylphxAI/pdf-reader-mcp

One tool, read_pdf, that extracts text, images, and metadata from local or remote PDFs 5-10× faster via parallel page processing.

pdf-reader-mcp (SylphxAI) is a focused Node.js MCP exposing a single tool that handles all PDF extraction. Uses PDF.js with parallel page workers and Y-coordinate layout preservation. Supports local paths and HTTP/HTTPS URLs. 94% test coverage makes it safer for production pipelines.

Зачем использовать

Ключевые функции

Живое демо

Как выглядит на практике

pdf-reader.replay ▶ готово
0/0

Установка

Выберите клиент

~/Library/Application Support/Claude/claude_desktop_config.json  · Windows: %APPDATA%\Claude\claude_desktop_config.json
{
  "mcpServers": {
    "pdf-reader": {
      "command": "npx",
      "args": [
        "-y",
        "pdf-reader-mcp"
      ],
      "_inferred": true
    }
  }
}

Откройте Claude Desktop → Settings → Developer → Edit Config. Перезапустите после сохранения.

~/.cursor/mcp.json · .cursor/mcp.json
{
  "mcpServers": {
    "pdf-reader": {
      "command": "npx",
      "args": [
        "-y",
        "pdf-reader-mcp"
      ],
      "_inferred": true
    }
  }
}

Cursor использует ту же схему mcpServers, что и Claude Desktop. Конфиг проекта приоритетнее глобального.

VS Code → Cline → MCP Servers → Edit
{
  "mcpServers": {
    "pdf-reader": {
      "command": "npx",
      "args": [
        "-y",
        "pdf-reader-mcp"
      ],
      "_inferred": true
    }
  }
}

Щёлкните значок MCP Servers на боковой панели Cline, затем "Edit Configuration".

~/.codeium/windsurf/mcp_config.json
{
  "mcpServers": {
    "pdf-reader": {
      "command": "npx",
      "args": [
        "-y",
        "pdf-reader-mcp"
      ],
      "_inferred": true
    }
  }
}

Тот же формат, что и Claude Desktop. Перезапустите Windsurf для применения.

~/.continue/config.json
{
  "mcpServers": [
    {
      "name": "pdf-reader",
      "command": "npx",
      "args": [
        "-y",
        "pdf-reader-mcp"
      ]
    }
  ]
}

Continue использует массив объектов серверов, а не map.

~/.config/zed/settings.json
{
  "context_servers": {
    "pdf-reader": {
      "command": {
        "path": "npx",
        "args": [
          "-y",
          "pdf-reader-mcp"
        ]
      }
    }
  }
}

Добавьте в context_servers. Zed перезагружается автоматически.

claude mcp add pdf-reader -- npx -y pdf-reader-mcp

Однострочная команда. Проверить: claude mcp list. Удалить: claude mcp remove.

Сценарии использования

Реальные сценарии: pdf-reader-mcp

How to review a contract PDF with Claude

👤 Legal ops, founders, PMs ⏱ ~20 min beginner

Когда использовать: You need to understand what's in a 50-page contract and flag unusual clauses.

Поток
  1. Read the full PDF
    Use read_pdf on ./contracts/msa-acme.pdf. Extract text and metadata.✓ Скопировано
    → Full text + author/title/date metadata
  2. Ask for a structured summary
    Summarize: parties, term, payment terms, IP, termination, unusual clauses. Quote the exact clause for each.✓ Скопировано
    → Structured summary with quotes
  3. Red-flag review
    Compared to a standard SaaS MSA, what clauses are unusual or risky? Cite page numbers.✓ Скопировано
    → Prioritized list of things to negotiate

Итог: A 15-minute review instead of a 2-hour one — with citations.

Подводные камни
  • Scanned PDFs return empty text — pdf-reader needs a text layer; run ocrmypdf input.pdf output.pdf first

Digest a folder of research PDFs into a summary table

👤 Analysts, researchers ⏱ ~15 min beginner

Когда использовать: You downloaded 30 whitepapers and need a skim-layer before deciding what to read deeply.

Поток
  1. List PDFs
    List all PDFs in ./papers/. For each, extract title and abstract.✓ Скопировано
    → Table: filename, title, abstract
  2. Classify and rank
    Classify each paper into [relevant / tangential / skip]. Give a 1-line 'why'.✓ Скопировано
    → Prioritized reading list

Итог: A reading order based on content, not file name.

Сочетать с: filesystem

Extract structured data from invoice PDFs

👤 Finance, AP teams ⏱ ~20 min intermediate

Когда использовать: You receive PDF invoices and want them as CSV or JSON for your books.

Поток
  1. Extract per invoice
    For each PDF in ./inbox/, extract: vendor, invoice_number, date, total, line_items[]. Return as JSON array.✓ Скопировано
    → Structured JSON per invoice
  2. Flag anomalies
    Highlight any invoices with totals >$10k or with line items that don't add up✓ Скопировано
    → Review queue

Итог: Automated AP triage with human-in-the-loop for flags.

Сочетать с: google-sheets

Комбинации

Сочетайте с другими MCP — эффект x10

pdf-reader + filesystem

Iterate over a PDF folder, write summaries alongside

For each PDF in ./papers/, write a corresponding .md summary in the same folder.✓ Скопировано
pdf-reader + google-sheets

Invoice data straight into a Sheets ledger

Extract invoices from ./inbox/*.pdf and append one row per invoice to my 'AP' sheet.✓ Скопировано

Инструменты

Что предоставляет этот MCP

ИнструментВходные данныеКогда вызыватьСтоимость
read_pdf path: str (local or URL), options?: { pages?, include_images?, include_metadata? } Any PDF ingest — single tool handles all operations Local CPU only

Стоимость и лимиты

Во что обходится

Квота API
None — runs locally
Токенов на вызов
A 50-page doc is 20k-100k tokens
Деньги
Free
Совет
Use the pages option to limit extraction to the first N pages when prototyping

Безопасность

Права, секреты, радиус поражения

Хранение учётных данных: None
Исходящий трафик: Only when given HTTP URLs; local paths stay local

Устранение неполадок

Частые ошибки и исправления

Empty text from a valid PDF

PDF is image-only. Run OCR first: ocrmypdf in.pdf out.pdf, then read

Проверить: Check metadata; if `producer` says 'Scanner', it's imaged
Out-of-memory on huge PDFs

Pass pages: [1, 50] to chunk; process in ranges

Garbled text / wrong reading order

Some PDFs use non-standard layouts. Try disabling layout-preservation for raw stream order

Альтернативы

pdf-reader-mcp в сравнении

АльтернативаКогда использоватьКомпромисс
mcp-server-pdf (simple)Minimal dependency, okay with slower single-threadedMuch slower on large docs
LlamaParse APIYou need LLM-grade layout understanding of complex forms/tablesPaid, cloud, better on messy docs

Ещё

Ресурсы

📖 Читать официальный README на GitHub

🐙 Открытые задачи

🔍 Все 400+ MCP-серверов и Skills