Skip to content
verify mcp Beta VerifyMCP is currently in beta. If you notice any issues, get in touch and we’ll put it right.

PDF Generator

NPM · @MCP-Z/MCP-PDF · SCANNED AUG 7

MCP server for creative PDF generation with full emoji, Unicode, and offline support

Available components

+55 this week 55 Trust /100
Trust breakdown (6 categories)

How this component scores in each security and reliability category. Every signal is checked automatically from public evidence about the published package, including repeated runs of it in an isolated sandbox, and we only credit what we can confirm. How we score →

Supply Chain Security73
  • No malware found by supply-chain analysis.Pass
  • CVE check failed: a known high-severity CVE affects pdfjs-dist 5.6.205, reached via pdf-to-png-converter > pdfjs-dist. A fixed version is available. View diagnostics → Fail
  • Runs a script at install time (postinstall) that we could not recognise. It may be perfectly ordinary, but we do not read the published tarball, so we cannot say what it does. View diagnostics → Partial
  • Dependency health was assessed across the 185 of 186 dependencies we could resolve, so this covers what we could see, not the whole tree. View diagnostics → Partial
Provenance & Transparency19
Schema Quality & AI Usability74
  • 100% of prompts and resources have a non-trivial description (not blank, and not just the item's name).Pass
  • AI-judged instruction clarity (good).Pass
  • Context-footprint check failed: tool/resource definitions use about 1232 tokens (~246/item across 5 items; 5 tools + 0 resources), over budget; trim descriptions and params. See how to fix → Fail
  • Usage-examples check failed: none of the tools include examples. See how to fix → Fail
Stability & Change Management0
  • Stability not yet verified: not enough scan history yet (needs a 30-day window).Unverified
Tool Coverage99
  • 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
  • 97% of tool parameters carry a description.Partial
  • Structured output schemas are declared (100% of tools); any adoption earns full credit.Pass
Capabilities100
  • Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.Pass

Unverified: 1 category

A category scored 0 because we could not verify it: a data source with nothing on this package, evidence we could not reach, or a check we could not run. We only credit what we can confirm.

Install

Add this component to your MCP client. Where a client-specific snippet is available, pick your client below and copy it straight into your config; otherwise use the connection detail shown.

npm · @mcp-z/mcp-pdf

# add to Claude Code
claude mcp add mcp-z-mcp-pdf -- npx -y @mcp-z/mcp-pdf
# add to Codex CLI
codex mcp add mcp-z-mcp-pdf -- npx -y @mcp-z/mcp-pdf
// opencode.json
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "mcp-z-mcp-pdf": {
      "type": "local",
      "command": [
        "npx",
        "-y",
        "@mcp-z/mcp-pdf"
      ],
      "enabled": true
    }
  }
}
# add to OpenClaw
openclaw mcp add mcp-z-mcp-pdf --command npx --arg -y --arg @mcp-z/mcp-pdf
# ~/.hermes/config.yaml
mcp_servers:
  mcp-z-mcp-pdf:
    command: "npx"
    args: ["-y", "@mcp-z/mcp-pdf"]
// mcp.json
{
  "mcpServers": {
    "mcp-z-mcp-pdf": {
      "command": "npx",
      "args": [
        "-y",
        "@mcp-z/mcp-pdf"
      ]
    }
  }
}
Changelog

Every change we have recorded for this component, newest first. Security-relevant changes are always shown. ▲ marks a change for the better, ▼ a change for the worse; unmarked changes are neutral.

  • 7 Aug 26 −3
    • CVE-2026-16633 affects this package: high security
    • Known CVEs: partial → fail security
  • 6 Aug 26 +30
    • Stability: Stability not yet verified: not enough scan history yet (needs a 30-day window). security
    • Schema quality: unverified → 100 functional
    • Tool coverage: unverified → 100 functional
    • MCP protocol: unverified → pass functional
    • First check of Schema quality: fail functional
    • First check of Tool coverage: 97 functional
    • First check of Schema quality: fail functional
    • First check of Tool coverage: 100 functional
    • First check of Schema quality: good functional
  • 2 Aug 26 +28
    • Provenance: unverified → fail security
    • Install scripts: unverified → partial security
    • Known CVEs: unverified → partial security
    • Malware scan: unverified → pass security
    • The scripts that run when this package is installed changed: postinstall security
    • Security disclosure: unverified → fail functional
    • Dependency health: unverified → partial functional
    • License: unverified → pass functional
    • Maintenance: unverified → pass functional
    • Licence: MIT functional
  • 1 Aug 26 0
    • We updated how we score, so this day's move reflects our rubric, not a change to the server See what changed → functional
  • 31 Jul 26 −18
    • Malware scan: pass → unverified security
    • Tool coverage: Tool coverage not yet verified: our sandbox run of this package did not complete, so we have no tool definitions to assess. functional
    • Schema quality: Schema quality not yet verified: our sandbox run of this package did not complete, so we have no schema to assess. functional
  • 28 Jul 26 0
    • Tool coverage: Tool coverage not yet verified: we do not have a sandbox capture of the tool definitions this version of the package serves yet. functional
    • Schema quality: Schema quality not yet verified: we do not have a sandbox capture of the MCP schema this version of the package serves yet. functional
  • 27 Jul 26 18

    First indexed and scored.

Diagnostics

Diagnostic detail from the automated scan of this channel: what the scanner observed at each step, so you can see exactly where a check passed or failed. It is informational only and never changes the trust score.

Captured 7 Aug 2026 · Analysed npm/@mcp-z/[email protected]

Provenance No attestation

The registry publishes no build provenance for this version, so there is nothing to verify.

Result No attestation
Ecosystem npm
Install scripts 1 script
Hook Tier Command
postinstall unreviewed node scripts/postinstall.cjs
Vulnerabilities 1 finding
ID CVE Severity Vector Fix available
GHSA-hq66-cqwq-w95j CVE-2026-16633 high yes
Dependencies 185 packages
Packages resolved 185
Deprecated 182
Stale 52
Tree resolution Partial

The dependency tree was only partially resolved, so these counts may be incomplete.

MCP tools · 5 exposed · ~1,232 tokens

The tools this component advertises to a client, with an estimated token cost for each. Expand a tool to see its parameters and schema. The per-tool counts are indicative and are not scored directly; the schema's total context footprint is one signal in Schema Quality & AI Usability.

Tool Tokens
pdf-document ~307

Create a flowing PDF document with automatic pagination. Best for: Reports, articles, letters, contracts, and documents with sequential content. Content flows naturally from top to bottom. Pages break automatically when content exceeds page height. Use "pageBreak" to force page breaks, "divider" for horizontal rules, and "spacer" for vertical spacing. Supported content types: - text: Body text with optional formatting (bold, italic, color, alignment) - heading: Section headings (larger font, bold by default) - image: Inline images that flow with content - divider: Horizontal line separators - spacer: Vertical whitespace - pageBreak: Force new page Default margins: Varies by page size (e.g., 72pt/1" for Letter, ~56pt for A4).

NameTypeReqDescription
authorstringDocument author metadata
colorobjectColor settings for the PDF
contentarrayyesDocument content in flow order
filenamestringOptional logical filename (metadata only). Storage uses UUID. Defaults to "document.pdf".
fontstringFont strategy (default: auto). Built-ins: Helvetica, Times-Roman, Courier. Use a path or URL for Unicode.
markdownbooleanEnable markdown parsing (links, **bold**, *italic*). Default: false.
pageSetupobjectPage configuration including size and margins.
titlestringDocument title metadata
NameTypeReqDescription
resultobjectyes

No examples provided.

pdf-image ~304

Generate PNG image(s) from PDF pages. Use this to visually verify PDF output without opening external applications. **Pages Options:** - Single page: `pages: 1` or `pages: 3` - Multiple pages: `pages: [1, 3, 5]` - All pages: `pages: "all"` - Default: page 1 only **Viewport Scale Recommendations:** - **0.25 (thumbnail)**: ~150px wide, smallest file (~15-30KB). Use for quick verification. - **0.5 (preview)**: ~300px wide, good balance (~40-80KB). **Recommended default.** - **1.0 (full)**: ~612px wide, detailed view (~150-300KB). Use when details matter. Lower scales produce smaller files, reducing context usage when sharing images.

NameTypeReqDescription
pagesPages to render: single number (e.g., 1), array (e.g., [1, 3, 5]), or "all". Default: 1
pdfPathstringyesAbsolute path to the PDF file
viewportScalenumberScale factor for the image. Recommended: 0.25 (thumbnail, ~150px wide, smallest), 0.5 (preview, ~300px wide, good balance), 1.0 (full size, ~612px wide). Default: 0.5
NameTypeReqDescription
imagesarrayyesArray of generated images
totalPagesnumberyesTotal pages rendered

No examples provided.

pdf-layout ~261

Create a PDF with precise positioning using Yoga flexbox layout. Best for: Dashboards, slides, certificates, flyers, and designs requiring exact placement. All items are positioned absolutely on specific pages. Use the "page" property to target different pages (e.g., page: 2 for multi-slide presentations). Pages are created as needed. Use groups for flexbox containers - they support direction, gap, justify, alignItems, and alignment properties for sophisticated layouts. Default margins: 0 (full canvas access for precise positioning).

NameTypeReqDescription
authorstringDocument author metadata
colorobjectColor settings for the PDF
contentarrayyes
filenamestringOptional logical filename (metadata only). Storage uses UUID. Defaults to "document.pdf".
fontstringFont strategy (default: auto). Built-ins: Helvetica, Times-Roman, Courier. Use a path or URL for Unicode.
layoutobjectLayout configuration for overflow handling
markdownbooleanEnable markdown parsing (links, **bold**, *italic*). Default: false.
pageSetupobjectPage configuration including size, margins, and background color.
titlestringDocument title metadata
NameTypeReqDescription
resultobjectyes

No examples provided.

pdf-resume ~229

Generate a professional resume PDF from JSON Resume format. Supports layout customization, date/locale formatting, styling, fonts, and automatic page breaks.

NameTypeReqDescription
colorobjectColor settings for the PDF
filenamestringOptional logical filename (metadata only). Storage uses UUID. Defaults to "resume.pdf".
fontstringFont for the PDF. Defaults to "auto" (system font detection). Built-ins are limited to ASCII; provide a path or URL for full Unicode.
layoutobjectSpatial arrangement of sections. Omit for single-column (default). Use style: "two-column" with columns config for sidebar layouts.
markdownbooleanEnable markdown parsing (links, **bold**, *italic*). Default: false.
pageSizestringPage size preset (default: "LETTER"). Use "A4" for international standard.
resumeobjectyesResume data in JSON Resume format
sectionsobjectSections configuration for section ordering and field templates
stylingobjectTypography and styling options
NameTypeReqDescription
resultobjectyes

No examples provided.

text-measure ~131

Measure text width and height before rendering. Returns exact dimensions based on font, font size, and text content. Use this to: - Calculate text width to set proper container sizes - Determine if text will fit in a given space - Plan multi-line layouts by specifying width constraint Width is measured as single-line natural width. Height accounts for text wrapping when width is specified.

NameTypeReqDescription
fontstringFont specification (default: auto). Built-ins: Helvetica, Times-Roman, Courier. Use a path or URL for custom fonts.
itemsarrayyesArray of text items to measure
NameTypeReqDescription
fontstringyesFont used for measurements
measurementsarrayyes

No examples provided.