PDF Toolkit: Merge, Split, Compress & Convert PDFs. avatar

PDF Toolkit: Merge, Split, Compress & Convert PDFs.

Pricing

from $20.00 / 1,000 results

Go to Apify Store
PDF Toolkit: Merge, Split, Compress & Convert PDFs.

PDF Toolkit: Merge, Split, Compress & Convert PDFs.

Merge, split, compress, convert, rotate and watermark PDFs in one tool. Batch jobs and URL-to-PDF, no file-size limits. For people and AI agents.

Pricing

from $20.00 / 1,000 results

Rating

0.0

(0)

Developer

Howth Technology Factory

Howth Technology Factory

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

4 days ago

Last modified

Share

Nine PDF operations in one tool — merge, split, compress, rotate, delete pages, watermark, PDF-to-images, images-to-PDF and URL-to-PDF. Point it at public file URLs, pick an action, and get back downloadable output files. No file-size limit, no signup, and one flat price per file produced.

1. Why use PDF Toolkit

Document work in an automated pipeline usually means stitching together several single-purpose services: one for merging, another for compression, a third to render a web page as PDF. Each has its own account, its own limits and its own failure mode, and the free tiers stop exactly when a real batch starts.

The operations themselves are not hard. What is hard is having all of them behind one interface, callable from a workflow or an AI agent, that does not impose a page cap or a daily quota, and that only charges when a file actually comes out.

This Actor is that interface. One input shape, nine actions, one price per produced file.

2. Key features

  • Nine operations: merge, split, compress, rotate, deletePages, watermark, pdfToImages, imagesToPdf, urlToPdf.
  • No file-size limit and no page cap.
  • Batch input. Most actions accept multiple files in a single call.
  • Before/after sizes returned on every run, so compression results are measurable rather than asserted.
  • Downloadable output URLs — produced files are written to the run's key-value store and returned as direct links.
  • Charged on output only. A failed run produces no dataset item, and an Actor that fails is not billed for a result.
  • Dependencies loaded on demand — a merge does not load the browser engine that URL-to-PDF needs, so light actions stay light.
  • Callable by AI agents as one step in a document workflow.

3. Who it's for

For operations and back office. Merge a month's signed delivery notes into one archive PDF, or split a combined scan into per-invoice files, without a desktop tool and without uploading client documents to a consumer website.

For finance teams. Compress a folder of statements before attaching them to a filing, and see the before/after byte counts rather than trusting a "compressed!" message.

For marketing. Render a live web page to PDF for an approvals trail, or watermark a draft deck before circulating it outside the company.

For developers and AI agents. Call it inside a document pipeline: an agent handling an inbound email can split the attachment, extract the pages it needs, and pass them on, all through one tool with one price.

4. How to use it

  1. Open the Actor and click Try for free.
  2. Choose an Action from the dropdown.
  3. Put the public https URL(s) of your file(s) in Files. PDFs for most actions; images for imagesToPdf; urlToPdf takes its target in Options instead.
  4. Add any action-specific settings in Options as JSON.
  5. Click Start, then collect the links in outputUrls from the Output tab.

5. Input parameters

FieldTypeRequiredDefaultDescription
actionstringYesmergeOne of merge, split, compress, rotate, deletePages, watermark, pdfToImages, imagesToPdf, urlToPdf.
filesarray of stringsFor most actionsPublic https URL(s) of the file(s) to process. PDFs for most actions, images for imagesToPdf. Also accepts kvs:<key> to read from the run's key-value store.
optionsobjectNo{}Action-specific settings as JSON. Only the fields relevant to the chosen action are read.

urlToPdf is the exception: it takes its target page in options rather than in files.

6. Output

Exactly one dataset item per successful run:

{
"action": "merge",
"inputCount": 3,
"outputUrls": [
"https://api.apify.com/v2/key-value-stores/<storeId>/records/merged.pdf"
],
"sizeBefore": 4812390,
"sizeAfter": 4798122,
"ms": 1840
}

Actions that produce several files — split, pdfToImages — return one entry in outputUrls per file.

7. Output fields

FieldMeaning
actionThe action that ran.
inputCountHow many input files were processed.
outputUrlsDirect download links to the produced file(s), served from the run's key-value store.
sizeBeforeTotal input size in bytes.
sizeAfterTotal output size in bytes. For compress, the pair is the result you care about.
msWall-clock duration of the operation.

If the run fails, the Actor fails with a message and no dataset item is written — so a failed run produces no result charge.

8. How it works

Input files are fetched from their public URLs, or read from the run's key-value store when referenced as kvs:<key>. The chosen action's module is imported dynamically, so a run only loads the dependencies it actually needs — a merge never loads the browser engine that urlToPdf requires.

Produced files are written to the run's key-value store and their public URLs collected. Exactly one dataset item is then written summarising the run, which is what the built-in per-result charge bills against.

Compression is structural rather than lossy: object streams are rebuilt and redundancy removed. Text and vector content are unaffected, which is why the gain on an already-optimised PDF can be modest and is always reported honestly through sizeBefore and sizeAfter.

9. API & MCP usage

cURL

curl -X POST "https://api.apify.com/v2/acts/apifmcpfactory~pdf-toolkit/run-sync-get-dataset-items?token=YOUR_APIFY_TOKEN" \
-H "Content-Type: application/json" \
-d '{"action":"merge","files":["https://example.com/a.pdf","https://example.com/b.pdf"]}'

As an Apify MCP tool. This Actor is callable directly by AI agents such as Claude and Cursor. Usage bills through your own Apify account.

https://mcp.apify.com?tools=apifmcpfactory/pdf-toolkit

Claude Desktop (claude_desktop_config.json):

{
"mcpServers": {
"pdf-toolkit": {
"command": "npx",
"args": [
"mcp-remote",
"https://mcp.apify.com?tools=apifmcpfactory/pdf-toolkit",
"--header",
"Authorization: Bearer YOUR_APIFY_TOKEN"
]
}
}
}

As a standalone MCP server. Five of these operations also run as a dedicated hosted MCP server — merge_pdfs, split_pdf, compress_pdf, pdf_to_text and images_to_pdf. See the product page for that endpoint.

10. Pricing

$0.02 per file produced by a successful operation, plus a small per-run start fee.

A failed run writes no dataset item, so it carries no result charge.

11. Limits & performance

File sizeNo imposed limit
Page countNo imposed limit
OutputWritten to the run's key-value store
Dependency loadingOn demand, per action

12. Limitations

  • Input files must be reachable. Public https URLs, or kvs:<key> references within the run. Files behind a login cannot be fetched.
  • Compression is structural, not lossy. It rebuilds the file's internals rather than downsampling images. On an already-optimised PDF the saving may be small — the returned sizes tell you exactly how small.
  • No OCR. pdfToImages rasterises pages; it does not recognise text in scans.
  • No editing of existing text. The toolkit operates on pages and files, not on the text inside them.
  • No encryption or password removal. Password-protected inputs cannot be processed.
  • urlToPdf renders public pages. A page requiring a login will render as whatever an anonymous visitor sees.

13. FAQ

What can it do? Merge, split, compress, rotate, delete pages, watermark, convert PDF to images, build a PDF from images, and render a web page to PDF.

Is there a file-size or page limit? No limit is imposed by the Actor.

How do I get my files back? Each successful run returns outputUrls — direct download links to the produced files in the run's key-value store.

What am I charged for? Each file produced by a successful operation, plus a small run start fee. A failed run produces no dataset item and therefore no result charge.

Why did compression save so little? Compression is structural, not lossy. A PDF that was already optimised has little redundancy left to remove. Compare sizeBefore and sizeAfter for the exact figure.

Can it read the text in a scanned document? No. pdfToImages converts pages to images; there is no OCR.

Can it open a password-protected PDF? No. Encrypted inputs are not processed.

Can an AI agent use it? Yes — via the Apify MCP endpoint above, or the standalone MCP server for the five core operations.

More tools from MCP Factory

— A Howth Technology Factory tool. Nothing stored beyond your own run.