{"name":"io.github.strayly/url-to-pdf","slug":"strayly-url-to-pdf","title":"url-to-pdf","description":"Convert public web pages to PDF, images, Markdown, or JSON using one API key.","url":"https://mcp.market/server/strayly-url-to-pdf","rating":null,"grade":"A","score":88,"certified":false,"status":"active","category":"other","tags":[],"presence":{"score":23,"stars":0,"forks":0,"downloads_week":null,"last_push_at":"2026-10-09T05:10:19.000Z","license":null},"uptime":{"percent":100,"checks":28,"ok":28,"last_checked_at":"2026-11-04T06:40:24.096Z","last_ok_at":"2026-11-04T06:40:24.096Z","latency_ms":105},"claimed":false,"transport":"remote","callable_via_gateway":true,"default_price_micros":0,"repository":"https://github.com/strayly/url-to-pdf","website":"https://url-pdf.hammbox.com","version":"0.2.1","remotes":[{"type":"streamable-http","url":"https://url-pdf.hammbox.com/mcp","headers":[{"description":"API key purchased at https://url-pdf.hammbox.com/buy (Paddle checkout).","isRequired":true,"isSecret":true,"name":"x-api-key"}]}],"packages":[],"tools":[{"name":"list_capabilities","description":"Free. Returns what this server can do, the price of each paid tool, and where to buy an API key.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{},"additionalProperties":false}},{"name":"url_to_extract","description":"Extract structured data from a page as JSON: title, meta description, canonical URL, language, main text and links. Readability-first, no LLM involved. Requires an API key purchased at https://url-pdf.hammbox.com/buy. Same auth as the other paid tools.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"url":{"type":"string","description":"Absolute http(s) URL of the page to extract. Required."},"maxTextChars":{"type":"number","description":"Truncate main text to this many characters, 500-200000. Default 20000."},"maxLinks":{"type":"number","description":"Maximum number of links to return, 0-500. Default 100."},"waitUntil":{"type":"string","enum":["load","domcontentloaded","networkidle0","networkidle2"],"description":"Puppeteer navigation wait condition. Default networkidle2."},"waitForSelector":{"type":"string","description":"Optional CSS selector to wait for before rendering."},"waitMs":{"type":"number","description":"Extra settle time after load, 0-10000ms. Few dynamics pages need this."},"timeoutMs":{"type":"number","description":"Navigation timeout in ms, 5000-100000. Default 45000."},"blockAds":{"type":"boolean","description":"Block requests to major ad/analytics domains before rendering. Default false."},"hideCookieBanners":{"type":"boolean","description":"Remove elements that look like cookie consent banners. Default false."},"darkMode":{"type":"boolean","description":"Render with prefers-color-scheme: dark. Default false."},"clickSelector":{"type":"string","description":"CSS selector to click before rendering (expand, dismiss modal, switch tab)."}},"required":["url"],"additionalProperties":false}},{"name":"url_to_markdown","description":"Extract page content as clean Markdown. Requires an API key purchased at https://url-pdf.hammbox.com/buy. If this MCP request carries a valid \"x-api-key\" or \"Authorization: Bearer\" header, it renders directly and returns a 1-hour download URL; otherwise it returns purchase guidance.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"url":{"type":"string","description":"Absolute http(s) URL of the page to extract. Required."},"removeSelectors":{"type":"array","items":{"type":"string"},"description":"CSS selectors to strip before extraction, e.g. [\"nav\", \".ads\", \"footer\"]."},"keepImages":{"type":"boolean","description":"Keep image links in the Markdown output. Default false."},"width":{"type":"number","description":"Viewport width in px, 320-3840. Default 1280."},"height":{"type":"number","description":"Viewport height in px, 240-2160. Default 900."},"deviceScaleFactor":{"type":"number","description":"Device pixel ratio, 0.5-3. Default 1. Set 2 for retina."},"waitUntil":{"type":"string","enum":["load","domcontentloaded","networkidle0","networkidle2"],"description":"Puppeteer navigation wait condition. Default networkidle2."},"waitForSelector":{"type":"string","description":"Optional CSS selector to wait for before rendering."},"waitMs":{"type":"number","description":"Extra settle time after load, 0-10000ms. Few dynamics pages need this."},"timeoutMs":{"type":"number","description":"Navigation timeout in ms, 5000-100000. Default 45000."},"blockAds":{"type":"boolean","description":"Block requests to major ad/analytics domains before rendering. Default false."},"hideCookieBanners":{"type":"boolean","description":"Remove elements that look like cookie consent banners. Default false."},"darkMode":{"type":"boolean","description":"Render with prefers-color-scheme: dark. Default false."},"clickSelector":{"type":"string","description":"CSS selector to click before rendering (expand, dismiss modal, switch tab)."}},"required":["url"],"additionalProperties":false}},{"name":"url_to_pdf","description":"Render a web page to PDF. Requires an API key purchased at https://url-pdf.hammbox.com/buy. If this MCP request carries a valid \"x-api-key\" or \"Authorization: Bearer\" header, it renders directly and returns a 1-hour download URL; otherwise it returns purchase guidance.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"url":{"type":"string","description":"Absolute http(s) URL of the page to render. Required."},"format":{"type":"string","enum":["A4","Letter","Legal"],"description":"Paper size. Default A4."},"landscape":{"type":"boolean","description":"Landscape orientation. Default false."},"printBackground":{"type":"boolean","description":"Print background graphics. Default true."},"scale":{"type":"number","description":"Scale, 0.1-2. Default 1."},"margin":{"type":"string","description":"Margin shorthand like \"10mm\" — or an object {top,right,bottom,left}. Optional."},"preferCssPageSize":{"type":"boolean","description":"Honor the page CSS @page size instead of the format option."},"width":{"type":"number","description":"Viewport width in px, 320-3840. Default 1280."},"height":{"type":"number","description":"Viewport height in px, 240-2160. Default 900."},"deviceScaleFactor":{"type":"number","description":"Device pixel ratio, 0.5-3. Default 1. Set 2 for retina."},"waitUntil":{"type":"string","enum":["load","domcontentloaded","networkidle0","networkidle2"],"description":"Puppeteer navigation wait condition. Default networkidle2."},"waitForSelector":{"type":"string","description":"Optional CSS selector to wait for before rendering."},"waitMs":{"type":"number","description":"Extra settle time after load, 0-10000ms. Few dynamics pages need this."},"timeoutMs":{"type":"number","description":"Navigation timeout in ms, 5000-100000. Default 45000."},"blockAds":{"type":"boolean","description":"Block requests to major ad/analytics domains before rendering. Default false."},"hideCookieBanners":{"type":"boolean","description":"Remove elements that look like cookie consent banners. Default false."},"darkMode":{"type":"boolean","description":"Render with prefers-color-scheme: dark. Default false."},"clickSelector":{"type":"string","description":"CSS selector to click before rendering (expand, dismiss modal, switch tab)."}},"required":["url"],"additionalProperties":false}},{"name":"url_to_screenshot","description":"Capture a page as an image. Requires an API key purchased at https://url-pdf.hammbox.com/buy. If this MCP request carries a valid \"x-api-key\" or \"Authorization: Bearer\" header, it renders directly and returns a 1-hour download URL; otherwise it returns purchase guidance.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"url":{"type":"string","description":"Absolute http(s) URL of the page to capture. Required."},"fullPage":{"type":"boolean","description":"Capture the full scrollable page, not just the viewport. Default true."},"format":{"type":"string","enum":["png","jpeg"],"description":"Image format. Default png."},"quality":{"type":"number","description":"JPEG quality 0-1. Ignored for png. Default 0.8."},"selector":{"type":"string","description":"Capture only the element matching this CSS selector, instead of the page."},"clip":{"type":"string","description":"Clip region as \"x,y,width,height\" — or an object {x,y,width,height}. Optional."},"width":{"type":"number","description":"Viewport width in px, 320-3840. Default 1280."},"height":{"type":"number","description":"Viewport height in px, 240-2160. Default 900."},"deviceScaleFactor":{"type":"number","description":"Device pixel ratio, 0.5-3. Default 1. Set 2 for retina."},"waitUntil":{"type":"string","enum":["load","domcontentloaded","networkidle0","networkidle2"],"description":"Puppeteer navigation wait condition. Default networkidle2."},"waitForSelector":{"type":"string","description":"Optional CSS selector to wait for before rendering."},"waitMs":{"type":"number","description":"Extra settle time after load, 0-10000ms. Few dynamics pages need this."},"timeoutMs":{"type":"number","description":"Navigation timeout in ms, 5000-100000. Default 45000."},"blockAds":{"type":"boolean","description":"Block requests to major ad/analytics domains before rendering. Default false."},"hideCookieBanners":{"type":"boolean","description":"Remove elements that look like cookie consent banners. Default false."},"darkMode":{"type":"boolean","description":"Render with prefers-color-scheme: dark. Default false."},"clickSelector":{"type":"string","description":"CSS selector to click before rendering (expand, dismiss modal, switch tab)."}},"required":["url"],"additionalProperties":false}}],"scan":{"score":88,"grade":"A","scanned_at":"2026-10-09T18:58:01.710Z","report":{"scannerVersion":"0.1.10","scannedAt":"2026-10-09T18:58:01.550Z","components":{"code":{"score":-1,"max":25,"notes":["remote-only server, no package to scan"]},"reliability":{"score":20,"max":20,"notes":["remote reachable in 414ms"]},"poisoning":{"score":15,"max":15,"notes":["5 tool descriptions checked"]},"auth":{"score":8,"max":15,"notes":["API key sent as a header"]},"maintenance":{"score":15,"max":15,"notes":["last push 1 days ago"]},"identity":{"score":8,"max":10,"notes":["registry namespace matches repository owner","GitHub account older than a year"]}},"findings":[],"inputs":{"probes":[{"url":"https://url-pdf.hammbox.com/mcp","reachable":true,"authRequired":false,"latencyMs":414,"serverInfo":{"name":"url-to-pdf","version":"0.2.0"}}],"packages":[],"repo":{"found":true,"owner":"strayly","repo":"url-to-pdf","archived":false,"pushedAt":"2026-10-09T05:10:19Z","stars":0,"forks":0,"openIssues":0,"ownerType":"User","ownerAvatarUrl":"https://avatars.githubusercontent.com/u/15992573?v=4","ownerCreatedAt":"2015-11-24T03:55:49Z"},"icon":{"url":"https://avatars.githubusercontent.com/u/15992573?v=4&s=128","source":"github"},"presence":{"stars":0,"forks":0,"downloadsWeek":null,"license":null,"lastPushAt":"2026-10-09T05:10:19.000Z","score":23}}}},"grade_history":[],"reviews":[]}