Doctor first protocol
Runs npx -y fsb-mcp-server doctor, parses the failing layer (one of package, bridge, extension, active-tab, content-script, config), and prints the next step recommendation. Exit code surfaces failure to the host.
FSB ships a polished OpenClaw skill plus a 50+ tool MCP surface that any agent runtime can drive. Click, type, orchestrate across tabs, fill vault credentials, read live page state, all from one prompt, in the user's actual Chrome.
The canonical OpenClaw onboarding path for FSB. Loads cleanly into a fresh OpenClaw, runs the full diagnostic flow, and installs the bridge for any other MCP host on your machine.
Runs npx -y fsb-mcp-server doctor, parses the failing layer (one of package, bridge, extension, active-tab, content-script, config), and prints the next step recommendation. Exit code surfaces failure to the host.
Emits the canonical OpenClaw stdio block to paste into your MCP config. The block stays parity locked with mcp/src/install.ts so the printer never drifts from the rest of the installer.
Detects other MCP hosts (Claude Desktop, Cursor, Codex, etc.) and asks y/n per host before installing. Never --all without consent. Never auto writes the OpenClaw config.
Browser automation usually means a headless instance you cannot see. FSB drives the user's actual Chrome session, and the MCP surface is built around four hard requirements: precision, observability, safety, and concurrency.
Read, click, type, navigate, vault, observe. All typed. All agent-scoped. One surface, no glue code.
Server-minted agent_id per session. Tabs owned per agent. Cross-agent calls fail loud with TAB_NOT_OWNED. Cap 1-64 (default 8), AGENT_CAP_REACHED when full. No focus stealing.
Passwords and cards resolve inside the extension's encrypted store via fill_credential and use_payment_method. Never in chat. Never in args. requires.env is mandatory empty.
Your cookies. Your extensions. Your saved state. change_report streams mutations on every action — no extra read_page round-trip.
Get from a clean machine to a green doctor in under five minutes.
Primary path. Paste this Chrome Web Store URL into Chrome's address bar:
https://chromewebstore.google.com/detail/badgafnfchcihdfnjneklogedcdkmjfkFallback path. Download the latest .zip from GitHub Releases, then load unpacked at chrome://extensions with Developer mode on.
Print the canonical OpenClaw stdio block and paste it into your MCP host config:
node scripts/print-stdio.mjsOr use the FSB CLI directly. Discover supported hosts on your machine:
npx -y fsb-mcp-server install --listThen run the installer for one host, for example:
npx -y fsb-mcp-server install --claude-desktopRun the six layer diagnostic. Expect [OK] on every layer.
node scripts/doctor.mjsIf any layer fails, the doctor prints a one line next step. The full recovery table lives in USAGE.md inside the skill.
The recurring browser work. The boring, repetitive stuff that vision-based agents struggle with on logged-in sites. FSB runs in the user's real Chrome, so cookies, sessions, MFA state, and saved logins are already there.
>Open Gmail, label everything from billing as finance, draft replies to support threads using yesterday's tone, and flag anything urgent.
>In Zendesk, draft answers to open tickets about pricing, order status, and shipping using the help center as ground truth.
>Pull yesterday's revenue, signups, and refund count from the analytics dashboard and post a one paragraph summary.
>Score new LinkedIn connection requests against the ICP, draft outreach for the top three, and skip the rest.
>Categorize today's invoices in the POS as supplies vs. retail, extract shipping line items, and flag any vendor over last month's average.
These run as manual-mode tool calls. Autopilot (run_task) only fires when the user explicitly delegates the whole task -- "use FSB autopilot", "delegate this", or names run_task directly. Manual mode is the default for everything else.
Free, open source, BYO model keys. Works with OpenClaw, Claude, Codex, Cursor, Windsurf, and any MCP host that speaks the OpenAI tool protocol.