Hi everyone,
I’ve been experimenting with integrating WebMCP into a real application (TaskFlow), and I’d really appreciate feedback on the architectural direction.
You can try the live app here: https://taskflow.manifesto-ai.dev
This is not a demo built specifically for WebMCP. The app already had a client-side runtime (Manifesto) that defines domain state, actions, and legality, and WebMCP is used to expose that existing runtime contract to the browser.
What I built
TaskFlow is a task management app where:
With WebMCP, I exposed the same runtime-backed capability surface as tools:
Tool execution happens against the same client-owned runtime that the UI uses, so UI, agent, and history stay in sync automatically.
Key design choice
Instead of exposing UI-level actions (click, select DOM nodes), I only expose semantic, domain-level intents.
So the browser host never interacts with DOM state directly — it operates on the same domain contract the app uses.
Why I chose this approach
From my experiments, exposing runtime-backed tools seems to avoid several common issues:
Questions / looking for feedback
I’d love feedback from others working with WebMCP:
If helpful, here’s the implementation doc:
https://github.com/manifesto-ai/taskflow/blob/main/docs/CHROME-WEBMCP.md
Happy to share more details or test scenarios if useful.
Thanks!