jev-ra
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| BU_CDP_URL | No | CDP URL of an existing Chrome to drive instead of launching a new one. | |
| JEV_RA_MODEL | No | Override the model name. | |
| JEV_RA_CHROME | No | Path to the Chrome binary to launch. | |
| JEV_RA_API_KEY | No | API key for TypeSafe (direct). Highest precedence; used if set. | |
| JEV_RA_ENDPOINT | No | Override the API endpoint. | |
| JEV_RA_VIEWPORT | No | Viewport size, e.g. 1280x900. | 1280x900 |
| JEV_RA_MAX_STEPS | No | Maximum number of steps per run. | 40 |
| JEV_RA_TIMEOUT_S | No | Timeout in seconds. | 120 |
| TYPESAFE_API_KEY | No | TypeSafe API key. Used if JEV_RA_API_KEY is not set. | |
| JEV_RA_SEARCH_URL | No | Search endpoint template; {query} is substituted. | |
| JEV_RA_TEXT_MODEL | No | Optional text helper model name. | |
| OPENROUTER_API_KEY | No | OpenRouter API key (starts with sk-or-). Used if neither JEV_RA_API_KEY nor TYPESAFE_API_KEY is set. | |
| JEV_RA_TEXT_API_KEY | No | Optional text helper API key. | |
| JEV_RA_MAX_DECISIONS | No | Maximum number of decisions per run. | 80 |
| JEV_RA_TEXT_BASE_URL | No | Optional text helper base URL. | |
| JEV_RA_BLOCK_RESOURCES | No | Set to '0' to stop blocking fonts and media. | 1 |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| browser_openB | Open a URL in the shared browser session and summarise the page. |
| browser_runC | Pursue a whole goal on the current page. Supply values for anything that must be typed. |
| browser_actD | Take one decided step towards an instruction on the current page. |
| browser_searchC | Search the web, read the best results in parallel tabs, and rank them against the goal. |
| browser_observeC | List the observed controls and the visible text of the current page. |
| browser_extractB | Pull structured page data from the DOM: text, elements, links, tables or main. |
| browser_clickB | Click one observed element by its ref. |
| browser_typeC | Type text into one observed field by its ref. |
| browser_selectC | Select an observed dropdown option by its value or label. |
| browser_scrollA | Scroll the page one viewport step up or down. |
| browser_pressB | Press Enter, Escape or Tab. |
| browser_waitB | Wait a moment and observe again. |
| browser_screenshotA | Capture the current viewport as a JPEG. |
| browser_closeA | Close the browser session held by this server. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 14 tools
Most tools are clearly distinct, but browser_act overlaps with browser_click/type/select/etc. as a generic 'take a step' action, and browser_run could be confused with act at a higher level. The descriptions help distinguish them, but an agent might occasionally misselect between generic and specific actions.
All 14 tools follow the exact same browser_<verb> pattern using lowercase snake_case. The naming is highly predictable and consistent, making it easy to infer a tool's purpose from its prefix and verb.
14 tools is a well-scoped count for a browser automation server, covering navigation, observation, interaction, and high-level task execution without being bloated. Each tool has a clear role in the workflow.
The surface covers the core browser lifecycle (open, observe, interact, navigate, close) and includes both low-level and high-level operations. Minor gaps like back/forward navigation or page refresh are missing, but agents can work around them using open or run.