Documentation
Agent-ready forms (WebMCP)
WebMCP is new markup, previewing in Chrome, that tells an AI agent what a form does and what each field means, so it fills the form correctly instead of guessing at the page. Add one script tag and WebForms does it for your form, on every plan.
Last updated
Setting it up
Add the script after your form. That is the whole setup:
<form action="https://send.webforms.to/your-key" method="POST"> <input name="name" required> <input type="email" name="email" required> <textarea name="message"></textarea> <button>Send</button> </form> <script src="https://send.webforms.to/webforms.js" defer></script>
The script reads your form's schema and adds the WebMCP attributes, so the page becomes:
<form action="https://send.webforms.to/your-key" method="POST"
toolname="submit_contact_us"
tooldescription="Ask the Acme team a question">
<input type="email" name="email" required
toolparamdescription="Where we reply">The tool name comes from the form's name, the description from its description in the dashboard, and each field's description from the schema. Attributes already in your HTML are never overwritten. To leave a form alone, add data-webforms-agent="off" to it.
When an agent submits
The script sends the form for the agent and returns the JSON result (ok, the submission id, or the fields to fix) instead of a thank-you page the agent would have to read. The person using the agent still confirms the submission, as Chrome requires. The submission is tagged browser agent, so you can route it differently.
If your page submits the form with its own JavaScript, handle event.agentInvoked there, or turn the script's handling off with the attribute above, so the form is not sent twice.
What else the script does
It marks submissions from automated browsers for origin tagging, and keeps unfinished forms when that setting is on. Browsers without WebMCP ignore the extra attributes, so nothing changes for people.
Get your endpoint
Free for 300 submissions a month. No card required.
Start free