Contact Form 7 ships a configuration validator — the thing behind the warning triangles in its admin list. It catches an unsafe email sender, a mail tag in a place it cannot be used, an attachment path that does not exist.
contact-form-7/validate-form-config runs it against one form and returns the findings grouped by the property at fault, so you know whether to look at the template, the mail or the settings.
At a glance
| Ability | contact-form-7/validate-form-config |
| Toolset | Contact Form 7 — toolset/contact-form-7 |
| Group | Contact Form 7 › Settings & Validation |
| Requires | Contact Form 7, active on the site |
| Capability | manage_options, plus read_contact_forms |
| Safety | Read-only — changes nothing |
| Repeatable | Idempotent — running it twice leaves the same result |
| Ships in | AcrossAI Abilities Manager 0.0.34 and later |
How it works
These are Contact Form 7’s own rules, not this suite’s. That means the findings match what a site owner would see in the WordPress admin, which makes them easy to hand over.
Run it after editing a form. A save succeeding tells you the data was stored; this tells you whether the form will behave.
It is not the same check as contact-form-7/validate-mail-tags. This one validates structure and configuration; that one checks mail tags against the fields that actually exist. A form can pass this and still have a notification losing a value.
Input
| Name | Type | Required | What it is |
|---|---|---|---|
form_id | integer | Yes | Form post ID, as returned by contact-form-7/list-forms. |
What comes back
| Name | Type | What it is |
|---|---|---|
form_id | integer | The form that was checked. |
valid | boolean | True when the validator found nothing. |
errors | array | The findings, grouped by the property at fault. |
count | integer | How many findings there were. |
success | boolean | Whether the call completed. |
message | string | A one-line summary of what happened, suitable for showing a human. |
error_code | string | Present only on failure — a stable machine-readable reason, such as a missing field, a wrong field type or an unmet confirmation. |
Example
Ask your assistant:
I just edited form 42 — does Contact Form 7 think it is configured correctly?
It resolves to one call:
{
"ability": "contact-form-7/validate-form-config",
"parameters": {
"form_id": 42
}
}Worth knowing
- Read-only. Run it after every edit.
- These findings are the same ones the WordPress admin shows, so they are safe to quote to a site owner.
- Pair it with
contact-form-7/validate-mail-tags. Between them they cover both ways a Contact Form 7 form fails quietly.
Related abilities
- Validate Contact Form Mail Tags — the other silent-failure check
- List Contact Forms — error counts across every form
- Get Contact Form — read the properties the findings point at
Get the plugins:
AcrossAI Abilities Manager · AcrossAI MCP Manager
Browse the rest: Every ability, by category