FSB MCP server
2026년 11월 14일 커밋Chrome extension과 MCP server를 통해 DOM에 직접 상호작용하여 AI 클라이언트의 브라우저 자동화를 지원합니다.
다른 이름 fullselfbrowsing/FSB
- 스타
- 204
- Tools
- —
- 다운로드, 30일
- —
- 최신 버전
- —
- 마지막 커밋
- 2026년 11월 14일
- 라이선스
- MIT
FSB MCP란?
FSB은(는) MCP server입니다. Chrome extension과 MCP server를 통해 DOM에 직접 상호작용하여 AI 클라이언트의 브라우저 자동화를 지원합니다.
프로젝트 README에서 생성된 요약
FSB MCP server 정보
FSB는 개발자와 연구자가 자연어로 웹 브라우저 작업을 자동화할 수 있도록 지원합니다. 시각적 스크린샷에 의존하는 대신 DOM과 직접 상호작용함으로써 더 빠른 응답 속도를 제공하며, 숨겨진 요소나 복잡한 양식을 더 정확하게 이해합니다. 이 시스템은 AI 클라이언트와 Chrome extension 사이의 가교 역할을 하며, 모델이 구조적 지능을 사용하여 페이지 구조를 읽고, 클릭을 실행하고, 텍스트를 입력하며, 웹사이트를 탐색할 수 있게 합니다.
사용자는 단일 명령으로 Claude Desktop, Cursor, VS Code 또는 Windsurf와 같은 다양한 MCP 클라이언트를 연결할 수 있습니다. 추론은 연결된 AI 클라이언트가 처리하므로 MCP 연결을 위한 별도의 FSB API key는 필요하지 않습니다. 서버는 DOM 스냅샷, 작업 검증, 스마트 대기 기능을 포함한 도구 모음을 제공하여 작업이 정확하게 완료되도록 보장합니다. extension을 통한 단독 사용 시 Anthropic, OpenAI, Gemini 등 다양한 프로바이더를 지원합니다.
프로젝트의 README를 바탕으로 작성되었습니다. 모든 활용 사례는 해당 내용의 인용문과 대조하여 확인합니다.
자동 검사
2026년 11월 13일에 실행됨전체 보고서 →아직 인증되지 않았습니다. 서버는 80점 이상의 점수, 심각한 결함 없음, 그리고 검사에 충분한 데이터를 갖추어야 합니다. 검사 방식
- 소스 저장소 연결 및 접근 가능fullselfbrowsing/fsb is public and reachablegithub.com/fullselfbrowsing/fsb ↗통과
- 패키지가 이 저장소를 소스로 지정검사되지 않음
- 빌드 출처(Sigstore 증명)검사되지 않음
- 오픈 소스 라이선스 (OSI)MITspdx.org/licenses/MIT.html ↗통과
- 최근 1년 내 커밋 또는 릴리스Last commit or release 2026-11-12github.com/fullselfbrowsing/fsb ↗통과
- OpenSSF Scorecard검사되지 않음
- 패키지 이름이 인기 패키지와 유사하지 않음검사되지 않음
- 패키지와 의존성에 심각한 보안 권고 없음검사되지 않음
- 모델에 대한 숨겨진 지침 없음0 tool descriptions and the README read; no override phrases, credential paths or hidden characters통과
- 파괴적인 도구에 라벨 표시됨검사되지 않음
- 원격 endpoint가 MCP 핸드셰이크에 응답검사되지 않음
README
GitHub에서 보기FSB v0.9.92 Full Self Browsing
AI-powered browser automation through natural language. Tell it what to do, and watch it browse for you.
Pure structural intelligence. Zero vision. Zero guessing.
Benchmark · What's New · Quick Start · MCP Server · Architecture · Providers · Development
Benchmark
Average success rates on Online-Mind2Web, with FSB included.
| # | Agent | Average success rate |
|---|---|---|
| 01 | Hark | 97.7% |
| 02 | Navigator (n1.5) | 97.3% |
| 03 | ACT-2 | 92.7% |
| 04 | FSB | 92.3% |
| 05 | Navigator (n1-preview) | 78.7% |
| 06 | Google Computer Use | 69.0% |
| 07 | Operator | 61.3% |
| 08 | ACT-1 (Aug 2025) | 57.3% |
| 09 | Claude Computer Use | 56.3% |
| 10 | ACT-1 (Jul 2025) | 45.7% |
FSB: AI-reviewed result (277/300).
Overview
FSB (Full Self Browsing) is an open source Chrome extension for AI powered browser automation. Describe a task in plain English; FSB reads the live DOM, builds a plan, executes browser actions, verifies results, and reports progress through the popup, side panel, or MCP.
FSB v0.9.92 is functional and production ready for supervised automation. Browser automation can still behave unpredictably on complex or sensitive sites, so monitor actions and test on non critical pages first.
Why DOM First
Project Mariner, Claude Computer Use, and OpenAI Operator rely heavily on visual page understanding. FSB uses page structure directly.
| Metric | Vision based agents | FSB |
|---|---|---|
| Page understanding | Screenshots | DOM, selectors, ARIA, forms |
| Hidden elements | Often invisible | Available in structure |
| Typical per step latency | 1 to 3 seconds | 50 to 200 ms |
| Token/cost profile | Image heavy | Text/structure heavy |
Quick Start TL;DR
FSB shines when your AI client drives it directly. Install the MCP server for your client of choice — one command, no manual config edits, and no FSB API key needed (your MCP client's model handles the reasoning):
| Client | One-command install |
|---|---|
| Claude Code | npx -y fsb-mcp-server@latest install --claude-code |
| Claude Desktop | npx -y fsb-mcp-server@latest install --claude-desktop |
| Cursor | npx -y fsb-mcp-server@latest install --cursor |
| VS Code | npx -y fsb-mcp-server@latest install --vscode |
| Windsurf | npx -y fsb-mcp-server@latest install --windsurf |
| Codex | npx -y fsb-mcp-server@latest install --codex |
| All at once | npx -y fsb-mcp-server@latest install --all |
Preview before writing: append --dry-run. Sanity check with npx -y fsb-mcp-server@latest doctor. Restart the client so the new MCP server appears.
Then install the browser side (the MCP bridge talks to the extension):
- Get FSB from the Chrome Web Store.
- From your MCP client, try:
Search for cats on GoogleorRead this page and summarize it.
Want to run FSB standalone from the extension popup/side panel? Open settings, paste an API key (xAI, Gemini, OpenAI, Anthropic, OpenRouter, LM Studio, or custom), and start there — no MCP needed.
On OpenClaw? Install FSB directly from ClawHub. That is the fastest onboarding route. If you need the manual fallback, the FSB skill in skills/fsb/ still prints the canonical OpenClaw stdio config block and runs the doctor flow. The bare --openclaw install flag stays manual because OpenClaw's MCP config schema is unstable across builds.
On Hermes? Use the same skill at skills/fsb/. Run node skills/fsb/scripts/print-hermes-yaml.mjs to print the canonical ~/.hermes/config.yaml mcp_servers.fsb block, or run node skills/fsb/scripts/install-host.mjs to detect a local Hermes config and gate the install on consent.
On Grok Bot? The marketplace wrapper lives in plugins/grok-bot/, with a pinned npm MCP server and one FSB skill. It uses Chrome on Bot's own computer; see its setup and privacy disclosures. Marketplace listing is pending publisher review.
What It Does
- Runs natural language browser tasks from the popup or side panel.
- Supports xAI, Gemini, OpenAI, Anthropic, OpenRouter, LM Studio, and custom OpenAI-compatible endpoints.
- Discovers live provider model lists and falls back to bundled defaults.
- Uses 57 shared definitions (53 browser tools plus 4 trigger tools) and 69 registered MCP tools for external clients.
- Provides DOM snapshots, action verification, smart waiting, stuck detection, visual feedback, and session logs.
- Searches a 128-app capability catalog and invokes verified signed, audited, denylist-gated first-party API capabilities through the MCP capability surface.
- Uploads real local files to file inputs through the supervised
upload_filetool with sensitive-path safeguards. - Maintains long term memory for past sites, workflows, selectors, and task outcomes.
- Includes secure credential and payment vault flows for supervised autofill.
- Exposes a local MCP server so Claude Code, Codex, Cursor, VS Code, Windsurf, and other MCP clients can drive the browser.
Background agents are retired. Existing chrome.storage.local['bgAgents'] data is preserved for users who had old agents, but scheduled or recurring automation is no longer an active FSB feature.
Common Use Cases
- QA and regression checks: repeat page flows, click through states, fill forms, and collect action logs.
- Research: navigate pages, extract visible information, and summarize results without relying on screenshots.
- Data entry: move through structured forms with validation, dropdowns, custom controls, and table inputs.
- Ecommerce: compare product pages, inspect prices, monitor availability manually, and prepare carts under supervision.
- Finance and dashboards: read charts, tables, and current page state when a human remains in control.
- Trigger watchers: watch one page element for changes, threshold crossings, or availability while Chrome and the extension stay open.
- Developer workflows: drive GitHub, issue trackers, documentation sites, coding platforms, and browser-based tools.
- Accessibility and DOM inspection: expose structure, labels, selectors, forms, and hidden controls for debugging.
FSB is most reliable when the task can be expressed as page structure and user actions. It is intentionally not a stealth browser, scraper farm, or unsupervised account operator.
Feature Detail
| Area | Current behavior |
|---|---|
| DOM analysis | Captures visible and structural page data, element refs, selectors, forms, ARIA labels, and DOM deltas. |
| Action execution | Supports clicks, typing, keys, scrolling, navigation, tabs, spreadsheet ranges, coordinate tools, direct JavaScript, and real file uploads. |
| Capability catalog | Searches the 128-app catalog and invokes verified signed, audited, denylist-gated T1/T1b first-party API capabilities through search_capabilities and invoke_capability. Catalog-tail hits remain learn-pending, discovery-pending, or guarded fail-closed until proven. Sensitive origins are flagged, while denylisted origins remain blocked. |
| Verification | Checks post-action state, loading behavior, DOM stability, and stuck-action repetition. |
| UI surfaces | Popup chat, persistent side panel, options/control panel, logs, analytics, memory, vault, and sync controls. |
| Model support | Hosted providers, OpenRouter routing, LM Studio local models, custom endpoints, and live model discovery. |
| Output rendering | Markdown, sanitized HTML, Mermaid diagrams, Chart.js charts, and task progress messages. |
| Observability | Session history, action logs, token/cost accounting, diagnostics ring buffer, and MCP status probes. |
| Security | Encrypted keys, vault unlock flows, redaction helpers, DOMPurify, capability signature/audit gates, origin denylisting, upload-path denylisting, and restricted-tab recovery messaging. |
| Trigger watchers | MCP callers can arm one-element watches with blocking or detached reporting, plus status/list/stop companions. |
| DOM live preview | PhantomStream-backed capture, renderer, protocol, media mirroring, and relay compatibility with FSB-owned pairing, task status, overlays, and remote-control ownership. |
The core design goal is to keep the browser as the source of truth. The model receives structured page context, makes a tool decision, and the extension verifies what changed before moving to the next step.
What's New
Native Capability Catalog: first-party API execution. Beyond DOM automation, FSB can search a capability catalog covering 128 apps and invoke verified API capabilities with search_capabilities and invoke_capability. Verified capabilities run through a router that checks the origin, verifies the recipe signature, checks the denylist, serializes the action, and logs an audit record that never includes secrets. Capabilities that are not yet verified are clearly labeled instead of being presented as ready to use. Every origin is allowed by default unless it is on the denylist, and denylisted origins stay blocked. Sensitive origins are flagged in the interface and the audit trail, and reading data through network capture on a sensitive origin still asks for extra confirmation. The API integration model is inspired by OpenTabs (see Acknowledgements). Capability execution is fully supported and has been tested, including live browser testing. The automated test suite is green.
upload_file: real file input uploads. MCP clients and FSB autopilot can now call upload_file(selector, file_path, tab_id?) to set an absolute local disk path on a real <input type="file"> through CDP DOM.setFileInputFiles, including inputs hidden behind styled dropzones. Uploads pass through one shared background chokepoint with a sensitive-path denylist and audit logging that does not persist disk paths. drop_file remains for synthetic drag/drop cases and pure drag-only zones.
PhantomStream 0.2.1 media mirroring. Dashboard DOM live preview now consumes the published PhantomStream media side channel in reference mode, so progressive <video> and <audio> nodes can mirror alongside DOM snapshots. Adaptive HLS/DASH discovery remains deferred because it would require a new webRequest permission; MCP tool schemas, pairing, auth, and dashboard ownership behavior are unchanged.
Engineering milestone 0.11.0 — Trigger Tool (reactive DOM monitoring). MCP callers can arm a watch on one page element with trigger and manage it with stop_trigger, get_trigger_status, and list_triggers. Watches support live-observe and refresh-poll modes, threshold/delta/regex/compound conditions, blocking or detached reporting, and a configurable concurrency cap. See Trigger Watchers for the full contract.
Showcase and ecosystem pages. full-selfbrowsing.com added pages for Lattice (capability runtime SDK), PhantomStream (DOM-native browser mirroring), Prometheus (the autonomous browser build behind FSB), and a community Site Maps hub, plus a live stats page with an anonymized active-regions globe, a legal posture page, and an interactive knowledge-graph viewer on About.
Full history is in CHANGELOG.md; the MCP package keeps its own log in mcp/CHANGELOG.md.
Repository Layout
| Path | Purpose |
|---|---|
extension/ |
Chrome extension package. Load this directory as an unpacked MV3 extension. |
mcp/ |
npm package fsb-mcp-server, the local MCP bridge for external AI clients. |
skills/fsb/ |
OpenClaw + Hermes skill: doctor + stdio/YAML printers + consent gated install for multiple hosts. |
showcase/ |
Marketing and dashboard site for full-selfbrowsing.com. Angular 20 static prerender + Express relay. |
showcase/server/ |
Node/Express deploy backend for pairing, PhantomStream-compatible relay, auth, and dashboard data. |
server-py/ |
Legacy Python/FastAPI-style backend prototype retained for reference. |
tests/ |
Node tests for extension modules, MCP contracts, bridge behavior, and regression coverage. |
scripts/ |
Repo maintenance and validation scripts. |
Top level deploy and validation files:
package.json- root commands for validation, tests, packaging, and showcase helpers.Dockerfile,fly.toml- production deploy for the showcase server on fly.io..github/workflows/ci.yml- validates extension, MCP smoke tests, and showcase build..github/workflows/deploy.yml- deploys the production site onmainpushes.
Screenshots
Dashboard and Analytics
API Configuration
Passwords Manager
Memory and Site Explorer
Intelligence Knowledge Graph
Quick Start
Prerequisites
- Chromium 116+ in a supported stable desktop browser: Chrome, Edge, Brave, or Chromium.
- One AI provider setup:
- xAI API key: https://x.ai/api
- Gemini API key: https://aistudio.google.com/app/apikey
- OpenAI API key: https://platform.openai.com/api-keys
- Anthropic API key: https://console.anthropic.com/account/keys
- OpenRouter API key: https://openrouter.ai/keys
- LM Studio local server running at
http://localhost:1234 - A custom OpenAI-compatible chat completions endpoint
Install The Extension
git clone https://github.com/fullselfbrowsing/FSB.git
cd FSB
- Open
chrome://extensions/. - Enable Developer mode.
- Click Load unpacked.
- Select the
extension/directory. - Click the FSB toolbar icon, open settings, configure a provider, and test the API connection.
Start with simple tasks such as:
Scroll downSearch for cats on GoogleClick the first search resultRead this page and summarize it
Reload the extension from chrome://extensions/ after local code changes. Reload open tabs after the extension reloads so content scripts re-inject.
For an unpacked build, record the ID on chrome://extensions/. A different install path or profile can produce a different ID; if doctor reports ORIGIN_PIN_MISMATCH, run npx -y fsb-mcp-server@latest pair --reset and pair the new installation. One browser profile attaches to the local bridge at a time. doctor and status show the attached extension ID, version, install instance, connection time, and normal-window count. The MCP server and extension have independent versions. Branded Chrome 137 removed the --load-extension flag; use Load unpacked in Chrome, or use Chrome for Testing or Chromium when a command-line flag is required.
First Run Checklist
- Open the FSB control panel from the extension.
- Select a provider and model.
- Enter the matching API key or local endpoint.
- Use Test API to confirm the model can answer.
- Open a normal webpage, not a browser-internal page.
- Try a read-only task first, then a simple click or type task.
- Keep the visual overlay enabled while evaluating behavior.
If a site uses heavy client rendering, custom canvas controls, or unusual shadow DOM, start by asking FSB to read the page and identify available controls. That gives the model a better first snapshot and makes failures easier to debug.
Quick Troubleshooting
| Problem | Check |
|---|---|
| Extension does not appear | Confirm Chrome loaded extension/, not the repo root. |
| API test fails | Confirm the selected provider, key, endpoint, and model belong together. |
| Page reads fail | Move away from browser-internal pages such as chrome:// or extension pages. |
| Clicks miss targets | Refresh the DOM snapshot, scroll the target into view, or use coordinate tools. |
| Typed text does not stick | Prefer type_text over JavaScript value assignment on controlled inputs. |
| MCP tools are missing | Restart the host client and run npx -y fsb-mcp-server@latest doctor. |
| MCP tools time out | Check status --watch, active tab readiness, and whether another task is queued. |
Most failures are recoverable by inspecting the current page, refreshing selectors, or restarting the local MCP bridge. Reinstalling the MCP config should be the last step, not the first.
Local Development Setup
You do not need a build step to load the extension in Chrome. You only need npm dependencies when running tests, building MCP, or building the showcase site.
npm install
npm --prefix mcp install
npm --prefix showcase/angular install
The extension reads bundled scripts directly from extension/. The MCP package is TypeScript and must be built before smoke tests or npm publishing. The showcase is a normal Angular app with static prerender output served by the production Express backend.
MCP Server
FSB ships fsb-mcp-server, a local MCP server that lets external AI clients control the same browser extension. It exposes 69 registered tools across visual sessions, trigger watchers, manual browser control, Developer/UAT capture, capability search/invoke, read-only page inspection, autopilot, vault, and observability.
The extension connects to the MCP bridge on:
ws://localhost:7225
Optional Streamable HTTP mode exposes:
http://127.0.0.1:7226/mcp
The HTTP endpoint binds to loopback only and rejects requests with an Origin header or a foreign Host. Use the printed local endpoint from an MCP client. If a tab stops responding, page reads return PAGE_UNRESPONSIVE; navigate and close_tab remain available. Inspect page state before repeating any action reported as outcome: "unknown" and mayHaveExecuted: true.
One Command Install
npx -y fsb-mcp-server@latest install --claude-desktop
npx -y fsb-mcp-server@latest install --claude-code
npx -y fsb-mcp-server@latest install --cursor
npx -y fsb-mcp-server@latest install --vscode
npx -y fsb-mcp-server@latest install --windsurf
npx -y fsb-mcp-server@latest install --codex
npx -y fsb-mcp-server@latest install --all
Preview without writing:
npx -y fsb-mcp-server@latest install --all --dry-run
npx -y fsb-mcp-server@latest install --list
Manual Examples
Claude Code:
claude mcp add --scope user fsb -- npx -y fsb-mcp-server@latest
Codex (~/.codex/config.toml):
[mcp_servers.fsb]
command = "npx"
args = ["-y", "fsb-mcp-server@latest"]
VS Code (mcp.json):
{
"servers": {
"fsb": {
"type": "stdio",
"command": "npx",
"args": ["-y", "fsb-mcp-server@latest"]
}
}
}
Diagnostics:
npx -y fsb-mcp-server@latest doctor
npx -y fsb-mcp-server@latest status --watch
npx -y fsb-mcp-server@latest wait-for-extension
See mcp/README.md for the full tool reference and client-specific setup notes.
OpenCode and OpenClaw are supported through manual or unsupported fallback setup paths; after editing host configuration, refresh or reload the client if FSB tools do not appear.
FSB MCP 질문
FSB를 MCP 클라이언트와 함께 사용하려면 API key가 필요한가요?
아니요, Claude Desktop 또는 Cursor와 같은 MCP 클라이언트를 사용할 때는 클라이언트의 모델이 추론을 담당하므로 별도의 FSB API key가 필요하지 않습니다.
FSB는 비전 기반 브라우저 에이전트와 어떻게 다른가요?
스크린샷에 의존하는 에이전트와 달리, FSB는 페이지 구조(DOM, selector, ARIA, form)를 직접 사용하므로 지연 시간이 짧고 토큰 비용이 저렴합니다.
자동화 과정에서 로컬 파일을 업로드할 수 있나요?
네, 보안 경로 보호 기능이 포함된 supervised upload_file 도구를 통해 실제 로컬 파일을 파일 입력란에 업로드할 수 있습니다.
FSB extension에서 어떤 AI 모델을 사용할 수 있나요?
xAI, Gemini, OpenAI, Anthropic, OpenRouter, LM Studio 및 OpenAI 호환 커스텀 엔드포인트를 지원합니다.