# MCP Browser (mcpb · mcpbrowser-0.4.1.mcpb)

Browser automation using the user's Chromium session — JS execution, auth, and anti-bot support.

- Trust score: 43/100 (low)
- Registry status: active
- Liveness: live
- Owner verified: no
- Last scored: 2026-08-03

## Components

- mcpb · `mcpbrowser-0.4.1.mcpb`: 43/100 (this document), [markdown](https://verifymcp.io/servers/cherchyk-mcpbrowser/https-github-com-cherchyk-mcpbrowser-releases-download-v0-4-1-mcpbrowser-0-4-1-m.md), [page](https://verifymcp.io/servers/cherchyk-mcpbrowser/https-github-com-cherchyk-mcpbrowser-releases-download-v0-4-1-mcpbrowser-0-4-1-m)
- npm · `mcpbrowser`: 35/100, [markdown](https://verifymcp.io/servers/cherchyk-mcpbrowser/mcpbrowser.md), [page](https://verifymcp.io/servers/cherchyk-mcpbrowser/mcpbrowser)

## Channel facts

- Registry: `mcpb`
- Package: `https://github.com/cherchyk/MCPBrowser/releases/download/v0.4.1/mcpbrowser-0.4.1.mcpb`
- Version: `0.4.1`
- Transport: `stdio`

## Trust breakdown

How this component scores in each security and reliability category. Every signal is checked automatically from public evidence about the published package, including repeated runs of it in an isolated sandbox, and we only credit what we can confirm. Scores are 0–100 per category. Scoring method: https://verifymcp.io/docs/scoring (what has changed: https://verifymcp.io/docs/scoring/changelog)

Scored 2026-08-03.

- **Supply Chain Security**: 13/100
  - Malware scan not yet available for this package.
  - CVE data not yet available for this package.
  - No install/post-install scripts declared.
  - Only part of the dependency tree could be resolved (173 of 177), so this covers what we could see, not the whole tree.
- **Provenance & Transparency**: 39/100
  - Source repository is publicly reachable at the declared URL.
  - Provenance check failed: no build-provenance attestation is published.
  - Clear OSI-approved license (MIT).
  - Maintenance history not yet determined.
  - Disclosure check failed: no security disclosure policy was found in the source repository.
- **Schema Quality & AI Usability**: 81/100
  - 100% of prompts and resources have a non-trivial description (not blank, and not just the item's name).
  - AI-judged instruction clarity (excellent).
  - Context-footprint check failed: tool/resource definitions use about 1967 tokens (~196/item across 10 items; 10 tools + 0 resources), over budget; trim descriptions and params.
  - Usage-examples check failed: none of the tools include examples.
- **Stability & Change Management**: 0/100
  - Stability not yet verified: not enough scan history yet (needs a 30-day window).
- **Tool Coverage**: 100/100
  - 100% of tools have a non-trivial description (not blank, and not just the tool's name).
  - 100% of tool parameters carry a description.
  - Structured output schemas are declared (100% of tools); any adoption earns full credit.
- **Capabilities**: 100/100
  - Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.

**Unverified: 1 category.** A category scored 0 because we could not verify it: a data source with nothing on this package, evidence we could not reach, or a check we could not run. We only credit what we can confirm.

## Install

- Download bundle: `https://github.com/cherchyk/MCPBrowser/releases/download/v0.4.1/mcpbrowser-0.4.1.mcpb`

## Changelog

Every change recorded for this component, newest first. Days that predate change tracking, or that we cannot explain, say so: "we were watching and nothing happened" and "we were not watching" are different claims.

### 2026-08-02 (score 43, +11)

- [security] Stability: Stability not yet verified: not enough scan history yet (needs a 30-day window).
- [functional regression] Maintenance: pass → unverified
- [functional improvement] MCP protocol: unverified → pass
- [functional improvement] Dependency health: unverified → partial
- [functional improvement] Schema quality: unverified → excellent

### 2026-07-31 (score 32, +17)

- [functional] We updated how we score, so this day's move reflects our rubric, not a change to the server

### 2026-07-30 (score 15)

First indexed and scored.

## MCP tools (10)

### `browser_fetch_webpage` (~305 tokens)

Fetch Web Page

Load any URL and return its content using a real browser with full JavaScript execution. Use whenever a webpage needs to be loaded — whether to read content, interact with a web app, or access any HTTP/HTTPS resource. Connects to the user's existing browser session with all cookies, logins, and SSO sessions available automatically. Handles JavaScript rendering, authentication, and anti-bot protection. Prefer this over generic HTTP fetch for authenticated or JS-heavy pages.

Input parameters:

- `detectForms` (boolean): Scan page for forms and return structured form data (fields, selectors, submit buttons, orphaned inputs). Set to true when you need to fill or interact with forms.
- `format` (string): Format for the returned content. 'html' (default) returns cleaned HTML. 'text' returns normalized visible text. 'markdown' returns readable Markdown. For 'text' and 'markdown' without a selector, MCP…
- `selector` (string): CSS selector to extract a specific DOM subtree instead of the full page. Prefer semantic content regions like 'main', 'article', or '[role="main"]' to capture the primary content while skipping navig…
- `url` (string, required): The URL to fetch

Output parameters:

- `currentUrl` (string): Final URL after any redirects
- `forms` (array): Detected forms with fields, selectors, and metadata
- `html` (string): Page content in the requested format (cleaned HTML by default; visible text or Markdown when 'format' is set)
- `nextSteps` (array): Suggested next actions
- `orphanedFields` (array): Input/select/textarea elements not inside any <form>
- `recommendedPlugins` (array): Detected site-specific plugins available for this domain
- `scrollableAreas` (array): Scrollable containers on the page. Pass a selector to browser_scroll_page's 'container' parameter to scroll within a specific area.
- `totalFieldCount` (number): Total number of form fields found on the page

### `browser_execute_javascript` (~125 tokens)

Execute JavaScript

Run JavaScript on a browser-loaded page and get the result. Use when: you need to extract structured data from a page, manipulate the DOM, read page state, run custom queries on page content, or perform UI actions that CSS selectors cannot reach. Returns the script result as JSON, text, or void. PREREQUISITE: Page must be loaded with browser_fetch_webpage first.

Input parameters:

- `script` (string, required): JavaScript source code to execute in page context
- `url` (string, required): The URL of the page (must match a previously fetched page)

Output parameters:

- `currentUrl` (string): URL after execution
- `error` (object): Error object when script throws or times out
- `executionTimeMs` (number): Script execution duration
- `nextSteps` (array)
- `recommendedPlugins` (array): Detected site-specific plugins available for this domain
- `result` (string): Serialized result of the script
- `truncated` (boolean): True if result was capped to size limit
- `type` (string): Type of the returned result
- `urlChanged` (boolean): True if page URL changed during execution

### `browser_click_element` (~208 tokens)

Click Element

Click buttons, links, or any element on a browser-loaded page. Use when: you need to navigate a website, submit a form, press a button, follow a link, or interact with any clickable UI element. Targets by CSS selector or visible text. Returns updated page HTML after click. PREREQUISITE: Page must be loaded with browser_fetch_webpage first.

Input parameters:

- `detectForms` (boolean): Scan page for forms after click and return structured form data (fields, selectors, submit buttons, orphaned inputs). Only applies when returnHtml=true. Set to true when you need to fill or interact…
- `selector` (string): CSS selector for the element to click (e.g., '#submit-btn', '.login-button')
- `text` (string): Text content to search for if selector is not provided (e.g., 'Sign In', 'Submit')
- `url` (string, required): The URL of the page (must match a previously fetched page)

Output parameters:

- `currentUrl` (string): URL after click
- `fallbackAttempt` (object): Present when fallbackUsed is true
- `fallbackUsed` (boolean): True when native click timed out and JS fallback ran
- `forms` (array): Detected forms with fields, selectors, and metadata (when returnHtml is true)
- `html` (string): Page HTML if returnHtml was true, null otherwise
- `message` (string): Status message
- `nativeAttempt` (object)
- `nextSteps` (array): Suggested next actions
- `orphanedFields` (array): Input/select/textarea elements not inside any <form> (when returnHtml is true)
- `postClickWait` (object): Post-click wait metadata
- `recommendedPlugins` (array): Detected site-specific plugins available for this domain
- `scrollableAreas` (array): Scrollable containers on the page. Pass a selector to browser_scroll_page's 'container' parameter to scroll within a specific area.
- `status` (string): Overall click status after native and fallback attempts
- `totalFieldCount` (number): Total number of form fields found on the page

### `browser_type_text` (~116 tokens)

Type Text

Type text into input fields on a browser-loaded page. Use when: you need to fill a form, enter a search query, type into a text box, or input data into any editable field. Supports filling multiple fields in a single call. PREREQUISITE: Page must be loaded with browser_fetch_webpage first.

Input parameters:

- `fields` (array, required): Array of fields to fill. Each field specifies a selector and text to type.
- `url` (string, required): The URL of the page (must match a previously fetched page)

Output parameters:

- `currentUrl` (string): URL after typing
- `html` (string): Page HTML if returnHtml was true, null otherwise
- `message` (string): Success message
- `nextSteps` (array): Suggested next actions

### `browser_close_tab` (~62 tokens)

Close Tab

Close a browser tab to free resources. Use when: you are done with a page and want to release memory, or need to reset session state for a hostname. Uses exact hostname match.

Input parameters:

- `url` (string, required): The URL whose hostname tab should be closed

Output parameters:

- `hostname` (string): Hostname that was closed
- `message` (string): Success message
- `nextSteps` (array): Suggested next actions

### `browser_get_current_html` (~295 tokens)

Get Current HTML

Re-read HTML from an already-loaded page without reloading it. Use when: you need to check page state after a click or form fill, re-extract content from the current page, or get updated HTML after dynamic changes. Much faster than browser_fetch_webpage since it skips navigation. PREREQUISITE: Page must be loaded with browser_fetch_webpage first.

Input parameters:

- `detectForms` (boolean): Scan page for forms and return structured form data (fields, selectors, submit buttons, orphaned inputs). Set to true when you need to fill or interact with forms.
- `format` (string): Format for the returned content. 'html' (default) returns cleaned HTML. 'text' returns normalized visible text. 'markdown' returns readable Markdown. For 'text' and 'markdown' without a selector, MCP…
- `selector` (string): CSS selector to extract a specific DOM subtree instead of the full page. Prefer semantic content regions like 'main', 'article', or '[role="main"]' to capture the primary content while skipping navig…
- `url` (string, required): The URL of the page (must match a previously fetched page)

Output parameters:

- `currentUrl` (string): Current page URL
- `forms` (array): Detected forms with fields, selectors, and metadata
- `html` (string): Page content in the requested format (cleaned HTML by default; visible text or Markdown when 'format' is set)
- `nextSteps` (array): Suggested next actions
- `orphanedFields` (array): Input/select/textarea elements not inside any <form>
- `recommendedPlugins` (array): Detected site-specific plugins available for this domain
- `scrollableAreas` (array): Scrollable containers on the page. Pass a selector to browser_scroll_page's 'container' parameter to scroll within a specific area.
- `totalFieldCount` (number): Total number of form fields found on the page

### `browser_take_screenshot` (~137 tokens)

Take Screenshot

Capture a screenshot of a browser-loaded page as PNG. Set fullPage=true to capture the entire scrollable page in one shot — this avoids multiple scroll+screenshot cycles. Only use fullPage=false when you specifically need just the current viewport (rare). Use when: you need to see what a page looks like, analyze visual layout, view charts/images/graphs, debug UI issues, or when HTML alone is insufficient. Returns base64-encoded PNG. PREREQUISITE: Page must be loaded with browser_fetch_webpage first.

Input parameters:

- `url` (string, required): The URL of the page (must match a previously fetched page)

Output parameters:

- `currentUrl` (string): Current page URL
- `mimeType` (string): Image MIME type (image/png)
- `nextSteps` (array): Suggested next actions
- `screenshotBase64` (string): Base64-encoded PNG screenshot

### `browser_scroll_page` (~313 tokens)

Scroll Page

Scroll within a browser-loaded page. Automatically detects scrollable containers inside SPAs (e.g., ADO, Jira, Gmail) where the main content scrolls inside an inner div rather than the window. Use when: you need to see more content below the fold, bring an element into view before clicking, scroll to a specific section, or navigate long pages. Supports scroll by direction, to a CSS selector, or to absolute coordinates. PREREQUISITE: Page must be loaded with browser_fetch_webpage first.

Input parameters:

- `amount` (number): Pixels to scroll in the specified direction. Default: 500 (roughly half a viewport).
- `container` (string): CSS selector of a specific scrollable container to scroll within. Use when the page has multiple scroll areas (e.g., a sidebar + main content). Get available selectors from the scrollableAreas field…
- `direction` (string): Direction to scroll. Use with 'amount' parameter.
- `selector` (string): CSS selector of element to scroll into view. When provided, ignores direction/amount and scrolls until the element is visible.
- `url` (string, required): The URL of the page (must match a previously fetched page)
- `x` (number): Absolute horizontal scroll position. Use with 'y' for precise positioning.
- `y` (number): Absolute vertical scroll position. Use with 'x' for precise positioning.

Output parameters:

- `currentUrl` (string): Current page URL
- `nextSteps` (array): Suggested next actions
- `pageHeight` (number): Total scrollable page height
- `pageWidth` (number): Total scrollable page width
- `scrollX` (number): New horizontal scroll position in pixels
- `scrollY` (number): New vertical scroll position in pixels
- `scrollableAreas` (array): Scrollable containers detected on the page. Pass a selector to the 'container' parameter to scroll within a specific area.
- `viewportHeight` (number): Visible viewport height
- `viewportWidth` (number): Visible viewport width

### `browser_navigate_history` (~107 tokens)

Navigate Back/Forward

Go back or forward in browser history. Use when: you clicked a link and need to return to the previous page, or want to go forward after going back. PREREQUISITE: Page must be loaded with browser_fetch_webpage first.

Input parameters:

- `direction` (string): Navigation direction: 'back' to go to previous page, 'forward' to go to next page
- `url` (string, required): URL of the already-loaded page (identifies which tab to navigate)

Output parameters:

- `currentUrl` (string): URL after navigation
- `direction` (string): Navigation direction used
- `html` (string): Page HTML content after navigation (null if returnHtml=false)
- `nextSteps` (array): Suggested next actions
- `previousUrl` (string): URL before navigation

### `browser_detect_forms` (~95 tokens)

Detect Forms

Scan a browser-loaded page and return all forms as structured JSON — fields, types, validation rules, submit buttons, and orphaned inputs. Use when: you need to understand a form before filling it, discover what fields exist on a page, or map form structure for automation. PREREQUISITE: Page must be loaded with browser_fetch_webpage first.

Input parameters:

- `url` (string, required): URL of the already-loaded page

Output parameters:

- `forms` (array): Array of detected forms with fields and metadata
- `nextSteps` (array): Suggested next actions
- `orphanedFields` (array): Input/select/textarea elements not inside any <form>
- `summary` (string): Human-readable summary of detected forms
- `totalFieldCount` (number): Total number of fields found

## Diagnostics

Captured diagnostic sections: Provenance, Dependencies. The full working is on the page: https://verifymcp.io/servers/cherchyk-mcpbrowser/https-github-com-cherchyk-mcpbrowser-releases-download-v0-4-1-mcpbrowser-0-4-1-m#diagnostics

## Score history

- 2026-08-03: 43
- 2026-08-02: 43
- 2026-08-01: 32
- 2026-07-31: 32
- 2026-07-30: 15

## Links

- Repository: https://github.com/cherchyk/MCPBrowser
- Changelog RSS feed: https://verifymcp.io/servers/cherchyk-mcpbrowser/https-github-com-cherchyk-mcpbrowser-releases-download-v0-4-1-mcpbrowser-0-4-1-m/changelog.xml
- Changelog JSON feed: https://verifymcp.io/servers/cherchyk-mcpbrowser/https-github-com-cherchyk-mcpbrowser-releases-download-v0-4-1-mcpbrowser-0-4-1-m/changelog.json
- HTML version of this page: https://verifymcp.io/servers/cherchyk-mcpbrowser/https-github-com-cherchyk-mcpbrowser-releases-download-v0-4-1-mcpbrowser-0-4-1-m
