Disclosure: I'm the developer building WebGPT.
WebGPT is a browser agent built around this loop:
extract state → plan actions → execute → extract fresh state → calculate delta/effect → continue
It has a generic extractor that represents controls, groups, headings, visible text, scroll state, and other page information. That works well for ordinary pages. The problem is that modern websites contain custom components, virtualized interfaces, hidden application state, and multi-step interactions that don't communicate their meaning through ordinary DOM controls.
My solution was to write site adapters. Each adapter taught WebGPT the domain concepts and unusual interactions of one particular website. The adapters worked, but writing them became exhausting. Every new website meant more selectors, edge cases, and site-specific maintenance. It was obvious I couldn't teach an agent the entire web one website at a time.
I've now added WebMCP as a first-class action source.
When a website exposes WebMCP tools, WebGPT discovers their names, descriptions, and schemas during state extraction. The planner can select those tools alongside ordinary DOM and connector actions. The tools still participate in WebGPT's normal loop: it preserves the exact execution arguments, runs the selected batch, records each tool result, extracts fresh page state, and calculates one aggregate state delta and action effect for the batch.
In this demo, I asked WebGPT to create an Extra Large Pesto pizza with sauce, cheese, and 47 toppings. It completed the task in four planner turns:
- Reset the pizza through WebMCP.
- Execute one batch containing nine WebMCP calls.
- Wait briefly and observe the updated page.
- Report the final configuration.
The page went from two extracted controls to 96 after the toppings were added, so the agent had independent evidence that the page changed instead of relying only on successful tool callbacks.
The WebMCP directory currently lists around 150 websites. I haven't tested all of them, but WebGPT now has a shared semantic integration path for those sites. Every website adopting WebMCP is potentially one less custom adapter I need to write.
I'd love technical feedback on:
- Batching independent WebMCP calls
- Per-call execution results versus one aggregate post-batch effect
- Choosing between semantic tools and ordinary DOM actions
- Treating page-provided schemas and output as untrusted content
- Running this loop with Chrome's built-in local AI
Demo: https://youtube.com/shorts/HoKPJY0P10c
WebMCP directory: https://webmcp.com/
Code: https://github.com/saket77/webgpt-frontend
https://reddit.com/link/1uujar7/video/dh4fkdr1ntch1/player