All reports

vibeview

io.github.vibeview/vibeview · version 0.72.0 · 3,878 weekly npm downloads · audited 2026-11-03

MCPVetter badge Notes

Findings

No hidden-instruction or invisible-character findings in any tool, prompt, or resource description.

Claude Connectors Directory readiness

Checks the directory's published tool requirements that are visible from tools/list. Passing them does not guarantee acceptance.

Supply chain

Tools (38)

NameTitleHintDescription
ui_treeread-onlyFetch the ref-annotated UI tree for the current screen.
logsread-onlyRead recent app logs from the device — JS console output, native errors, and crash messages from the app under test (not full system logs). Check after a crash, a frozen screen, or an unexpected blank tree, and to confir…
screenshotread-onlyCapture a screenshot of the current screen. Use it to check how something LOOKS — the UI tree carries no colour, contrast, or stacking information, so a screen can pass every check the tree can express and still be visib…
tapwritesTap an element by ref (e.g. @e5), or raw coordinates (e.g. 100,200).
long_presswritesLong-press (touch and hold) an element by its ref.
swipewritesPerform a scrollbar-semantic swipe gesture in one of four directions.
scroll_towritesScroll until an element matching the given text becomes visible.
dragwritesDrag between two points, each an element ref (@e5) or raw coordinates (100,200).
alertwritesInspect or respond to a visible system alert on iOS or Apple TV (get, accept, or dismiss). `get` returns the message and the button labels.
scrollwritesScroll the current view up, down, left, or right using a gesture preset.
typewritesType text into the currently focused input field.
clear_textwritesClear the text in the currently focused input field.
presswritesPress a device button or perform a system gesture (home, back, d-pad, etc).
open_urlwritesOpen a deep link in the app under test. The link goes to that app only, never a browser: on Android a link the app has no screen for fails; on iOS only the app's own URL scheme (e.g. myapp://settings) is accepted, and a …
relaunch_appwritesClose the app under test and start it again: a cold start that keeps the app's data, e.g. to check that something persists. Its log keeps streaming across the restart. Not available on embed sessions.
set_posturewritesFold or unfold a foldable device (form factor `foldable` in list_device_models — the iPhone Duo, Android foldables such as the Pixel 9 Pro Fold): a preset (closed, partial, open) or an exact hinge angle in degrees (angle…
rotatewritesRotate the device. A phone (and an Android foldable) toggles between portrait and landscape; the iPhone Duo turns a quarter clockwise, or by degrees 180/270. Reports the new orientation. Not available on TV devices.
shakewritesShake the device once (phones, tablets and foldables)
set_locationwritesSet the device's simulated GPS location, for location-based flows. Phones, tablets and foldables (iOS and Android); not available on TV devices.
set_languagewritesRestart the app under test in another language — a language tag such as de, fr, ja or pt-BR, or 'default' for the device's language — e.g. to check translations or take localized screenshots. Only the app changes; the de…
set_status_barwritesShow a clean status bar for screenshots (9:41, full battery, full Wi-Fi and cellular signal) or put the device's own status bar back. It stays until you change it or the session ends. iOS phones and tablets only.
waitread-onlyWait for a specified number of seconds before continuing.
findread-onlyFind an element by text with optional spatial constraints (below/above/near).
tap_focusedwritesTV: move focus to an element and press SELECT in one step.
focusread-onlyTV: move focus to an element without activating it.
dev_startwritesStart a VibeView session held by this MCP server, and use it as the default session for every other tool call until dev_stop. By default it is a React Native dev loop: a debug build that loads its JS from your local Metr…
dev_stopwritesStop the dev-loop session started by dev_start.
dev_reloadwritesRoku only: re-package the channel with the build command from vibeview.json (platforms.roku.build), upload it, and reload it into the session dev_start is holding (or, with no held session, this project's `vibeview dev -…
upload_appwritesUpload an app build (zipped simulator .app for iOS/tvOS, .apk for Android/Android TV, or a Roku channel .zip) and return its app_id for dev_start. The MCP equivalent of `vibeview upload-app`.
list_device_modelsread-onlyList the device models you can start right now (model, OS version, platform, category, form_factor "foldable" for any device with a hinge — the iPhone Duo, Android foldables such as the Pixel 9 Pro Fold — and how many of…
list_appsread-onlyList your organization's uploaded apps: app id, name, platform and bundle id / package name. Sample apps (is_sample) are VibeView's examples, never this project's app. Pass an app id to dev_start (app) or list_builds.
list_buildsread-onlyList an app's uploaded builds, newest first: id, version, build number, platform, kind (debug/release/unknown), upload time, note and retention (keep, expires_on as YYYY-MM-DD, expired; absent on older servers). Pass a d…
stop_sessionwritesStop any session by id — e.g. one created through the API, the sandbox, or a collaboration link. For the session dev_start started, dev_stop does the same without an id.
create_testwritesCreate a test for an app from plain-language steps, one per line; a check is a step starting with "Verify". Returns the test id for run_test. The first run is driven by AI; once it passes, later runs replay the saved pat…
run_testwritesRun a saved test. With session_id it runs on that session (the device you are driving). Without it, VibeView always starts a new device of the test app's platform, runs the test and stops the device (it does not use a se…
run_groupwritesRun every test of a group in order. With session_id it runs on that session; without it, on a new device of the app platform that VibeView starts and stops (it does not use a session you hold from dev_start; pass session…
get_runread-onlyA run's status and, when a test failed, which step and why. Pass the run id run_test or run_group returned.
send_feedbackwritesSend the VibeView team a bug report, a friction note or a feature idea about VibeView itself. Only for problems with VibeView itself (the CLI, MCP tools, devices, sessions, runs, dashboard, docs) — never for bugs in the …

Check your own setup

npx mcpvetter scan --live

Badge

Add this to a README:

[![MCPVetter](https://mcpvetter.com/badge/vibeview.svg)](https://mcpvetter.com/servers/vibeview)

Publish this server?

Get the MCPVetter verified badge, a re-audit within 24 hours of every npm release, and an email whenever tools, findings, or Claude directory readiness change. $29 per server per month. You prove ownership first, free.