# PDF MCP (MCP server)

> PDF MCP is an MCP server that adds search and knowledge tools to AI assistants such as Claude Desktop, Claude Code and Cursor. Agentic RAG over one PDF or a whole folder: hybrid search, selective page reads, tables, OCR. It has 147 GitHub stars, is released under the MIT license and runs locally with uvx pdf-mcp.

Agentic RAG over your PDFs, one file or a whole folder, as a single MCP tool. The agent decides when to search; pdf-mcp does the retrieval and hands back excerpts. It is an MCP server that lets Claude Code and other AI agents search one PDF or a whole folder by meaning or keyword, read only the pages that matter, and cleanly pull out tables, images, and scanned text, even from multi-column and Japanese layouts, with optional CUDA acceleration for warming large corpora.

## Key facts

| Fact | Value |
|---|---|
| Repository | https://github.com/jztan/pdf-mcp |
| GitHub stars | 147 |
| License | MIT |
| Language | Python |
| Transport | stdio |
| Packages | pypi: pdf-mcp |
| Remote URL | none |
| Needs API key | no |
| Official | no |
| Works with | Claude Desktop, Claude Code, Cursor, VS Code |
| Category | AI & search |
| Latest release | v3.5.0 (Oct 3, 2026) |
| Last commit | Oct 4, 2026 |
| MCP registry name | io.github.jztan/pdf-mcp |

## Install

### Claude Desktop (claude_desktop_config.json)

```json
{
  "mcpServers": {
    "pdf-mcp": {
      "command": "uvx",
      "args": [
        "pdf-mcp"
      ],
      "env": {
        "PDF_MCP_CACHE_DIR": "your-value",
        "PDF_MCP_CACHE_TTL": "your-value"
      }
    }
  }
}
```

Settings > Developer > Edit Config. macOS: ~/Library/Application Support/Claude/, Windows: %APPDATA%\Claude\. Restart Claude Desktop afterwards.

### Claude Code

```sh
claude mcp add --env PDF_MCP_CACHE_DIR=your-value --env PDF_MCP_CACHE_TTL=your-value --transport stdio pdf-mcp -- uvx pdf-mcp
```

### Cursor (.cursor/mcp.json)

```json
{
  "mcpServers": {
    "pdf-mcp": {
      "type": "stdio",
      "command": "uvx",
      "args": [
        "pdf-mcp"
      ],
      "env": {
        "PDF_MCP_CACHE_DIR": "your-value",
        "PDF_MCP_CACHE_TTL": "your-value"
      }
    }
  }
}
```

Project file; use ~/.cursor/mcp.json to enable it in every project.

### VS Code (.vscode/mcp.json)

```json
{
  "servers": {
    "pdf-mcp": {
      "type": "stdio",
      "command": "uvx",
      "args": [
        "pdf-mcp"
      ],
      "env": {
        "PDF_MCP_CACHE_DIR": "your-value",
        "PDF_MCP_CACHE_TTL": "your-value"
      }
    }
  }
}
```

Config formats checked against the official docs on 2026-10-07.

## Environment variables

- `PDF_MCP_CACHE_DIR`: Directory for storing PDF cache (default: ~/.cache/pdf-mcp)
- `PDF_MCP_CACHE_TTL`: Cache time-to-live in hours (default: 24)

## Tools

- `pdf_info`: Page count, metadata, TOC summary, scanned-page detection. Call first.
- `pdf_search`: Hybrid search (keyword + semantic), page or section granularity, paragraph or context-window excerpts with source…
- `pdf_read_pages`: Read specific pages or ranges, with OCR on demand, tables, and embedded images
- `pdf_read_all`: Read a whole document in one call, byte-capped
- `pdf_get_toc`: Full table of contents for documents with many bookmarks
- `pdf_render_pages`: Render pages as PNG for vision models: diagrams, handwriting, scans
- `pdf_extract_chart`: Chart data as exact (x, y) tables, read from plot geometry
- `pdf_corpus_warm`: Warm a folder of PDFs into the cache within a time budget
- `pdf_corpus_overview`: Per-document triage cards for a folder
- `pdf_corpus_search`: Search across a folder, with document and page provenance; excerptstyle="auto" picks the excerpt unit per query
- `pdf_cache_stats`: Per-document cache breakdown and total size
- `pdf_cache_clear`: Clear expired or all cache entries
- `server_info`: Which optional features and config are active

## Similar MCP servers

- [Context7](https://appsgit.com/mcp-servers/context7): Up-to-date code docs for any prompt. (62,752 stars, MIT, needs API key)
- [FunASR](https://appsgit.com/mcp-servers/funasr): Transcribe local audio with FunASR and SenseVoice using private, on-device inference. (20,596 stars, MIT)
- [Bifrost](https://appsgit.com/mcp-servers/bifrost): Fastest enterprise AI gateway (50x faster than LiteLLM) with adaptive load balancer, cluster mode, guardrails, 1000+ models support & <100 µs overhead at 5k RPS. (8,591 stars, Apache-2.0)
- [Honcho](https://appsgit.com/mcp-servers/honcho): Memory that reasons: continual learning for stateful agents. (7,494 stars, AGPL-3.0, needs API key)
- [Semble](https://appsgit.com/mcp-servers/semble): Fast and Accurate Code Search for Agents. (6,185 stars, MIT)
- [Exa](https://appsgit.com/mcp-servers/exa): Connect AI agents to Exa for web search, content fetching, and multi-step research. (5,088 stars, MIT, official)

---

Canonical page: https://appsgit.com/mcp-servers/pdf-mcp
Source: appsgit (https://appsgit.com), the app store for github. Data from the GitHub API, refreshed nightly.
Machine access: JSON API https://appsgit.com/api/v1/apps (OpenAPI: https://appsgit.com/openapi.json), MCP server https://mcp.appsgit.com/mcp, full index https://appsgit.com/llms-full.txt.
