vibatchium
PYPI · VIBATCHIUM
Stealth browser automation for AI agents — real Chrome, N parallel persistent logged-in sessions.
Available components
Last scanned (5 hours ago)
Scores higher than 70% of PyPI servers
Category Browser Automation
Recent critical change
GHSA-6q48-6c7w-9gw2 affects this package (21 Oct 2026). See the changelog before you install this server.
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. How we score → Why this is hard to score →
Supply Chain Security50
- Malware scan not yet available for this package.Unverified
- No known CVEs affecting this package version or its production dependencies.Pass
- Runs hatchling.build at install time, a recognised build step with no custom scripting around it. View diagnostics → Pass
- 0 of 31 dependencies flagged as unhealthy. View diagnostics → Pass
Provenance & Transparency97
- Source repository is publicly reachable at the declared URL. View diagnostics → Pass
- Cryptographically verified build provenance (signed, bound to trueoriginlabs/vibatchium). View diagnostics → Pass
- Clear OSI-approved license (Apache-2.0).Pass
- Actively maintained (last published 28 days ago).Pass
- Disclosure check failed: no security disclosure policy was found in the source repository. See how to fix → Fail
Schema Quality & AI Usability68
- AI-judged instruction clarity (excellent).Pass
- Context-footprint check failed: tool/resource definitions use about 14049 tokens (~161/item across 87 items; 87 tools + 0 resources), over budget; trim descriptions and params. See how to fix → Fail
- Usage-examples check failed: none of the tools include examples. See how to fix → Fail
Stability & Change Management73
- Stability observed for 22 of 30 days with no destabilising changes; credit accrues until the full window elapses.Partial
Tool Coverage99
- 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
- 98% of tool parameters carry a description.Partial
Tool Safety81
- No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.Pass
- 1 of 4 tool(s) whose name or description implies an irreversible operation declare an MCP destructiveHint annotation; "eval" implies "eval" and declares no destructiveHint at all, which the MCP spec reads as destructive by default. See how to fix → Partial
- An AI judge read all 88 captured unit(s) of tool text and found none that tries to manipulate the model reading it.Pass
Capabilities100
- Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.Pass
Every change we have recorded for this component, newest first. Security-relevant changes are always shown. ▲ marks a change for the better, ▼ a change for the worse; unmarked changes are neutral.
- 5 Nov 26 −14
- Malware scan: pass → unverified ▼ security
- 4 Nov 26 −4
- Stability: pass → 0.70 functional
- 1 Nov 26 +15
- Malware scan: unverified → pass ▲ security
- 31 Oct 26 −15
- Malware scan: pass → unverified ▼ security
- 29 Oct 26 +15
- Malware scan: unverified → pass ▲ security
- Stability: 0.97 → pass security
- 28 Oct 26 0
- Stability: pass → 0.97 functional
- 22 Oct 26 +77
- Malware scan: pass → unverified ▼ security
- GHSA-6q48-6c7w-9gw2 no longer affects this package ▲ security
- Known CVEs: fail → pass ▲ security
- Stability: 0.97 → pass security
- Score status: failed → scored ▲ functional
- 21 Oct 26 −92
- GHSA-6q48-6c7w-9gw2 affects this package: none ▼ critical
- Known CVEs: pass → fail ▼ critical
- Score status: scored → failed ▼ critical
- Stability: pass → 0.97 functional
Diagnostic detail from the automated scan of this channel: what the scanner observed at each step, so you can see exactly where a check passed or failed. It is informational only and never changes the trust score.
Captured 5 Nov 2026 · Analysed pypi/vibatchium@0.20.0
Provenance Verified
A signed build attestation was found and verified, binding this exact artifact to the source repository it claims to come from.
| Result | Verified |
|---|---|
| Ecosystem | pypi |
| Reason | Verified |
| Discovered via | Registry attestation endpoint |
| Source repo | trueoriginlabs/vibatchium |
| Certificate issuer | https://token.actions.githubusercontent.com |
| Certificate SAN | https://github.com/trueoriginlabs/vibatchium/.github/workflows/publish.yml@refs/tags/v0.20.0 |
| Rekor log index | 3131074529 |
| Predicate type | PyPI publish attestation https://docs.pypi.org/attestations/publish/v1 |
| Subject digest | sha256:2eb6e960b171729fba0e524f9703923293e6cc5a1e75696eeebc5ebb48003030 |
Background: How many MCP packages publish verified provenance →
Install scripts 1 script
| Hook | Tier | Command |
|---|---|---|
| build_backend | allowlisted | hatchling.build |
Background: Why install scripts are a supply-chain risk →
Dependencies 31 packages
| Packages resolved | 31 |
|---|---|
| Tree resolution | Complete |
Background: SBOMs and build attestations, explained →
The tools this component advertises to a client, with an estimated token cost for each. Expand a tool to see its parameters and schema. The per-tool counts are indicative and are not scored directly; the schema's total context footprint is one signal in Schema Quality & AI Usability. A tool's description is untrusted text the model reads on every call, which is what makes this list a security surface and not just an inventory: how tool poisoning works →
screenshot ~436
Capture a screenshot. With no path it returns a viewable image (not base64 text); with a path it saves the PNG and returns the path. With tiles=true it slices a full-page capture into fixed-height tiles written to DISK (returns their paths + count, never base64) — for layout-heavy pages a vision-capable caller then reads tile-by-tile. Prefer reading the page text/selectors first — only screenshot when you actually need the pixels.
| Name | Type | Req | Description |
|---|---|---|---|
| full_page | boolean | – | Full page (not just viewport). |
| lease | string | – | Optional lease token to present if the target session is leased (0.7.0). Threaded per-call; never read from the server's env. |
| max_screenshot_px | integer | – | Cap the CAPTURED height (px) of a full-page/tiles shot — bounds the decode itself (the real memory driver on tall/infinite-scroll pages), not just tile count. Default VIBATCHIUM_MAX_SCREENSHOT_PX (30… |
| max_tiles | integer | – | Cap the number of tiles (top of page first). Bounds output/disk, not decode memory. If omitted, defaults to VIBATCHIUM_MAX_TILES (60); when a tall page is capped the result carries truncated=true + t… |
| path | string | – | Output file path. |
| session | string | – | Optional session name to target (omit for the shared 'default'). On a daemon shared with other agents, pass a UNIQUE name for stateful multi-step work (go→click→fill) so you don't collide on 'default… |
| tile_dir | string | – | Directory for tile files (default: alongside path, else the screenshots cache). |
| tile_height | integer | – | Tile height in px when tiles=true. |
| tiles | boolean | – | Slice a full-page capture into fixed-height PNG tiles written to disk (0600); returns {tiles:[paths], count}. Implies full_page. |
No output schema declared.
No examples provided.
screenshot_annotate ~135
Screenshot with @eN bounding-box overlays (vision-LLM friendly).
| Name | Type | Req | Description |
|---|---|---|---|
| full_page | boolean | – | Capture full page. |
| lease | string | – | Optional lease token to present if the target session is leased (0.7.0). Threaded per-call; never read from the server's env. |
| path | string | yes | Output PNG path. |
| session | string | – | Optional session name to target (omit for the shared 'default'). On a daemon shared with other agents, pass a UNIQUE name for stateful multi-step work (go→click→fill) so you don't collide on 'default… |
No output schema declared.
No examples provided.
scroll ~141
Scroll the page or a target element into view.
| Name | Type | Req | Description |
|---|---|---|---|
| dx | integer | – | Horizontal pixels. |
| dy | integer | – | Vertical pixels. |
| lease | string | – | Optional lease token to present if the target session is leased (0.7.0). Threaded per-call; never read from the server's env. |
| session | string | – | Optional session name to target (omit for the shared 'default'). On a daemon shared with other agents, pass a UNIQUE name for stateful multi-step work (go→click→fill) so you don't collide on 'default… |
| target | string | – | Optional @eN/selector to scroll into view. |
No output schema declared.
No examples provided.
select ~159
Pick option(s) on a <select>; choose by value/label/index.
| Name | Type | Req | Description |
|---|---|---|---|
| index | integer | – | Zero-based option index. |
| label | string | – | Option visible label. |
| lease | string | – | Optional lease token to present if the target session is leased (0.7.0). Threaded per-call; never read from the server's env. |
| session | string | – | Optional session name to target (omit for the shared 'default'). On a daemon shared with other agents, pass a UNIQUE name for stateful multi-step work (go→click→fill) so you don't collide on 'default… |
| target | string | yes | @eN or selector for the <select>. |
| value | string | – | Option value attribute. |
No output schema declared.
No examples provided.
session_close ~116
Stop Chrome for one session (profile dir preserved).
| Name | Type | Req | Description |
|---|---|---|---|
| lease | string | – | Optional lease token to present if the target session is leased (0.7.0). Threaded per-call; never read from the server's env. |
| name | string | – | Session name. |
| session | string | – | Optional session name to target (omit for the shared 'default'). On a daemon shared with other agents, pass a UNIQUE name for stateful multi-step work (go→click→fill) so you don't collide on 'default… |
No output schema declared.
No examples provided.
session_close_all ~105
Stop Chrome for every running session.
| Name | Type | Req | Description |
|---|---|---|---|
| lease | string | – | Optional lease token to present if the target session is leased (0.7.0). Threaded per-call; never read from the server's env. |
| session | string | – | Optional session name to target (omit for the shared 'default'). On a daemon shared with other agents, pass a UNIQUE name for stateful multi-step work (go→click→fill) so you don't collide on 'default… |
No output schema declared.
No examples provided.
session_delete ~119
Delete a session's profile dir on disk (not active/default).
| Name | Type | Req | Description |
|---|---|---|---|
| lease | string | – | Optional lease token to present if the target session is leased (0.7.0). Threaded per-call; never read from the server's env. |
| name | string | yes | Session name. |
| session | string | – | Optional session name to target (omit for the shared 'default'). On a daemon shared with other agents, pass a UNIQUE name for stateful multi-step work (go→click→fill) so you don't collide on 'default… |
No output schema declared.
No examples provided.
session_lease ~212
Acquire/renew an exclusive advisory lease on a running session (0.7.0). Returns a token; present it as the `lease` arg on subsequent calls so other clients get a 'busy' error instead of clobbering the shared page.
| Name | Type | Req | Description |
|---|---|---|---|
| lease | string | – | Optional lease token to present if the target session is leased (0.7.0). Threaded per-call; never read from the server's env. |
| name | string | – | Session name (default: current session). |
| owner | string | – | Holder label shown in the busy message. |
| session | string | – | Optional session name to target (omit for the shared 'default'). On a daemon shared with other agents, pass a UNIQUE name for stateful multi-step work (go→click→fill) so you don't collide on 'default… |
| steal | boolean | – | Take over a lease held by someone else. |
| ttl_s | integer | – | Lease seconds (default 60, max 3600). |
No output schema declared.
No examples provided.
session_lease_info ~121
Report the lease state for a session (never returns the token).
| Name | Type | Req | Description |
|---|---|---|---|
| lease | string | – | Optional lease token to present if the target session is leased (0.7.0). Threaded per-call; never read from the server's env. |
| name | string | – | Session name. |
| session | string | – | Optional session name to target (omit for the shared 'default'). On a daemon shared with other agents, pass a UNIQUE name for stateful multi-step work (go→click→fill) so you don't collide on 'default… |
No output schema declared.
No examples provided.
session_list ~109
List every on-disk session + which are currently running.
| Name | Type | Req | Description |
|---|---|---|---|
| lease | string | – | Optional lease token to present if the target session is leased (0.7.0). Threaded per-call; never read from the server's env. |
| session | string | – | Optional session name to target (omit for the shared 'default'). On a daemon shared with other agents, pass a UNIQUE name for stateful multi-step work (go→click→fill) so you don't collide on 'default… |
No output schema declared.
No examples provided.
session_new ~121
Create a new on-disk session/profile dir (does NOT launch Chrome).
| Name | Type | Req | Description |
|---|---|---|---|
| lease | string | – | Optional lease token to present if the target session is leased (0.7.0). Threaded per-call; never read from the server's env. |
| name | string | yes | Session name. |
| session | string | – | Optional session name to target (omit for the shared 'default'). On a daemon shared with other agents, pass a UNIQUE name for stateful multi-step work (go→click→fill) so you don't collide on 'default… |
No output schema declared.
No examples provided.
session_release ~149
Release a session lease — present the token via the `lease` arg, or force=true to break it (operator override).
| Name | Type | Req | Description |
|---|---|---|---|
| force | boolean | – | Break the lease without the token. |
| lease | string | – | Optional lease token to present if the target session is leased (0.7.0). Threaded per-call; never read from the server's env. |
| name | string | – | Session name (default: current session). |
| session | string | – | Optional session name to target (omit for the shared 'default'). On a daemon shared with other agents, pass a UNIQUE name for stateful multi-step work (go→click→fill) so you don't collide on 'default… |
No output schema declared.
No examples provided.
session_switch ~111
Alias for session_use.
| Name | Type | Req | Description |
|---|---|---|---|
| lease | string | – | Optional lease token to present if the target session is leased (0.7.0). Threaded per-call; never read from the server's env. |
| name | string | yes | Session name. |
| session | string | – | Optional session name to target (omit for the shared 'default'). On a daemon shared with other agents, pass a UNIQUE name for stateful multi-step work (go→click→fill) so you don't collide on 'default… |
No output schema declared.
No examples provided.
session_use ~118
Set the active session (persisted to active-session file).
| Name | Type | Req | Description |
|---|---|---|---|
| lease | string | – | Optional lease token to present if the target session is leased (0.7.0). Threaded per-call; never read from the server's env. |
| name | string | yes | Session name. |
| session | string | – | Optional session name to target (omit for the shared 'default'). On a daemon shared with other agents, pass a UNIQUE name for stateful multi-step work (go→click→fill) so you don't collide on 'default… |
No output schema declared.
No examples provided.
set_log_verbs ~152
Toggle the daemon's per-verb DEBUG audit log at runtime. Useful for non-trivial runs where you want a full call trail; the toggle's response returns the daemon-log path to tail.
| Name | Type | Req | Description |
|---|---|---|---|
| lease | string | – | Optional lease token to present if the target session is leased (0.7.0). Threaded per-call; never read from the server's env. |
| on | boolean | yes | True to enable, false to disable. |
| session | string | – | Optional session name to target (omit for the shared 'default'). On a daemon shared with other agents, pass a UNIQUE name for stateful multi-step work (go→click→fill) so you don't collide on 'default… |
No output schema declared.
No examples provided.
start ~341
Start a browser session (cold-launch real Chrome).
| Name | Type | Req | Description |
|---|---|---|---|
| backend | string | – | Stealth backend: patchright (default) | nodriver | auto. nodriver needs `pip install vibatchium[nodriver]`. |
| ephemeral | boolean | – | Delete this session's profile dir on close — for one-shot work that shouldn't leave login state on disk. Prevents profile bloat from per-run sessions. |
| headless | boolean | – | Headless mode — the MCP default. UA is de-Headless'd automatically; headed clears residual GPU/screen tells and is worth a retry on hard walls. |
| lease | string | – | Optional lease token to present if the target session is leased (0.7.0). Threaded per-call; never read from the server's env. |
| profile | string | – | Persistent profile dir (default: cache dir). |
| scale | number | – | devicePixelRatio for this session (1-4, persisted). Set 2 when you need retina-resolution screenshots — including of interactive states (a modal, a hover, a logged-in view) that a headless one-shot c… |
| session | string | – | Optional session name to target (omit for the shared 'default'). On a daemon shared with other agents, pass a UNIQUE name for stateful multi-step work (go→click→fill) so you don't collide on 'default… |
No output schema declared.
No examples provided.
status ~102
Daemon + session status.
| Name | Type | Req | Description |
|---|---|---|---|
| lease | string | – | Optional lease token to present if the target session is leased (0.7.0). Threaded per-call; never read from the server's env. |
| session | string | – | Optional session name to target (omit for the shared 'default'). On a daemon shared with other agents, pass a UNIQUE name for stateful multi-step work (go→click→fill) so you don't collide on 'default… |
No output schema declared.
No examples provided.
stop ~101
Stop the browser session.
| Name | Type | Req | Description |
|---|---|---|---|
| lease | string | – | Optional lease token to present if the target session is leased (0.7.0). Threaded per-call; never read from the server's env. |
| session | string | – | Optional session name to target (omit for the shared 'default'). On a daemon shared with other agents, pass a UNIQUE name for stateful multi-step work (go→click→fill) so you don't collide on 'default… |
No output schema declared.
No examples provided.
text ~145
Get inner text (whole page or a target — @eN, @text:Foo, @label:Email, CSS, etc.).
| Name | Type | Req | Description |
|---|---|---|---|
| lease | string | – | Optional lease token to present if the target session is leased (0.7.0). Threaded per-call; never read from the server's env. |
| session | string | – | Optional session name to target (omit for the shared 'default'). On a daemon shared with other agents, pass a UNIQUE name for stateful multi-step work (go→click→fill) so you don't collide on 'default… |
| target | string | – | Optional @eN / @text: / @label: / CSS. |
No output schema declared.
No examples provided.
title ~101
Get current page title.
| Name | Type | Req | Description |
|---|---|---|---|
| lease | string | – | Optional lease token to present if the target session is leased (0.7.0). Threaded per-call; never read from the server's env. |
| session | string | – | Optional session name to target (omit for the shared 'default'). On a daemon shared with other agents, pass a UNIQUE name for stateful multi-step work (go→click→fill) so you don't collide on 'default… |
No output schema declared.
No examples provided.
type ~164
Type text (key-by-key) into an element.
| Name | Type | Req | Description |
|---|---|---|---|
| delay_ms | integer | – | Per-keystroke delay (ms). |
| index | integer | – | Type into the Nth match (0-based, document order). |
| lease | string | – | Optional lease token to present if the target session is leased (0.7.0). Threaded per-call; never read from the server's env. |
| session | string | – | Optional session name to target (omit for the shared 'default'). On a daemon shared with other agents, pass a UNIQUE name for stateful multi-step work (go→click→fill) so you don't collide on 'default… |
| target | string | yes | @eN ref or selector. |
| text | string | yes | Text to type. |
No output schema declared.
No examples provided.
uncheck ~114
Uncheck a checkbox.
| Name | Type | Req | Description |
|---|---|---|---|
| lease | string | – | Optional lease token to present if the target session is leased (0.7.0). Threaded per-call; never read from the server's env. |
| session | string | – | Optional session name to target (omit for the shared 'default'). On a daemon shared with other agents, pass a UNIQUE name for stateful multi-step work (go→click→fill) so you don't collide on 'default… |
| target | string | yes | @eN or selector. |
No output schema declared.
No examples provided.
upload ~125
Set files on an input[type=file] target.
| Name | Type | Req | Description |
|---|---|---|---|
| files | array | yes | – |
| lease | string | – | Optional lease token to present if the target session is leased (0.7.0). Threaded per-call; never read from the server's env. |
| session | string | – | Optional session name to target (omit for the shared 'default'). On a daemon shared with other agents, pass a UNIQUE name for stateful multi-step work (go→click→fill) so you don't collide on 'default… |
| target | string | yes | @eN or selector. |
No output schema declared.
No examples provided.
url ~100
Get current URL.
| Name | Type | Req | Description |
|---|---|---|---|
| lease | string | – | Optional lease token to present if the target session is leased (0.7.0). Threaded per-call; never read from the server's env. |
| session | string | – | Optional session name to target (omit for the shared 'default'). On a daemon shared with other agents, pass a UNIQUE name for stateful multi-step work (go→click→fill) so you don't collide on 'default… |
No output schema declared.
No examples provided.
value ~127
Get the current value of an input/textarea/select.
| Name | Type | Req | Description |
|---|---|---|---|
| lease | string | – | Optional lease token to present if the target session is leased (0.7.0). Threaded per-call; never read from the server's env. |
| session | string | – | Optional session name to target (omit for the shared 'default'). On a daemon shared with other agents, pass a UNIQUE name for stateful multi-step work (go→click→fill) so you don't collide on 'default… |
| target | string | yes | @eN / @text: / @label: / CSS. |
No output schema declared.
No examples provided.
verify_url ~179
Fast pre-check (DNS, optional HTTP HEAD) for a URL before `go` commits to a 30s navigation timeout. Catches typos and dead domains in ~50ms instead of 30s.
| Name | Type | Req | Description |
|---|---|---|---|
| check_http | boolean | – | Also do HTTP HEAD (default false). |
| lease | string | – | Optional lease token to present if the target session is leased (0.7.0). Threaded per-call; never read from the server's env. |
| session | string | – | Optional session name to target (omit for the shared 'default'). On a daemon shared with other agents, pass a UNIQUE name for stateful multi-step work (go→click→fill) so you don't collide on 'default… |
| timeout_ms | integer | – | Per-stage timeout in ms. |
| url | string | yes | Target URL to verify. |
No output schema declared.
No examples provided.
vision_budget ~144
Report today + lifetime vision spend vs VIBATCHIUM_VISION_MAX_*_USD caps. reset='today'|'lifetime'|'all' clears the spend log.
| Name | Type | Req | Description |
|---|---|---|---|
| lease | string | – | Optional lease token to present if the target session is leased (0.7.0). Threaded per-call; never read from the server's env. |
| reset | string | – | today | lifetime | all |
| session | string | – | Optional session name to target (omit for the shared 'default'). On a daemon shared with other agents, pass a UNIQUE name for stateful multi-step work (go→click→fill) so you don't collide on 'default… |
No output schema declared.
No examples provided.
vision_clear_cache ~107
Drop the on-disk vision coords cache.
| Name | Type | Req | Description |
|---|---|---|---|
| lease | string | – | Optional lease token to present if the target session is leased (0.7.0). Threaded per-call; never read from the server's env. |
| session | string | – | Optional session name to target (omit for the shared 'default'). On a daemon shared with other agents, pass a UNIQUE name for stateful multi-step work (go→click→fill) so you don't collide on 'default… |
No output schema declared.
No examples provided.
vision_click ~189
Find a UI element by verbal description (via Claude vision) and click it. Fallback for canvas/Flutter/Unity pages where AX-tree fails. Requires [llm] extra.
| Name | Type | Req | Description |
|---|---|---|---|
| button | string | – | left | right | middle (default left). |
| intent | string | yes | Verbal description of the element. |
| lease | string | – | Optional lease token to present if the target session is leased (0.7.0). Threaded per-call; never read from the server's env. |
| max_per_minute | integer | – | Rate limit. |
| min_confidence | number | – | Minimum confidence (0..1). |
| session | string | – | Optional session name to target (omit for the shared 'default'). On a daemon shared with other agents, pass a UNIQUE name for stateful multi-step work (go→click→fill) so you don't collide on 'default… |
No output schema declared.
No examples provided.
vision_find ~128
Return coords + confidence for a described element (no click).
| Name | Type | Req | Description |
|---|---|---|---|
| intent | string | yes | Description. |
| lease | string | – | Optional lease token to present if the target session is leased (0.7.0). Threaded per-call; never read from the server's env. |
| min_confidence | number | – | Minimum confidence. |
| session | string | – | Optional session name to target (omit for the shared 'default'). On a daemon shared with other agents, pass a UNIQUE name for stateful multi-step work (go→click→fill) so you don't collide on 'default… |
No output schema declared.
No examples provided.
vision_stats ~117
Return cumulative vision API usage (calls, cache_hits, tokens, cost_usd) for session.
| Name | Type | Req | Description |
|---|---|---|---|
| lease | string | – | Optional lease token to present if the target session is leased (0.7.0). Threaded per-call; never read from the server's env. |
| session | string | – | Optional session name to target (omit for the shared 'default'). On a daemon shared with other agents, pass a UNIQUE name for stateful multi-step work (go→click→fill) so you don't collide on 'default… |
No output schema declared.
No examples provided.
vision_type ~139
vision_click the described field, then type the given text.
| Name | Type | Req | Description |
|---|---|---|---|
| intent | string | yes | Description of the input. |
| lease | string | – | Optional lease token to present if the target session is leased (0.7.0). Threaded per-call; never read from the server's env. |
| min_confidence | number | – | – |
| session | string | – | Optional session name to target (omit for the shared 'default'). On a daemon shared with other agents, pass a UNIQUE name for stateful multi-step work (go→click→fill) so you don't collide on 'default… |
| text | string | yes | Text to type. |
No output schema declared.
No examples provided.
wait_fn ~126
Wait until a JS expression returns truthy.
| Name | Type | Req | Description |
|---|---|---|---|
| expr | string | yes | JS expression. |
| lease | string | – | Optional lease token to present if the target session is leased (0.7.0). Threaded per-call; never read from the server's env. |
| session | string | – | Optional session name to target (omit for the shared 'default'). On a daemon shared with other agents, pass a UNIQUE name for stateful multi-step work (go→click→fill) so you don't collide on 'default… |
| timeout_ms | integer | – | Timeout in ms. |
No output schema declared.
No examples provided.
wait_load ~137
Wait for a page load state (load/domcontentloaded/networkidle).
| Name | Type | Req | Description |
|---|---|---|---|
| lease | string | – | Optional lease token to present if the target session is leased (0.7.0). Threaded per-call; never read from the server's env. |
| session | string | – | Optional session name to target (omit for the shared 'default'). On a daemon shared with other agents, pass a UNIQUE name for stateful multi-step work (go→click→fill) so you don't collide on 'default… |
| state | string | – | load|domcontentloaded|networkidle |
| timeout_ms | integer | – | Timeout in ms. |
No output schema declared.
No examples provided.
wait_ref ~149
Wait until an @eN ref reaches a state.
| Name | Type | Req | Description |
|---|---|---|---|
| lease | string | – | Optional lease token to present if the target session is leased (0.7.0). Threaded per-call; never read from the server's env. |
| ref | string | yes | @eN ref from the last snapshot. |
| session | string | – | Optional session name to target (omit for the shared 'default'). On a daemon shared with other agents, pass a UNIQUE name for stateful multi-step work (go→click→fill) so you don't collide on 'default… |
| state | string | – | visible|hidden|attached|detached |
| timeout_ms | integer | – | Timeout in ms. |
No output schema declared.
No examples provided.
wait_selector ~141
Wait until a CSS selector reaches a state.
| Name | Type | Req | Description |
|---|---|---|---|
| lease | string | – | Optional lease token to present if the target session is leased (0.7.0). Threaded per-call; never read from the server's env. |
| selector | string | yes | CSS selector. |
| session | string | – | Optional session name to target (omit for the shared 'default'). On a daemon shared with other agents, pass a UNIQUE name for stateful multi-step work (go→click→fill) so you don't collide on 'default… |
| state | string | – | visible|hidden|attached|detached |
| timeout_ms | integer | – | Timeout in ms. |
No output schema declared.
No examples provided.
wait_url ~127
Wait until the URL matches a glob/regex.
| Name | Type | Req | Description |
|---|---|---|---|
| lease | string | – | Optional lease token to present if the target session is leased (0.7.0). Threaded per-call; never read from the server's env. |
| pattern | string | yes | URL pattern. |
| session | string | – | Optional session name to target (omit for the shared 'default'). On a daemon shared with other agents, pass a UNIQUE name for stateful multi-step work (go→click→fill) so you don't collide on 'default… |
| timeout_ms | integer | – | Timeout in ms. |
No output schema declared.
No examples provided.
How do I install the vibatchium MCP server?
vibatchium runs locally as a PyPI package, launched with uvx vibatchium. Ready-made configuration for Claude, Cursor, VS Code, Codex and 5 more is on this page, copied from each client's own documentation.
pypi · vibatchium
claude mcp add trueoriginlabs-vibatchium -- uvx vibatchium
What is the vibatchium MCP server?
vibatchium is an MCP server listed in the public MCP registry as io.github.trueoriginlabs/vibatchium. Stealth browser automation for AI agents, real Chrome, N parallel persistent logged-in sessions. This page covers its PyPI package (vibatchium).
Is the vibatchium MCP server safe to use?
vibatchium scores 74 out of 100 on VerifyMCP. We found no known CVEs affecting it as of 5 November 2026. Its build provenance is signed and verified. That is a record of what we were able to check automatically, not an endorsement. The category breakdown on this page shows every signal behind the number, including the ones we could not confirm.
What tools does the vibatchium MCP server expose?
vibatchium exposes 87 tools: start, attach, stop, status, verify_url, and 82 more. Their descriptions and schemas cost roughly 13,577 tokens of context every time the server is loaded.
Is the vibatchium MCP server still maintained?
vibatchium is still listed as active in the MCP registry. We last reached this channel on 5 November 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.
What licence is the vibatchium MCP server under?
vibatchium declares the Apache-2.0 licence, which is OSI-approved. That covers the source only, and says nothing about the cost of any service it calls.