PDF MCP Server
Extract text and data from PDF files using pdfplumber by providing local file paths.
PDF MCP Server
A simple Model Context Protocol (MCP) server that provides PDF reading capabilities using pdfplumber.
Features
- extract_text: Extract all text content from PDF files
- get_pdf_info: Get basic PDF information (page count, metadata, dimensions)
- extract_tables: Extract tables from PDF files
Installation
Option 1: Without installation (using uvx)
You can run the server directly without installing it:
uvx --from git+https://github.com/gstiebler/pdf-mcp-server.git pdf-mcp-server
Option 2: Local installation
Clone the repository and install dependencies:
git clone https://github.com/gstiebler/pdf-mcp-server.git
cd pdf-mcp-server
uv sync
Usage
If installed locally:
python main.py
The server runs using stdio transport and can be integrated with any MCP client.
Available Tools
extract_text
Extracts all text content from a PDF file.
Parameters:
file_path(string): Path to the PDF file
Returns:
- Complete text content from all pages
get_pdf_info
Gets basic information about a PDF file.
Parameters:
file_path(string): Path to the PDF file
Returns:
- Dictionary containing:
page_count: Number of pagesmetadata: PDF metadata (if available)page_dimensions: Width and height of the first page
extract_tables
Extracts tables from a PDF file.
Parameters:
file_path(string): Path to the PDF filepage_number(integer, optional): Specific page number to extract from (1-indexed)
Returns:
- List of tables with:
page: Page number where the table was founddata: Table data as a list of rows (each row is a list of cell values)
Integration with Claude Desktop
To use this server with Claude Desktop, add it to your Claude Desktop configuration:
Option 1: Direct from GitHub (recommended)
{
"mcpServers": {
"pdf-reader": {
"command": "uvx",
"args": ["--from", "git+https://github.com/gstiebler/pdf-mcp-server.git", "pdf-mcp-server"]
}
}
}
Option 2: From local installation
{
"mcpServers": {
"pdf-reader": {
"command": "python",
"args": ["/path/to/pdf-mcp-server/main.py"]
}
}
}
Requirements
- Python 3.10+
- pdfplumber
- mcp
Related Servers
pdfmux
Smart PDF-to-Markdown router that picks the best extractor per page, audits output quality, and re-extracts failures automatically. Confidence scoring, BYOK LLM support, RAG chunking.
Cursor MCP File Organizer
Organize files in your Downloads folder using Cursor IDE with customizable rules.
PDF Agent MCP
A server for AI agents to selectively process and extract content from PDF documents.
Download Assistant MCP
A universal file download assistant supporting secure and batch processing of any file type.
JSON MCP Server
A high-performance MCP server for comprehensive JSON file operations, including reading, writing, and advanced querying, optimized for LLM interactions.
Remote File Server
An MCP server that gives any MCP client read access to an SMB/CIFS file share servers
MCP-PROCESS
Provides shell access to execute commands and interact with the local file system.
MCP Excel Reader
Read large Excel files with automatic chunking and pagination support.
zephex
Zephex is a hosted MCP gateway built for AI coding editors. It gives your agent 10 ready-to-use tools — check npm packages for vulnerabilities, audit security headers, read and search code, trace request flows, get project context from any repo, and more. One API key, works instantly with Claude Code, Cursor, VS Code, Windsurf, and others. Free to start at zephex.dev.
Desktop Commander MCP
Execute terminal commands and edit local files on your desktop.