Agent-Native Calendar
Agent-Native Google Calendar - manage events, sync, and public booking
제작자가 쓴 설명(영어 원문)
Agentic RAG over one PDF or a whole folder: hybrid search, selective page reads, tables, OCR.
이 세 가지는 절대 하나의 점수로 합치지 않아요. 의견, 측정, 인기는 서로 다른 것이니까요.
이 서버는 아직 쉬운 말로 된 요약을 쓰지 못했어요. 아래는 레지스트리에서 읽어 온 사실이에요.
쓰고 있는 AI 앱을 고른 다음 설정을 복사하세요.
PDF_MCP_CACHE_DIR, PDF_MCP_CACHE_TTL, PDF_MCP_CACHE_MAX_MB필요한 것
어떤 앱을 쓰세요?
위에서 앱을 고르세요. 기억해 두었다가 다음부터는 버튼에 “…에 설치”라고 표시해요.
링크는 제작자의 파일로 바로 연결돼요. 우리가 보관하거나 다시 패키징하지 않아요. 파일을 열면 Claude Desktop이 설치해요.
터미널에서 이 명령어를 실행하세요
claude mcp add pdf --env PDF_MCP_CACHE_DIR=your-value --env PDF_MCP_CACHE_TTL=your-value --env PDF_MCP_CACHE_MAX_MB=your-value -- uvx pdf-mcp실행하기 전에 빈 값을 채워 주세요.
프로젝트의 .cursor/mcp.json 또는 ~/.cursor/mcp.json에 붙여 넣으세요
{
"mcpServers": {
"pdf": {
"command": "uvx",
"args": [
"pdf-mcp"
],
"env": {
"PDF_MCP_CACHE_DIR": "your-value",
"PDF_MCP_CACHE_TTL": "your-value",
"PDF_MCP_CACHE_MAX_MB": "your-value"
}
}
}
}브라우저가 앱을 열지 물어본 다음, 앱이 설정을 보여 주고 확인을 요청해요. 키 값은 비워 두니 직접 입력하세요.
프로젝트의 .vscode/mcp.json에 붙여 넣으세요
{
"servers": {
"pdf": {
"type": "stdio",
"command": "uvx",
"args": [
"pdf-mcp"
],
"env": {
"PDF_MCP_CACHE_DIR": "your-value",
"PDF_MCP_CACHE_TTL": "your-value",
"PDF_MCP_CACHE_MAX_MB": "your-value"
}
}
}
}브라우저가 앱을 열지 물어본 다음, 앱이 설정을 보여 주고 확인을 요청해요. 키 값은 비워 두니 직접 입력하세요.
이 서버는 내 컴퓨터에서 실행되는데, ChatGPT는 인터넷에 있는 서버에만 연결할 수 있어요. 다른 앱을 고르세요.
선택한 앱은 이 기기의 쿠키에만 저장돼요. 계정은 필요 없어요.
PDF_MCP_CACHE_DIR envPDF_MCP_CACHE_TTL envPDF_MCP_CACHE_MAX_MB env이 설정은 제작자의 레지스트리 정보로 만들었어요. README와 다르면 README를 따르세요.
내 컴퓨터에서 실행돼요. 설치하면 AI 앱에 도구 목록이 나타나요.
누구나 볼 수 있는 정보를 점검했고, 코드는 읽지 않았어요. 해당하지 않는 항목은 개수에서 뺐어요. · 2026년 11월 7일 점검
레지스트리 이름이 GitHub 계정 jztan 기준으로 확인되었고, 이 계정이 저장소를 소유하고 있어요
아직 GitHub에서 이 저장소를 읽어 오지 않았어요
아직 GitHub에서 이 저장소를 읽어 오지 않았어요
내 컴퓨터에서 실행되는 서버라 인터넷 엔드포인트가 없어요
내 컴퓨터에서 실행되며, 대신 로컬 설정을 사용해요
내 컴퓨터에서 실행돼요. 도구 목록은 인터넷 엔드포인트가 있는 서버에서만 읽을 수 있어요
레지스트리에서 이 카테고리의 활성 서버 전체와 비교했어요. 스타는 게시자가 저장소를 소유한 경우에만 세요.
해당하는 기본 점검 1개 중 1개를 통과했어요. 코드는 읽지 않았어요. 키나 토큰을 넣기 전에 서버가 어떤 권한을 요구하는지 확인하고, 꼭 필요한 권한만 있는 키를 쓰세요.
레지스트리에 필수 키가 나와 있지 않아요. 다만 처음 쓸 때 로그인을 요구하는 서버도 있어요.
내 컴퓨터에서 실행돼요. AI 앱이 필요할 때 실행하고, 데이터는 제작자의 서버를 거치지 않아요(서버 자체가 온라인 서비스를 호출하는 경우는 제외).
GitHub 저장소는 마지막으로 – 변경됐고, 최신 버전(3.7.0)은 오늘 레지스트리에 올라왔어요.
Claude Desktop, Claude Code, Cursor, VS Code처럼 MCP를 지원하는 앱에서 쓸 수 있어요. 내 컴퓨터에 Python (uv), MCPB도 있어야 해요.
같은 카테고리에는: Agent-Native Calendar, Excel MCP Server, MCP Server for Excel
같은 카테고리에서 다른 제작자가 만든 서버예요. 스타 순으로 정렬했어요.
카드 보는 법:★ GitHub 스타i세 기둥: 리뷰 · 점검 · 사용 정도i업데이트 = 최신 버전을 레지스트리에 공개한 날i
Agent-Native Google Calendar - manage events, sync, and public booking
Create and edit Excel files with AI: charts, PivotTables, formulas. No Excel needed.
Excel automation for AI - Sheets, Power Query, DAX, VBA, Tables, Ranges and more. Windows only.
제작자의 저장소에서 쓰인 그대로 가져왔어요. PopNx MCP가 검토하거나 보증한 내용이 아니에요. HTML, 이미지, 스크립트는 제거했어요. 링크를 누르면 이 사이트를 벗어나요.
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.
mcp-name: io.github.jztan/pdf-mcp
[See what your AI agent sees →](https://pdf-mcp.jztan.com/)
Drop in any PDF, or a whole folder of them, and watch an agent triage the corpus, search across every document at once, and read only the pages that matter, using a fraction of the tokens. 100% client-side, no install required.
| Without pdf-mcp | With pdf-mcp | |
|---|---|---|
| Large PDFs | Context overflow | Read only the pages you need |
| Finding content | Load everything | Hybrid search: BM25 keyword + semantic |
| Folders of PDFs | One document at a time | Warm, triage, and search a whole folder |
| Warming a big folder | Minutes of CPU embedding | Length-sorted small-batch CPU encode; optional CUDA embedding, one to two orders of magnitude faster on an NVIDIA card |
| Tables and charts | Lost in raw text | Structured rows, and (x, y) data from vector charts |
| Multi-column and vertical layouts | Columns interleaved | Correct reading order, including Japanese tategaki |
| Scanned PDFs | No text at all | OCR via Tesseract, parallel across pages |
| Repeated access | Re-parse every time | SQLite cache that survives restarts |
| Hidden or injected text | Silently ingested | Flagged as untrusted, nothing stripped |
The first start downloads pdf-mcp's components (about 250 MB) and can take a few minutes; later starts take seconds. OCR for scanned pages is included: the first scanned page downloads an English-only Tesseract (about 14 MB). Needs Windows 10 or later, or macOS 13 or later (14 on Apple Silicon), and works in Claude Desktop's Chat. Updating, uninstalling and other details are in docs/clients.md.
Needs Python 3.11 to 3.14. On 3.15 the installer falls back to a very old release, because a dependency has no 3.15 build yet. Install the pdf-mcp command with uv or pipx:
uv tool install pdf-mcp # or: pipx install pdf-mcp
pip install pdf-mcp works inside a virtual environment; Homebrew's Python and recent Debian and Ubuntu refuse a system-wide pip install.
Then add it to your client. For Claude Code:
claude mcp add pdf-mcp -- pdf-mcp
For VS Code, Cursor, Codex CLI, Kiro or any other MCP client, see [docs/clients.md](docs/clients.md). Then ask your agent to read a PDF.
Search, the corpus tools, tables and multi-column and CJK reading order work out of the box. For non-English documents, see language support. OCR on scanned pages also needs Tesseract:
brew install tesseract # macOS
sudo apt install tesseract-ocr # Ubuntu/Debian winget install -e --id UB-Mannheim.TesseractOCR # Windows
Optional: CUDA embedding on an NVIDIA card warms large folders one to two orders of magnitude faster; see docs/configuration.md.
pdf-mcp's tools are also plain Python functions, so you can import them and hand a PDF to the Anthropic SDK without running a server. Two runnable scripts, for a question and for a whole document: [examples/](examples/).
Why this exists, and what broke along the way: Claude's 100-page PDF limit and how I got around it
13 specialized tools rather than one monolithic one. Typical pattern: pdf_info to plan, pdf_search to locate (its paragraph excerpts often answer the question outright), pdf_read_pages when you need more. For a folder, pdf_corpus_overview to triage, then pdf_corpus_search.
| Tool | What it does |
|---|---|
pdf_info | Page count, metadata, TOC summary, scanned-page detection. Call first. |
pdf_search | Hybrid search (keyword + semantic) by page or section; hits carry an excerpt, source coordinates, the enclosing outline section and a table's lead-in sentence |
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; hits carry document and page provenance |
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 |
Text returned by any of these is untrusted content extracted from a PDF. pdf_info(content_trust=True) reports hidden text a human reader cannot see, and the read tools flag it per page.
Example prompts:
"Read the PDF at /path/to/document.pdf"
"Which pages discuss supply chain risks?" "Find sections about the training process" "Show me what page 5 looks like" "OCR pages 3-5 of the scanned PDF"
Full reference, every parameter and response shape: [docs/tool-reference.md](docs/tool-reference.md). Embedding model selection: [docs/embedding-models.md](docs/embedding-models.md).
For a large document (e.g., a 200-page annual report):
User: "Summarize the risk factors in this annual report"
Agent workflow:
STDIO is the default and is what every example above uses. pdf-mcp-http serves the same tools over HTTP, for clients that cannot spawn a process (the Anthropic API MCP connector, claude.ai custom connectors) and for a warm corpus shared by several clients.
export PDF_MCP_AUTH_TOKEN="$(openssl rand -hex 32)"
pdf-mcp-http
Paths resolve on the server, so an HTTP agent reads what is already there: files under an allow-listed root, or a URL the server fetches. It cannot hand over a file from its own machine. It is single-tenant and fails closed: with no auth token and no [paths] allow list, the process exits rather than serving an open endpoint.
Docker images are published to GHCR for amd64 and arm64, with everything baked in, so every tool works on the first request:
./deploy.sh # token, image, start, health-check
cp your.pdf documents/ # this folder is the server's /data/pdfs
Read [docs/remote-access.md](docs/remote-access.md) for the trust boundary and threat model before deploying, and [docs/configuration.md](docs/configuration.md#http-transport-setup) for setup, client config, and token rotation.
pdf-mcp works out of the box. To restrict which paths and URL hosts the server may touch, tune cache and worker settings, or add your own content-trust phrases, see [docs/configuration.md](docs/configuration.md).
See ROADMAP.md for planned features and release history.
Contributions are welcome. See [docs/contributing.md](docs/contributing.md) for setup, checks, the coherence eval harness, and quality-loop guidelines.
Thank you to everyone who has helped improve this project through code, reviews, testing, and feature requests:
@Summer907 · @ebbsanchez · @VooDisss · @DerDennisOP · @deepdmk · @TheSOV · @janLo · @bbulkow · @HillsCloud · @phinnphace
Per-release contributor credits are listed in the Changelog.
Found a vulnerability? See SECURITY.md for the threat model, reporting channel, and expected response timeline. Please do not open a public GitHub issue for unpatched security reports.
MIT. See LICENSE.
The story behind the releases. Building pdf-mcp keeps surprising me: benchmarks that go the wrong way, formats that break everything, features I had to remove. I write about that thinking in The Dispatch. Come along if that's your kind of thing.
Background, benchmarks, and design notes from building pdf-mcp:
Getting started
앞부분만 보여 드려요. 나머지는 저장소에서 읽어 보세요