{"name":"io.github.castpdf/castpdf-mcp","slug":"castpdf-mcp","title":"CastPDF","description":"Create PDFs from your CastPDF templates or HTML, issue EU e-invoices, and look up documents.","url":"https://mcp.market/server/castpdf-mcp","rating":null,"grade":"B","score":83,"certified":false,"status":"active","category":"other","tags":[],"presence":{"score":18,"stars":0,"forks":0,"downloads_week":null,"last_push_at":"2026-10-12T08:25:20.000Z","license":"MIT"},"uptime":null,"claimed":false,"transport":"npm","callable_via_gateway":false,"default_price_micros":0,"repository":"https://github.com/castpdf/castpdf-mcp","website":"https://castpdf.com","version":"0.1.0","remotes":[],"packages":[{"registryType":"npm","registryBaseUrl":"https://registry.npmjs.org","identifier":"@castpdf/mcp","version":"0.1.0","transport":{"type":"stdio"},"environmentVariables":[{"description":"Your CastPDF API key (cpdf_test_... for watermarked test documents, cpdf_live_... for live ones).","isRequired":true,"format":"string","isSecret":true,"name":"CASTPDF_API_KEY"}]}],"tools":[{"name":"create_e_invoice","description":"Issues a structured invoice as an EU e-invoice and returns a signed download URL. standard: zugferd or factur-x give a PDF/A-3b with the XML embedded (readable by people and machines; for Germany prefer zugferd); xrechnung-cii or xrechnung-ubl give the XRechnung XML only (German public sector; needs invoice.buyer_reference = Leitweg-ID and electronic_address on seller and buyer). Totals and VAT ar","write_action":true,"price_micros":0,"input_schema":null},{"name":"create_pdf","description":"Renders a PDF and returns a signed download URL (valid until expires_at). Give EITHER template_id with data (the usual way: see get_template_fields for the data shape) OR raw html (with optional css; the html may use Liquid tags such as {{ name }} filled from data). By default it makes a TEST document (watermarked, not counted); set test to false only when the user explicitly asks for a live/final","write_action":true,"price_micros":0,"input_schema":null},{"name":"get_document","description":"Looks up one generated document by id: status, error code if it failed, page count, and a fresh signed download URL while the file is stored.","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_template_fields","description":"Returns the fields a template expects, read from its sample data: scalar fields by dotted path (e.g. customer.name) with type and sample value, and line_items (arrays of objects, e.g. invoice positions) with the fields of one item. Build the `data` object for create_pdf from this: nest dotted paths as objects (customer.name becomes { \"customer\": { \"name\": ... } }) and send line items as arrays of ","write_action":false,"price_micros":0,"input_schema":null},{"name":"list_documents","description":"Lists generated documents (PDFs and e-invoices), newest first: id, status (queued, processing, succeeded, failed, canceled), pages, test flag, template, created_at, and a signed download URL while the file is stored. Page with next_before.","write_action":false,"price_micros":0,"input_schema":null},{"name":"list_templates","description":"Lists the PDF templates saved in the CastPDF account (id, name, current version, updated_at). Use it to find the template_id for create_pdf, then call get_template_fields to see which data the template expects.","write_action":false,"price_micros":0,"input_schema":null}],"scan":{"score":83,"grade":"B","scanned_at":"2026-10-12T16:03:43.377Z","report":{"scannerVersion":"0.1.10","scannedAt":"2026-10-12T16:03:43.354Z","components":{"code":{"score":25,"max":25,"notes":["6 source files scanned"]},"reliability":{"score":-1,"max":20,"notes":["no gateway calls yet and no remote to probe"]},"poisoning":{"score":-1,"max":15,"notes":["tools not inspected (local package is not executed); not counted"]},"auth":{"score":6,"max":15,"notes":["static API keys via environment variables"]},"maintenance":{"score":15,"max":15,"notes":["last push 0 days ago"]},"identity":{"score":8,"max":10,"notes":["registry namespace matches repository owner","GitHub account older than a year"]}},"findings":[],"inputs":{"packages":[{"registryType":"npm","identifier":"@castpdf/mcp","version":"0.1.0","found":true,"license":"MIT","hasInstallScripts":false,"dependencyCount":2,"publishedAt":"2026-10-12T08:23:42.672Z","repositoryUrl":"git+https://github.com/castpdf/castpdf-mcp.git"}],"repo":{"found":true,"owner":"castpdf","repo":"castpdf-mcp","archived":false,"pushedAt":"2026-10-12T08:25:20Z","stars":0,"forks":0,"openIssues":0,"ownerType":"User","ownerAvatarUrl":"https://avatars.githubusercontent.com/u/112720649?v=4","ownerCreatedAt":"2022-09-02T17:06:27Z","license":"MIT"},"icon":{"url":"https://castpdf.com/apple-icon.png","source":"site","width":180,"height":180},"presence":{"stars":0,"forks":0,"downloadsWeek":null,"license":"MIT","lastPushAt":"2026-10-12T08:25:20.000Z","score":18}}}},"grade_history":[],"reviews":[]}