Live data from Hacker News

MCP-B: A Protocol for AI Browser Automation

mcp-b.ai

11–20 of 200 posts

Re: MCP-B: A Protocol for AI Browser Automation

#11
This is an interesting take since web developers could add mcp tools into their apps rather than having browser agents having to figure out how to perform actions manually.

Is the extension itself open source? Or only the extension-tools?

In theory I should be able to write a chrome extension for any website to expose my own custom tools on that site right (with some reverse engineering of their APIs I assume)?

Re: MCP-B: A Protocol for AI Browser Automation

#12

Earlier quoted context omitted.

Similar but also very different. Playwright and Selenium are browser automation frameworks. There is a Playwright-MCP server which let's your agent use Playwright for browser automation. MCP-B is a different approach. Website owners create MCP servers `inside` their websites, and MCP-B clients are either injected by browser extensions or included in the websites JS. Instead of visual parsing like Playwright, you get…

What differentiates this from something like data-test-id attributes?

data-test-id attributes and other attributes are hardcoded and need to be know by the automator at run time. MCP-B clients request what they can call at injection time and the server responds with standard MCP tools. (functions LLM's can call with context for how to call them)

Re: MCP-B: A Protocol for AI Browser Automation

#13
post #11

This is an interesting take since web developers could add mcp tools into their apps rather than having browser agents having to figure out how to perform actions manually. Is the extension itself open source? Or only the extension-tools? In theory I should be able to write a chrome extension for any website to expose my own custom tools on that site right (with some reverse engineering of their APIs I assume)?

The extension should be open source. I had it as a private submodule until today. Let me figure out my it's not showing up and get back to you.

The extension itself is a MCP server which can be connected to by other extension over cross extension messaging. Since the extension is part of the protocol, I'd like for the community to pull from the same important parts of the extension (MCPHub, content script) so they are consistent across extension implementations.

Re: MCP-B: A Protocol for AI Browser Automation

#14

Would it be possible to do this with any arbitrary website since we can execute JS client side?

Yup! You just declare a standard MCP server and attach a TabServerTransport to it. Any TabClientTransport in the same Tab will be able to connect to it. The examples focus mostly on extensions injecting clients at website load time, but you can ship a client with your server javascript. That being said, if the client and server live in the the same script I recommend just using the InMemoryTransports from the officia…

Wouldn't sites be able to detect presence of scripts injected by your extension (to, say, refuse you services since site owner decided they would like their site to be used only by humans, not AI agents)?

Re: MCP-B: A Protocol for AI Browser Automation

#16
hmm, I have an MCP route, that fetches the page in a browser, returns and lets the LLM inject javascript onto the page to return whatever structured output it desires..Or whatever (kinda scarily). How is this different?

--Shoutout to Go-Rod https://pkg.go.dev/github.com/go-rod/rod@v0.116.2#Page

Re: MCP-B: A Protocol for AI Browser Automation

#17
This puts the burden on the website owner. If I go through the trouble of creating and publishing an MCP server for my website, I assume that through some directory or method I'll be able to communicate that with consumers (browsers & other clients). It would be much more valuable for website owners if you can automate the MCP creation & maintenance.

Re: MCP-B: A Protocol for AI Browser Automation

#19
post #11

This is an interesting take since web developers could add mcp tools into their apps rather than having browser agents having to figure out how to perform actions manually. Is the extension itself open source? Or only the extension-tools? In theory I should be able to write a chrome extension for any website to expose my own custom tools on that site right (with some reverse engineering of their APIs I assume)?

Ok it's open source now
Post reply on HN