vintik100/bunbrowser (vintik100/bunbrowser) is an MCP server listed on the M8ven Trust Index. It scores 68 out of 100, grade C. It declares 30 tools. No publisher has claimed this listing.
Ultra-fast, zero-download MCP server for browser automation powered by Bun.WebView. Provides 24 tools for navigation, interaction, screenshots, performance audits, and more, as a drop-in replacement for @playwright/mcp.
Caution. Specific findings reduced this grade. They are listed on the page. Grades reflect the full trust pyramid: code, verification depth, and reputation. New projects cap at C until adoption is earned.
How we verified
Verified is a snapshot. Live keeps it current, and builds your track record.
⚡ Connect GitHub → continuous verification on every pushwhy connect →Who stands behind it
vintik100
Source: Glama
Claim it to get a verified publisher badge, a free copy of our full audit findings, and direct contact for any high-priority issues we find. Or connect your repo for our deepest verification, Live Monitored: read-only, revoke anytime. What we access →
Install from
The grade above is for the source repository. Registries can serve a different version, so we mark the ones we were not able to read.
These names and descriptions are the publisher's own, read from the source code. We print them as written. Our assessment is the findings above, not this list.
browser_snapshotPRIMARY INSPECTION TOOL. Captures the complete semantic accessibility tree of the active page with deterministic element references ([ref=eN]). ALWAYS prefer this over screenshots for discovering interactive elements, reading page text, and finding buttons/inputs.
browser_take_screenshotVISUAL ONLY. Captures an image screenshot of the current page viewport in Base64 encoding. Use ONLY for visual design validation, canvas/image inspection, or when explicitly requested. For element discovery and reading content, use browser_snapshot instead.
browser_evaluateExecute an arbitrary JavaScript expression in the context of the active page and serialize its return value.
browser_get_contentRetrieve raw HTML DOM source code or plain visible text of the active page.
browser_console_logsRetrieve captured console logs (log, warn, error, info) emitted by the page JavaScript context.
browser_clickClick on an element. PREFER using 'ref' (e.g. 'e1' from browser_snapshot) for reliable deterministic targeting. Fall back to CSS selector or coordinates (x, y) if ref is unavailable.
browser_typeType text into an editable input or textarea element. Prefer using 'ref' (e.g. 'e2'). For filling multiple form fields, use browser_fill_form instead to save steps.
browser_fill_formBATCH FORM FILLER. PREFER over multiple individual browser_type calls. Fills multiple inputs and optionally clicks a submit button in a single turn.
browser_press_keyPress a keyboard key or key combination (e.g. 'Enter', 'Escape', 'Tab', 'ArrowDown', 'Backspace', 'KeyA')
browser_hoverHover the mouse pointer over an element to trigger hover states or dropdown menus
browser_scrollScroll the viewport or scroll an element into view
browser_select_optionSelect one or more options in a <select> dropdown element
browser_dragDrag an element and drop it onto another element
browser_get_metricsExtract real-time web performance metrics, Core Web Vitals (TTFB, FCP, load duration), JavaScript heap memory consumption, and network resource transfer breakdown.
browser_lighthouse_auditFULL WEB QUALITY AUDIT. Computes Lighthouse scores (0-100) for Performance, Accessibility, Best Practices, and SEO. Returns actionable recommendations and diagnostics to optimize Core Web Vitals (FCP, LCP, TTFB, CLS) and user experience.
browser_navigateNavigate the active browser tab to a specified URL and wait for load
browser_navigate_backNavigate back in the browser history
browser_navigate_forwardNavigate forward in the browser history
browser_reloadReload the current page in the active tab
browser_cdpExecute a raw Chrome DevTools Protocol (CDP) command on the active tab (Chrome/Chromium backend)
browser_cookiesGet, set, or clear cookies for the active browser session
browser_localstorageInspect, set, or clear localStorage keys in the active page origin
browser_tabsList all open browser tabs with their IDs, URLs, titles, and active status
browser_tab_newOpen a new browser tab/view, optionally navigating to an initial URL
browser_tab_switchSwitch the active browser context to a different tab by tabId
browser_tab_closeClose a browser tab (closes the active tab if tabId is omitted)
browser_resizeResize the viewport dimensions of the active browser tab
browser_start_recordingCONTINUOUS VIDEO RECORDER. Starts background video recording of user interactions and animations on the active tab into WebM or animated GIF. Use 'browser_stop_recording' when done to export.
browser_stop_recordingStops the active video recording, exports the resulting WebM or animated GIF file to disk, and returns duration and frame metrics.
browser_record_animationONE-SHOT ANIMATION & MOTION RECORDER. Records UI transitions, CSS keyframe animations, micro-interactions, or visual jank for an exact duration (durationMs) into WebM or animated GIF. Supports triggering actions via triggerScript or triggerSelector.
Disclosed vulnerabilities in this server's declared npm dependencies (via OSV). Whether each is reachable depends on the installed versions.
Anthropic's MCP TypeScript SDK has a ReDoS vulnerability
Model Context Protocol (MCP) TypeScript SDK does not enable DNS rebinding protection by default
Tool annotations
No tools have read-only/destructive annotations
Add readOnlyHint or destructiveHint annotations to every tool so hosts can warn users before invoking.
All four hints declared on every tool
30/30 tools missing one or more hints — browser_snapshot (missing: readOnlyHint, destructiveHint, idempotentHint, openWorldHint); browser_take_screenshot (missing: readOnlyHint, destructiveHint, idempotentHint, openWorldHint); browser_evaluate (missing: readOnlyHint, destructiveHint, idempotentHint, openWorldHint), +27 more. OpenAI's directory rejects tools where any of the four hints are missing or non-boolean.
For every tool, set all four hints (readOnlyHint, destructiveHint, idempotentHint, openWorldHint) to explicit true/false values that match the handler’s actual behaviour.
Tool inputs are validated
Only 13/30 tool handlers declare input schemas (43%)
Declare an inputSchema with zod/joi/yup on every tool definition.
License file
No license file
Add a LICENSE file (MIT, Apache-2.0, etc.).
Production dependencies are patched
0 critical, 2 high severity in production deps — @modelcontextprotocol/sdk@1.6.1 (high), @modelcontextprotocol/sdk@1.6.1 (high)
Run npm audit fix, or upgrade the affected packages to a non-vulnerable version.
Domain consistency
npm scope @bunbrowser doesn't match GitHub owner vintik100
Use the same org name across GitHub, npm, and your homepage so users can verify the publisher.
Claim the listing to review these findings one by one and send us a correction where you disagree, straight to the team. Claiming also means we tell you when the grade moves, and reach you first if we find anything urgent.
[](https://m8ven.ai/mcp/vintik100/bunbrowser)?variant=verified from the URL.Vetting this one by hand? Tool Check is an MCP that scores other MCPs. Add it once and ask Claude, ChatGPT, or any MCP client to grade a server, surface CVEs, check the publisher, and suggest safer alternatives — before you install.
https://m8ven.ai/api/mcp/tool-check