AI-first form engine

Describe a form. Ship it in minutes.

NF Four turns a plain-language request into a validated, versioned form, then runs the submissions on Cloudflare's edge, with email and webhook processors attached.

How it works

Agents and people use the same tools. Every step below is an MCP tool call.

1

Describe

Ask an assistant for a form. It calls create_form with typed fields and validation rules.

2

Publish

publish_form freezes a content-hashed version. Changes become new versions, not silent edits.

3

Collect

Submissions are validated against the live version at the edge before anything is stored.

4

Act

Processors like nf4/email and nf4/webhook run in order, with retries you can inspect.

Built for the details

The parts of a form engine that are usually an afterthought are part of the design.

Data classification

Every field is tagged public, internal or PII, so sensitive data is handled on purpose.

Idempotent submits

Each submission carries an idempotency key, so a double-click doesn't create a duplicate.

Versioned forms

Every submission records the exact form version it was validated against.

Secrets stay server-side

Processor credentials are references to secrets, never values in the form definition.

Live demo

Skip the boring hello. This is a real NF Four form, Tell Us Your Story, running in production. Introduce yourself with a funny story: the more ridiculous, the better.

  • The page posts to this site's own /api/submit route.
  • A Cloudflare Worker checks the entry, then forwards it to NF Four.
  • NF Four validates it against the published form version and stores it.
  • NF Four runs an email processor that notifies the form owner.

Your email, so we can laugh back at you.

How would your friends describe you?

Embarrassing moments, travel mishaps, kitchen disasters: all welcome. At least a few sentences, please.

5 · 😬

The story was the important part anyway.

Submissions go to NF Four production. Please don't submit sensitive information.