# Postcraft > Postcraft is a template editor and render API for transactional email. A template is built from visual blocks, in raw Handlebars and CSS, or by an agent over MCP, and one API call renders it to a self-contained HTML string, with a plain-text part for email. Postcraft does not send email: your application passes the result to the sender it already uses. Agents edit templates over MCP at https://postcraft.io/api/v1/mcp, with an API key in the `x-api-key` header. Every docs page has a Markdown copy at its own address plus `.md`, and the links below point at those copies. ## Start - [Introduction](https://postcraft.io/docs/index.md): Postcraft is a template editor and render API for transactional email. Design visually or in code, then render one HTML string per call. - [Getting started](https://postcraft.io/docs/getting-started.md): Get an API key, create a template and render it through the Postcraft API, with cURL, JavaScript, Python, PHP and Go examples. - [Workspaces and team members](https://postcraft.io/docs/workspaces.md): How Postcraft workspaces hold templates, folders and API keys, and how to invite members as admins, editors or viewers. ## Reference - [API](https://postcraft.io/docs/reference/api.md): Every endpoint of the Postcraft REST API at a glance, with request bodies, response shapes and error codes for each operation. - [AI](https://postcraft.io/docs/reference/ai.md): Connect Claude Code, Claude Desktop, Cursor or any MCP client to Postcraft and edit email templates by describing the change. - [Template helpers](https://postcraft.io/docs/template-helpers.md): The Handlebars helpers every Postcraft template can call, from capitalize and formatDate to charts and comparisons, with an example for each. ## API operations - [Read template](https://postcraft.io/docs/operations/get-api-v1-templates-%7Bid%7D.md): Returns the template metadata, the stored code and styles, the example context (parsed JSON value), the block tree (null in code mode), and the folder it is fi… - [Update template](https://postcraft.io/docs/operations/put-api-v1-templates-%7Bid%7D.md): Updates the template. - [Delete template](https://postcraft.io/docs/operations/delete-api-v1-templates-%7Bid%7D.md): Deletes the template. Renders and reads of it stop immediately. - [List templates](https://postcraft.io/docs/operations/get-api-v1-templates.md): Lists the templates in this API key's workspace, newest change first. Soft-deleted templates are omitted. - [Create template](https://postcraft.io/docs/operations/post-api-v1-templates.md): Creates a template in visual mode (when `blocks` is supplied) or code mode (when `code` is supplied without `blocks`). - [Validate template code](https://postcraft.io/docs/operations/post-api-v1-templates-validate.md): Checks code-mode content and returns the diagnostics a write would, without storing anything and without touching any template. - [Publish template](https://postcraft.io/docs/operations/post-api-v1-templates-%7Bid%7D-publish.md): Promotes the draft to the published copy, changing what `/render` serves. - [Discard draft](https://postcraft.io/docs/operations/delete-api-v1-templates-%7Bid%7D-draft.md): Throws away unpublished changes, leaving the published copy untouched. The discarded states stay in the template's history. Succeeds when there is no draft. - [Render template](https://postcraft.io/docs/operations/post-api-v1-templates-%7Bid%7D-render.md): Renders the stored template against a runtime context and returns one self-contained HTML string, with the rendered `subject` beside it. - [Mint editor URL](https://postcraft.io/docs/operations/get-api-v1-templates-%7Bid%7D-presigned-url.md): Returns a short-lived URL the editor SPA opens to edit (or view) the template. Requires an API key: presigned tokens cannot mint, by design. - [Get template version](https://postcraft.io/docs/operations/get-api-v1-templates-%7Bid%7D-version.md): Cheap change probe: the template's timestamps without its content. ## Agent resources - [postcraft](https://postcraft.io/skills/postcraft/SKILL.md): Edit, check and render Postcraft email templates through the Postcraft MCP server, and wire a template into application code that sends email. Use when asked to change a Postcraft template, build a new transactional email in Postcraft, check how a template renders, or render a Postcraft template from code and send it with Resend, Postmark, SES, SendGrid or SMTP. - [llms-full.txt](https://postcraft.io/llms-full.txt): Every docs page above, API operations included, in one Markdown file. ## Pricing - [Free](https://postcraft.io/pricing): $0, no credit card required. Includes unlimited templates, unlimited renders, email support. - [Lifetime](https://postcraft.io/pricing): $129, one-time payment. Includes everything in Free, embed the editor in your product, priority support. Every plan includes the full blocks + code editor, web or email output, server-rendered charts, editor diagnostics, a plain-text part on every email render, and the render API. ## Optional - [Hard things about email](https://postcraft.io/hard-things-about-email): Gmail strips stylesheets. Dark mode diverges from the web. Layouts that work everywhere else need workarounds. Deep dives on what trips developers up. - [Template gallery](https://postcraft.io/template-gallery): Ready-made transactional email templates you can preview and clone straight into your account. Browse them, then start from one in a click. Each starter also has a page of its own under https://postcraft.io/template-gallery/.