mcp-document-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-document-readerRead the first 50 pages of ‘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-document-reader
MCP server for AI-assisted PDF reading with pagination, search, and page navigation.
Designed to let AI assistants read large documents without filling the context window from page 1 every time. The model can chunk through a book, jump to any section by keyword, and pick up exactly where it left off.
Tools
Tool | Description |
| List all documents in the configured directory |
| Get page count and file size without extracting text |
| Read a page range (default: 50-page chunks) |
| Keyword search — returns page numbers and context snippets |
Every read_document response includes a [Pages X–Y of Z total] header and a continuation hint so the model knows exactly where to call next.
Related MCP server: pdf-mcp
Quick start (Claude Desktop / npx)
Add to your Claude Desktop config (~/Library/Application Support/Claude/claude_desktop_config.json on macOS):
{
"mcpServers": {
"documents": {
"command": "npx",
"args": ["-y", "@hanna84/mcp-document-reader", "--stdio", "--dir", "/path/to/your/docs"]
}
}
}No install needed — npx pulls the package on first run.
Self-hosted (Docker / SSE)
# docker-compose.yml
services:
mcp-document-reader:
image: node:22-alpine
working_dir: /app
command: node index.js
environment:
DOC_DIR: /docs
HTTP_PORT: "3000"
volumes:
- ./docs:/docs:ro
ports:
- "3000:3000"Register the SSE endpoint in your MCP gateway:
{ "url": "http://mcp-document-reader:3000/sse" }A GET /healthz endpoint is available for Docker healthchecks.
CLI reference
node index.js [options]
--dir <path> Directory to serve documents from (default: $DOC_DIR or cwd)
--port <n> HTTP port for SSE mode (default: $HTTP_PORT or 3000)
--stdio Use stdio transport instead of SSEEnvironment variables
Variable | Default | Description |
|
| Document directory |
|
| SSE server port |
| — | Set to |
Supported formats
PDF (
.pdf)
Requirements
Node.js >= 18
Related MCP Connectors
MCP server for detecting and redacting PII (Personally Identifiable Information) in PDF documents.
Hosted MCP server: convert PDFs to clean, LLM-ready Markdown with tables, formulas and OCR.
- docs2mcpOAuthcom.docs2mcp
Query your own PDFs and documents from any MCP client. Every answer cites the page it came from.
Related MCP Servers
- AlicenseAqualityDmaintenanceAn MCP server that enables AI assistants to read, search, and analyze PDF files from local paths or URLs. It provides tools for extracting specific page ranges, searching for terms, and retrieving document metadata.421 npm1MIT
- AlicenseAqualityCmaintenanceAn MCP server for reading, rendering, and searching PDF files, specifically optimized for LLMs to extract text, tables, and technical diagrams. It enables metadata retrieval, multi-format text extraction, and page-to-image rendering using PyMuPDF.577MIT

okraPDF PDF MCP serverofficial
AlicenseAqualityDmaintenanceThis MCP server enables AI agents to view PDFs as accessible HTML with bounding-box citations, and provides tools for layout-aware parsing, schema extraction, cross-document Q&A, and PDF rendering.27MIT- FlicenseNot gradedqualityDmaintenanceA local MCP server that extracts text-layer content from PDF files, enabling AI agents to inspect, extract text, outlines, and page content.-