37 tools to read, create, merge, split, watermark, fill, redact & search PDFs. Local, no API key.
Copy the AI prompt to install this server into Claude Code, Cursor, or another agent β or use 1-click editor setup below.
We haven't yet run this listing's install command through our automated sandbox check. This isn't a red flag β we're steadily working through the catalog.
π‘ Paste the JSON block into your client's configuration file under mcpServers, then restart the application.
A comprehensive MCP (Model Context Protocol) server for PDF operations. 37 tools for reading, searching, creating, merging, splitting, watermarking, stamping, form filling, redacting, annotating, comparing, optimizing, and more.
Built on open-source libraries β not affiliated with Adobe. Uses pdf-lib for PDF manipulation and unpdf (Mozilla pdf.js) for text extraction.
Add to your client's MCP config:
| Category | Tools | Count |
|---|---|---|
| Read | Extract text (per-page), PDF info & metadata | 2 |
| Search | Full-text search with context, compare two PDFs | 2 |
| Create | Generate PDFs from text (with headings), images to PDF | 2 |
| Manipulate | Merge, split, rotate, delete, extract, reorder, insert, reverse, blank pages, crop, overlay PDF, N-up page layout | 12 |
| Overlay | Watermark, page numbers, add text, add image, headers/footers, business stamps, signatures | 7 |
| Annotate | Redact regions, highlight, draw shapes (rect/line/ellipse) | 3 |
| Forms | Read form fields, fill forms (text/checkbox/dropdown/radio) | 2 |
| Metadata | Set title, author, subject, keywords, creator, producer | 1 |
| Security | Decrypt password-protected PDFs | 1 |
| Optimize | Flatten forms, compress, validate, repair | 4 |
| Attachments | Embed files inside a PDF | 1 |
pdf_read_text β Extract text from all or specific pages.
filePath (string, required) β PDF pathpages (number[], optional) β Page numbers to extract (1-indexed). Returns per-page text with headers.pdf_info β Page count, file size, all metadata, form field count, page dimensions (pts + inches), rotation, PDF version.
filePath (string, required) β PDF pathpassword (string, optional) β For encrypted PDFspdf_search β Full-text search across all pages. Returns matches with page numbers and surrounding context.
filePath (string, required) β PDF pathquery (string, required) β Text or regex patterncaseSensitive (boolean, default: false)regex (boolean, default: false) β Treat query as regexcontextChars (number, default: 60) β Characters of context around each matchpdf_compare β Compare text content of two PDFs page by page. Reports identical/different pages with word-level change summary.
filePath1, filePath2 (strings, required)pdf_create β Create a PDF from text with auto word-wrapping, pagination, and headings.
outputPath, content (required) β Lines starting with # render as bold headingsfontSize (default: 12), margin (50), lineSpacing (1.4)pageSize: A4, Letter, Legal, A3, A5font: Helvetica, TimesRoman, Couriertitle, author (optional metadata)pdf_images_to_pdf β Convert PNG/JPG images to a PDF, one per page.
imagePaths (string[], required), outputPath (required)pageSize: A4, Letter, Legal, FitImage (default: A4)margin (default: 0) β Padding around imagepdf_merge β Merge multiple PDFs.
filePaths (string[], min 2), outputPathpdf_split β Split into individual pages or custom ranges.
filePath, outputDirranges (optional) β [{start, end}] (1-indexed, inclusive). Omit to split into individual pages.pdf_rotate β Rotate pages 90/180/270 degrees clockwise.
filePath, outputPath, rotation ("90"/"180"/"270")pages (optional) β Omit for all pagespdf_delete_pages β Remove specific pages.
filePath, outputPath, pages (number[], required)pdf_extract_pages β Extract specific pages into a new PDF.
filePath, outputPath, pages (number[], required)pdf_reorder β Reorder or duplicate pages.
filePath, outputPath, pageOrder (number[]) β e.g. [3, 1, 2] or [1, 1, 2] to duplicate page 1pdf_insert_pages β Insert pages from one PDF into another at a specific position.
targetPath, sourcePath, outputPathinsertAfter (number) β 0 = beginning, use target page count for endsourcePages (number[], optional) β Which source pages to take. Omit for all.pdf_reverse β Reverse page order.
filePath, outputPathpdf_blank_pages β Insert blank pages after specified positions.
filePath, outputPathafterPages (number[]) β e.g. [0, 3] inserts blanks at the beginning and after page 3pageSize: MatchPrevious (default), A4, Letter, Legalpdf_crop β Crop pages by setting a crop box (does not resize, hides content outside the box).
filePath, outputPath, x, y, width, height (all in points)pages (optional)pdf_overlay_pdf β Overlay a single page from one PDF on top of another. Uses a single overlay page applied to selected base pages β not a page-by-page multi-page overlay.
basePath (background), overlayPath (foreground), outputPathoverlayPage (default: 1) β Which overlay page to usepages (optional) β Which base pages to apply it topdf_page_layout β Arrange multiple pages onto single sheets (N-up printing). Scales and positions source pages into a 2-up or 4-up grid.
filePath, outputPathlayout: "2-up" (2 pages side-by-side) or "4-up" (2Γ2 grid)pageSize: A4, Letter, Legal (default: Letter)pdf_watermark β Diagonal text watermark, properly centered regardless of rotation angle.
filePath, outputPath, text (required)opacity (0.15), fontSize (60), color (#888888), rotation (45 degrees)pages (optional)pdf_page_numbers β Add page numbers to every page.
filePath, outputPathposition: bottom-center (default), bottom-left, bottom-right, top-center, top-left, top-rightstartNumber (1), prefix (""), suffix (""), fontSize (10), margin (30), color (#4d4d4d)pdf_add_text β Add text at exact coordinates. Supports multi-line (\n) and bold fonts.
filePath, outputPath, text, page, x, yfontSize (12), color (black), lineSpacing (1.4)font: Helvetica, HelveticaBold, TimesRoman, TimesRomanBold, Courier, CourierBoldpdf_add_image β Add PNG/JPG at exact coordinates.
filePath, outputPath, imagePath, page, x, ywidth, height (proportional scaling if only one given; original size if both omitted)opacity (1)pdf_header_footer β Headers and/or footers with dynamic placeholders.
filePath, outputPathheader, footer β Use {page} for current page, {pages} for totalfontSize (9), margin (30), align (center/left/right), color (#4d4d4d)pdf_stamp β Styled business stamps with border and rotation.
filePath, outputPathtype: APPROVED, REJECTED, CONFIDENTIAL, DRAFT, FINAL, COPY, VOID, ORIGINAL, REVISED, FOR REVIEW, CUSTOMcustomText (string, only for CUSTOM type)position: top-right (default), top-left, bottom-right, bottom-left, centerpages (optional), opacity (0.75), rotation (-15)pdf_sign β Add a signature image with smart positioning.
filePath, outputPath, imagePathpage (default: last page)position: bottom-right (default), bottom-left, bottom-centerwidth (150, height scales proportionally), margin (50)pdf_redact β Draw opaque rectangles over regions.
filePath, outputPathregions β [{page, x, y, width, height}]color (default: black)WARNING: Visual-only redaction. This tool covers content with an opaque box but does NOT remove the underlying text or data from the PDF structure. The original content can still be extracted programmatically by anyone with a PDF parser. Do NOT use this for true sanitization of sensitive data (SSNs, passwords, PII, etc). For secure redaction that strips content from the PDF, use Adobe Acrobat Pro,
qpdf, ormutool clean.
pdf_highlight β Translucent highlight boxes (like a highlighter pen).
filePath, outputPathhighlights β [{page, x, y, width, height, color?}] (per-highlight color, default: yellow)opacity (0.35)pdf_draw β Draw shapes: rectangles, lines, and ellipses.
filePath, outputPathshapes β array of shape objects:
{type: "rectangle", page, x, y, width, height, color?, borderColor?, borderWidth?, filled?, opacity?}{type: "line", page, x, y, width, height} where x/y = start point, width/height = end point coordinates{type: "ellipse", page, x, y, width, height, color?, filled?, opacity?}pdf_form_read β List all form fields with names, types, current values, and dropdown/radio options.
filePath, password (optional)Factual signals from GitHub, npm, and our automated checks β not a rating.
No reviews yet β be the first to share how this listing worked for you.
Showcase your server listing on GitHub or your project documentation. Embed this dynamic SVG badge to highlight official listing status and live engagement.
[](https://allmcps.com/mcp/pdf-suite-mcp)<a href="https://allmcps.com/mcp/pdf-suite-mcp"><img src="https://allmcps.com/api/badge/pdf-suite-mcp?style=directory" alt="Pdf Suite MCP on AllMCPs" /></a>