Enables reading and analyzing PDF research papers directly from arXiv URLs, including page-specific reading, text searching, and metadata extraction.
Click on "Install 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 Readersummarize pages 1 to 5 of research_paper.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 Server
A Model Context Protocol (MCP) server that enables AI assistants like Claude, Windsurf, and other MCP-compatible tools to read and analyze PDF files.
Features
📄 Read PDF files from local paths or URLs
🔍 Search for specific terms within PDFs
📊 Get PDF metadata (page count, author, title, etc.)
📖 Read specific pages or page ranges
🌐 Download and analyze PDFs from the web
🤖 Seamless integration with AI assistants via MCP
Installation
Using npm
Using npx (no installation required)
Configuration
For Claude Desktop
Add this to your Claude Desktop configuration file:
macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
Windows: %APPDATA%\Claude\claude_desktop_config.json
For Windsurf
Option 1: Via Plugin Store (Coming Soon)
Open Windsurf
Click the
Pluginsicon in Cascade panelSearch for "PDF Reader"
Click
Install
Option 2: Manual Configuration
Edit your MCP configuration file:
macOS: ~/Library/Application Support/Windsurf/User/globalStorage/codeium.codeium/mcp_config.json
Windows: %APPDATA%\Windsurf\User\globalStorage\codeium.codeium\mcp_config.json
Linux: ~/.config/Windsurf/User/globalStorage/codeium.codeium/mcp_config.json
After adding, click the refresh button in the Plugins panel.
For Cline
Add this to your MCP settings file:
Available Tools
The server provides the following tools to AI assistants:
read_pdf_pages
Read specific pages from a PDF file.
Parameters:
pdf_path(string): Path to the PDF filepages(array): List of page numbers to read
read_pdf_page_range
Read a range of pages from a PDF file.
Parameters:
pdf_path(string): Path to the PDF filestart_page(number): First page to read (inclusive)end_page(number): Last page to read (inclusive)
search_pdf
Search for terms in a PDF file and return pages containing them.
Parameters:
pdf_path(string): Path to the PDF fileterms(string or array): Search term(s)
get_pdf_metadata
Get metadata from a PDF file (page count, author, title, etc.).
Parameters:
pdf_path(string): Path to the PDF file
Usage Examples
Once configured, you can ask your AI assistant:
Local Files:
"Read pages 1-5 from document.pdf"
"Search for 'machine learning' in research.pdf"
"What's the metadata of report.pdf?"
"Read page 10 from presentation.pdf"
URLs:
"Read this PDF: https://example.com/research-paper.pdf"
"Search for 'climate change' in https://example.com/report.pdf"
"Get metadata from https://arxiv.org/pdf/2301.00001.pdf"
"Read pages 1-3 from https://example.com/whitepaper.pdf"
Development
Prerequisites
Node.js >= 18.0.0
npm or yarn
Setup
Scripts
npm run build- Compile TypeScript to JavaScriptnpm run dev- Watch mode for developmentnpm start- Run the compiled servernpm run prepare- Pre-install build hook
Technical Details
This MCP server is built with:
@modelcontextprotocol/sdk - MCP SDK for TypeScript
pdf-parse - PDF parsing library
TypeScript for type safety
Contributing
Contributions are welcome! Please feel free to submit a Pull Request.
License
MIT License - see LICENSE file for details
Author
Muhammad Saqib Aziz
Email: saqib.aziz1000@gmail.com
GitHub: @Saqib-Aziz007
npm: @saqibaziz
Support
If you encounter any issues or have questions:
Open an issue on GitHub
Check the MCP documentation
Acknowledgments
Built with the Model Context Protocol by Anthropic.