Skip to content
webmcp-bridgeby Arclat
v0.1.0·WebMCP Spec Compliant·Local Stdio

Turn any WebMCP webpage into live tools for your AI.

A headless Playwright bridge that discovers window.navigator.modelContext in any web application, validates its JSON schema, and pipes Claude’s tool calls directly to the live page DOM.

Connect & Run Stdio Server
$npx -y webmcp-bridge connect http://localhost:3000
webmcp-bridge runtimeCDP Active
WebMCP Protocol Bridge
Protocol: MCP + WebMCPLicense: MIT
Workflow

From web app to Claude in three steps.

No SDK compilation, no backend server setup, and no browser extension. Just point the bridge at your target URL.

STEP 01

1. Connect to any WebMCP URL

Point the bridge at your local dev server or live URL. Playwright launches a silent headless Chromium instance in milliseconds.

npx -y webmcp-bridge connect http://localhost:3000
STEP 02

2. Automatic In-Page Tool Discovery

The bridge scans window.navigator.modelContext, maps every tool to strict JSON Schema Draft-07, and exposes them via MCP.

npx -y webmcp-bridge discover http://localhost:3000
STEP 03

3. Claude Invokes Real DOM Actions

Claude Desktop or Claude Code executes in-page tools through stdio JSON-RPC. Results return directly from your client state.

claude mcp add webmcp -- npx -y webmcp-bridge connect http://localhost:3000
Interactive Simulator

See the bridge in action.

Choose a tool scenario below. Watch how webmcp-bridge translates Claude’s stdio JSON-RPC request across Chromium CDP directly into the live page DOM.

Claude AgentMCP Client

Calls search_inventory with JSON arguments.

{ "query": "wireless mouse", "maxResults": 3 }
webmcp-bridgePlaywright CDP

Intercepts Stdio, validates schema with Zod, and executes inside page context.

Schema Match:Strict Valid ✓
Latency overhead:< 3.8ms
Browser DOMWebMCP Spec

Target executes registered execute() handler.

{ "found": 3, "items": [ { "id": "item_102", "title": "Aerox 3 Wireless", "price": "$79.99", "stock": 14 }, { "id": "item_105", "title": "MX Master 3S", "price": "$99.00", "stock": 8 }, { "id": "item_201", "title": "Viper V2 Pro", "price": "$129.99", "stock": 3 } ] }
Tool: search_inventory()
--> {
  "jsonrpc": "2.0",
  "id": "req-42",
  "method": "tools/call",
  "params": {
    "name": "search_inventory",
    "arguments": {
      "query": "wireless mouse",
      "maxResults": 3
    }
  }
}

<-- {
  "jsonrpc": "2.0",
  "id": "req-42",
  "result": {
    "content": [
      {
        "type": "text",
        "text": "{\n  \"found\": 3,\n  \"items\": [\n    {\n      \"id\": \"item_102\",\n      \"title\": \"Aerox 3 Wireless\",\n      \"price\": \"$79.99\",\n      \"stock\": 14\n    },\n    {\n      \"id\": \"item_105\",\n      \"title\": \"MX Master 3S\",\n      \"price\": \"$99.00\",\n      \"stock\": 8\n    },\n    {\n      \"id\": \"item_201\",\n      \"title\": \"Viper V2 Pro\",\n      \"price\": \"$129.99\",\n      \"stock\": 3\n    }\n  ]\n}"
      }
    ],
    "isError": false
  }
}
Instant Setup Helper

Configure your AI client in seconds.

Enter the address of your WebMCP-enabled application (local dev server or hosted URL) to generate the exact client configuration.

Works with Vite, Next.js, Webpack dev servers, or live staging URLs.

claude_desktop_config.json
{
  "mcpServers": {
    "webmcp": {
      "command": "npx",
      "args": [
        "-y",
        "webmcp-bridge",
        "connect",
        "http://localhost:3000"
      ]
    }
  }
}
Config file location: macOS: ~/Library/Application Support/Claude/claude_desktop_config.json · Windows: %APPDATA%\Claude\claude_desktop_config.json
Architecture

Built on strict architectural guarantees.

WebMCP Bridge isn’t an ad-hoc screen scraper. It is an industrial-strength adapter built to W3C WebMCP drafts and the Model Context Protocol specification.

Zero Browser Extensions

No Chrome extensions to sideload, no manifest permissions, and no user profile pollution. Operates purely through standard Playwright CDP page evaluation.

Zero Telemetry & Local-First

Everything runs on your machine over stdio. No accounts, no external proxy servers, and no telemetry. Your page state never leaves your computer.

Strict Schema Normalization

Web developers write raw JSON schemas with varied styles. webmcp-bridge normalizes types, cleans forbidden keys, and enforces Zod compliance so LLMs never hallucinate arguments.

Sub-5ms Execution Latency

Direct in-memory page evaluation via Chromium DevTools Protocol. Invoking a DOM tool has near-zero overhead compared to traditional web scrapers.

Cached Binary Resolution

Automatically resolves existing system Chromium or Playwright headless-shell binaries. Boots instantly without triggering 200MB background browser downloads.

Spec-Compliant with WebMCP

Built around the emerging navigator.modelContext standard. When browsers implement native WebMCP, your applications are already fully compatible.

Comparison

Why WebMCP Bridge over legacy automation?

Dimensionwebmcp-bridgeHeadless Web ScrapingBrowser Extensions
Protocol standardModel Context Protocol (MCP) + WebMCPAd-hoc CSS selectors / XPathProprietary extension message passing
Installation frictionSingle npx command, zero dependenciesHeavy custom scraper scripts per pageManual unpacked extension installation
Tool Schema contractValidated JSON Schema Draft-07 with ZodUnstructured HTML text dumpsVariable JSON or message callbacks
AI Agent CompatibilityClaude Desktop, Claude Code, Cursor, ZedCustom agent integration requiredBrowser-only extensions
Reliability on UI changesImmune (calls registered JS methods, not DOM elements)Fragile (breaks on CSS / layout tweaks)Prone to extension background worker disconnects
Answers

Frequently Asked Questions

Everything you need to know about WebMCP, Chromium CDP execution, and agent tool mapping.

WebMCP is an emerging browser standard (spearheaded via window.navigator.modelContext) allowing web applications to declare in-page tools, schema definitions, and callbacks directly in the client DOM. It turns web pages into live capability surfaces for AI agents.

Connect your web apps to Claude today.

Free and open-source under the MIT license. Works with Claude Desktop, Claude Code, Cursor, and any MCP-compliant agent.

$npx -y webmcp-bridge connect http://localhost:3000