Rendlet PDF
Server Details
HTML/URL to PDF rendering API with a remote MCP server. Send HTML or a URL, get a print-ready PDF back.
- Status
- Healthy
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-06-18
- URL
TDQS
Scored across 5 tools
Each tool targets a clearly distinct intent: list_capabilities and get_pricing are separated by discovery vs. cost, preview_pdf is explicitly a low-res preview, and the two render paths differ by input mode (HTML vs. structured template). The descriptions provide precise triggers, so an agent can reliably select the right tool.
Most names follow a predictable snake_case verb_noun pattern (get_pricing, list_capabilities, preview_pdf, render_template), but html_to_pdf uses a noun_to_noun conversion pattern. This single deviation is conventional for PDF converters and remains readable, so the inconsistency is minor.
Five tools are well-scoped for a focused PDF rendering service. Each tool earns its place by covering a distinct need: discovery, pricing, preview, HTML rendering, and template rendering. There is no redundancy or unnecessary surface area.
The surface covers discovery, pricing, preview, and two rendering modes, with auth and quota handling embedded directly in the render tools. For a stateless PDF generation API, no obvious lifecycle gaps remain, and the templates and limits are discoverable via list_capabilities.
Available Tools
5 toolsget_pricingGet Rendlet pricing and how to buyARead-onlyInspect
Use when the user asks about price, hits a quota, or needs more documents. Inputs: none. Output: JSON with the free key, monthly plans with Stripe links, prepaid credit packs with Stripe Payment Links, the USDC-on-Base purchase endpoint and steps, and the cost of each tool. Cost: free, no key.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and openWorldHint=false, so safety is covered. The description adds real behavioral context beyond that: 'Cost: free, no key', meaning no auth is required, and it enumerates what the JSON output contains, which matters because there is no output schema.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Front-loads the trigger, then Inputs, Output, and Cost in labeled fragments. Dense but every clause earns its place, since the output enumeration substitutes for the missing output schema.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description carries the return-value burden and does so thoroughly (key, plans, credit packs, USDC endpoint, per-tool costs). For a zero-param read-only tool, nothing an agent needs to call it correctly is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Zero parameters, so baseline is 4. The description explicitly confirms 'Inputs: none', aligning with the empty schema and removing any doubt about required arguments.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb+resource (retrieve pricing) and rich scope: free key, monthly plans, prepaid packs, USDC-on-Base endpoint, and per-tool cost. It is unmistakably distinct from siblings like render_template and html_to_pdf, which are action tools rather than an informational lookup.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Gives explicit trigger conditions: 'when the user asks about price, hits a quota, or needs more documents.' That is strong when-to-use guidance, though it doesn't name a when-not or an alternative tool (none of the siblings overlap, so an exclusion is arguably unnecessary).
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
html_to_pdfHTML to PDFARead-onlyInspect
Use to produce a real, full-quality PDF from HTML (reports, receipts, letters). Inputs: "html" (required), "format" (A4|Letter|Legal|A3|A5), "landscape", "margin" (CSS length), "filename". Rendered by headless Chromium with JavaScript disabled; only data: URIs and public https assets load; Chinese text supported. Output: the PDF as an embedded base64 resource plus pages, bytes and remaining quota. Requires "Authorization: Bearer " (or "sandbox" for a watermarked 1-page trial, 5/day). Without a usable key it returns a 402 payment_required result with buy links. Cost: 1 document from your monthly plan (free key: 100/month), or 1 prepaid credit after the cap.
| Name | Required | Description | Default |
|---|---|---|---|
| html | Yes | Full HTML document or fragment. | |
| format | No | A4 | |
| margin | No | CSS length, e.g. 12mm | 12mm |
| filename | No | document.pdf | |
| landscape | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations only declare readOnlyHint/openWorldHint, so the description carries the behavioral load and does it well: headless Chromium rendering, JavaScript disabled, asset-loading restrictions, Chinese text support, base64 PDF + pages/bytes/quota in the output, sandbox watermarking with a 5/day cap, and a 402 payment_required failure mode with buy links. Note a mild tension: it fetches public https assets while openWorldHint=false, but the asset set is bounded by caller-supplied HTML, so this is not a clear contradiction.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three dense sentences, front-loaded with purpose then inputs then runtime/auth/cost behavior; nothing is wasted. The auth-and-billing sentence is information-dense but each clause carries decision-relevant facts.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description still explains the return payload (embedded base64 PDF, pages, bytes, remaining quota) and covers auth prerequisites, sandbox mode, failure behavior, and per-call cost. An agent has everything needed to invoke it and interpret the result.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is only 40%, but the description names every parameter — html (required), format with its enum values, landscape, margin as a CSS length, and filename — compensating for the missing schema descriptions. It adds meaning (paper sizes, CSS-length margins) beyond the bare schema, though it doesn't explain filename's role or margin units further.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb+resource ('produce a real, full-quality PDF from HTML') with concrete examples (reports, receipts, letters). The word 'real, full-quality' implicitly contrasts with the sibling preview_pdf, but no sibling is named explicitly, so differentiation is inferred rather than stated.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
'Use to produce...' plus auth/cost detail tells the agent the general context, but there is no guidance on when to choose this over render_template (template-driven rendering) or preview_pdf (draft preview), nor any when-not-to-use condition. Usage must be inferred from the sibling names.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_capabilitiesList Rendlet capabilitiesARead-onlyInspect
Use first to learn what Rendlet can render and which tools are free. Inputs: none. Output: JSON listing tools, input modes (HTML, built-in invoice/itinerary templates), page sizes, limits per plan, auth method and links. Cost: free, no key.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and openWorldHint=false, so the safety profile is covered. The description adds genuinely useful context beyond that: cost is zero, no API key is required, and auth method/links are surfaced in the response.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three tight sentences that are front-loaded with the call-order guidance and then cover inputs, output, and cost. No filler, no restatement of the tool name.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
There is no output schema, so the description must describe the return value, and it does: a JSON listing of tools, input modes, page sizes, per-plan limits, auth method, and links. For a zero-parameter discovery tool, nothing an agent needs is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool takes zero parameters, which is the baseline-4 case; the description confirms this explicitly with "Inputs: none," eliminating any doubt about whether filtering or scoping arguments exist.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource (list Rendlet capabilities) and adds scope the name alone doesn't convey: what can be rendered and which tools are free. An agent can distinguish it from siblings like get_pricing, html_to_pdf, or render_template without opening a schema.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
"Use first" gives an explicit ordering cue for when to call it, which is stronger than implied usage. It stops short of naming alternatives or exclusions, and it doesn't address the overlap with the sibling get_pricing despite both covering cost information.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
preview_pdfFree watermarked PDF previewARead-onlyInspect
Use to show what a document will look like before paying or signing up. Inputs: optional "html" (string, up to 50 KB; omit to preview the built-in sample invoice). Output: a 1-page low-resolution, PREVIEW-watermarked PDF (rasterized first A4 page) as an embedded base64 resource. Not for production use. Cost: free, no key, 3 previews per IP per day.
| Name | Required | Description | Default |
|---|---|---|---|
| html | No | HTML to preview. Omit to preview the sample invoice. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations only declare readOnly and closed-world, but the description adds substantial behavioral context: the output is a rasterized first A4 page, low-resolution, preview-watermarked, returned as an embedded base64 resource, plus no auth needed and a 3-per-IP-per-day rate limit. This is exactly the extra context annotations cannot convey.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Front-loaded with purpose, then inputs, output, and cost in tightly packed sentences. No filler; every clause carries distinct information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
No output schema exists, so the description carries the return-format burden and does so thoroughly (1-page watermarked base64 PDF). Combined with the size cap, sample fallback, and rate limit, an agent has everything needed to call it correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% so the parameter is already documented, but the description adds a meaningful constraint (up to 50 KB) and clarifies the omit-to-preview-sample behavior, which is more specific than the schema's 'Omit to preview the sample invoice.'
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource ('show what a document will look like') and immediately frames the scope as a preview rather than a real conversion, which separates it from sibling html_to_pdf. An agent can tell what it produces without opening the schema.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Gives a clear usage context ('before paying or signing up') and an explicit exclusion ('Not for production use'), which routes the agent away from using this as a real renderer. It does not explicitly name the production alternative (html_to_pdf) to send the agent to, so it falls short of a 5.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
render_templateRender built-in templateARead-onlyInspect
Use when you have structured data for an invoice or travel itinerary and want a clean PDF without writing HTML. Inputs: "template" ("invoice": seller, buyer, items, tax_rate, currency; "itinerary": trip, days), "data" (object; full examples at GET https://rendlet.com/v1/templates), "filename". Output: the PDF as an embedded base64 resource plus pages and remaining quota. Same auth and 402 behaviour as html_to_pdf. Cost: 1 document from your monthly plan, or 1 prepaid credit after the cap.
| Name | Required | Description | Default |
|---|---|---|---|
| data | Yes | Template data; see https://rendlet.com/v1/templates | |
| filename | No | document.pdf | |
| template | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations only declare readOnlyHint and openWorldHint; the description goes well beyond by disclosing the return payload (embedded base64 PDF resource, page count, remaining quota), the 402 payment-required behaviour, and an explicit cost model (1 document from the monthly plan, or 1 prepaid credit after the cap). That is exactly the quota/rate-limit context annotations cannot carry.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single dense paragraph with the use case front-loaded and no filler sentences; each clause carries information (templates, params, output, cost). The heavy parenthetical nesting makes it harder to scan than it could be, but nothing is wasted.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description correctly covers the return shape, and it covers cost, auth, and both template variants. Remaining gaps are minor: nested data field details and auth specifics are delegated to an external URL and to the html_to_pdf sibling rather than stated here.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is only 33%, but the description compensates by enumerating what each template's data object expects (invoice: seller, buyer, items, tax_rate, currency; itinerary: trip, days) and by naming the filename parameter. It still defers full field shapes to an external URL and doesn't mark which nested fields are optional, so it stops short of fully closing the gap.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource (render a built-in template) and names the two concrete templates available (invoice, itinerary) plus the output format (clean PDF). It implicitly distinguishes itself from the sibling html_to_pdf by framing the value as 'without writing HTML', so an agent can tell which tool applies.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The opening clause gives a clear when-to-use condition: structured data for an invoice or itinerary where a PDF is wanted without authoring HTML. It references html_to_pdf for shared auth behaviour but never explicitly says 'use html_to_pdf instead when you need custom HTML/layout', so the routing rule is implied rather than stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
3 tool updates
- Added
get_pricing - Added
list_capabilities - Added
preview_pdf
2 tool updates
- First observed
html_to_pdf - First observed
render_template
Publisher details
- Operator
- Rendlet · Publisher source
- Operator website
- https://rendlet.com · Publisher source
- Vendor relationship
- First-party · Publisher source
- Documentation
- Unknown
- Trust center
- Not available
- Restrictions
- Freemium: free plan available; paid plans for higher volume. Details at https://rendlet.com/pricing · Publisher source
Related MCP Connectors
HTML and CSS to PDF MCP server with page headers, footers and page numbers. No headless browser.
Remote MCP server for HTML-to-PDF and screenshots with OAuth and API-key auth.
MCP server for Api2Pdf — generate PDFs & images from HTML, URLs or office files; merge, barcodes.
Render HTML and CSS to PNG images over HTTP. Send HTML and CSS and get a PNG back.
Related MCP Servers
AlicenseNot gradedqualityCmaintenanceMCP server that converts HTML or URLs to PDF, captures screenshots, and generates EU-compliant e-invoices (Factur-X/ZUGFeRD).50 npmMIT- AlicenseNot gradedqualityAmaintenanceRender HTML/markdown to PDF, export rows to xlsx, and fill AcroForm PDFs via MCP. STDIO or Streamable HTTP.99 npm2Apache 2.0
- AlicenseAqualityDmaintenanceWrite and read PDF documents via MCP: generate PDFs from HTML, URLs, or templates, and extract text from PDFs with OCR support.223 npmMIT
- MIT
Glama MCP Gateway
Add one secure layer between your agents and this server.