url-to-pdf
Convert public web pages to PDF, images, Markdown, or JSON using one API key.
¿Debería usar esto?
Calidad y seguridad
Hallazgos (6)
- HIGH
- MEDIUMen url_to_pdf
- MEDIUMen url_to_screenshot
- MEDIUMen url_to_markdown
- MEDIUMen url_to_extract
- LOWen list_capabilities
Basado en el análisis automatizado de las definiciones de herramientas y el cumplimiento del protocolo.
Costo de contexto
Este es el número aproximado de tokens que se consumen cada vez que las herramientas del servidor se cargan en el contexto de un modelo. Los recuentos más altos reducen la atención disponible para otras tareas.
Instalar
Instalación con un clic
Agrega esto a tu archivo `claude_desktop_config.json`:
{
"mcpServers": {
"url-to-pdf": {
"url": "https://url-pdf.hammbox.com/mcp"
}
}
}Puntos de conexión remotos
https://url-pdf.hammbox.com/mcpstreamable-httpQué puede hacer
Inventario de herramientas
Herramientas (5)
🟢list_capabilities
Free. Returns what this server can do, the price of each paid tool, and where to buy an API key.
Esquema de entrada
{
"type": "object",
"properties": {},
"additionalProperties": false
}🟢url_to_pdf(url, format, landscape, printBackground, scale, ...)
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.
Esquema de entrada
{
"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
}🟢url_to_screenshot(url, fullPage, format, quality, selector, ...)
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.
Esquema de entrada
{
"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
}🟢url_to_markdown(url, removeSelectors, keepImages, width, height, ...)
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.
Esquema de entrada
{
"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
}🟢url_to_extract(url, maxTextChars, maxLinks, waitUntil, waitForSelector, ...)
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.
Esquema de entrada
{
"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
}Comunidad
Evidencia