# Leafwright > Generate PDFs without running headless Chrome. Leafwright is a document studio and PDF API: render HTML, public URLs, or Handlebars templates to PDF with one API call — no headless Chrome in your bundle. AI drafts templates and repairs them from render logs. Free tier: 100 PDFs/month, no credit card. ## Docs - [API reference](https://leafwright.co/docs/api): Bearer-key auth, HTML/URL-to-PDF rendering, templates, webhooks, render events, key rotation - [MCP setup](https://leafwright.co/docs/mcp): Connect Claude, ChatGPT, Cursor, and Codex — remote MCP server at https://leafwright.co/mcp (OAuth 2.1), or local via `npx -y @leafwright/mcp` - [Pricing](https://leafwright.co/pricing): Hobby free (100 PDFs/mo) · Indie $19/mo (3,000 PDFs/mo) · Pro $79/mo (15,000 PDFs/mo) · Business $299/mo (80,000 PDFs/mo) · Enterprise custom (custom volume) ## Guides - [Puppeteer doesn't work on Vercel. Here's the fix.](https://leafwright.co/blog/puppeteer-doesnt-work-on-vercel): Why headless Chrome breaks on Vercel and Lambda, the hacks people try, and how to generate PDFs from a serverless function without ever bundling Chromium. - [Give Claude Code (or Cursor) the ability to make PDFs](https://leafwright.co/blog/pdf-generation-mcp-for-ai-agents): Install the Leafwright MCP server and your AI coding agent can render PDFs, build templates, and debug broken layouts from render logs — without you leaving the editor. - [Add PDF export to your v0 or Lovable app in 5 minutes](https://leafwright.co/blog/add-pdf-export-to-your-ai-built-app): You built an app with v0, Lovable, or Bolt and now someone wants a 'Download PDF' button. Here's the clean, server-side way to do it without window.print() or a janky client library. ## Optional - [Full content for LLMs](https://leafwright.co/llms-full.txt) - [Privacy](https://leafwright.co/privacy) · [Terms](https://leafwright.co/terms)