Skip to main content
Cookbook Content SureForms

Build a Form from a Description with SureForms and AI

Describe the form; the AI builds it in SureForms with its email going to you and puts it on a draft page on your yes.

Difficulty Beginner
Time ~10 min

Prerequisites

A site connected to WPVibe running SureForms 2.12.9 or newer (tested on the free 2.12.9) on WordPress 6.9 or newer, with an administrator account. SureForms' AI access must be on: SureForms > Settings > MCP > Enable Abilities (the tab first asks you to install the free MCP Adapter plugin). This recipe changes forms, so Enable Edit Abilities on the same tab must be on too.

The prompt
My site runs SureForms. Build a form for [what it is for, for example airport transfer requests] that asks for [the questions, for example name, email, mobile number, flight number, arrival date and time, passengers and which villa]. The button should say [button text] and the message after sending should say [message]. Email each entry to [my email address]. Put it on a page called [page title].

1. Run get_ability_info for each SureForms ability this uses: sureforms/list-forms, sureforms/create-form, sureforms/get-form, sureforms/update-form and sureforms/get-shortcode. If one is not found, SureForms is keeping it off: tell me to update SureForms if it is older than 2.12.9, then go to SureForms > Settings > MCP (install and activate the MCP Adapter plugin if the tab asks for it) and switch on Enable Abilities and Enable Edit Abilities (I can switch them off again afterwards), and stop. BUTTON_TEXT, THANK_YOU_MESSAGE, MY_EMAIL and PAGE_TITLE below mean the values from my request above. Curly-brace codes such as {admin_email}, {site_title}, {form_title}, {all_data} and {form:email} are SureForms smart tags: keep them as they are. {form:SLUG} is the answer to the field with that slug (get-form lists each field's slug).
2. Run sureforms/list-forms with status any, per_page 100 and search set to the form's name. If a form with this name exists, show it and ask whether to build a new one anyway.
3. Plan the fields: for each, the type (create-form's input schema from step 1 lists them), the label, whether it is required, and the choices. A dropdown takes its choices as fieldOptions [{"label": "..."}]; a multi-choice field takes [{"optionTitle": "..."}] with singleSelection true for pick one or false for pick several; a checkbox field is a single tick box. If no date field is in that list, the site runs SureForms' free version: use an input field with a placeholder such as 'e.g. 4 Nov 2026' for a date, and tell me. Use no payment or inline-button fields unless I ask. Show me the plan as a table and wait for my yes.
4. On my yes, run sureforms/create-form with formTitle, formStatus draft, formFields, and formMetaData {"general": {"submitText": "BUTTON_TEXT"}, "formConfirmation": {"confirmationMessage": "THANK_YOU_MESSAGE"}, "emailNotification": {"emailTo": "MY_EMAIL", "emailCc": "", "emailBcc": "", "subject": "New entry: {form_title}"}}. Without emailCc and emailBcc set to empty, SureForms also copies every entry to the site admin email. If the form has an email field, run sureforms/get-form with the new form_id, note the slug SureForms gave the email field (it exists only once the form is saved), and run sureforms/update-form with form_id and formMetaData {"emailNotification": {"emailReplyTo": "{form:EMAIL_SLUG}"}} so I can reply straight to the person.
5. Give me the edit_url from step 4 to check the form in the SureForms editor. A draft form shows nowhere else, not even on a page. Wait for my yes or my changes; to change fields, send sureforms/update-form with the form id and the whole formFields list again (it replaces every field), and show me the plan first. Then check the email field's slug again with sureforms/get-form (slugs are rebuilt from the labels) and if it changed, set emailReplyTo again as in step 4.
6. On my yes, run sureforms/update-form with the form id and status publish. Run sureforms/get-shortcode with the form id and create a draft page with rest_api_write POST /wp/v2/pages: title PAGE_TITLE, status draft, and as content the block_markup it returned. Don't publish the page.
7. Tell me the form id, where its email goes and the draft page's preview link. Ask me to preview the page while logged in, publish it, then fill the form in once with my own email address and check my inbox and spam folder. To take the form down later, unpublish the page or set the form back to draft with sureforms/update-form.
Already connected?

Skip pasting the full prompt. Drop this into your AI on a site that already has WPVibe:

Run the “Build a Form from a Description with SureForms and AI” recipe from the WPVibe cookbook on my connected site.

You know what the form should ask. Building it still means adding fields one at a time, marking the required ones, writing the button and the message people see after sending, and pointing the email at the right inbox. SureForms sends new entries to the site admin email by default, which is often not the inbox you read.

Describe the form and the AI builds it in SureForms as a draft, with the email going to the address you name and replies going straight to the person who filled it in. You check it in the SureForms editor. On your yes it publishes the form and puts it on a draft page, so the form is on no public page until you publish that one.

Say who the form is for and what it must ask. SureForms’ free version has no date field, so a date becomes a text field with an example, and the AI tells you when it does that. Preview the page, fill the form in once yourself, then publish the page.

Outcome

A published SureForms form that emails you each entry, on a draft page ready for you to publish.