MCP PDF Reader
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., "@MCP PDF Reader extract the content from my quarterly report PDF"
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.
MCP PDF Reader
A Model Context Protocol (MCP) server that provides tools for reading and processing PDF documents. Built with Docling for document conversion and text extraction.
Features
MCP Server with tools for PDF document processing
Document Text Extraction: Convert PDF content to clean Markdown format
Document Discovery: List and access available PDF files
Related MCP server: MCP PDF Reader
Tools
The server provides two main tools:
get_document_list: Returns a list of all available PDF files in the data directoryget_document_text: Extracts and returns the full text content of a specified PDF file in Markdown format
Install
Make sure you have uv installed.
Clone the repository:
git clone git@github.com:mlexpertio/mcp-pdf-reader.git
cd mcp-pdf-readerInstall Python:
uv python install 3.12.10Create and activate a virtual environment:
uv venv
source .venv/bin/activateInstall dependencies:
uv syncUsage
Add PDF Documents
Place your PDF files in the data/ directory. The server will automatically detect and make them available through the tools.
Run MCP Server
Start the MCP server:
python server.pyThe server runs using stdio transport and can be integrated with any MCP-compatible client.
Development and Testing
Use the MCP inspector to test the server:
mcp dev server.pyThis will open a web interface where you can test the available tools and inspect their responses.
Use in VSCode/Cursor
You can use the MCP integration in your editor. Tools & Integrations -> New MCP Server and edit the mcp.json file to include the following:
{
"mcpServers": {
"pdf-reader": {
"command": "/opt/homebrew/bin/uv", // path to your uv binary
"args": ["run", "--directory", "PATH_TO_YOUR_PROJECT", "server.py"]
}
}
}License
See LICENSE file for details.
Available Tools
2 toolsget_document_listB
Use this tool to get the list of documents.
Returns:
list[str]: The list of document filenames.
Inputs: no named parameters. Returns: result
get_document_textA
Use this tool to get the content of a document given its filename.
Args:
filename (str): The filename of the document to get.
Returns:
str: The content of the document in Markdown format.
Inputs: filename (required). Returns: result
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
TDQS
Scored across 2 tools
Each tool has a clearly distinct purpose: one retrieves the list of documents, and the other retrieves the content of a specific document. There is no overlap or ambiguity between them.
Both tool names follow a consistent 'get_document_<action>' pattern, using snake_case and the same prefix. The minor deviation is that one uses 'text' and the other 'list', but the pattern is clear and predictable.
For a PDF reader MCP server, two tools is minimal but still reasonable for core functionality: listing documents and reading their content. It feels slightly thin but earns its place.
The server covers basic read operations (list and get content), but lacks tools for searching within documents, getting metadata, or navigating pages. Agents have no way to target specific sections or handle structured PDFs.
Maintenance
Related MCP Connectors
PDF to Markdown and PDF to text from PDF URLs, page by page, with OCR for scanned pages
Hosted MCP server: convert PDFs to clean, LLM-ready Markdown with tables, formulas and OCR.
Document-to-Markdown MCP server — convert PDF, Office and HTML into LLM-ready Markdown.
Convert PDF documents to Markdown for AI agents through an authenticated remote MCP server.
Related MCP Servers
- AlicenseAqualityFmaintenanceAn MCP server that exports PDF documents to markdown format optimized for LLM processing.11BSD 3-Clause
- AlicenseAqualityDmaintenanceA Model Context Protocol server that enables the extraction of text, metadata, and embedded images from PDF files. It provides tools for searching text with context, reading specific pages, and counting total pages within a document.745 npm1MIT
- FlicenseAqualityDmaintenanceA server designed for processing PDF documents, enabling text extraction, table data retrieval, and metadata collection from local files. It allows users to scan directories for PDFs and read specific pages, specifically optimized for thesis literature analysis.3-
- AlicenseAqualityDmaintenanceA comprehensive tool server for reading, merging, and extracting content from PDF files via local paths or direct URLs. It enables metadata retrieval, regex searching, and page-specific text extraction with built-in caching and workspace-restricted security.95,936 PyPIMIT