Create Form is a WordPress ability from Fluent Forms — usable via Easy MCP AI, which connects Claude, ChatGPT, and any AI assistant to your site.
Install Free Plugin →Create Form
WriteCreate a new form from a title and an ordered list of fields, or a basic contact form by default.
Needs the Fluent Forms MCP server switched on in FluentForm → Settings → MCP, and WordPress 6.9+ so wp_register_ability() exists (abilities are only registered when the function is present). Reaching the server also requires a logged-in WordPress user holding at least one FluentForm capability. Each ability additionally checks a specific FluentForm capability (e.g. fluentform_dashboard_access, fluentform_forms_manager, fluentform_entries_viewer, fluentform_manage_entries, fluentform_view_payments, fluentform_settings_manager) via the plugin's own Acl system, and every write ability requires a two-step dry_run → confirm_token round-trip through WriteGuard before anything is persisted. Note (from source comments): a WordPress role granted FluentForm access via the Role Manager passes every per-ability capability check, including delete-submission and bulk delete_permanently — the real boundary for such a user is 'has FluentForm access, restricted to their form scope', not per-tool separation; only individually-assigned 'specific forms' managers are gated the way each ability's declared capability implies.
What it does
Creates a new FluentForm from a title and an optional ordered list of fields, each with a type (text, email, textarea, name, phone, number, url, dropdown, checkbox, radio, date) and a label; omitting fields creates a basic name/email/message contact form. Field storage names are auto-assigned so repeated field types never collide. Like every write in this module, it is guarded: calling once with dry_run:true previews the exact title, conversational flag, and field list that would be created and returns a confirm_token bound to that spec (a different title or field list needs its own fresh dry run), and calling again with the same parameters plus confirm_token performs the create and returns the new form's id and admin editor URL.
See it in action
You ask your AI assistant
"Create a new contact form called "Support Request" with name, email, and message fields."
Inputs
| Name | Type | Required | Description |
|---|---|---|---|
| title | string | Yes | The form title. |
| fields | array | No | Fields to add, in order, each an object with type (required) and label. Omit for a basic contact form (name, email, message). |
| is_conversational | boolean | No | Create as a conversational form. Default false. |
| dry_run | boolean | No | Preview the change without writing; returns a confirm_token. |
| confirm_token | string | No | The token from the dry_run preview, required to execute. |
| idempotency_key | string | No | Optional; a retry with the same key will not act twice. |
Returns
On dry_run: a preview of the title, conversational flag, field count, and field list, plus a confirm_token. On execute: the new form's id, title, status, field count, and admin edit_url.
Permission
Requires the fluentform_forms_manager capability.
More Fluent Forms abilities
Add Submission Note
Attach an internal staff note to one entry; not visible to the submitter.
Bulk Update Submissions
Apply one action — read, unread, trashed, favorite, unfavorite, or permanent delete — to up to 200 entries at once.
Create or Update Email Notification
Create a new email notification or update an existing one — including its recipient.
Delete Submission
Permanently delete one entry and its uploaded files.
Get Form
Load one form's full detail, including its field schema, so the agent knows the exact field keys used in submissions.
Get Form Stats
Headline numbers for one form — entry counts by status, total views, and conversion rate.