mcpField
S
Site Sense

Site Sense

Local
github.com/YotamNordmanBrowser Automation2Updated 22w ago

About Site Sense

Site Sense gives AI coding CLIs an accessibility tree and screenshot of the active browser tab through an extension. Its local, read-only, memory-only design suits coding tasks that involve web portals.

Key features

  1. 01Capture the active tab’s accessibility tree
  2. 02Capture a screenshot of the active tab
  3. 03Check connection and session approval
  4. 04Use local communication without persistent storage
  5. 05Read pages without modifying them

Use cases

  1. 01Let a coding agent inspect a web portal
  2. 02Review settings in a cloud portal
  3. 03View the current page during a CLI session

MCP support

The MCP server connects to the browser extension through a local bridge and exposes tools for capturing the active tab and checking connection status.

Configuration

Local server config is the same for every client. Copy it into your client’s MCP config file.

No install method listed yet

We haven’t collected a package or remote endpoint for this server. Follow the instructions in the project README.

Repository

Tools

No tool list yet

Local servers expose tools only once running on your machine, and the maintainer has not provided a tool list.

Details

From the project README

site-sense

CI Chrome Web Store License: Apache-2.0

Give your AI coding CLI eyes into web portals. No cloud. No storage. Read-only.

site-sense demo

You're in a conversation with your AI assistant. It says "go to the Azure Portal and check the NSG rules." You alt-tab, navigate, screenshot, describe what you see, paste it back. You are the human middleware.

site-sense eliminates this. The AI calls an MCP tool → your browser extension captures the active tab → the AI sees what you see.

Quick Start

Option A: Install from Chrome Web Store (recommended)
  1. Install site-sense from the Chrome Web Store
  2. Clone the repo and run setup:
git clone https://github.com/NordmanLive/site-sense.git
cd site-sense
npm install && npm run build
npm run setup -- --browser chrome    # or edge
Option B: Load unpacked (development)
git clone https://github.com/NordmanLive/site-sense.git
cd site-sense
npm install && npm run build
npm run setup -- --browser chrome    # or edge

Then load the extension manually:

  1. Open edge://extensions (or chrome://extensions)
  2. Enable Developer mode
  3. Click Load unpacked → select dist/extension/

Add to your CLI's MCP config:

{
  "mcpServers": {
    "site-sense": {
      "command": "node",
      "args": ["/path/to/site-sense/dist/bridge/src/index.js"]
    }
  }
}

Then ask your AI: "What's on my browser tab?"

First time → popup appears → click Allow → done. All subsequent captures are automatic until you close the terminal.

How It Works

CLI (Claude Code / Copilot CLI)
    ↕ stdin/stdout (MCP protocol)
MCP Server (TypeScript)
    ↕ Unix domain socket (no network)
Native Host (thin relay)
    ↕ Chrome native messaging (stdio)
Extension (TypeScript, Manifest V3)
    ↕ inject → content → background
Browser Tab → accessibility tree + screenshot

Two MCP tools:

ToolWhat it does
site_sense_captureAccessibility tree + screenshot of active tab
site_sense_statusCheck connection and session approval

Permission Modes

ModeWhat happensInstall warning
DefaultClick extension icon per page to grant accessNone
All-sitesToggle in popup → captures work on any pageOne-time prompt

All-sites permission is revoked when the CLI session ends.

Security

PrincipleHow
No networkNative messaging (stdio) — invisible to DLP
No storageMemory only — gone when CLI disconnects
No write opsNever clicks, types, or modifies pages
No broad permsactiveTab + scripting + nativeMessaging
No secrets capturedSkips form values, strips URL tokens
Session-scopedPermission resets every CLI session

See SECURITY.md for threat model and DLP compliance.

Architecture

Three-layer extension pipeline:

LayerContextRole
InjectPage (world: MAIN)Walks DOM, builds compact accessibility tree
ContentIsolatedRelays capture via postMessage (origin-validated)
BackgroundService workerNative messaging, session state, screenshot

Tech Stack

ComponentTechnology
ExtensionTypeScript + Vite
MCP ServerTypeScript + @modelcontextprotocol/sdk + zod
Testsvitest — 10 tests, <1s
Bundle9KB extension, 7 total deps

Troubleshooting

SymptomFix
connected: falseExtension not loaded, or ID mismatch. Check edge://extensions.
Cannot captureNavigate to an http:// or https:// page.
Content script not respondingClick the extension icon on the page, or enable all-sites mode.
Extension icon grayed outReload the extension at edge://extensions.

Docs

DocPurpose
SECURITY.mdThreat model, DLP compliance

License

Apache-2.0

Comments

Markdown supported

New to MCP?

From what the protocol is to installing your first server, these answers cover most first questions.

An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.