New:Introducing Socket Scanning for VS Code Marketplace Extensions.Learn more →
Get Started

@weavetab/mcp

Package Overview
Dependencies
Maintainers
1
Versions
7
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@weavetab/mcp

The open automation engine for AI agents. Control live browsers and desktop apps locally with instant execution.

latest
Source
npmnpm
Version
2.5.1
Version published
Weekly downloads
557
2831.58%
Maintainers
1
Weekly downloads
 
Created
Source

Weavetab

The open automation engine for AI agents.
Control live browsers and desktop apps locally with instant execution.

version license MCP Node tools sponsor

Tool Reference  ·  Documentation  ·  Architecture  ·  Support  ·  Security

Weavetab is the open automation engine for AI agents. It connects models directly to live Chromium browsers and Electron desktop applications via native Chrome DevTools Protocol (CDP) sockets — no WebDriver binaries, no cloud relay, zero telemetry.

Actions execute with sub-10ms latency. Web pages are translated into agent-readable semantic maps with turn-by-turn diffing that reduces token usage by up to 95%. Built-in security enforces local domain policies, role-based access control, and client-side credential injection.

Built and architected by fy2ne.

Why not Playwright or Puppeteer?

The standard approach — Playwright over MCP — works. But it carries fundamental architectural costs that compound at scale.

Playwright / PuppeteerWeavetab
Protocol layerWebDriver BiDi or CDP via browser binaryRaw CDP WebSocket, Layer 0
Tool execution latency50–300 ms (binary + IPC overhead)3–8 ms
Desktop app controlBrowser onlyChrome + any Electron app (Discord, VS Code, Figma…)
DOM representationFull HTML dump to LLMSemantic Map 3.0 with delta diffing
Token cost per map~2,000–8,000 tokens~80–400 tokens (95% reduction via delta)
CAPTCHAAPI service requiredZero-API via CDP mouse physics
Credential safetySecrets passed in plaintextBlind Injection — never in LLM context
Extension accessLimitedFull Chrome Extension API surface

Architecture

MCP Client (Claude / Cursor / Antigravity / Copilot / Windsurf)
       |
       |  JSON-RPC 2.0  (stdio or WebSocket :3000)
       v
+-------------------------------------------------------------+
|                   Weavetab MCP Server                       |
|                                                             |
|  +-----------------+   +---------------------------------+  |
|  | Security Layer  |-->|  Intelligence Engine            |  |
|  | Rate · RBAC     |   |  Map 3.0 · Delta · Memory       |  |
|  | Policy · Audit  |   |  Pruner · Framework Detector    |  |
|  +-----------------+   +----------------+----------------+  |
|                                         |                   |
|                              +----------v----------------+  |
|                              |  CDP Bridge               |  |
|                              |  Ghost Cursor · Typing    |  |
|                              |  App Router · Loop Guard  |  |
|                              +----------+----------------+  |
+-------------------------------------------------------------+
                                          |  CDP WebSocket (127.0.0.1)
              +---------------------------+-----------------------------+
              v                           v                            v
       Chrome / Edge               VS Code / Discord          Your Electron App
       (any tab)                   (Electron apps)            (local dev)

No cloud. No external process. The CDP WebSocket connection is strictly bound to 127.0.0.1.

Quick Start

npx -y @weavetab/mcp

Add to your MCP client config:

{
  "mcpServers": {
    "weavetab": {
      "command": "npx",
      "args": ["-y", "@weavetab/mcp"]
    }
  }
}
ClientConfig path
Claude Desktop~/Library/Application Support/Claude/claude_desktop_config.json
Claude Codeclaude mcp add weavetab -- npx -y @weavetab/mcp
Cursor.cursor/mcp.json
Antigravity~/.gemini/antigravity/mcp/weavetab/
VS Code Copilot.vscode/mcp.json
Windsurf~/.codeium/windsurf/mcp_config.json

Core Technology

Semantic Map 3.0

The primary bottleneck in browser-based agents is DOM representation. Full HTML dumps are noisy, large, and structurally meaningless to language models. Weavetab's browser_map runs an in-browser CDP walker that produces a compact semantic map:

╔═ ACTIVE DIALOG: "Confirm Payment" ═╗
  [w:3] button "Confirm"  [w:4] button "Cancel"

┌ "Pro Plan — $49/mo"
  [w:12] button "Upgrade"   [w:13] button "View Details"
  [w:14] input val:"john@example.com"  ph:"Email address"  FOCUSED

[w:20...w:38] 18 nav links: "Dashboard" ... "Sign out"

Key properties:

  • Ref IDs (w:N) are stable within a session and used by all interaction tools
  • Container binding — buttons and inputs are grouped under their parent card, row, or section header
  • Modal hoisting — open dialogs are isolated at the top so agents cannot miss them
  • Link collapsing — repeated nav/footer runs of 4+ links compress into a single token line
  • Semantic delta — on re-reads, only changed nodes are transmitted (~ modified, + added, − removed), cutting re-read cost by up to 95%

Ghost Cursor

Clicks are not dispatched as synthetic DOM events. They are delivered as a physical sequence of Input.dispatchMouseEvent CDP calls along a Bezier curve trajectory with randomized acceleration, natural jitter, and hold durations. Anti-bot fingerprinting that flags event-based automation does not trigger.

browser_pointer supports hover_chain for multi-level menu traversal in a single tool call:

{
  "hover_chain": ["File", "Export As", "PNG"],
  "click_final": true
}

Blind Credential Injection

browser_type_secret resolves secrets server-side from ~/.weavetab/secrets.json. The resolved value is never included in the MCP response, never appears in DOM snapshots, and is permanently masked as [REDACTED] in all audit logs. The LLM context never sees the credential.

weavetab secrets set GITHUB_TOKEN
# Stored. Never echoed, never logged, never surfaced to the agent.

Electron & Desktop App Automation

Any tool accepts an optional app parameter that routes the command to a registered Electron process instead of a browser tab:

{ "app": "discord", "ref": "w:24", "text": "Hey, deploying now" }

Register apps in ~/.weavetab/config.json:

{
  "electron": {
    "discord":  "C:\\Users\\<user>\\AppData\\Local\\Discord\\Discord.exe",
    "vscode":   "C:\\Users\\<user>\\AppData\\Local\\Programs\\Microsoft VS Code\\Code.exe",
    "figma":    "C:\\Users\\<user>\\AppData\\Local\\Figma\\Figma.exe"
  }
}

Weavetab auto-attaches via CDP to the registered process. No code changes required in the target application.

Zero-API CAPTCHA Solving

browser_captcha solves Cloudflare Turnstile, reCAPTCHA v2/v3, GeeTest, and hCaptcha by orchestrating CDP mouse events that replicate human behavioral signatures — velocity curves, micro-pauses, scroll inertia — with no third-party API, no external service, and no API key required.

Tool Suite

41 tools across 9 categories. Full parameter reference: docs/tools/tools.md

CategoryTools
Vision & DOMbrowser_map browser_find browser_scrape browser_inspect browser_snapshot browser_screenshot browser_console browser_extract_design
Input & Interactionbrowser_click browser_type browser_type_secret browser_key browser_pointer browser_select browser_fill browser_upload browser_scroll
Navigation & Environmentbrowser_navigate browser_tabs browser_detect browser_viewport browser_emulate
Mission & Automationbrowser_burst browser_automation browser_recording browser_pattern_learn
Safety & Human Oversightbrowser_dialog browser_thoughts browser_clipboard browser_wait
Autonomous CAPTCHAbrowser_captcha
Network & Storagebrowser_network_intercept browser_storage browser_cookies browser_checkpoint browser_performance
Office Documentsbrowser_office
Canvas & Evalbrowser_eval browser_pdf browser_canvas browser_highlight

Security

  • Transport: CDP WebSocket strictly bound to 127.0.0.1. No listener on external interfaces.
  • Policy Engine: Per-domain allow / read-only / deny / audit rules under the top-level policies array in ~/.weavetab/config.json
  • RBAC: Five roles — admin, operator, viewer, automation, system — enforce tool-level permission gates
  • Blind Injection: Credentials resolved server-side, masked in all outputs and audit logs
  • Loop Breaker: Strike-based stuck-loop detector halts runaway autonomous sequences
  • Audit Log: All tool invocations, policy decisions, and errors written to ~/.weavetab-system/logs/mission_<timestamp>.log

Security vulnerabilities: security@fy2ne.me (do not use public issues).

CLI Reference

weavetab                        # Start in stdio mode (default)
weavetab --ws --port 3000       # WebSocket daemon mode
weavetab config                 # Interactive configuration wizard
weavetab secrets set KEY_NAME   # Store a secret (never echoed)
weavetab secrets list           # List stored secret keys (not values)
weavetab plugin add <name>      # Install a plugin from npm
weavetab plugin list            # List installed plugins

Configuration file: ~/.weavetab/config.json

{
  "browserType": "chromium",
  "headless": false,
  "extension": true,
  "maxActionsPerMinute": 60,
  "role": "admin",
  "electron": {
    "discord":     "...",
    "vscode":      "...",
    "antigravity": "..."
  }
}

Extensibility

Weavetab exposes a typed Plugin SDK for authoring custom MCP tools, HUD overlays, and tool lifecycle hooks:

npx @weavetab/sdk init my-plugin

See docs/PLUGINS.md for architecture, manifest spec, and SDK API reference.

License

AGPL-3.0-only. Client connections over stdio or WebSocket do not extend copyleft obligations to your client application or models.

Sponsor development  ·  Discussions  ·  SUPPORT.md

Keywords

mcp server

FAQs

Package last updated on 18 Oct 2026

Related posts