Bulk Update Submissions 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 →Bulk Update Submissions
DestructiveApply one action — read, unread, trashed, favorite, unfavorite, or permanent delete — to up to 200 entries at once.
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
Applies a single action to a batch of up to 200 entry ids at once: read, unread, trashed, favorite, unfavorite, or delete_permanently (spam is intentionally excluded — use update-submission-status per entry for that). Entries outside the caller's form access are silently skipped and reported separately rather than causing the whole call to fail. The confirm_token binds not just which ids are in the batch but each entry's current status and favorite state, so a preview cannot be replayed after the underlying entries have changed. Non-destructive actions run as one atomic transaction across every affected form; delete_permanently instead processes each form independently and reports per-form completed/failed outcomes, since filesystem side effects can't be rolled back. Requires dry_run:true first to preview the in-scope count and skipped ids and obtain a confirm_token, then a repeat call with the same entry_ids plus confirm_token to execute.
See it in action
You ask your AI assistant
"Mark all of these 15 entries as read: 201, 202, 203... and so on."
Inputs
| Name | Type | Required | Description |
|---|---|---|---|
| entry_ids | array | Yes | Entry ids to act on (max 200). |
| action | string | Yes | read, unread, trashed, favorite, unfavorite, or delete_permanently. |
| 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: the action, the in-scope entry count and ids, any skipped (out-of-scope) ids, and a per-form count breakdown, plus a confirm_token. On execute: the action and an updated (or deleted) count and the skipped ids; delete_permanently additionally returns per-form completed and failed breakdowns.
Permission
Requires the fluentform_manage_entries capability.
More Fluent Forms abilities
Add Submission Note
Attach an internal staff note to one entry; not visible to the submitter.
Create Form
Create a new form from a title and an ordered list of fields, or a basic contact form by default.
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.