Загрузка видео...
Не удалось загрузить видео
🎇 I made a small Chrome extension: a side panel that drives any site's WebMCP tools with Jev! When you type, on every keystroke it picks the relevant page's tool, fills in the arguments, and tells you how sure it is. Here it is grocery shopping:
74,327 просмотров • 3 дней назад •via X (Twitter)
Комментарии: 54

This demo shows not everything needs a chatbot. Jev can't write words, it's answers typed questions: pick one, yes or no, how much. Paired with WebMCP, though, turns out that's plenty. "got anything gluten free for under two dollars?" doesn't need a conversation, it just needed search_products.

A thing I didn't expect: it's actually a great way to evaluate your WebMCP tools. You can see how every tool gets a live probability. If two keep fighting over a sentence, your descriptions overlap. If an argument comes back shaky, the schema is vague. This could be useful for better tool descriptions.

This is also fast and cheap. I hammered at this thing this weekend, and I spent *checks notes* 32 cents. It's fast because nothing is screenshotting or guessing at the DOM. WebMCP is handing over a menu of named tools with described params, enums, etc. Then a small decision model answers "which tool, which args?" in a couple hundred ms. This is one request instead of larger conversation and scraping loops, pretty powerful!

Extension is undergoing review but you can play with it here, I've open sourced it: And here's the demo site if you want to play around:

I make demos like this so people will be inspired to try things out themselves, especially on new pathways that didn't exist before. If you do make stuff, I would love to see it! 🔥

This is extension is publised now! You can find it at: The demo shopping site is at if you want to try it out. (Don't forget to go to chrome://flags/#enable-webmcp-testing and flip the flag to enabled)

Showing the confidence per tool is the clever bit. It turns the agent from a black box into something you can actually debug, and it tells you when your tool descriptions are stepping on each other.

Exactly

Very cool, I'm loving WebMCP at the moment, and combined with Jev, my mind is racing!

It’s a powerful combination!

Genuinely great job

Ohhhh that's super useful!!! Love that!

Thanks James!

Oh wow! So cool!

Thanks! I'm really excited about this pairing! Thanks for all your hard work at TypeSafe AI Sasha

Live probabilities turn tool descriptions into an eval surface. Overlap becomes visible before it turns into a routing bug.

The bigger idea to pair Jev with tool calling is quite unique! Great work :)

Thanks Yashwin!

Wow that's really impressive!

Nice! Have you tried using a local Jev-like model? Eventually, one that can run in a browser? (Laya)

I started to this weekend! A lot of potential there. cc @etiennenoel

Adding a tool can break routing to tools you didn't touch. The regression test is whether the old queries still pick the right tools in the new catalog.

Doesn't JEV require a finite set of inputs? How can it fill the tool's params? 🤔

The WebMCP tools become the finite set of inputs

on every keystroke tho? thats gonna hammer the model and your battery like crazy 💀 curious if you debounce it or its raw fire-on-type

Not at all, it’s extremely efficient and cheap. But also, I intentionally built it this way for educational purposes- so that you can see what’s happening. You don’t have to build it this way. Exposing the model thinking is the point of the extension.

okay thanks for information

When tool selection happens on every keystroke instead of at call time, the model becomes the autocomplete engine, not the executor.

It’s still executing. Very quickly too ☺️

Genius

exposing confidence scores right at the interface level is huge for agentic loops. in headless pipelines we gate tool calls with strict thresholds—if confidence drops below 0.85, it aborts to a deterministic fallback instead of hallucinating arguments into the DOM.

💯

This is amazing. I'm certain WebMCP will only accelerate from here, and at @stripe / @link we're quickly building on top of it.

No way I was thinking of doing this too!!!

Amazing. Love your projects

grocery shopping by keystroke, that's a fun one to watch actually work

I'd want this in the shop's search box, without having to install an extension

If you check out the site, it has this as well:

There’s nothing keeping it from being in page, I made the extension this way to teach *devs* For the in page agent I used Gemini, but I could be using Jev there too (started building this before Jev came out)

The confidence meter is such a nice touch. Was that the plan from the start, or something you added once you saw it flip-flopping?

That was the plan! The purpose was to show devs what’s happening

Great project! Added it to my Jev-based project directory Hope more people will be able to try it and see how Jev can help them also. Thank you so much for building and sharing this 🙏

I'll try this for sure.

very cool

Yessssss! So cool

I got hooked on WebMCP, I even did the DevPost WebMCP competition 😆. That motivated me to create this tool

grocery shopping demo, cool

This is a powerful combo

any site's the real flex

每次敲键盘都在选工具 这个交互挺变态的 但准确率一上来 购物这类杂活真会直接被接管

time for @Instacart to open up a MCP.

Does confidence stay useful as the tool catalog grows, or do semantically adjacent actions start collapsing into the same probability band?

Did this with webmcp a while back:

Sure. This isn’t about just WebMCP though. It’s about the intersection with System One models like Jev
