MCP PDF
📄 MCP PDF
Ein FastMCP-Server für die PDF-Verarbeitung
47 Werkzeuge für Textextraktion, OCR, Tabellen, Formulare, Anmerkungen, Markdown↔PDF und mehr
Funktioniert hervorragend mit MCP Office Tools
Funktionsweise
MCP PDF extrahiert Inhalte aus PDFs unter Verwendung mehrerer Bibliotheken mit automatischen Fallbacks. Wenn eine Methode fehlschlägt, wird eine andere versucht.
Kernfunktionen:
Textextraktion via PyMuPDF, pdfplumber oder pypdf (automatischer Fallback)
Tabellenextraktion via Camelot, pdfplumber oder Tabula (automatischer Fallback)
OCR für gescannte Dokumente via Tesseract
Formularverarbeitung - Extrahieren, Ausfüllen und Erstellen von PDF-Formularen
Dokumentenzusammenstellung - Zusammenführen, Teilen, Neuanordnen von Seiten
Anmerkungen - Haftnotizen, Hervorhebungen, Stempel
Vektorgrafiken - Export als SVG für Schaltpläne und technische Zeichnungen
Formatkonvertierung - PDF ↔ Markdown (PDF→MD via PyMuPDF, MD→PDF via pandoc)
Related MCP server: PDF MCP Flow
Schnellstart
# Run from PyPI (one-shot, no permanent install)
uvx mcp-pdf
# Add to Claude Code — note the `--` separator before uvx
claude mcp add pdf-tools -- uvx mcp-pdf
# Include the markdown_to_pdf tool (requires pandoc on host)
claude mcp add pdf-tools -- uvx --from "mcp-pdf[markdown]" mcp-pdf
uvxspeichert Tool-Installationen aggressiv zwischen. Nach einem Upgrade auf eine neue Version erzwingen Sie eine Aktualisierung mituvx --refresh mcp-pdf(oderuvx --refresh --from "mcp-pdf[markdown]" mcp-pdf, falls Sie Extras verwenden).
git clone https://github.com/rsp2k/mcp-pdf
cd mcp-pdf
uv sync
# System dependencies (Ubuntu/Debian)
sudo apt-get install tesseract-ocr tesseract-ocr-eng poppler-utils ghostscript
# For markdown_to_pdf — pick one PDF-engine route:
sudo apt-get install pandoc tectonic # recommended (small)
# or: sudo apt-get install pandoc texlive-xetex texlive-latex-extra # full TeX
# or: sudo apt-get install pandoc && pip install weasyprint # skip TeX
# Verify
uv run python examples/verify_installation.pyWerkzeuge
Textextraktion
Werkzeug | Funktion |
| Text aus PDF-Seiten extrahieren, mit automatischem Chunking für große Dateien |
| Tabellen als JSON, CSV oder Markdown extrahieren |
| Eingebettete Bilder extrahieren |
| Alle Hyperlinks mit Seitenfilterung abrufen |
| Gescannte Dokumente mittels Tesseract per OCR verarbeiten |
| Vektorgrafiken als SVG exportieren (Schaltpläne, Diagramme, Zeichnungen) |
Formatkonvertierung
Werkzeug | Funktion |
| PDF in Markdown konvertieren unter Beibehaltung der Struktur; extrahiert Bilder und SVG-Vektoren auf die Festplatte |
|
|
markdown_to_pdf erfordert: pip install mcp-pdf[markdown] sowie das pandoc-Binary und mindestens eine PDF-Engine (xelatex, pdflatex, tectonic, weasyprint oder wkhtmltopdf) im PATH. Das Werkzeug erkennt automatisch, was verfügbar ist, und verwendet die Engine mit der höchsten Qualität. Übergeben Sie pdf_engine= zum Überschreiben oder extra_args= für rohe pandoc-Optionen.
Dokumentenanalyse
Werkzeug | Funktion |
| Titel, Autor, Erstellungsdatum, Seitenzahl usw. abrufen |
| Inhaltsverzeichnis und Lesezeichen extrahieren |
| Spalten, Kopf- und Fußzeilen erkennen |
| Prüfen, ob das PDF OCR benötigt |
| Zwei PDFs anhand von Text, Struktur oder Metadaten vergleichen |
| Auf Beschädigungen und Optimierungsmöglichkeiten prüfen |
| Verschlüsselung, Berechtigungen und Signaturen melden |
Formulare
Werkzeug | Funktion |
| Namen und Werte von Formularfeldern abrufen |
| Formularfelder aus JSON ausfüllen |
| Neue Formulare mit Textfeldern, Checkboxen und Dropdowns erstellen |
| Felder zu bestehenden PDFs hinzufügen |
Genehmigungsformulare (Koordinatenbasiert)
Für gescannte PDFs oder Formulare ohne interaktive Felder. Zeichnet Text an (x, y)-Koordinaten.
Werkzeug | Funktion |
| Jedes PDF durch Zeichnen an Koordinaten ausfüllen (funktioniert mit gescannten Formularen) |
| Felddefinitionen für Validierung oder UI-Generierung abrufen |
| Daten vor dem Ausfüllen gegen das Feldschema prüfen |
| PDF generieren, das Feldbegrenzungen zeigt (Debugging) |
| Bild-/Textseiten mit "Siehe Seite X"-Referenzen einfügen |
Erfordert: pip install mcp-pdf[forms] (fügt reportlab-Abhängigkeit hinzu)
Dokumentenzusammenstellung
Werkzeug | Funktion |
| Mehrere PDFs unter Beibehaltung der Lesezeichen kombinieren |
| Nach Seitenbereichen teilen |
| An Kapitel-/Abschnittsgrenzen teilen |
| Seiten in benutzerdefinierter Reihenfolge neu anordnen |
Anmerkungen
Werkzeug | Funktion |
| Kommentar-Anmerkungen hinzufügen |
| Textbereiche hervorheben |
| "Genehmigt"/"Entwurf"/"Vertraulich"-Stempel hinzufügen |
| Anmerkungen als JSON exportieren |
Funktionsweise der Fallbacks
Der Server versucht für jeden Vorgang mehrere Bibliotheken:
Textextraktion:
PyMuPDF (am schnellsten)
pdfplumber (besser für komplexe Layouts)
pypdf (am kompatibelsten)
Tabellenextraktion:
Camelot (beste Genauigkeit, erfordert Ghostscript)
pdfplumber (keine Abhängigkeiten)
Tabula (erfordert Java)
Wenn ein PDF mit einer Bibliothek fehlschlägt, wird automatisch die nächste versucht.
Token-Management
Große PDFs können die MCP-Antwortlimits überschreiten. Der Server handhabt dies wie folgt:
Automatisches Chunking teilt große Dokumente in Seitengruppen auf
Tabellenzeilen-Limits verhindern, dass riesige Tabellen die Antworten sprengen
Zusammenfassungsmodus gibt die Struktur ohne vollständigen Inhalt zurück
# Get first 10 pages
result = await extract_text("huge.pdf", pages="1-10")
# Limit table rows
tables = await extract_tables("data.pdf", max_rows_per_table=50)
# Structure only
tables = await extract_tables("data.pdf", summary_only=True)URL-Verarbeitung
PDFs können direkt von HTTPS-URLs abgerufen werden:
result = await extract_text("https://example.com/report.pdf")Dateien werden für nachfolgende Vorgänge lokal zwischengespeichert.
Systemabhängigkeiten
Einige Funktionen erfordern Systempakete:
Funktion | Abhängigkeit |
OCR |
|
Camelot-Tabellen |
|
Tabula-Tabellen |
|
PDF zu Bildern |
|
|
|
Auswahl einer PDF-Engine für markdown_to_pdf
Pandoc konvertiert Markdown → HTML oder LaTeX → PDF. Der LaTeX-Pfad erzeugt die ausgefeilteste Ausgabe, benötigt aber eine TeX-Installation. Abwägungen:
Engine | Festplattengröße | Hinweise |
| ~30 MB | Empfohlen für Neuinstallationen. Einzelnes statisches Binary. Lädt LaTeX-Pakete bei Bedarf herunter — keine massiven Vorab-Installationen. |
| ~500 MB | Beste Ausgabe nach der Installation. Verwenden, wenn Sie bereits TeX ausführen. Das |
| ~200 MB | Bricht oft ab. Erwarten Sie |
| ~40 MB | Rein-Python ( |
| ~40 MB | Älteres HTML-zu-PDF-Tool. Ausreichend, aber weniger aktiv gewartet. |
Ubuntu/Debian:
sudo apt-get install tesseract-ocr tesseract-ocr-eng poppler-utils ghostscript default-jre-headless
# For markdown_to_pdf — pick one engine route:
# Option A — tectonic (smallest, downloads packages on demand)
sudo apt-get install pandoc
# tectonic isn't in apt — install via cargo or download static binary:
# https://tectonic-typesetting.github.io/en-US/install.html
# Option B — full TeX (best quality, large download)
sudo apt-get install pandoc texlive-xetex texlive-latex-extra texlive-fonts-extra
# Option C — weasyprint (skip TeX entirely)
sudo apt-get install pandoc
pip install weasyprintArch Linux:
sudo pacman -S tesseract tesseract-data-eng poppler ghostscript jre-openjdk-headless
# For markdown_to_pdf — pick one engine route:
# Option A — tectonic (recommended for new installs, in official repo)
sudo pacman -S pandoc tectonic
# Option B — full TeX (best output, ~500 MB)
sudo pacman -S pandoc texlive-xetex texlive-latexextra texlive-fontsextra
# Option C — weasyprint (skip TeX)
sudo pacman -S pandoc
pip install weasyprint # or: uv pip install weasyprint
# Option D — wkhtmltopdf (from AUR)
yay -S wkhtmltopdf-staticmacOS (Homebrew):
brew install tesseract poppler ghostscript
# For markdown_to_pdf — pick one engine route:
# Option A — tectonic (recommended)
brew install pandoc tectonic
# Option B — full TeX (mactex-no-gui includes the latex-extra equivalent)
brew install pandoc
brew install --cask mactex-no-gui
# Option C — weasyprint
brew install pandoc weasyprintOptionale Extras
Die Basisinstallation bleibt schlank. Schwere oder nischenspezifische Abhängigkeiten sind hinter Extras verborgen:
Extra | Fügt hinzu | Wann zu installieren |
|
| Formular-Erstellungswerkzeuge ( |
|
| Tabellenextraktion mit höherer Genauigkeit (benötigt auch Java + Ghostscript) |
|
|
|
| Alles oben Genannte | Wenn Sie alles wollen |
Konfiguration
Optionale Umgebungsvariablen:
Variable | Zweck |
| Doppelpunkt-getrennte Verzeichnisse für Dateiausgabe |
| Temporäres Verzeichnis für die Verarbeitung (Standard: |
| Speicherort der Tesseract-Sprachdaten |
Entwicklung
# Run tests
uv run pytest
# With coverage
uv run pytest --cov=mcp_pdf
# Format
uv run black src/ tests/
# Lint
uv run ruff check src/ tests/Lizenz
MIT
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceEnables comprehensive PDF processing including text extraction, image extraction, and OCR capabilities for reading text within images across multiple languages.12MIT
- AlicenseNot gradedqualityDmaintenanceEnables AI-driven PDF document processing including PDF to Markdown conversion, intelligent text and table extraction, image extraction, format conversion between PDF/Word/Markdown, batch processing, and fuzzy search - optimized for LLM context and RAG workflows.2MIT
- AlicenseNot gradedqualityDmaintenanceProvides intelligent OCR and PDF processing capabilities that automatically detect whether PDFs contain digital text or scanned images and apply appropriate extraction methods. Supports text extraction, OCR processing, structure analysis, and batch operations.MIT
- AlicenseNot gradedqualityDmaintenanceEnables AI applications to read and process PDF files with intelligent file search, text extraction, image processing, and optional OCR support for scanned documents.MIT
Related MCP Connectors
Turn any PDF into structured JSON via AI + OCR: invoices, bank statements, contracts.
PDF accessibility checks (veraPDF PDF/UA-1), auto-fix and Markdown conversion. EU-hosted.
Convert PDF bank statements into structured transactions, accounts, and balances.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/rsp2k/mcp-pdf'
If you have feedback or need assistance with the MCP directory API, please join our Discord server