{"server":{"$schema":"https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json","name":"io.github.Nizoka/pdfnative-mcp","description":"PDF MCP server: generate PDF/A, sign & verify PAdES (LTV), forms, merge, split, encrypt. 28 tools","title":"pdfnative MCP — PDF generation, PAdES signing & introspection","repository":{"url":"https://github.com/Nizoka/pdfnative-mcp","source":"github"},"version":"1.6.0","websiteUrl":"https://github.com/Nizoka/pdfnative-mcp#readme","packages":[{"registryType":"npm","registryBaseUrl":"https://registry.npmjs.org","identifier":"pdfnative-mcp","version":"1.6.0","runtimeHint":"npx","transport":{"type":"stdio"},"runtimeArguments":[{"value":"-y","type":"positional","valueHint":"skip-confirm"},{"value":"pdfnative-mcp","type":"positional","valueHint":"package"}],"environmentVariables":[{"description":"Absolute path of a sandboxed directory where outputMode='file' may write PDFs. Unset: every tool returns base64 only (file output disabled).","format":"filepath","name":"PDFNATIVE_MCP_OUTPUT_DIR"},{"description":"Opt-in content-addressed response cache directory (SHA-256 keyed, 1h TTL, 256 MiB LRU, plaintext at rest). Never caches encrypt/decrypt, sign, timestamp, add_ltv, update_metadata, encrypted builds or file output.","format":"filepath","name":"PDFNATIVE_MCP_CACHE_DIR"},{"description":"Serve Streamable HTTP on this loopback port instead of stdio (MCP 2026-07-28, stateless). Unauthenticated unless PDFNATIVE_MCP_HTTP_TOKEN is set.","format":"number","name":"PDFNATIVE_MCP_PORT"},{"description":"Opt-in bearer token for the HTTP transport (>= 16 chars, no whitespace). When set, /mcp requires 'Authorization: Bearer <token>' or answers 401. Never logged.","isSecret":true,"name":"PDFNATIVE_MCP_HTTP_TOKEN"},{"description":"Per-stream FlateDecode decompression cap in bytes (zip-bomb mitigation; default 104857600 = 100 MiB). Integer >= 1024; an invalid value refuses to start the server.","format":"number","name":"PDFNATIVE_MCP_MAX_INFLATE_BYTES"},{"description":"http(s) URL of the RFC 3161 timestamp authority used by sign_pdf timestamp=true and timestamp_pdf (PAdES B-T / B-LTA). Unset: those calls fail with TSA_NOT_CONFIGURED and no network request is made. Tool arguments can never supply a URL.","name":"PDFNATIVE_MCP_TSA_URL"},{"description":"Optional Authorization header value sent to the TSA (e.g. 'Basic ...' or 'Bearer ...'). Never logged or echoed.","isSecret":true,"name":"PDFNATIVE_MCP_TSA_AUTH"},{"description":"'ocsp', 'crl' or 'ocsp,crl': enables online revocation collection for add_ltv mode='online' (PAdES B-LT). Unset: that mode fails with REVOCATION_NOT_CONFIGURED; mode='offline' stays fully offline. Requires PDFNATIVE_MCP_NETWORK_ALLOWED_HOSTS.","choices":["ocsp","crl","ocsp,crl"],"name":"PDFNATIVE_MCP_REVOCATION"},{"description":"Comma-separated allow-list of OCSP / CRL responder hosts ('host', 'host:port' or '*.suffix'). Mandatory when PDFNATIVE_MCP_REVOCATION is set: responder URLs found in certificates are fetched only if the host matches (http(s) only, no credentials, no redirects, internal addresses rejected unless listed verbatim).","name":"PDFNATIVE_MCP_NETWORK_ALLOWED_HOSTS"},{"description":"Per-request timeout for TSA / OCSP / CRL calls in milliseconds, 1000-120000 (default 10000).","format":"number","name":"PDFNATIVE_MCP_NETWORK_TIMEOUT_MS"}]}]},"_meta":{"io.modelcontextprotocol.registry/official":{"status":"active","statusChangedAt":"2026-08-23T16:54:17.462859Z","publishedAt":"2026-08-23T16:54:17.462859Z","updatedAt":"2026-08-23T16:54:17.462859Z","isLatest":true}}}
