Furrow Forms

AI site builders · works with Furrow Forms

Contact forms for sites built in Cursor

The form backend Cursor’s agent can register, provision, and verify on its own.

paste this into your agent

Fetch furrowforms.com/ai and set up forms for this site.

agent-readable recipe: /forms-for/cursor.md

prefer clicking? start in the dashboard

What the agent writes · src/pages/contact.astro
<form action="https://api.furrowforms.com/s/fp_k7m2" method="POST">
  <input type="text" name="_gotcha" style="display:none" tabindex="-1" />
  <input type="hidden" name="_ft" value="" />
  <script>document.currentScript.previousElementSibling.value = Date.now();</script>
  <input name="name" type="text" required />
  <input name="email" type="email" required />
  <textarea name="message" required></textarea>
  <button type="submit">Send</button>
</form>

The gap

Why Cursor sites need a form backend

Cursor will happily build the whole site — pages, styles, the contact form markup — and then stop at the form’s action attribute, because every form backend expects a human to go sign up and paste an endpoint back. Furrow Forms removes that handoff. Its control plane is MCP and REST from the first call: the agent registers the account (you read one email code), provisions the site and forms in a single bootstrap_site call, writes the snippet into your codebase, and verifies the webhook. Setting up forms becomes one more prompt in the same chat that built the site.

01

The agent stalls at the form action

Cursor can write the form but not the backend — until now it had to ask you to sign up somewhere. With Furrow, cold-start registration over POST /api/register means the agent creates the account too and keeps going.

02

Spam shows up before the first lead

Every snippet the agent writes ships with a honeypot, a timing field, and quarantine. Hand it Turnstile keys and it configures those at the project level as well.

03

The next site shouldn’t start from zero

One workspace runs every site you ship. Spam policy, notify emails, and webhooks are set per project and inherited by every form — so the agent sets up site five exactly like site one.

Two ways in

Set it up yourself, or don’t

Hand it to your agent

[ recommended ]

Furrow’s whole control plane is an API and MCP server. Paste this prompt into Claude Code, Cursor, or any agent — it does the rest:

paste this into your agent

Fetch furrowforms.com/ai and set up forms for this site.
  1. 1.Registers the account over POST /api/register — you read one 6-digit email code
  2. 2.Provisions the site: client, project, and forms in one idempotent bootstrap_site call
  3. 3.Pastes the generated snippet into your codebase
  4. 4.Fires test_webhook and verifies the signed delivery

Or do it by hand

  1. 01Paste the prompt into Cursor’s agent chat (Composer). No account needed first.
  2. 02Read the 6-digit code Furrow emails you and hand it to the agent.
  3. 03The agent provisions the site, edits your form markup, and fires a test webhook.
  4. 04Add the Furrow MCP server to Cursor for ongoing changes — rotate keys, change notify emails, add forms — by asking.

free tier: 100 subs/mo · unlimited forms · full API + MCP · pricing →

FAQ

Cursor + Furrow Forms, answered

Does Cursor need an MCP server for this, or is the URL enough?

The URL is enough: /ai carries the full REST reference, so the agent can register, provision, and verify with plain HTTP calls. Adding the Furrow MCP server (streamable HTTP or stdio) gives it the same operations as typed tools, which is nicer for ongoing changes.

Do I have to create the Furrow account myself?

No. The agent calls POST /api/register, Furrow emails you a 6-digit code, you paste it into the chat, and the agent receives a team-scoped token. That is the only human step.

What does the agent actually change in my code?

It edits your form markup: sets the action to your Furrow submit URL, adds a hidden _gotcha honeypot and an _ft timing field, and (if you gave it keys) the Turnstile widget. Nothing else — there is no SDK to install and no server route to add.

The form backend your agent can run.

paste this into your agent

Fetch furrowforms.com/ai and set up forms for this site.

Setup for agents →