WebMCP Bridge
Use this skill to operate @webmcp-bridge/local-mcp through one fixed uxc shortcut command per site.
Keep this skill thin: prefer the published docs for behavior details, and use the docs search API before guessing.
Prerequisites
uxcis installed and available inPATH.npxis installed and available inPATH.- Network access is available for the target website.
- On a fresh machine or isolated
HOME, install Playwright browsers withnpx playwright install. - For local repo development, you may replace the default launcher with
WEBMCP_LOCAL_MCP_COMMAND='node packages/local-mcp/dist/cli.js'.
Docs Search
Docs site:
https://webmcp-bridge.holon.run
Docs search API:
https://webmcp-bridge.holon.run/api/search?q=<query>
Typical searches:
session lifecyclebridge.overlay.exportoverlay-bootstrapbridge.session.attach
Quick Workflow
- Pick the source mode:
- native/polyfill target:
--url <url> - built-in fallback adapter:
--site <site> - third-party adapter:
--adapter-module <specifier>and optionally--url <url>
- native/polyfill target:
- Use one site-scoped profile:
~/.uxc/webmcp-profile/<site>
- Create or refresh the fixed link:
command -v <site>-webmcp-cliskills/webmcp-bridge/scripts/ensure-links.sh --name <site> ...
- Inspect help before calling tools:
<site>-webmcp-cli -h<site>-webmcp-cli <operation> -h<site>-webmcp-cli <operation> field=value<site>-webmcp-cli <operation> '{"field":"value"}'
- Treat presentation mode as live state, not launcher intent:
<site>-webmcp-cli bridge.session.status<site>-webmcp-cli bridge.session.mode.get<site>-webmcp-cli bridge.session.mode.set '{"mode":"headed"}'<site>-webmcp-cli bridge.open
When Only bridge.* Tools Are Visible
Start with:
<site>-webmcp-cli bridge.session.status
Then follow the state:
- bootstrap/auth incomplete:
<site>-webmcp-cli bridge.session.bootstrap - existing profile/browser should attach:
<site>-webmcp-cli bridge.session.attach - adapterless/native-missing page in
overlay-bootstrap: use<site>-webmcp-cli bridge.debug.eval '{"script":"() => document.title"}'<site>-webmcp-cli bridge.overlay.install '{"id":"draft","tools":[{"name":"page.title.get","script":"() => ({ title: document.title })"}]}'<site>-webmcp-cli bridge.overlay.update '{"id":"draft","activation":"override"}'<site>-webmcp-cli bridge.overlay.export '{"id":"draft"}'
Do not switch to $webmcp-adapter-creator just because a page has no formal adapter yet. Use overlay bootstrap first; switch to adapter creation when you want to promote a stable reusable adapter.
Canonical Docs
- CLI reference:
https://webmcp-bridge.holon.run/reference/cli
- Session lifecycle:
https://webmcp-bridge.holon.run/reference/session-lifecycle
- Architecture:
https://webmcp-bridge.holon.run/reference/architecture
- Adapter authoring:
https://webmcp-bridge.holon.run/adapters
- Docs search API:
https://webmcp-bridge.holon.run/api/search?q=<query>
Local References
- Usage patterns:
references/usage-patterns.md
- Source modes:
references/source-modes.md
- Link patterns:
references/link-patterns.md
- Troubleshooting:
references/troubleshooting.md
- Link creation helper:
scripts/ensure-links.sh
Guardrails
- Prefer browser-side execution for privileged site actions. Do not move site credentials into local scripts.
- Do not share one
--user-data-diracross unrelated sites. - Use
bridge.session.mode.setfor managed sessions instead of assuming a fresh launcher invocation changes the live runtime. - External attach sessions cannot be mode-switched by the bridge.
bridge.openandbridge.window.openfail in headless sessions.- For destructive writes, inspect tool help first and require explicit user intent.
- If behavior still looks wrong after checking the docs search, open an issue:
https://github.com/holon-run/webmcp-bridge/issues