Pdf MCP logo

Pdf MCP

Search, read, OCR, render, and extract structured content from individual PDFs or local document collections.

Install Pdf MCP

Pick your client, then add it in one click or paste the config.

STDIOPython
~/Library/Application Support/Claude/claude_desktop_config.json
claude_desktop_config.json
{
  "mcpServers": {
    "pdf-mcp": {
      "command": "uvx",
      "args": [
        "pdf-mcp"
      ],
      "env": {
        "PDF_MCP_AUTH_TOKEN": "YOUR_VALUE_HERE"
      }
    }
  }
}

Settings → Developer → Edit Config, merge this into mcpServers, then fully quit and reopen Claude Desktop.

Values are written into the snippet above so you can paste it as is. They never leave your browser.

Install not yet sandbox-tested— the server itself is confirmed live (we called its tools/list endpoint). The stdio install command is a separate, ongoing check.

Overview

pdf-mcp provides MCP tools for searching and extracting content from individual PDFs or folders of local PDFs. It combines keyword and optional semantic search with page-level reading, OCR, table extraction, image rendering, and vector-chart data extraction. Persistent caching supports repeated access and corpus warming, while HTTP transport can expose a shared, allow-listed document set to remote clients. Reach for it when an agent needs targeted answers from large, scanned, multi-column, or multilingual PDF collections.

Use cases

  • Search annual reports for risk factors and read only the matching pages
  • Triage a folder of research papers before comparing documents
  • OCR selected pages from scanned PDFs
  • Extract tables and vector-chart data for structured analysis
  • Render diagrams or handwritten pages for a vision-capable agent

Key features

  • Hybrid keyword and semantic PDF search
  • Folder-wide corpus warming, triage, and search
  • OCR for scanned pages with Tesseract
  • Table, image, and vector-chart extraction
  • Persistent SQLite caching
  • STDIO and HTTP transports

Tools13

What Pdf MCP lets your agent do. Expand a tool for its parameters.

Verified live~5.5k tokens of context

Security & health

What it can reach and how reliably it runs — from our own checks, not the maintainer’s claims.

ActiveLast checked Today

Recent health check succeeded.

8/8 checks healthy over the last 33d

What it can do

From the 13 tools this server returned when we ran it.

Makes network requests · 12Read-only tools · 13
Network at startup2 connections
Files written at startup25

Observed 2026-10-22 in an isolated sandbox. A description of reach, not a security audit.

Supply-chain signal

No high-severity advisories surfaced by our automated scan.

Critical 0High 0Medium 0Low 0

Scanned 9h ago via OSV.dev · pdf-mcp (PyPI)

Adoption & maintenance

Factual signals from GitHub, npm, and our automated checks — not a rating.

GitHub stars157Stargazers on the source repository.
Last commit1d agoMost recent push to the default branch.
Tools exposed13Callable tools this server registers over MCP.
Directory activity5 viewsConfig copies, upvotes, and views on AllMCPs.

How Pdf MCP works

What pdf-mcp does

pdf-mcp exposes a set of MCP tools for investigating PDF documents without loading every page into an agent's context. It handles single files as well as folders of PDFs, returning document metadata, page counts, table-of-contents information, extracted text, tables, images, and search matches with page provenance.

The server is designed for retrieval workflows. An agent can inspect a document, locate relevant pages or sections, and then read only the material needed for an answer. Search supports keyword matching, semantic matching when the optional feature is available, and an automatic hybrid mode. Corpus tools provide folder-level warming, triage cards, and relevance-ranked results across multiple documents.

PDF-derived text, OCR output, metadata, tables, section content, rendered images, and chart text must be treated as untrusted data. The tools flag this content so an agent does not follow instructions embedded in a PDF or treat extracted URLs and commands as authoritative.

How it works

The normal single-document sequence starts with pdf_info, which reports metadata, page count, scan detection, and a table-of-contents summary. Use pdf_get_toc when a document has a large outline. pdf_search then finds relevant pages or sections using short keyword queries, semantic search, or hybrid retrieval. pdf_read_pages supplies the surrounding text, tables, images, and optional OCR for selected pages; pdf_read_all reads a document in bounded portions.

For a folder, pdf_corpus_warm prepares documents in the cache, optionally including embeddings. pdf_corpus_overview produces per-document triage information, and pdf_corpus_search searches across the collection. If a warming or search operation is time-limited, repeat the call to continue processing. pdf_render_pages produces PNGs for visual inspection, while pdf_extract_chart returns coordinate-based data from born-digital vector charts.

A SQLite-backed cache persists extracted results across restarts. The standard transport is STDIO. pdf-mcp-http provides the same tools over HTTP for clients that cannot launch a local process or for several clients sharing a warm corpus. HTTP paths resolve on the server and are restricted by configured allow-listed roots; the server can also fetch a URL.

Setup and configuration

Claude Desktop users can install the downloadable .mcpb extension from the project's latest release. Its first startup downloads the server components, and OCR downloads an English Tesseract component when a scanned page first requires it. Supported desktop environments include Windows 10 or later and macOS 13 or later, with macOS 14 required on Apple Silicon.

For Claude Code and other MCP clients, install Python 3.11 or later with uv tool install pdf-mcp or pipx install pdf-mcp, then register the pdf-mcp command in the client. Installation inside a virtual environment also works with pip. Scanned-page OCR additionally requires Tesseract; the documented package commands cover macOS, Ubuntu/Debian, and Windows.

The HTTP process can be started with pdf-mcp-http. Set PDF_MCP_AUTH_TOKEN when enabling authenticated HTTP access. HTTP deployments should configure allowed filesystem roots because the server reads paths on the host rather than transferring files from the client. Optional NVIDIA CUDA embedding acceleration is available for warming large folders.

Tools and capabilities

  • Inspect metadata, page counts, scan status, and document outlines with pdf_info and pdf_get_toc.
  • Search one PDF or an entire folder with keyword, semantic, or hybrid retrieval.
  • Read selected pages, bounded full-document ranges, tables, images, and OCR text.
  • Preserve reading order for multi-column and Japanese vertical layouts.
  • Render pages as PNGs and extract coordinate-based series from vector charts.
  • Warm, triage, cache, inspect, and clear document collections.
  • Query active optional features and document roots with server_info.

Reviews

No reviews yet — be the first to share how it worked for you.

Frequently Asked Questions about Pdf MCP

pdf-mcp is an MCP server that connects AI agents to local PDF files and folders. Its main tools inspect document structure, search by keyword or meaning, read selected pages, perform OCR, extract tables and chart data, render pages, and manage a persistent cache for repeated document access.

Install it with `uv tool install pdf-mcp` or `pipx install pdf-mcp` on Python 3.11 or later, then register the `pdf-mcp` command with your MCP client. Claude Desktop can instead install the downloadable `.mcpb` extension from the latest release.

Yes, pdf-mcp can be added to Cursor as an MCP server. Install the command with uv or pipx, then configure Cursor to launch `pdf-mcp`; the project also documents setup for VS Code, Codex CLI, Claude Code, and other MCP clients.

Use `pdf_corpus_overview` to create per-document triage cards and `pdf_corpus_search` to return ranked matches across the folder. For better performance on repeated queries, warm the collection first with `pdf_corpus_warm`, repeating the call until warming completes.

Yes, scanned pages can be processed with Tesseract OCR, and `pdf_extract_chart` can return exact coordinate-based data series from born-digital vector charts. Render pages with `pdf_render_pages` when chart labels or other visual readings require verification.

Related MCP servers

Add a badge to your READMEShow it’s listed — live SVG, Markdown or HTML.

AllMCPs Directory Badge

Full Badge Customizer

Showcase your server listing on GitHub or your project documentation. Embed this dynamic SVG badge to highlight official listing status and live engagement.

Badge Style:
Live Dynamic SVG PreviewPdf MCP AllMCPs Directory Badge
Markdown (GitHub README)
[![AllMCPs](https://allmcps.com/api/badge/pdf-mcp?style=directory)](https://allmcps.com/mcp/pdf-mcp)
HTML Embed
<a href="https://allmcps.com/mcp/pdf-mcp"><img src="https://allmcps.com/api/badge/pdf-mcp?style=directory" alt="Pdf MCP on AllMCPs" /></a>