Show HN: Image Generation API with QR code tracking and MCP support Templates On launched an image generation API with QR code tracking and MCP support, enabling automated creation of invoices, certificates, and social images from tools like Zapier and n8n. The API includes bulk rendering and verification features, targeting developers and automation users. Stop reopening your design tool for every post Generate images & PDFs from your automations. Design a template once. Then auto-generate invoices, certificates, social images, and reports — straight from Zapier, n8n, Make, or a single API call. No reopening your design tool. Works with Zapier · n8n · Make · REST API Everything it renders See all features → /features - New order or signup comes in - Open the design app - Find the right file - Paste the data in by hand - Export, rename, download - Repeat for every single record - Your automation fires - The data hits the API - A finished file comes back One template powers thousands of files. The design never moves. Only the data does — and you never touch it. Three steps. Then it runs itself. You set the design up front. After that, your automations do the work. Build the template once Lay out your invoice, certificate, social image, or report the way you want it. Mark the parts that change, like a name, a total, or a photo, as fields. Connect your automation Send the data from Zapier, n8n, Make, or a single API call. Triggered by a new order, a form submission, a webhook, or a row in a sheet. Get the finished file A ready-to-use image or PDF comes back in seconds. Perfectly on brand, every time, with zero design work. Bulk rendering One spreadsheet in. Hundreds of files out. Most render APIs stop at one file per request. Send an array of records to a bulk endpoint and get back one PNG or PDF per record — up to a thousand at a time, in the same call. It meters as a single bulk job, not a thousand API requests. See bulk rendering → /features/bulk-rendering POST /api/v1/bulk-image { "templateId": "tpl 123", "records": { "name": "Alice", "amount": "120.00" }, { "name": "Bob", "amount": "85.50" } } → { "count": 2, "slices": "