jev-browser-sidekick-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| TYPESAFE_API_KEY | No | Your official TypeSafe API key. Required if using the TypeSafe provider. | |
| OPENROUTER_API_KEY | No | Your OpenRouter API key. Required if using the OpenRouter provider. |
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": true
} |
| resources | {
"listChanged": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| run_actionA | Drive a browser through steps you write. Jev chooses on each page. Use for search, open, click, and read on live pages, and for several independent errands in one call through groups, one tab each, so two sites never need two calls. Returns a status per step, a handoff when one stops, and the tokens the API reported. Step shapes and status tables are in this server's instructions. |
| use_jev_rawA | Ask Jev one typed question, or several. No browser. Use whenever a decision has more than one defensible answer and you are about to pick on instinct. Jev returns a probability for every option plus a confidence, so a close call reads close and a clear one reads clear. Anything you would settle by coin flip and call judgment belongs here. Worth handing over: which fix to do first, which name or design to ship when each has a real trade-off, whether this text meets a bar you can write down, which of two error messages a stranger reads faster, whether a step is risky enough to stop and ask the user, how to rank candidates, which reading of an ambiguous request the user meant. Ask every question in one call. They share the state, they answer in parallel, and each extra question costs its own tokens and almost no extra time. Three questions over a page of state run about a tenth of a cent. The answer gives the chosen option, the probability of every option, a confidence, and the tokens the API counted. Question shapes and criteria rules: jev://raw-decisions |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
| jev-raw-decisions | Question shapes for use_jev_raw: state, choice, score, noul, criteria rules, confidence, size limits, worked example. Read before the first use_jev_raw call. |
| jev-reading-a-result | Result tables: status, page reason, endpoint reason, handoff and resume, expect and proof, usage fields. Read on rejected, blocked, error, unverified, max_steps, or any unfamiliar reason. |
TDQS
Scored across 2 tools
run_action drives a browser while use_jev_raw answers typed decision questions with no browser, so the core split is clear. There is mild overlap since run_action internally has 'Jev choose' on each page, which brushes against use_jev_raw's decision role, but the browser/no-browser boundary keeps them mostly distinct.
Both names are snake_case, but run_action is a clean verb_noun while use_jev_raw embeds a product name plus an adjective, so the pattern is not predictable. Readable, but the two names follow different construction conventions.
Two tools is thin for a browser sidekick, and the surface leans entirely on run_action to multiplex search, click, read, tabs, and groups. It is a defensible facade design, but the low count is borderline for the apparent scope.
run_action covers search, open, click, read, groups, multi-tab errands, and use_jev_raw covers decisions, which spans the main intent. However, there is no explicit surface for page extraction, screenshots, navigation history, or tab cleanup, so some lifecycle operations are unaddressed.