Browser automation and Chrome capabilities exposed as an MCP service, with native messaging host and browser extension components
Tabrix exposes 18 browser automation tools with significant definition gaps. Most tools have descriptions (good), but parameter documentation is sparse and inconsistent. Many tools lack descriptions for their input parameters, critical for LLM understanding. Schemas are present but incomplete: parameters often lack type constraints, enums, and validation guidance. No output schemas are documented. Error handling is minimal. Tool naming follows verb_noun convention (chrome_click, chrome_navigate) but some names are generic (chrome_execute_javascript). The flow.* dynamic tools are inferred rather than explicitly registered, capping their scores at 50. Overall, the server provides functional automation but falls short of production-grade definition quality.
Create a bookmark in the browser
Delete a bookmark from the browser
Click an element on the current page by selector or coordinates
Close a browser tab
Execute arbitrary JavaScript code in the current page context
Upload a file to the current page
Get cookies from the current page or domain
Get list of open browser tabs
Missing parameter descriptions across all tools. Parameters like 'tabId', 'selector', 'variables' lack descriptions explaining their purpose, format, or constraints. LLMs cannot infer parameter meaning from names alone.
No output schemas documented for any tool. LLMs cannot plan downstream calls or extract required fields without knowing what each tool returns. This violates the documented-return-types baseline (100% of A+ tools have them).
Parameters lack type constraints and enums. 'tabTarget' in chrome_navigate has an enum (current|new), but most parameters accept free-form strings without validation guidance. No min/max for numeric params like 'x', 'y', 'timeoutMs'.
Inferred effective spec: <=2025-11-25.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | F | 48 | <=2025-11-25 | v2 |
Navigate to a URL in the current or new browser tab
Read visible content from the current browser page with optional DOM region extraction
Take a screenshot of the current browser page
Set cookies for a domain
Type text into a focused input field
Replay a recorded experience action path with optional modifications
Score and record the outcome of a replayed action step
Suggest action paths from prior experience based on task context
Recorded flow - dynamically generated tools for published flows with configurable variables
Choose the optimal data source context (DOM, API, or knowledge) for reading page data
Generic tool name 'chrome_execute_javascript' does not clearly convey what happens. Executing arbitrary JS is irreversible and high-risk. Name should reflect severity (e.g. 'chrome_execute_js_unsafe') or description should prominently warn of consequences.
Dynamic flow.* tools are inferred from code comments, not explicitly registered with schemas. Tool definitions are not visible in source.