{"name":"io.github.AryanBV/pdf-toolkit-mcp","slug":"aryanbv-pdf-toolkit-mcp","title":null,"description":"Write-capable PDF toolkit MCP: 22 tools to read, create, render, encrypt, merge & fill PDFs.","url":"https://mcp.market/server/aryanbv-pdf-toolkit-mcp","rating":null,"grade":"A","score":88,"certified":false,"status":"active","category":"other","tags":[],"presence":{"score":31,"stars":9,"forks":1,"downloads_week":191,"last_push_at":"2026-07-22T05:56:14.000Z","license":"MIT"},"uptime":null,"claimed":false,"transport":"npm","callable_via_gateway":false,"default_price_micros":0,"repository":"https://github.com/AryanBV/pdf-toolkit-mcp","website":null,"version":"0.3.1","remotes":[],"packages":[{"registryType":"npm","identifier":"@aryanbv/pdf-toolkit-mcp","version":"0.3.1","transport":{"type":"stdio"}}],"tools":[{"name":"pdf_add_page_numbers","description":"Add page numbers to a PDF. Supports configurable position, format, starting number, and font size.","write_action":false,"price_micros":0,"input_schema":null},{"name":"pdf_add_watermark","description":"Add a text watermark to PDF pages. Watermark is centered and rotated diagonally by default. Applies to all pages if no page range is specified.","write_action":false,"price_micros":0,"input_schema":null},{"name":"pdf_compare","description":"Compare two PDFs page by page (by absolute page index) and report text differences. Returns identical:true when text matches. Diffs content-stream-order text (not visual reading order), so it is best for same-layout documents; reflowed or multi-column PDFs produce noisy diffs. Inserting/deleting a page shifts all later pages and reports them as changed. Large diffs are trimmed (truncated:true) to ","write_action":false,"price_micros":0,"input_schema":null},{"name":"pdf_create","description":"Create a new PDF from text content with automatic line wrapping and page overflow. Supports A4, Letter, and Legal page sizes. Provide fontPath for non-Latin text (Arabic, CJK, etc.).","write_action":true,"price_micros":0,"input_schema":null},{"name":"pdf_create_from_markdown","description":"Create a rich, high-fidelity PDF from Markdown (CommonMark + GFM). Supports headings, bold/italic, links, ordered/bullet lists, tables, fenced code blocks, blockquotes, and horizontal rules.","write_action":true,"price_micros":0,"input_schema":null},{"name":"pdf_create_from_template","description":"Create a polished PDF from a named template (invoice, report, or letter). Pass structured data matching the template's fields; data is validated against the template's schema.","write_action":true,"price_micros":0,"input_schema":null},{"name":"pdf_delete_pages","description":"Delete specific pages from a PDF, keeping the rest in their original order. AcroForm fields on the remaining pages are preserved. Set flatten:true to bake field values into static content. Cannot delete every page.","write_action":true,"price_micros":0,"input_schema":null},{"name":"pdf_embed_image","description":"Embed a PNG or JPEG image into a specific page of a PDF. Supports custom positioning and optional scaling with aspect ratio preservation.","write_action":false,"price_micros":0,"input_schema":null},{"name":"pdf_embed_qr_code","description":"Embed a QR code or barcode into a specific page of a PDF at given coordinates. Supports qrcode, code128, datamatrix, ean13, pdf417, and azteccode.","write_action":false,"price_micros":0,"input_schema":null},{"name":"pdf_encrypt","description":"Encrypt a PDF with AES-256 password protection. Requires a user password to open. Owner password controls editing permissions (defaults to the user password).","write_action":false,"price_micros":0,"input_schema":null},{"name":"pdf_extract_text","description":"Extract text content from a PDF file. Returns first 10 pages by default to avoid exceeding LLM context limits. Use the 'pages' parameter for specific pages.","write_action":false,"price_micros":0,"input_schema":null},{"name":"pdf_fill_form","description":"Fill form fields in a PDF. Supports text, checkbox, dropdown, radio, and list-box (multi-select) fields. Provide fontPath for non-Latin text (Arabic, CJK, etc.).","write_action":false,"price_micros":0,"input_schema":null},{"name":"pdf_flatten","description":"Flatten a PDF's form fields, baking their current values into the page content and removing interactivity. Form-less PDFs are copied unchanged.","write_action":false,"price_micros":0,"input_schema":null},{"name":"pdf_get_form_fields","description":"List all form fields in a PDF with their names, types, current values, and required status. Returns hasForm: false for PDFs without forms.","write_action":false,"price_micros":0,"input_schema":null},{"name":"pdf_get_metadata","description":"Get metadata from a PDF file including title, author, subject, page count, creation/modification dates, and producer information.","write_action":false,"price_micros":0,"input_schema":null},{"name":"pdf_merge","description":"Merge multiple PDF files into one. AcroForm fields are preserved; fields whose names collide across inputs are auto-renamed (namespaced by source). Set flatten:true to bake field values into static content.","write_action":false,"price_micros":0,"input_schema":null},{"name":"pdf_render_pages","description":"Render PDF pages to images so a vision-capable client can read scanned or image-only PDFs. Writes PNG/JPEG files and returns their paths; set inline:true to return image blocks the model can see directly.","write_action":false,"price_micros":0,"input_schema":null},{"name":"pdf_reorder_pages","description":"Reorder pages in a PDF. Specify the new page order as a comma-separated string (e.g. '3,1,2'). Duplicates are allowed. AcroForm fields are preserved. Set flatten:true to bake field values into static content.","write_action":false,"price_micros":0,"input_schema":null},{"name":"pdf_rotate_pages","description":"Rotate pages in a PDF by 90, 180, or 270 degrees. Rotation is additive to any existing rotation. Rotates all pages if no page range is specified.","write_action":false,"price_micros":0,"input_schema":null},{"name":"pdf_search","description":"Search text across a PDF and return matches with a short surrounding snippet and the page number. The query is matched as a literal substring (case-insensitive by default). Searches all pages unless a range is given.","write_action":false,"price_micros":0,"input_schema":null},{"name":"pdf_split","description":"Extract specific pages from a PDF into a new file. AcroForm fields on the extracted pages are preserved; fields on omitted pages are dropped. Set flatten:true to bake field values into static content.","write_action":false,"price_micros":0,"input_schema":null},{"name":"pdf_to_markdown","description":"Convert a PDF to clean, reading-order Markdown for LLM consumption: reconstructs up to 2 content columns (plus full-width title/footer bands), infers headings from font size, and detects bullet/numbered lists. Pages with 3 or more columns fall back to single-column reading order. Tables are emitted as plain reading-order text, NOT reconstructed as Markdown tables. Best on clean, digital (text-base","write_action":false,"price_micros":0,"input_schema":null}],"scan":{"score":88,"grade":"A","scanned_at":"2026-09-27T17:04:55.784Z","report":{"scannerVersion":"0.1.9","scannedAt":"2026-09-27T17:04:55.852Z","components":{"code":{"score":25,"max":25,"notes":["51 source files scanned"]},"reliability":{"score":-1,"max":20,"notes":["no gateway calls yet and no remote to probe"]},"poisoning":{"score":-1,"max":15,"notes":["tools not inspected (local package is not executed); not counted"]},"auth":{"score":12,"max":15,"notes":["local package, no credentials required"]},"maintenance":{"score":12,"max":15,"notes":["last push 67 days ago"]},"identity":{"score":8,"max":10,"notes":["registry namespace matches repository owner","GitHub account older than a year"]}},"findings":[],"inputs":{"packages":[{"registryType":"npm","identifier":"@aryanbv/pdf-toolkit-mcp","version":"0.3.1","found":true,"license":"MIT","hasInstallScripts":false,"dependencyCount":17,"publishedAt":"2026-05-29T19:00:51.513Z","weeklyDownloads":191}],"repo":{"found":true,"owner":"AryanBV","repo":"pdf-toolkit-mcp","archived":false,"pushedAt":"2026-07-22T05:56:14Z","stars":9,"forks":1,"openIssues":1,"ownerType":"User","ownerAvatarUrl":"https://avatars.githubusercontent.com/u/112748583?v=4","ownerCreatedAt":"2022-09-03T07:01:24Z","license":"MIT"},"icon":{"url":"https://avatars.githubusercontent.com/u/112748583?v=4&s=128","source":"github"},"presence":{"stars":9,"forks":1,"downloadsWeek":191,"license":"MIT","lastPushAt":"2026-07-22T05:56:14.000Z","score":31}}}},"grade_history":[],"reviews":[]}