ilovepdf-mcp
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@ilovepdf-mcpMerge file1.pdf and file2.pdf"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
iLovePDF MCP Server
An MCP (Model Context Protocol) server that exposes iLovePDF API operations as tools for LLM clients like Claude. Process PDFs directly from your AI conversations - merge, split, compress, convert, and more.
Features
22 PDF tools covering all major PDF operations
Supports both local files and URLs as input
Customizable output with user-specified directories and filenames
Operation chaining for complex workflows
Full TypeScript support with type definitions
Related MCP server: PDF2MD MCP Server
Available Tools
Core Operations
Tool | Description |
| Merge multiple PDF files into one |
| Split PDF by page ranges, fixed intervals, or remove pages |
| Reduce PDF file size (low/recommended/extreme) |
| Rotate pages by 90, 180, or 270 degrees |
| Add password protection |
| Remove password protection |
| Repair damaged PDFs |
Conversion Operations
Tool | Description |
| Convert PDF pages to JPG images |
| Convert images to PDF |
| Convert webpages to PDF |
| Convert Word, Excel, PowerPoint to PDF |
| Convert to PDF/A archive format |
| Validate PDF/A compliance |
Enhancement Operations
Tool | Description |
| Add text or image watermarks |
| Add page numbers with custom formatting |
| Extract text content from PDF |
| OCR scanned PDFs (100+ languages) |
| Add text or images to specific positions |
Signature Operations
Tool | Description |
| Create digital signature requests |
| Check signature request status |
| Cancel pending signature requests |
Utility Operations
Tool | Description |
| Chain multiple operations together |
| List recent API tasks |
| Check API quota |
Installation
Prerequisites
Node.js 18 or higher
iLovePDF API credentials (get them at developer.ilovepdf.com)
Install from npm
npm install -g ilovepdf-mcpInstall from source
git clone https://github.com/yourusername/ilovepdf-mcp.git
cd ilovepdf-mcp
npm install
npm run buildConfiguration
Environment Variables
Create a .env file in your project root:
ILOVEPDF_PUBLIC_KEY=your_public_key_here
ILOVEPDF_SECRET_KEY=your_secret_key_here
DEFAULT_OUTPUT_DIR=./outputOr set environment variables directly in your shell.
Claude Desktop Integration
Add to your claude_desktop_config.json:
macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
Windows: %APPDATA%\Claude\claude_desktop_config.json
Linux: ~/.config/Claude/claude_desktop_config.json
Option 1: Using .env file (recommended)
If you've set up your .env file with API keys, you only need:
{
"mcpServers": {
"ilovepdf": {
"command": "node",
"args": ["/path/to/ilovepdf-mcp/dist/index.js"]
}
}
}Option 2: Keys in config only
If you prefer not to use a .env file:
{
"mcpServers": {
"ilovepdf": {
"command": "node",
"args": ["/path/to/ilovepdf-mcp/dist/index.js"],
"env": {
"ILOVEPDF_PUBLIC_KEY": "your_public_key",
"ILOVEPDF_SECRET_KEY": "your_secret_key",
"DEFAULT_OUTPUT_DIR": "/path/to/output"
}
}
}
}If installed globally via npm:
{
"mcpServers": {
"ilovepdf": {
"command": "ilovepdf-mcp"
}
}
}Usage Examples
Once configured, you can use natural language in Claude to process PDFs:
Merge PDFs
"Merge these three PDF files: report1.pdf, report2.pdf, and appendix.pdf"
Compress PDF
"Compress my large-document.pdf using extreme compression"
Convert to Images
"Convert this PDF to JPG images at 300 DPI"
Add Watermark
"Add a 'CONFIDENTIAL' watermark to all pages of contract.pdf"
Chain Operations
"Compress then merge these PDFs: file1.pdf, file2.pdf, file3.pdf"
OCR
"Make this scanned PDF searchable using English and Spanish OCR"
Development
# Install dependencies
npm install
# Build
npm run build
# Run in development mode
npm run dev
# Clean build artifacts
npm run cleanAPI Reference
Common Parameters
Most tools accept these common parameters:
Parameter | Type | Description |
| string / string[] | Input file path(s) or URL(s) |
| string? | Output directory (default: |
| string? | Custom output filename |
Response Format
All tools return a consistent JSON response:
{
"success": true,
"message": "Operation completed successfully",
"outputPath": "/path/to/output.pdf",
"details": {
"originalSize": "5.2 MB",
"outputSize": "1.3 MB"
}
}On error:
{
"success": false,
"error": "Error message describing what went wrong"
}Troubleshooting
"Missing iLovePDF API credentials"
Ensure ILOVEPDF_PUBLIC_KEY and ILOVEPDF_SECRET_KEY are set in your environment or .env file.
"File not found"
Check the file path is correct and accessible
For URLs, ensure they are publicly accessible
"API quota exceeded"
Use get-remaining-files to check your quota. Upgrade your iLovePDF plan if needed.
License
MIT
Credits
iLovePDF for their excellent PDF API
Model Context Protocol for the MCP specification
Built with @modelcontextprotocol/sdk
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Latest Blog Posts
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/adamdavis99/ilovepdf-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server