Skip to main content
Glama

Site Doctor — WordPress diagnosis

discover_forms

Queue form discovery + render monitoring. Two independent passes: (1) it asks the site which form plugins are ACTIVE and reads each plugin's own form list from the database (Gravity, Contact Form 7, WPForms, Fluent, Forminator, Ninja, Amelia) — this is the authoritative inventory and does not depend on any page rendering; (2) it renders pages in a headless browser to see which of those forms actually appear, plus anything the database cannot list (Elementor, Divi, raw HTML, embedded HubSpot/Typeform/etc.), with fields, CAPTCHA and render status. Results in get_site (forms) carry three distinct states: "ok" (seen rendering), "broken" (rendered before, absent now — this raises an alert), and "unknown" (the plugin lists it as active but no page we rendered showed it — it may live on a page we did not check, or may never have been published). Non-destructive (no submits).

Input Schema

NameRequiredDescriptionDefault
site_idYesSite id from list_sites

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.2/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the full burden and does so well: it discloses the two-pass architecture, that the DB pass is authoritative and render-independent, that rendering is headless, that it is non-destructive (no submits), and that 'broken' triggers an alert. It also explains the three result states in get_site, which is exactly the behavioral context an agent needs.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Despite being fairly long, it is front-loaded with the purpose and then structured as (1)/(2) passes plus result states; nearly every clause carries information. Slightly dense but not wasteful.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a single-parameter tool with no annotations and no output schema, the description goes further than required by explaining the return states in get_site and the alert behavior for 'broken' forms. An agent has enough to invoke it and interpret results correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% and there is only one parameter (site_id, documented as coming from list_sites). The description adds no further parameter semantics, so the baseline of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb+resource ('Queue form discovery + render monitoring') and then defines the two passes precisely, including which plugin form lists come from the DB versus headless rendering. This differentiates it clearly from generic siblings like scan_site or probe, which are not form-specific.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description conveys what the tool does and implies it is the form-inventory path, but it never says when to choose it over scan_site, external_scan, or probe, nor any prerequisites or exclusions. Usage is inferred rather than stated.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.