For AI agents

TemplateFox for Your Agents
Design once, reuse for every agent.

Your agents write code, reason, and glue APIs together. Making a pixel-perfect PDF shouldn't be on their plate. Design the template once in our visual editor, expose it via MCP, and let your agent inject only the data it controls — we host the layout engine, fonts, and rendering.

One command to plug it in:

npx -y @templatefox/mcp-server

Works with your agent of choice

Any MCP-compatible assistant can call TemplateFox — no glue code.

Why route agent PDFs through TemplateFox?

Agents reason. Templates render. Separate the two and the output stops drifting.

Deterministic output

Agents are non-deterministic. PDFs shouldn't be. Your template is fixed — the agent only fills in the data you let it control. No hallucinated layouts, no drifting totals.

Design once, reuse for every agent

One template works across Claude Code, Cursor, OpenCode, Windsurf, and Claude Desktop. Update the invoice once; every agent picks up the change.

We host the heavy infrastructure

Layout engine, font rendering, page breaks, S3 delivery, and the visual editor — all ours to maintain. Your agent sends JSON; we return a signed PDF URL.

From prompt to PDF in three steps

Design the template. Install the MCP server. Ask your agent.

1

Design your template

Drag-and-drop editor — tables, QR codes, dynamic variables, page breaks. No code. See the editor.

2

Install the MCP server

One command: npx -y @templatefox/mcp-server. Set your API key. MCP setup.

3

Ask your agent

“Generate an invoice for Acme, 3 line items: consulting $1,200, hosting $450, setup $200.” The agent picks the template and returns a signed URL.

Tool use

What an agent actually does

Three MCP tool calls behind a single prompt. Typed schemas, discoverable, safe to expose.

claude code — agent session
> You: “Generate a Q2 invoice for Acme Corp — 3 line items: consulting $1,200, hosting $450, setup $200.”
list_templatesfound “Q2 Invoice”
get_template_fieldscustomer, items[], subtotal, total
generate_pdfhttps://cdn.templatefox.com/…/invoice.pdf
> Claude: Done. Invoice ready — signed URL (expires in 7 days).

8 tools total. Typed schemas. Safe to expose. See the full tool list.

Precision Engineering
PDF template example - Packing Slip
1
2
3
4

Built for real-world documents

Everything you need to create professional business documents, from invoices to packing slips.

1

Headers & footers that just work

Define once, repeat on every page automatically. Perfect for logos, page numbers, and legal mentions.

2

Dynamic data binding

Inject any data into your templates. Names, addresses, prices, etc. — everything updates automatically.

3

Tables that grow with your data

Rows grow automatically with your data. 3 items or 300, the table adapts and spans multiple pages if needed.

4

Built-in QR codes & barcodes

Generated on the fly from your data. Supports Code128, EAN-13, QR codes and more — all scanner-ready.

Try it free

60 free PDFs/month

Easy to use

Documents that adapt to your data

Go beyond simple placeholders. Use expressions to format, calculate, and control your content.

1

Use system variables

Access page numbers, total pages, and current date and more automatically with {{sys.page_number}} and friends.

2

Customize every component

Fine-tune content, borders, colors, sizes, positions, and more. Each element has its own properties panel.

3

Built-in functions

Format dates, calculate totals, round numbers, and more. Use 100+ built-in functions or create your own.

Start building

No credit card required

Template editor with expressions
1
2
3

Is MCP the right fit?

MCP is ideal when an AI agent is in the loop. Here's when it's not.

Recommended

Use AI Agent + MCP if you need:

  • Deterministic output your agent can't hallucinate
  • Works with any MCP-compatible client
  • 8 typed tools: generate, list, fields, jobs, credits
  • Open-source MCP server, MIT licensed

Or consider:

REST API
  • • Skip MCP — call PDF generation directly from your agent's code
  • • Works with any language, any runtime
Zapier
Zapier
  • • No-code automation if no agent is involved
  • • 7,000+ app connections out of the box

Frequently asked questions

Can my agent design templates too?

No — and that's intentional. Templates are designed once by a human in the visual editor; the agent only fills in the data fields it controls. Keeping layout out of the agent's hands is what makes the output deterministic. Hallucinated headers, drifting totals, and "creative" formatting never reach the PDF.

Can I limit which tools the agent has access to?

Yes. Most MCP clients let you allowlist which tools are visible to the agent. If you only want it to generate PDFs — not list templates, read credits, or browse jobs — configure the client to expose just generate_pdf. Less surface area, fewer surprises.

How do I stop an agent from running up a huge credit bill?

Your team's monthly credit cap is the safety net — once it's hit, generation simply stops, no overage. For tighter control, scope the agent to its own API key with its own usage analytics; you can revoke it instantly from the Dashboard if anything looks off. If you want manual approval before each generation, point the agent at the REST API and add a confirmation step in your code.

Should I use MCP, or call the REST API directly from my agent's code?

MCP is the easiest path when a human is driving the agent through a chat interface (Claude Desktop, Cursor, Windsurf) — tool discovery and schema validation are handled for you. If your agent runs in a custom Python or TypeScript backend without a chat in front, calling the REST API directly is often faster to set up. Both routes generate PDFs the same way and cost the same per PDF.

Automate your PDF generation

Complete documentation, no-code integrations, and a powerful API to help you generate PDFs at scale. Let us handle the boring stuff.