Skip to content

Community Tooling for WebMCP: MCP Server Bridge, CDP Library, React Bindings & DevTools Extension #1

Closed

Description

@tech-sumit

Hi WebMCP authors 👋

I've been building a set of open-source tools around the WebMCP proposal and wanted to share them here for visibility and feedback. These projects aim to make it easier for developers to adopt, test, and build on top of WebMCP today (Chrome 146+ with the WebMCPTesting flag).


Projects

1. @tech-sumit/mcp-webmcp — MCP Server Bridge

MCP server that bridges browser WebMCP tools to desktop AI apps like Cursor and Claude Desktop. Connects to Chrome via Playwright and exposes 26 browser automation tools + 2 WebMCP meta-tools (webmcp_list_tools, webmcp_call_tool) over the Model Context Protocol.

  • Two connection modes: --launch (auto-launches Chrome Beta) or agent-controlled via browser_launch tool
  • Two transports: stdio (for mcp.json / npx) and Streamable HTTP (for hosted/manual usage)
  • Zero-config setup: npx -y @tech-sumit/mcp-webmcp --launch

Source: github.com/tech-sumit/mcp-webmcp

2. @tech-sumit/webmcp-cdp — CDP Library for WebMCP

Standalone Node.js library for discovering and executing WebMCP tools via Chrome DevTools Protocol — no Playwright dependency. Uses chrome-remote-interface directly.

  • Multi-tab support: discovers tools across all open tabs
  • Change detection via Runtime.addBinding + bindingCalled events
  • Lightweight foundation that mcp-webmcp builds on top of

Source: github.com/tech-sumit/webmcp-cdp

3. react-webmcp — React Hooks & Components

Idiomatic React library for both the Imperative and Declarative WebMCP APIs:

  • useWebMCPTool — register a single tool with automatic lifecycle (mount/unmount)
  • useWebMCPContext — register multiple tools via provideContext()
  • useToolEvent — listen for toolactivated / toolcancel events
  • <WebMCPForm>, <WebMCPInput>, <WebMCPSelect>, <WebMCPTextarea> — declarative form components with toolname / tooldescription / toolparam* attributes
  • <WebMCPProvider> — context provider for availability detection
  • Full TypeScript support with navigator.modelContext type augmentation

Includes demo apps replicating the official react-flightsearch and french-bistro examples.

Source: github.com/tech-sumit/react-webmcp

4. webmcp-debugger-chrome-extension — Chrome DevTools Extension

Chrome DevTools panel for introspecting navigator.modelContext (WebMCP) and window.ai (Prompt API) on any page:

  • Tools Tab: list registered WebMCP tools, view schemas, execute manually with a JSON editor
  • Timeline Tab: chronological log of all AI events (tool registrations, prompts, tool calls) with filtering
  • AI Sessions Tab: view LanguageModel sessions, prompt/response threads, streaming visualization

Uses MAIN-world content script injection to monkey-patch and observe all WebMCP + Prompt API activity.

Source: github.com/AIdevelopment-blog/webmcp-debugger-chrome-extension

5. @tech-sumit/ai-inspector-types — Shared TypeScript Types

Pure TypeScript types package (zero runtime dependencies) providing shared interfaces and protocol schemas used across the ecosystem: ToolSource, DiscoveredTool, InspectorEvent, WebSocket/extension message types, and JSON Schema types aligned with the WebMCP spec.

Source: github.com/tech-sumit/ai-inspector-types


How they fit together

Website (React)                    AI Agent (Cursor / Claude)
    │                                     │
    ├─ react-webmcp                       │
    │   useWebMCPTool() ──►               │
    │   <WebMCPForm>   ──►                │
    │   navigator.modelContext            │
    │                                     │
    ▼                                     ▼
Chrome 146+ (WebMCPTesting)         mcp-webmcp (MCP Server)
    │                                     │
    ├─ webmcp-debugger (DevTools)    webmcp-cdp (CDP lib)
    │   Inspect / debug tools             │
    │                                     │
    └──────── CDP connection ─────────────┘

Feedback I'm looking for

  1. API alignment: Are there any upcoming changes to the WebMCP API shape (e.g. navigator.modelContext vs navigator.modelContextTesting, registerTool signatures, declarative form attributes) that would affect these libraries?
  2. Spec coverage: Are there parts of the proposal (resources, prompts, progressive web app integration, background model context providers) that would be useful to support early?
  3. Developer experience: Any thoughts on the React bindings API design (useWebMCPTool, <WebMCPForm>, etc.)?
  4. Debugging story: Does the DevTools extension approach align with how you envision developer tooling for WebMCP?
  5. MCP bridge approach: The mcp-webmcp server bridges WebMCP tools to external MCP clients — this is briefly mentioned as a useful scenario in the proposal. Any guidance on how this should work long-term?

Happy to contribute upstream or adjust these tools based on your feedback. Excited about the direction of this proposal!

— Sumit (@tech-sumit)

Activity

  1. tech-sumit commented on Feb 19, 2026

    @tech-sumit
    Author

    I cross referenced WebIDL spec to add outputSchema and annotations in the schema. Do suggest whether this is a correct approach to work with.

  2. tech-sumit commented on Feb 21, 2026

    @tech-sumit
    Author

    Hi team,
    Please review and tell me what can be improved and what should I build next and what should be the further direction should I be taking for webmcp?

  3. anssiko commented on Feb 27, 2026

    @anssiko
    Member

    Please submit a PR for the newly launched https://github.com/webmachinelearning/awesome-webmcp referencing these tools. I will transfer this issue to that repo. Thank you for these open-source tools contributions!

  4. anssiko commented on Sep 2, 2026

    @anssiko
    Member

    Are these projects still maintained? If so, please consider #1 (comment)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions