audited Nov 8, 2026in 11s
53/ 100100% of the applicable check weight evaluated

4 tools registered. Strongest in tool quality, weakest in tool selection.

Shared experience37
Tool selection12
Tool quality100
Trust72
https://vmprpgpv.elementor.cloud
Captured view of https://vmprpgpv.elementor.cloud

Tools

4 read, 0 write
Loading map
search_site_content: warning

search_site_content

Search the public pages and posts of this site. Returns structured results with id, title, url, publish date and excerpt, so there is no need to parse HTML.Answers a question. Declared read only.
pagehttps://vmprpgpv.elementor.cloud/
implementation
viaimperative
entry pointdocument
registered after244ms
executepresent
api surface
queryrequired
post_typeoptional
limitoptional
annotations
read onlytrue
untrusted contentnot declared
titlenot declared
1 finding
warningInjection surface
weight 3
3 of 4 tools carry instruction-shaped text in their own metadata: search_site_content Description instructs agent to not parse HTML.
search_site_content: Description instructs agent to not parse HTML; read_page_content: Description instructs agent to use a specific tool's output; query_business_info: Description instructs agent to not infer information
fix
{
  name: "search_site_content",
  // Metadata DESCRIBES the tool - it never addresses the agent reading it.
  // Rewrite any name, description, title, or schema field description that
  // instructs the agent (which tool to prefer, what to output, rules to
  // ignore) so it states what the tool does and what it returns instead.
  description: "Searches the catalog and returns matching items with prices."
}
tool json
{
  "name": "search_site_content",
  "description": "Search the public pages and posts of this site. Returns structured results with id, title, url, publish date and excerpt, so there is no need to parse HTML.",
  "inputSchema": {
    "type": "object",
    "properties": {
      "query": {
        "type": "string",
        "description": "Words to look for in titles and content.",
        "minLength": 1,
        "maxLength": 200
      },
      "post_type": {
        "type": "string",
        "description": "Optional post type slug to limit the search to, for example \"post\" or \"page\"."
      },
      "limit": {
        "type": "integer",
        "description": "Maximum number of results.",
        "minimum": 1,
        "maximum": 20,
        "default": 10
      }
    },
    "required": [
      "query"
    ]
  },
  "annotations": {
    "readOnlyHint": true
  }
}
Showing search_site_content

Findings

Shared experience

37 / 100 · weight 30
not applicableVisible effect
weight 6
Not invoked on this run: this audit did not call any tool. Scheduled re-audits only read the registry; a live audit from the report page calls the tools that declare readOnlyHint: true and not consequentialHint: true.
warningPage experience
weight 16
3 of 4 page-experience marks came back short: usable The page is blank except for a single word, indicating it is not a working interface..
usable: poor; clarity: poor; readability: weak
warningHuman parity
weight 8
The page the person sees came back short of the agent surface (3 of 4 page-experience marks came back short: usable The page is blank except for a single word, indicating it is not...), so the two are not sharing an equal experience.
fix
// Make the tool's effect visible on the page the person is looking at:
// update the same UI your existing human flow uses when your_tool_name runs,
// so the person co-browsing sees what the agent just did.
execute: async (args, { signal }) => {
  const result = await performAction(args, signal);
  renderResultInPage(result); // the human-visible half of the same action
  return result;
}

Tool selection

12 / 100 · weight 25
not applicableInvoke success rate
weight 6
Not invoked on this run: this audit did not call any tool. Scheduled re-audits only read the registry; a live audit from the report page calls the tools that declare readOnlyHint: true and not consequentialHint: true.
failTool selection
weight 12
An agent chose an existing tool and built a schema-valid call that held up on 0 of 3 canonical intents; on "Open the document I was working on most recently." no tool on the page served it. Nothing was executed, so this verifies selection, not outcomes.
failCoverage vs. site type
weight 7
The tool set covers 1 of the 3 things an agent needs on a editor site; it cannot edit or write content or save, publish, or share the result.

Tool quality

100 / 100 · weight 25
passRegistration timing
weight 1
Every measured tool registered within 244ms of navigation.
toolread_page_content
passCanonical entry point
weight 3
All 4 tools register on the canonical document.modelContext entry point.
passSchema validity
weight 4
All 4 declared input schemas are structurally valid object schemas.
passSchema quality
weight 4
All 2 of 4 tool schemas that declare parameters describe them (the other 2 declare no parameters), and every description stays within Chrome's size guidance.
passNaming quality
weight 2
All 4 tool names are consistent, verb-led, and within Chrome's size guidance.
passStub detection
weight 4
All 4 tools declare an execute handler.
passRegistration errors
weight 2
No tool registration threw during the capture.
passDescription quality
weight 5
All 4 rated tool descriptions say what the tool does, when to use it, and what it returns.

Trust

72 / 100 · weight 20
passAnnotations present
weight 4
All 4 read-shaped tools declare readOnlyHint: true - the one declared claim that lets an agent treat a call as safe to make without asking.
passAnnotation mismatch
weight 4
No tool claims to be read-only while its own name or description says it writes (4 declared hints checked).
not applicableUntrusted content hint
weight 3
No tool's contract suggests it returns text written by somebody other than the site, so there is nothing to flag as untrusted.
not applicableConsequential hint
weight 3
No tool name reads like a consequential action (a purchase, a booking, a payment, a transfer, a deletion), so there is no consequentialHint to expect.
not applicableHint vs. observed
weight 3
Not invoked on this run: this audit did not call any tool. Scheduled re-audits only read the registry; a live audit from the report page calls the tools that declare readOnlyHint: true and not consequentialHint: true.
warningInjection surface
weight 3
3 of 4 tools carry instruction-shaped text in their own metadata: search_site_content Description instructs agent to not parse HTML.
toolsearch_site_content
search_site_content: Description instructs agent to not parse HTML; read_page_content: Description instructs agent to use a specific tool's output; query_business_info: Description instructs agent to not infer information
fix
{
  name: "search_site_content",
  // Metadata DESCRIBES the tool - it never addresses the agent reading it.
  // Rewrite any name, description, title, or schema field description that
  // instructs the agent (which tool to prefer, what to output, rules to
  // ignore) so it states what the tool does and what it returns instead.
  description: "Searches the catalog and returns matching items with prices."
}

Tool selection

0% across 3 intents
Open the document I was working on most recently.missed
choseno toolexpected document openkind not applicable
No tool was picked for this intent.
arguments
{}
Add a short summary paragraph at the top.missed
choseno toolexpected content editkind not applicable
No tool was picked for this intent.
arguments
{}
Save it and give me a link I can share.missed
choseno toolexpected save or sharekind not applicable
No tool was picked for this intent.
arguments
{}
model: gemini-2.5-flash

Add the tools this site is missing

Our scanner reads your website and suggests the right WebMCP tools for it.
Reads the site's public pages; takes a few seconds.
The open source webmcp plugin teaches your coding agent to audit a site, implement tools on document.modelContext, and verify them in a real browser. npx @ora-ai/webmcp-verify runs the verification on its own. No signup, no hosted service.
how this was captured
observed via
capture shim (Chromium 151.0.7922.34)
chrome
151.0.7922.34
capture shim
v3
spec snapshot
2026-11-04
mode
fast
pages
1 - entry page only
tools
4
invoked
not invoked; a live audit calls them
run time
11s
finished
Nov 8, 2026
Checked the way in-browser agents discover tools: the top-level document's modelContext registry, read after the page settles.