Skip to main content
Glama
PDF.co MCP Server

PDF.co MCP Server

Official
by pdfdotco
README.md
# PDF.co MCP

<!-- mcp-name: io.github.pdfdotco/pdfco-mcp -->

PDF.co MCP Server provides [PDF.co API](https://pdf.co) functionality through the Model Context Protocol (MCP), enabling AI assistants to easily perform various PDF processing tasks.

## πŸš€ Key Features

### πŸ“„ PDF Conversion Tools
- **PDF β†’ Various Formats**: Convert PDFs to JSON, CSV, Text, Excel (XLS/XLSX), XML, HTML, Images (JPG/PNG/WebP/TIFF)
- **Various Formats β†’ PDF**: Convert documents (DOC/DOCX/RTF/TXT), spreadsheets (CSV/XLS/XLSX), images, web pages, HTML, emails (MSG/EML) to PDF
- **Excel Conversions**: Convert Excel files to PDF

### πŸ› οΈ PDF Editing & Modification
- **PDF Merging**: Combine multiple PDF files into one
- **PDF Splitting**: Split PDFs by specific pages or page ranges
- **Add Annotations & Images**: Add text, links, images, shapes to PDFs
- **Form Operations**: Read PDF form field information, fill forms, create new form elements

### πŸ” PDF Search & Analysis
- **Text Search**: Search text in PDFs (supports regular expressions)
- **Table Detection**: Find table locations and coordinates in PDFs
- **AI Invoice Parser**: Extract invoice data using AI
- **PDF Information**: Get detailed information including metadata, page count, security info

### πŸ”’ Security & Accessibility
- **Password Protection**: Add/remove password protection to PDFs
- **Searchability**: Make PDFs searchable via OCR or remove text layers
- **Attachment Extraction**: Extract attachments from PDFs

### πŸ’Ό File Management
- **File Upload**: Upload local files to PDF.co servers
- **Job Status Tracking**: Monitor progress and results of asynchronous operations

## βš™οΈ Configuration

### πŸ”‘ Get API Key
1. Sign up at [PDF.co website](https://pdf.co)
2. Get your API key from the dashboard

### πŸ“¦ Install UV
You need to install UV (a fast Python packaging tool) to use this MCP server:

#### macOS and Linux
```bash
curl -LsSf https://astral.sh/uv/install.sh | sh
```

#### Windows
```powershell
powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"
```

#### Alternative Installation Methods
- **Homebrew**: `brew install uv`
- **PyPI with pipx**: `pipx install uv`
- **PyPI with pip**: `pip install uv`

For more installation options and details, see the [UV installation guide](https://docs.astral.sh/uv/getting-started/installation/).

### Connect your client

Step-by-step guides with screenshots for each client are on developer.pdf.co:

- [Overview](https://developer.pdf.co/api/mcp/overview)
- [Claude Desktop](https://developer.pdf.co/api/mcp/claude-desktop)
- [ChatGPT desktop and Codex](https://developer.pdf.co/api/mcp/chatgpt-desktop)
- [Codex CLI](https://developer.pdf.co/api/mcp/codex-cli)
- [Claude Code](https://developer.pdf.co/api/mcp/claude-code)
- [Cursor](https://developer.pdf.co/api/mcp/cursor)
- [VS Code](https://developer.pdf.co/api/mcp/vs-code)

Any other client that runs local MCP servers over STDIO uses the same three values: the command `uvx`, the argument `pdfco-mcp`, and the environment variable `X_API_KEY`. In JSON form:

```json
{
  "mcpServers": {
    "pdfco": {
      "command": "uvx",
      "args": ["pdfco-mcp"],
      "env": {
        "X_API_KEY": "YOUR_API_KEY_HERE"
      }
    }
  }
}
```

Desktop apps often do not see your terminal's `PATH`; if the server fails to start, use the full path to `uvx` as the command. `uvx` keeps the version it first resolved, so run `uvx pdfco-mcp@latest` once to pick up a new release.

## πŸ”§ Available Tools

### PDF Conversion Tools
- `pdf_to_json`: Convert PDF and scanned images into JSON representation with text, fonts, images, vectors, and formatting preserved
- `pdf_to_csv`: Convert PDF and scanned images into CSV representation with layout, columns, rows, and tables
- `pdf_to_text`: Convert PDF and scanned images to text with layout preserved
- `pdf_to_xls`: Convert PDF and scanned images to XLS (Excel 97-2003) format
- `pdf_to_xlsx`: Convert PDF and scanned images to XLSX (Excel 2007+) format
- `pdf_to_xml`: Convert PDF and scanned images to XML format
- `pdf_to_html`: Convert PDF and scanned images to HTML format
- `pdf_to_image`: Convert PDF and scanned images to various image formats (JPG, PNG, WebP, TIFF)

### Document to PDF Conversion Tools
- `document_to_pdf`: Convert various document types (DOC, DOCX, RTF, TXT, XLS, XLSX, CSV, HTML, JPG, PNG, TIFF, WEBP) into PDF
- `csv_to_pdf`: Convert CSV or spreadsheet files (XLS, XLSX) to PDF
- `image_to_pdf`: Convert various image formats (JPG, PNG, TIFF) to PDF
- `webpage_to_pdf`: Convert external webpage URL to PDF
- `html_to_pdf`: Convert HTML to PDF
- `email_to_pdf`: Convert email to PDF

### Excel Conversion Tools
> **Retirement Notice β€” January 5, 2027**
>
> The following Excel conversion tools are scheduled for retirement on **January 5, 2027**, following the discontinuation of their underlying PDF.co API endpoints: `excel_to_csv`, `excel_to_json`, `excel_to_html`, `excel_to_txt`, `excel_to_xml`. These tools will remain available until the retirement date. After January 5, 2027, requests to their underlying API endpoints will no longer be supported. `excel_to_pdf` is not affected.

- `excel_to_csv`: Convert Excel(XLS, XLSX) to CSV (retiring January 5, 2027)
- `excel_to_json`: Convert Excel(XLS, XLSX) to JSON (retiring January 5, 2027)
- `excel_to_html`: Convert Excel(XLS, XLSX) to HTML (retiring January 5, 2027)
- `excel_to_txt`: Convert Excel(XLS, XLSX) to TXT (retiring January 5, 2027)
- `excel_to_xml`: Convert Excel(XLS, XLSX) to XML (retiring January 5, 2027)
- `excel_to_pdf`: Convert Excel(XLS, XLSX) to PDF

### PDF Editing Tools
- `pdf_add_annotations_images_fields`: Add text, images, forms, other PDFs, fill forms, links to external sites and external PDF files. You can update or modify PDF and scanned PDF files
- `pdf_merge`: Merge PDF from two or more PDF, DOC, XLS, images, even ZIP with documents and images into a new PDF
- `pdf_split`: Split a PDF into multiple PDF files using page indexes or page ranges

### PDF Form Tools
- `read_pdf_forms_info`: Extracts information about fillable PDF fields from an input PDF file
- `fill_pdf_forms`: Fill existing form fields in a PDF document
- `create_fillable_forms`: Create new fillable form elements in a PDF document

### PDF Search Tools
- `find_text`: Find text in PDF and get coordinates. Supports regular expressions
- `find_table`: Find tables in PDF and get their coordinates

### PDF Analysis Tools
- `ai_invoice_parser`: AI Invoice Parser: Extracts data from invoices using AI
- `extract_attachments`: Extracts attachments from a source PDF file
- `pdf_info_reader`: Get detailed information about a PDF document - number of pages, metadata, security, form fields, and more

### PDF Security Tools
- `pdf_add_password`: Add password protection to a PDF file
- `pdf_remove_password`: Remove password protection from a PDF file

### PDF Searchability Tools
- `pdf_make_searchable`: Convert scanned PDF documents or image files into a text-searchable PDF. Runs OCR and adds an invisible text layer that can be used for text search
- `pdf_make_unsearchable`: Make existing PDF document non-searchable by removing the text layer from it

### File Management Tools
- `upload_file`: Upload a file to the PDF.co API
- `get_job_check`: Check the status and results of a job. Status can be: working, success, failed, aborted, or unknown
- `wait_job_completion`: Wait for a job to complete

## πŸ“– Usage Examples

### Convert PDF to Text
```
Convert this PDF file to text: https://example.com/document.pdf
```

### Merge Multiple Images into PDF
```
Create a PDF from these images: image1.jpg, image2.png, image3.jpg
```

### Search for Specific Text in PDF
```
Find the word "contract" in this PDF document
```

### Fill PDF Form Fields
```
Fill the name field in this PDF form with "John Doe"
```

### Convert Web Page to PDF
```
Convert https://example.com webpage to PDF
```

### Extract Invoice Data
```
Extract invoice information from this PDF using AI
```

### Add Password Protection
```
Add password protection to this PDF file
```


## πŸ“ž Support & Contact

- **PDF.co**: https://pdf.co
- **PDF.co API Documentation**: https://developer.pdf.co
- **Issue Reports**: Please report issues through GitHub Issues

## πŸ“„ License

This project is distributed under the MIT License.

---

**Note**: A valid PDF.co API key is required to use this tool. Create a free account at [PDF.co](https://pdf.co) to get your API key.

TDQS

C2.9/5.0

Scored across 38 tools

Disambiguation3/5

Most conversion tools target a unique source→target pair, but the PDF-modification cluster (pdf_add_annotations_images_fields, fill_forms, create_fillable_forms) all map to the same /pdf-add endpoint and overlap heavily. Likewise excel_to_pdf, csv_to_pdf, and document_to_pdf all convert spreadsheets to PDF, forcing the agent to guess which to use.

Naming Consistency3/5

The dominant <source>_to_<target> pattern (pdf_to_text, excel_to_csv, document_to_pdf) is readable and predictable, but it is mixed with noun_verb (pdf_merge, pdf_split), verb_noun (upload_file, find_text, extract_attachments), and bare noun (ai_invoice_parser) styles. Three different conventions coexist without a clear rule for which applies where.

Tool Count2/5

38 tools is heavy and partly inflated by redundancy — three Excel→PDF paths, both pdf_to_xls and pdf_to_xlsx, and five excel_to_* converters explicitly marked as retiring in 2027. A conversion matrix naturally needs many entries, but several could be consolidated into parameterized tools.

Completeness3/5

Conversion and inspection coverage is broad (formats in and out, OCR, forms, search, attachments, job polling), but core page-level operations are missing: no delete/rotate/reorder/extract-pages, no compression, and no document splitting by barcode or text. Agents can convert and inspect but cannot fully restructure a PDF.

Maintenance

ActivityNo data
ResponsivenessOutdated data