Simple PDF API — MCP Server
Use Simple PDF API tools directly inside Claude Desktop, Cursor, Windsurf, and any MCP-compatible client.
8 tools available: html_to_pdf, url_to_pdf, merge_pdfs, split_pdf, watermark_pdf, compress_pdf, protect_pdf, rotate_pdf, extract_text.
Prerequisites
- A RapidAPI key (free tier available)
- Python 3.10+ and
uvinstalled
Setup
Option A — uvx (no install needed)
PDF_API_KEY=your_rapidapi_key uvx --from "git+https://github.com/mahiuddinalkamal/pdf-api#subdirectory=mcp" pdf-api-mcp
Option B — local clone
git clone https://github.com/mahiuddinalkamal/pdf-api
cd pdf-api/mcp
uv run server.py
Claude Desktop
Add to ~/Library/Application Support/Claude/claude_desktop_config.json:
{
"mcpServers": {
"pdf-api": {
"command": "uvx",
"args": [
"--from",
"git+https://github.com/mahiuddinalkamal/pdf-api#subdirectory=mcp",
"pdf-api-mcp"
],
"env": {
"PDF_API_KEY": "your_rapidapi_key_here"
}
}
}
}
Restart Claude Desktop. You'll see PDF tools in the toolbar.
Cursor
Add to .cursor/mcp.json in your project root (or ~/.cursor/mcp.json for global):
{
"mcpServers": {
"pdf-api": {
"command": "uvx",
"args": [
"--from",
"git+https://github.com/mahiuddinalkamal/pdf-api#subdirectory=mcp",
"pdf-api-mcp"
],
"env": {
"PDF_API_KEY": "your_rapidapi_key_here"
}
}
}
}
Windsurf
Add to ~/.codeium/windsurf/mcp_config.json:
{
"mcpServers": {
"pdf-api": {
"command": "uvx",
"args": [
"--from",
"git+https://github.com/mahiuddinalkamal/pdf-api#subdirectory=mcp",
"pdf-api-mcp"
],
"env": {
"PDF_API_KEY": "your_rapidapi_key_here"
}
}
}
}
Tools
| Tool | Description |
|---|---|
html_to_pdf |
Convert HTML string → PDF |
url_to_pdf |
Render a public URL → PDF |
merge_pdfs |
Merge multiple PDFs into one |
split_pdf |
Extract page ranges from a PDF |
watermark_pdf |
Add CONFIDENTIAL / DRAFT overlays |
compress_pdf |
Reduce file size |
protect_pdf |
AES password-encrypt |
rotate_pdf |
Rotate all or selected pages |
extract_text |
Pull plain text from a PDF |
All output files are saved to ~/Downloads/.
Environment Variables
| Variable | Required | Description |
|---|---|---|
PDF_API_KEY |
Yes | Your RapidAPI key |
PDF_API_HOST |
No | Override base URL (for self-hosted) |
Release files for pdf-api-mcp 1.0.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| pdf_api_mcp-1.0.0.tar.gz | 4.0 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| pdf_api_mcp-1.0.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 9.8 kB
Release files / pdf_api_mcp-1.0.0.tar.gz
| Download URL | pdf_api_mcp-1.0.0.tar.gz |
|---|---|
| Size | 4.0 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
c424b54b70a26e3230e53d4084eb43bfec4341ce272a283391e545706d7d67c3
|
|
BLAKE2b-256 checksum How to use checksums |
96e3d2f92f851ef44284a4656c3df13caa89857d22c0a7a53d1f12102e928cea
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.14.6
|
Release files / pdf_api_mcp-1.0.0-py3-none-any.whl
| Download URL | pdf_api_mcp-1.0.0-py3-none-any.whl |
|---|---|
| Size | 5.8 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
7651e3dd8d5bf8886bcbceb603c208c4a45d9f023a0f52fa2cc5800dad5c1d91
|
|
BLAKE2b-256 checksum How to use checksums |
032e9b0b0005e4092be92f82cf0b3a2b4d15ff4537b03cc2e0394b82017f9409
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.14.6
|