pdf-inspector-mcp
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@pdf-inspector-mcp Process the PDF at /tmp/invoice.pdf and return the markdown"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
pdf-inspector-mcp
MCP (Model Context Protocol) server wrapping the pdf-inspector Python library for AI-agent PDF processing.
Install
uv pip install pdf-inspector-mcpOr from source:
git clone https://github.com/jayluxferro/pdf-inspector-mcp.git
cd pdf-inspector-mcp
uv pip install -e .Related MCP server: document-parser
Usage
From a local clone:
{
"mcpServers": {
"pdf-inspector": {
"command": "uv",
"args": [
"run",
"--directory",
"path/to/pdf-inspector-mcp",
"pdf-inspector-mcp"
]
}
}
}Or ephemerally with uvx (no clone needed):
{
"mcpServers": {
"pdf-inspector": {
"command": "uvx",
"args": ["pdf-inspector-mcp"]
}
}
}Tools
Tool | Description |
| Full pipeline: detect type + extract text + Markdown |
| Fast detection only (PdfResult without Markdown) |
| Lightweight classification (PdfClassification) |
| Plain text extraction |
| Text with X/Y coordinates and font metadata |
| Text in bounding-box page regions |
| Per-page Markdown with layout info |
Every tool accepts either path (file path) or data (base64-encoded PDF bytes).
Requirements
Python ≥ 3.10
pdf-inspector (Rust core via PyO3)
Available Tools
7 toolsclassify_pdfA
Lightweight PDF classification: type, page count, OCR pages, confidence.
Faster than detect_pdf — returns a PdfClassification without full analysis.
Args: path: Absolute path to a PDF file on the local filesystem. data: Base64-encoded PDF bytes.
Inputs: data, path. Returns: result
detect_pdfA
Fast PDF detection: returns type, page count, and pages needing OCR.
Use this for quick classification without full text extraction.
Args: path: Absolute path to a PDF file on the local filesystem. data: Base64-encoded PDF bytes.
Inputs: data, path. Returns: result
extract_pages_markdownA
Extract per-page Markdown with layout metadata.
Returns page-by-page Markdown along with tables, columns, and OCR info. Pages are 0-indexed; returned page numbers are 1-indexed.
Args: path: Absolute path to a PDF file on the local filesystem. data: Base64-encoded PDF bytes. pages: Optional list of 0-indexed page numbers to extract.
Inputs: data, path, pages. Returns: result
extract_textB
Extract plain text from a PDF file.
Args: path: Absolute path to a PDF file on the local filesystem. data: Base64-encoded PDF bytes.
Inputs: data, path. Returns: result
extract_text_in_regionsB
Extract text from specific bounding-box regions on pages.
Args: path: Absolute path to a PDF file on the local filesystem. data: Base64-encoded PDF bytes. page_regions: List of {"page": int, "regions": [{"x": float, "y": float, "width": float, "height": float}, ...]} dicts.
Inputs: data, path, page_regions. Returns: result
extract_text_with_positionsA
Extract text items with position, font, and style metadata.
Returns a list of TextItem objects each with: text, x, y, width, height, font, font_size, page, is_bold, is_italic, is_underline, is_strikeout, item_type.
Args: path: Absolute path to a PDF file on the local filesystem. data: Base64-encoded PDF bytes. pages: Optional list of 0-indexed page numbers to extract.
Inputs: data, path, pages. Returns: result
process_pdfA
Full PDF processing: detect type, extract text, and convert to Markdown.
Args: path: Absolute path to a PDF file on the local filesystem. data: Base64-encoded PDF bytes. pages: Optional list of 0-indexed page numbers to process.
Inputs: data, path, pages. Returns: result
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
TDQS
Scored across 7 tools
detect_pdf and classify_pdf are nearly identical, both returning type, page count, and OCR pages, with only minor differences in speed/confidence. process_pdf also overlaps with all extraction tools, making tool boundaries unclear.
All tools follow a consistent verb_noun snake_case pattern (e.g., process_pdf, extract_text, extract_pages_markdown). No mixed conventions or vague verbs.
Seven tools is within a reasonable range, but the redundancy between detect_pdf and classify_pdf suggests the count could be trimmed. Still, it does not feel overwhelming.
The set covers detection, classification, plain text extraction, positioned text extraction, region-based extraction, and markdown conversion. Minor gaps like PDF metadata or OCR output are not critical to the inspection purpose.
Maintenance
Related MCP Connectors
Agent-native document parsing: PDF, scans and FR/EU invoices to structured JSON or Markdown.
High-fidelity PDF to structured Markdown conversion and document field extraction.
Generate and read PDFs for AI agents: a generate_pdf and a read_pdf tool, priced per document.
Convert PDF, Word, Excel and scanned documents to Markdown, tables and RAG chunks. OCR.
Related MCP Servers
- FlicenseAqualityDmaintenanceEnables reading and extracting content from PDF documents including text (as Markdown), images, tables, and metadata from both local files and URLs, with OCR support for scanned documents.2-
- AlicenseNot gradedqualityNot gradedmaintenanceProvides AI agents with comprehensive document parsing capabilities including PDF text extraction, OCR, HTML-to-markdown conversion, table extraction, and summarization, optimized for agent workflows.72 npmMIT
- AlicenseNot gradedqualityBmaintenanceEnables AI agents to inspect and convert PDF, PowerPoint, Excel, and many other file formats into clean, structured Markdown, with chunking support for long documents.Apache 2.0
- AlicenseNot gradedqualityCmaintenanceEnables AI agents and coding assistants to inspect, search, and extract only the needed PDF pages or sections as low-token Markdown while preserving tables and document structure.MIT