This feels inverted and impractical in so many ways.<p>On one hand the claims are being made that AI is smart enough to replace software engineers and on other hand the website owners are beings asked to provide information in a certain format to the Agents so they can do their job better. Remember this is the same information that every regular user is able to use.<p>Secondly if you maintain two versions of information, one for regular humans and one for agents, its just a matter of time before they start to diverge from each other. One can pick up and compare the native app and Browser application for any company, 99% chances are they are not exactly the same.
I agree it's not a good idea, but:<p>> Remember this is the same information that every regular user is able to use.<p>This is not true. The users don't see the HTML, CSS and JavaScript. If they would, even if they're frontend devs, they'll be just as confused as the agents.<p>The user see images, and while you can make the agents see the image as well, unlike humans the effective agents we have today work with text, not images.
I think it's an efficiency thing. And at scale, efficiency matters. Whether this is the right implementation idk, but when I see Claude Code use Chrome via MCP, it's incredible to see just how inefficient the status quo is.
This is not a smart reply. Structure is always good otherwise why even create unit tests and compilers?
This is interesting, but instead of tying it to a specific JS library and all I’d prefer putting a list of options and their arguments into the .well-known tree.<p><a href="https://en.wikipedia.org/wiki/Well-known_URI" rel="nofollow">https://en.wikipedia.org/wiki/Well-known_URI</a><p>That way any user agent can get the data and make a call directly to the right endpoint with the right data. It could be an AI agent, a web browser, a specialized tool, a cURL command, or whatever.<p><a href="https://agenticresourcediscovery.org/how_to_publish/" rel="nofollow">https://agenticresourcediscovery.org/how_to_publish/</a> and the caldav stuff might serve as decent examples of where to start.
IMO this relates to who the end consumer of websites ends up being. All the arguments for just using MCP ignore the reasoning that agents need based on contextual clues (e.g. if you're booking seats at a movie theaters, you'd want to choose based on personal preferences and taking the movie itself into account) and treat the website itself as the first class product.<p>Developing MCPs only works if the capabilities for the site don't involve any iterative reasoning and acting for the user, which things like travel and dining do :p
we already have something better than WebMCP - i.e general APIs.<p>more impactful work has to be done on the native legacy desktop app scene. that's where most of major companies big or small do their work.<p>agents automating websites is kinda easy. automating legacy desktop apps that's another issue though there's RPA.
> Here’s a book_table tool. It takes a date, a time, and a party size. Call it.<p>Why not offer a simple form that humans and AI can use alike?<p><pre><code> <form action=book_table>
<input type=date name=date>
<input type=time name=time>
<input type=number name=party_size>
<input type=submit value="Book table">
</form></code></pre>
That’s part of webmcp :)
[flagged]
[flagged]
I think pinning WebMCP to the browser was the wrong choice. To list or call tools, you have to have access to the browser environment. "Declarative" WebMCP allows you to read the HTML, but to call tools you still need the JS execution env.<p>This limits the utility of WebMCP to in-browser agents. In practice, what's the use case? Computer Use can work, but at that point you can circumvent WebMCP entirely.<p>IMO the better option would be to unify MCP with a standard protocol, like HTTP. Right now, you have to rely on the MCP registry for discovering MCP servers, but wouldn't it make more sense to have this natively in HTTP?
This is going to sound incredibly silly but I have every HTMX component expose an AI summary with actions possible and then I have a small copy to AI button on the page which creates a new short-lived access token and copies into a prompt the token, and all the components as text.<p>When I give this even to relatively small-model agents, they use this initial seed to browse the site and do things very well.<p>The initial prompt suffices. After that most agents just use the HTML to navigate very well. I suppose I could have that description in an aria label if I wanted but it’s the same.
It took me some time to wrap my head around why WebMCP even exists. I was thinking that regular MCP + SSE/Websockets could cover almost all of the uses cases.<p>One interesting use case for WebMCP is cross-site activities that a browser agent might take. If the data-flow in question involves a heterogeneous set of websites.<p>This feels like a lifeline for incumbent web SaaS more than anything. Future apps can be architected in ways that do not require WebMCP but massive apps like Salesforce or Workday can't really abandon the decades of accidental business logic embedded in the Web UI flows that make up their project. While those same flows <i>could</i> be data-driven, slapping a WebMCP facade on top of them is just more practical. Instead of forcing incumbents to create an AI-native MCP where they are first class citizens, it is easier to let them sprinkle browser affordances throughout their human-centric front-end and offload the work to the agent.<p>But for my own part, since I am developing from scratch without that legacy need, I actually think relying on WebMCP might be an anti-pattern. It might be useful for the cross-site use case and it might be useful for reducing latency for purely UI activities (e.g. "filter this list" where all the data is already on the client), but in general my feeling is it is better to have a robust MCP interface for agents.
Why would I want this client/browser side though?<p>The only usecase I can image is if you have some terribly complicated legacy frontend and need to work around the logic built there. Otherwise just make an AI chat window or MCP which operates server side and let data sync back to UI from there.
Nice write-up. Btw, Codex and ChatGPT desktop support WebMCP in their integrated browser as of yesterday.<p>One way to think about WebMCP, as the article notes, is as web accessibility for agents. But since it functionally allows developers to expose any function on their website to an agent via RPC, the more interesting use cases are the ones that use the browser as a sandboxed execution environment.<p><a href="https://duckboard-webmcp.alexmnahas.workers.dev/" rel="nofollow">https://duckboard-webmcp.alexmnahas.workers.dev/</a> is an example of this, and I would love to see more.<p>Maybe instead of skills that require users to download arbitrary binaries to their computers, the skills could instead point to a domain that comes preloaded with that binary in Wasm and lets the agent interact with it over WebMCP?
"Picture an AI agent trying to book you a table on a restaurant’s website. "<p>Are we there already? asking because I genuinely cannot find an agent that will do this end to end for me.
This is from 2018<p><a href="https://www.youtube.com/watch?v=D5VN56jQMWM" rel="nofollow">https://www.youtube.com/watch?v=D5VN56jQMWM</a>
Use Claude Code with Chrome MCP / Claude in Chrome and it'll happily do it for you, 100%
I hope this works out. It seems helpful but we can’t even get a lot of web sites to format their user/password fields or address fields to work correctly with password managers and autofill. This has to be more complicated than that.
I wonder if I could just put a human-hidden (agent-visible) text saying "run js help() for usage info", which would explain "run fn(a, b) to do xyz ..." and essentially expose frontend functionality directly as a JS API. Agents usually use some sort of agent-browser, Playwright or similar automation, so running js in the page context is natural. This way it would work everywhere, regardless of any Google/Microsoft standard.
I don't see why WebMCP is a big deal, rather invest in creating a better MCP or CLI that can do what your website can
Explainer i.e. proposal: <a href="https://github.com/webmachinelearning/webmcp/blob/main/declarative-api-explainer.md" rel="nofollow">https://github.com/webmachinelearning/webmcp/blob/main/decla...</a>
WebMCP is indeed pretty cool. I built a prototype of a MCP tiling window manager that lets you compose websites into workspaces for agents, it was pretty neat seeing agents drive it.
This article is way too long and has a terrible signal to noise ratio though.
>A real one, worked all the way through<p>i just can't with these ai-written blog posts. if i wanted to learn WebMCP through chatgpt i would have just asked chatgpt
Hey are we re inventing Tim berners Lee solid protocol
It’s a nice idea but I don’t know if it will help.<p>The history of the web is one big loop of:<p>1. Nifty feature that’s suitable for a wide variety of user agents, from GUI browsers to screen readers to text interfaces to automation.<p>2. Approximately 0.1% of web sites adopt it properly. The rest hack up something that mostly works for most of their visitors while ignoring any use case outside of a human driving a mainstream browser.<p>3. Automation works around it by pretending to be a human driving a mainstream browser.<p>4. Other cases should be handled better, so let’s add a nifty new feature that’s suitable for a wide range of things. Goto 1.<p>See: forms, CSS, “semantic web.” Even REST APIs mostly exist as monstrous piles of client-tied functionality that can’t be reasonably used from a client other than the company’s official apps and web site.
The thing I'm far more interested in than WebMCP is who are the supposed 50 people that have opened this slop and decided it was worthy of their upvote.
I wasn't particularly interested in WebMCP until I had a conversation with a screenreader-using accessibility engineer who pointed out that WebMCP is an incredible accessibility technology disguised as an AI thing.<p>Imagine if we can trick a whole bunch of companies into making their booking systems API accessible under the pretense of "enabling agents"!
But it is not a pretense or disguise though if that's what they are doing right? Like its clearly an AI thing and the other benefits are side effects. But not everything is inception.
Imagine if we can trick software engineers into tolerating AI by marketing it as accessibility!<p>Which has happened countless times here already.
"Sponsored by Google"
[flagged]
Jesus fucking Christ you're on a restaurant booking page looking at a date picker and you need an agent to fill it out for you?
This isn't for when you are looking at the restaurant booking page, it's for when your agent is on that page. Personally I don't need an agent to help me with this specific problem, but I could see it being a real boon for people with accessibility needs.<p>Sometimes it helps to not think of why we should reject things but instead to think of why someone might accept them.
I think the notion that the solution to accessibility is to place a unreliable agent in-between is ludicrous.<p>If a page has good accessibility an agent should have no problem to interact with it. If WebMCP becomes an acceptable solution for accessibility then the only way people who need accessibility will be able to interact with services is via agents.
It does mention something about "using the page you're already logged into" so I presumed that it meant the browser you had open in front of you
Absolutely. I am always complaining that natural language creation of calendar events is not a thing. “Meeting next Thursday at 9 am at the starbucks near me”
"Hey AI, find me a X cuisine restaurant around Y location that has availability at 7pm tonight" .. "Cool, book Z"<p>Seems obvious why an API would be helpful on that page instead of having the AI attempt to navigate the page, open up a date picker and click all around..<p>And as others have said, if you are disabled in some way being able to just speak and get something like this done seems pretty life changing.<p>But you go ahead and be mad about an api...
If I have an injury or I am disabled, then yes, an agent helping me fill out forms might be a life-changing improvement.
They couldn't get a biometric voice sample and unique identifier without this AI crap. And people here cheer it on.