nintact
Claude Code

The site ships.The form does not.

Claude Code will build the whole site. Where it stops is the contact form — and the reason is never the code, it is the mail. No SMTP account, no records to publish.

Paste this as it is

Add a contact form to this site. Use nintact for sending, so there is no SMTP
account to buy and no SPF / DKIM / DMARC records to publish.

1. First find out whether this domain can deliver mail at all (no API key needed):
   curl "https://nintact.com/api/v1/check?domain=<the site's domain>"

2. Run `npx nintact init` to create a form. Sign-in is a code by email — no browser.

3. Paste the one line it prints where the form should appear.

4. If a form already exists, do not rebuild it — repoint its action instead.
   The markup, styles and fields all keep working.

Hand this to the agent and it goes from checking deliverability to a working form. The API key is created at the point it is needed.

Steps

01

Add the MCP server (optional, no key needed)

With it, Claude Code can build forms, read the inbox and approve replies from the conversation. The deliverability check works with no API key at all.

claude mcp add nintact -- npx -y nintact-mcp
02

Check the domain first

Most of the time the problem is not the implementation, it is the domain's mail configuration. This reads public DNS only, so it needs no account and no permission.

curl "https://nintact.com/api/v1/check?domain=example.com"
03

Create the form, paste one line

npx nintact init creates the form and prints the snippet. Static export, Vercel, Cloudflare Pages — the hosting does not matter.

<script src="https://nintact.com/embed.js"
        data-nintact="YOUR_FORM_ID" async></script>
04

Receive what arrives

Submissions are sorted, summarised and answered with a draft. Nothing sends until a person approves it. If you would rather no content reached a model at all, a form can be set to forward everything untouched.

Questions

Mail really arrives with no backend?

Yes. It leaves over an already-authenticated sending domain with Reply-To set to your address, so replies land in your normal mailbox. Nothing is published on your DNS.

Does it work with a static export?

Yes. One script tag, no server and no functions. The same is true on Cloudflare Pages and GitHub Pages.

When do I need an API key?

At the point you create a form. The deliverability check needs none. npx nintact init creates the key for you.

Is there a free plan?

Yes — unlimited forms, unlimited receiving, storage and notifications. The metered part is the AI: 30 sorted-and-drafted inquiries a month.