{"name":"io.github.EigenCharlie/pdf-toolkit-mcp","slug":"eigencharlie-pdf-toolkit-mcp","title":null,"description":"Unofficial PDF toolkit (merge/split/compress/OCR/convert/watermark/protect/...) via iLoveAPI.","url":"https://mcp.market/server/eigencharlie-pdf-toolkit-mcp","rating":null,"grade":"B","score":72,"certified":false,"status":"active","category":"other","tags":[],"presence":{"score":12,"stars":1,"forks":0,"downloads_week":null,"last_push_at":"2026-04-20T05:57:23.000Z","license":"MIT"},"uptime":null,"claimed":false,"transport":"npm","callable_via_gateway":false,"default_price_micros":0,"repository":"https://github.com/EigenCharlie/pdf-toolkit-mcp","website":"https://github.com/EigenCharlie/pdf-toolkit-mcp#readme","version":"0.1.2","remotes":[],"packages":[{"registryType":"npm","registryBaseUrl":"https://registry.npmjs.org","identifier":"pdf-toolkit-mcp","version":"0.1.2","transport":{"type":"stdio"},"environmentVariables":[{"description":"iLoveAPI Project Public Key (from https://developer.ilovepdf.com).","isRequired":true,"format":"string","isSecret":true,"name":"ILOVEAPI_PROJECT_PUBLIC_KEY"},{"description":"iLoveAPI Project Secret Key. Used locally to sign short-lived JWTs.","isRequired":true,"format":"string","isSecret":true,"name":"ILOVEAPI_PROJECT_SECRET_KEY"},{"description":"Optional filesystem sandbox: if set, all I/O must stay inside this directory.","format":"string","name":"ILOVEAPI_SANDBOX_ROOT"}]}],"tools":[{"name":"add_page_numbers","description":"Stamp page numbers onto a PDF. Configure starting number, which pages to number, and placement (top/bottom + left/center/right).","write_action":false,"price_micros":0,"input_schema":null},{"name":"add_watermark","description":"Stamp a text or image watermark onto every page of a PDF. For mode=\"text\", provide `text`. For mode=\"image\", provide `image_file` (.jpg/.jpeg/.png). Tune placement, rotation, and opacity as needed.","write_action":false,"price_micros":0,"input_schema":null},{"name":"compress_pdf","description":"Reduce the file size of a PDF. Choose compression_level \"low\", \"recommended\" (default), or \"extreme\". Outputs a .pdf file on disk and returns its path.","write_action":false,"price_micros":0,"input_schema":null},{"name":"extract_pdf_pages","description":"Extract a subset of pages from a PDF into a new PDF. Specify pages as a list or range, e.g. \"1,3,5-7\".","write_action":false,"price_micros":0,"input_schema":null},{"name":"html_to_pdf","description":"Convert a local HTML file (.html or .htm) to a PDF. The HTML is rendered server-side; external assets referenced by the file may not be fetched.","write_action":false,"price_micros":0,"input_schema":null},{"name":"image_to_pdf","description":"Combine one or more images (.jpg, .jpeg, .png) into a single PDF, one image per page, in the order provided.","write_action":false,"price_micros":0,"input_schema":null},{"name":"merge_pdf","description":"Merge two or more PDF files into a single PDF, preserving order. Outputs a .pdf file on disk and returns its path.","write_action":false,"price_micros":0,"input_schema":null},{"name":"ocr_pdf","description":"Run OCR on a PDF to make scanned text selectable/searchable. Accepts one or more language codes (e.g. \"eng\", \"spa\"). Large or image-heavy PDFs can take more than 60 seconds.","write_action":true,"price_micros":0,"input_schema":null},{"name":"office_to_pdf","description":"Convert a Microsoft Office document (Word, Excel, or PowerPoint) to a PDF. Accepts .doc, .docx, .xls, .xlsx, .ppt, and .pptx files.","write_action":false,"price_micros":0,"input_schema":null},{"name":"pdf_to_excel","description":"Convert a PDF to a Microsoft Excel .xlsx spreadsheet. Works best when the source PDF contains clear tabular data; non-tabular PDFs may produce messy results.","write_action":false,"price_micros":0,"input_schema":null},{"name":"pdf_to_jpg","description":"Convert a PDF to JPG images. In \"pages\" mode (default) each page becomes a JPG; in \"extract\" mode only embedded images are pulled out. Returns a .zip archive of the images.","write_action":false,"price_micros":0,"input_schema":null},{"name":"pdf_to_powerpoint","description":"Convert a PDF to a Microsoft PowerPoint .pptx presentation. Each PDF page becomes an editable slide; conversion quality depends on the source.","write_action":false,"price_micros":0,"input_schema":null},{"name":"pdf_to_word","description":"Convert a PDF to an editable Microsoft Word .docx document. Conversion quality depends on the source (scanned PDFs produce poor results; use ocr_pdf first if needed).","write_action":false,"price_micros":0,"input_schema":null},{"name":"protect_pdf","description":"Add password protection to a PDF. Anyone opening the output will need the supplied password.","write_action":false,"price_micros":0,"input_schema":null},{"name":"repair_pdf","description":"Attempt to repair a damaged or malformed PDF. Useful for scanned PDFs that fail to open or render correctly in some readers. Produces a .pdf file on disk.","write_action":false,"price_micros":0,"input_schema":null},{"name":"rotate_pdf","description":"Rotate pages in a PDF by 90, 180, or 270 degrees clockwise. Target specific pages with \"pages\" (e.g. \"1,3,5\" or \"1-5\"), or rotate all pages by default.","write_action":false,"price_micros":0,"input_schema":null},{"name":"split_pdf","description":"Split a PDF into multiple PDFs by page ranges (e.g. \"1-3,5-7\") or into fixed-size chunks. Returns a .zip archive containing the resulting PDFs.","write_action":false,"price_micros":0,"input_schema":null},{"name":"unlock_pdf","description":"Remove password protection from a PDF. Requires the correct password. Produces an unprotected .pdf file on disk.","write_action":true,"price_micros":0,"input_schema":null}],"scan":{"score":72,"grade":"B","scanned_at":"2026-09-27T22:32:43.986Z","report":{"scannerVersion":"0.1.9","scannedAt":"2026-09-27T22:32:44.003Z","components":{"code":{"score":25,"max":25,"notes":["43 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":6,"max":15,"notes":["static API keys via environment variables"]},"maintenance":{"score":8,"max":15,"notes":["last push 161 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":"pdf-toolkit-mcp","version":"0.1.2","found":true,"license":"MIT","hasInstallScripts":false,"dependencyCount":4,"publishedAt":"2026-04-20T05:52:56.229Z","repositoryUrl":"git+https://github.com/EigenCharlie/pdf-toolkit-mcp.git"}],"repo":{"found":true,"owner":"EigenCharlie","repo":"pdf-toolkit-mcp","archived":false,"pushedAt":"2026-04-20T05:57:23Z","stars":1,"forks":0,"openIssues":0,"ownerType":"User","ownerAvatarUrl":"https://avatars.githubusercontent.com/u/11711061?v=4","ownerCreatedAt":"2015-03-29T23:01:24Z","license":"MIT"},"icon":{"url":"https://avatars.githubusercontent.com/u/11711061?v=4&s=128","source":"github"},"presence":{"stars":1,"forks":0,"downloadsWeek":null,"license":"MIT","lastPushAt":"2026-04-20T05:57:23.000Z","score":12}}}},"grade_history":[],"reviews":[]}