Module — 3 operations
Read only: which forms the site holds, each form’s fields and embed shortcode, and its most recent entries.
Needs: Gravity Forms, WPForms, Contact Form 7, Fluent Forms, or Formidable Forms. SiteHelm reports what it found rather than requiring it — an absent integration is a named refusal, not a broken call.
Forms are read, never written. An agent can tell you what a form asks and what people answered; it cannot change the form or the entries.
form-entries-list asks for manage_options where the other two ask for edit_posts, because entries carry whatever a visitor typed into them.
A plugin that stores no entries says so plainly, rather than returning an empty list that reads like a quiet week.
A read still asks WordPress for a capability against the object. There is no anonymous read anywhere in the surface.
content-read
Lists every form the site's form plugin holds, with each form's embed shortcode
needs edit_posts
content-read
Reads one form's title, embed shortcode, and the fields it declares — name, type, required
needs edit_posts
content-read
Reads one form's most recent entries, newest first — or says plainly that the plugin stores none
needs manage_options