Opens in a new tabSkip to content
Agent LighthouseAgent Lighthouse

    Searches the text of every published page. The evidence sources themselves are not in this index — search all of them on the trusted sources page.

    GitHub ↗
    Browse checks and page contents
    agent-interfaces/webmcp-declarative-forms

    WebMCP declarative form tools

    What it checks

    WebMCP’s Declarative API lets you expose HTML forms as agent-callable tools by adding toolname and tooldescription attributes. AI agents can then discover and invoke these forms without JavaScript, using standard HTML semantics.

    Why it matters

    A form annotated with the declarative WebMCP attributes is registered by the browser as an agent-callable tool. An agent that wants to act on the page therefore gets a described tool with typed parameters, instead of having to infer a form’s purpose from its markup.

    Evidence

    declarative WebMCP attributes read by the browser

    • Chrome’s declarative-API page (published 2026-05-18) documents toolname and tooldescription on <form>, toolparamdescription on individual form elements, and toolautosubmitdeveloper.chrome.com/…/declarative-api (verified 2026-08-24)
    • The same page states the consuming behaviour directly: “The browser interprets this form as a tool”, and “When an agent calls toolname, the browser brings the form into focus and populates its field.”
    • The attribute set is the W3C Web Machine Learning Community Group’s, so the browser is implementing a group specification rather than a private vendor extension — webmachinelearning.github.io/webmcp (verified 2026-08-21)

    Limits

    The page carries an origin-trial badge and states that “WebMCP is under active discussion and subject to change in the future”, so both the attribute names and the registration behaviour can move. The declarative path is also the younger of the two: the imperative navigator.modelContext registration is what Lighthouse reports on, and this project’s own agent-interfaces/webmcp-registered-tools covers it at experimental precisely because a scanner with no JavaScript runtime cannot observe it. No adoption measurement exists for the declarative attributes on the public web. A site that implements WebMCP imperatively will carry none of them, and still be fully agent-callable. That is why a page with no form at all is not applicable here, rather than a failure.

    How it scores

    Chrome documents its own browser reading the attributes, which is documented consumer behaviour. But the API is an origin trial rather than a shipped one, and Chrome says it is “under active discussion and subject to change”. That is a draft standard with adoption, not a ratified one.

    Sources