MCP server
Papyrio PDF tools for AI assistants
papyrio-mcp is a Model Context Protocol server. Add it to Claude, Cursor or VS Code and the assistant can compress, merge, OCR and convert PDFs on your machine. It reads and writes local files, so a multi-step job runs without you uploading and downloading between steps.
It calls the same API documented at papyrio.net/docs. If you are writing code against Papyrio rather than chatting with an assistant, start there instead.
- Package
- papyrio-mcp
- Tools
- 12 operations
- Transport
- stdio, runs locally
Install
You need Node.js 18 or later. npx fetches the package the first time the client starts it, so there is nothing to install by hand. Pick your client:
{ "mcpServers": { "papyrio": { "command": "npx", "args": [ "-y", "papyrio-mcp" ] } }}claude mcp add papyrio -- npx -y papyrio-mcp{ "mcpServers": { "papyrio": { "command": "npx", "args": [ "-y", "papyrio-mcp" ] } }}{ "servers": { "papyrio": { "type": "stdio", "command": "npx", "args": [ "-y", "papyrio-mcp" ] } }}- Claude Desktop
- ~/Library/Application Support/Claude/claude_desktop_config.json on macOS, %APPDATA%\Claude\claude_desktop_config.json on Windows. Restart the app afterwards.
- Claude Code
- Run the command in a terminal. No file to edit.
- Cursor
- ~/.cursor/mcp.json for every project, or .cursor/mcp.json in one.
- VS Code
- .vscode/mcp.json in the workspace.
Any other client that speaks MCP over stdio works the same way: the command is npx and the arguments are -y papyrio-mcp.
API key and limits
The server works without a key. It is then metered as ordinary free web traffic: 3 operations a day per IP address. That is enough to see whether it is useful, and not enough for real work.
For more, subscribe on RapidAPI, copy your key from Apps → Authorization, and pass it as PAPYRIO_API_KEY. The server then routes every call through the gateway and your plan’s quota applies. The Basic plan is free and needs no card.
{ "mcpServers": { "papyrio": { "command": "npx", "args": [ "-y", "papyrio-mcp" ], "env": { "PAPYRIO_API_KEY": "your-rapidapi-key" } } }}claude mcp add papyrio -e PAPYRIO_API_KEY=your-rapidapi-key -- npx -y papyrio-mcp{ "mcpServers": { "papyrio": { "command": "npx", "args": [ "-y", "papyrio-mcp" ], "env": { "PAPYRIO_API_KEY": "your-rapidapi-key" } } }}{ "servers": { "papyrio": { "type": "stdio", "command": "npx", "args": [ "-y", "papyrio-mcp" ], "env": { "PAPYRIO_API_KEY": "your-rapidapi-key" } } }}| Plan | Price | Quota | Rate |
|---|---|---|---|
| No key | Free | 3 operations / day | Per IP |
| Basic | Free | 50 requests / month | 10 / hour |
| Pro | $9.99 | 1,000 requests / month | 120 / hour |
| Ultra | $29.99 | 5,000 requests / month | 120 / hour |
| Mega | $99.99 | 25,000 requests / month | 120 / hour |
Each tool call is one request. A job like “OCR four scans and merge them” costs five. Files stop at 50 MB.
Tools
| Tool | Does | Writes |
|---|---|---|
compress_pdf | Shrinks a PDF, 30–80% on image-heavy files | |
merge_pdfs | Joins 2–10 PDFs in order | |
split_pdf | Separates every page into its own file | .zip |
extract_pdf_text | Returns the text layer as UTF-8 | .txt |
pdf_to_word | Rebuilds the document as an editable .docx | .docx |
pdf_to_jpg | Renders every page as a JPG | .zip |
ocr_pdf | Adds a searchable text layer to a scan | |
office_to_pdf | Word, PowerPoint or Excel to PDF | |
image_to_pdf | Wraps a JPG, PNG or WebP in a PDF page | |
webpage_to_pdf | Renders a public URL in a headless browser | |
protect_pdf | Encrypts with AES-256 | |
unlock_pdf | Removes a password you already know |
Every tool takes absolute paths. output_path is optional and defaults to the input name with a -papyrio suffix, except on webpage_to_pdf, which has no input file to name the result after and so requires it.
Example prompts
You do not name tools. Describe the job and the assistant picks and chains them.
- OCR every scan in ~/invoices, merge them into one PDF, and compress it under 5 MB.
- Turn ~/Desktop/report.docx into a PDF and protect it with the password I give you.
- Save https://example.com/pricing as a PDF in ~/Downloads.
- Pull the text out of contract.pdf and list every date in it.
Privacy
The server runs on your machine and only touches the paths the assistant passes it. Each file goes to the Papyrio API, which holds it in memory, processes it, and drops it when the response goes out. We keep no copy. The result is written back to your disk.
Links and support
- npm: papyrio-mcp
- Source and issues: GitHub
- Official MCP registry:
io.github.atabekdemurtaza/papyrio-mcp - Directory listing: mcpservers.org
Write to hello@papyrio.net if a tool fails. Tell us the client, the tool and the error code.
The same operations run free in a browser at papyrio.net/tools, with no account.