{"name":"io.github.Melusi-M/fixmypdf","slug":"melusi-m-fixmypdf","title":null,"description":"Privacy-first PDF tools over MCP: merge, split, rotate, delete, compress, protect, inspect.","url":"https://mcp.market/server/melusi-m-fixmypdf","rating":null,"grade":"C","score":57,"certified":false,"status":"active","category":"other","tags":[],"presence":{"score":5,"stars":null,"forks":null,"downloads_week":null,"last_push_at":null,"license":null},"uptime":{"percent":100,"checks":28,"ok":28,"last_checked_at":"2026-09-27T09:41:12.484Z","last_ok_at":"2026-09-27T09:41:12.484Z","latency_ms":414},"claimed":false,"transport":"remote","callable_via_gateway":true,"default_price_micros":0,"repository":"https://github.com/Melusi-M/pdf-editor-front-end","website":null,"version":"1.0.0","remotes":[{"type":"streamable-http","url":"https://www.fixmypdfonline.com/api/mcp"}],"packages":[],"tools":[{"name":"compress_pdf","description":"Reduce a PDF's file size losslessly by consolidating object streams (keeps text selectable). Returns base64 plus before/after sizes. Note: does not re-encode embedded images.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"pdf":{"type":"string","description":"The PDF as a base64 string or https URL."},"level":{"type":"string","enum":["light","medium"],"description":"medium also strips subject/keywords metadata. Default medium."}},"required":["pdf"]}},{"name":"delete_pages","description":"Remove specific pages from a PDF by their 1-based page numbers, keeping the rest in order. Returns base64.","write_action":true,"price_micros":0,"input_schema":{"type":"object","properties":{"pdf":{"type":"string","description":"The PDF as a base64 string or https URL."},"pages":{"type":"array","minItems":1,"items":{"type":"integer","minimum":1},"description":"1-based page numbers to delete."}},"required":["pdf","pages"]}},{"name":"get_pdf_info","description":"Read-only. Return a PDF's page count and per-page dimensions (in points). Use this first to plan a split or rotate.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"pdf":{"type":"string","description":"The PDF as a base64 string or an https URL."}},"required":["pdf"]}},{"name":"merge_pdf","description":"Merge two or more PDFs into one, in the order given. Returns the merged PDF as base64.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"pdfs":{"type":"array","minItems":2,"items":{"type":"string"},"description":"Ordered list of PDFs, each a base64 string or https URL."}},"required":["pdfs"]}},{"name":"protect_pdf","description":"Encrypt a PDF with a password (AES). The result requires the password to open. Returns base64.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"pdf":{"type":"string","description":"The PDF as a base64 string or https URL."},"password":{"type":"string","minLength":1,"description":"Password required to open the output PDF."}},"required":["pdf","password"]}},{"name":"rotate_pdf","description":"Rotate pages of a PDF clockwise by 90, 180, or 270 degrees. Omit \"pages\" to rotate every page; otherwise pass 1-based page numbers. Returns base64.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"pdf":{"type":"string","description":"The PDF as a base64 string or https URL."},"degrees":{"type":"integer","enum":[90,180,270],"description":"Clockwise rotation to add."},"pages":{"type":"array","items":{"type":"integer","minimum":1},"description":"Optional 1-based page numbers to rotate; omit for all pages."}},"required":["pdf","degrees"]}},{"name":"split_pdf","description":"Extract an inclusive, 1-based page range from a PDF into a new PDF. e.g. from=5,to=10 keeps pages 5–10. Returns base64.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"pdf":{"type":"string","description":"The PDF as a base64 string or https URL."},"from":{"type":"integer","minimum":1,"description":"First page to keep (1-based, inclusive)."},"to":{"type":"integer","minimum":1,"description":"Last page to keep (1-based, inclusive)."}},"required":["pdf","from","to"]}}],"scan":{"score":57,"grade":"C","scanned_at":"2026-09-27T12:17:54.342Z","report":{"scannerVersion":"0.1.9","scannedAt":"2026-09-27T12:17:54.431Z","components":{"code":{"score":-1,"max":25,"notes":["remote-only server, no package to scan"]},"reliability":{"score":20,"max":20,"notes":["remote reachable in 813ms"]},"poisoning":{"score":15,"max":15,"notes":["7 tool descriptions checked"]},"auth":{"score":3,"max":15,"notes":["open endpoint exposes 1 write-action tools with no auth"]},"maintenance":{"score":3,"max":15,"notes":["repository not readable: repo not found"]},"identity":{"score":2,"max":10,"notes":["no repository or website to verify"]}},"findings":[{"id":"auth.open-write","severity":"high","component":"auth","title":"Write-action tools reachable without authentication"}],"inputs":{"probes":[{"url":"https://www.fixmypdfonline.com/api/mcp","reachable":true,"authRequired":false,"latencyMs":813,"serverInfo":{"name":"fixmypdf","version":"1.0.0+tools.3"}}],"packages":[],"repo":{"found":false,"owner":"Melusi-M","repo":"pdf-editor-front-end","error":"repo not found"},"icon":{"url":"https://www.fixmypdfonline.com/icon.svg?197c78252950d0a5","source":"site"},"presence":{"stars":null,"forks":null,"downloadsWeek":null,"license":null,"lastPushAt":null,"score":5}}}},"grade_history":[],"reviews":[]}