Ui.Vision MCP server
io.github.A9T9/uivision-mcp·v1.7.18·2.1k starsMCP server for browser and desktop automation: OCR, image recognition, real mouse and keyboard input
2.1k stars142 downloads/wk
Reviews
Write oneNobody has reviewed Ui.Vision MCP yet.
If you have run it, two minutes of your experience saves the next person an afternoon.
Ui.Vision MCP tools (24, 7 write)
write = sends, deletes, buys or postsRead from the package source without running it. The installed server may list more.
bridge_statusReports whether the Ui.Vision browser extension is currently connected to this bridge. Call this first if other tools fail — it tells you whether the extension side panel is open and the bridge is enabled in its settings. Several browsers can be connected at once; the status lists each one by label (chrome#1, firefox#1, ...) and marks the ACTIVE one that tool calls go to.
browser_snapshotReturns the structure of the browser tab Ui.Vision plays in. Default mode "tree": the page as an accessibility tree — one line per node with role, accessible name and state (value, checked, expanded, disabled, offscreen), nested by container. Every interactive node carries [ref=N], and ref=N is a LOCATOR: act on it right away with uiv.page.click('ref=12'), uiv.page.fill('ref=7', text) or uiv.$('re
click_atEXPLORATION ONLY: click the point (x, y) read off the MOST RECENT screenshot — the extension converts the picture's pixels to the page or screen itself, so "click the thing in the picture" is one call. A browser screenshot clicks in the tab (trusted click, any frame); a desktop screenshot clicks on the screen through the XModule. Returns what changed on the page afterwards (like run_macro look: "d
create_macrowrite actionCreate a NEW macro from the given Ui.Vision JSON and save it in the "AI Generated" folder under a new, unique name. PREFER the JS script form {"Name": "...", "Script": "<JavaScript using the uiv.* API>"} over the classic Commands table — scripts are modern JS with real control flow and are the recommended way to build macros. Call get_authoring_guide for the uiv.* API before writing your first scr
delete_macrowrite actionDelete a macro from the "AI Generated" folder — cleanup for scratch and test macros this or an earlier session created there. Only macros inside "AI Generated" can be deleted; everything else is refused (the user deletes those in the panel). Returns a confirmation.
get_ai_settingsReports the ACTIVE AI provider/model as the chat will resolve it, which providers have keys stored (booleans only — keys never cross the bridge), the per-provider model settings, computer-vision scope and OCR engine. Call before set_ai_settings to plan a change.
get_authoring_guideReturns the Ui.Vision macro authoring guide: the uiv.* JavaScript API for JS script macros (finders, actions, OCR, vision), the classic command table, locator rules and best practices. CALL THIS ONCE BEFORE WRITING YOUR FIRST MACRO in a session — macros written without it usually use invented APIs and fail.
get_chatReturns the in-panel AI Chat transcript and whether a run is in progress (running:true/false). Poll this after send_chat; the transcript is text-only (inline images are omitted).
get_macroReturns the macro currently loaded in the Ui.Vision editor, as Ui.Vision JSON. A JS script macro comes back with a "Script" field (its program) instead of Commands.
list_macrosLists all macros stored in Ui.Vision (name and id). Use open_macro to load one into the editor before reading or running it.
open_macroOpens the macro with the given name in the Ui.Vision editor and returns its JSON. Subsequent get_macro/set_macro/run_macro calls operate on it. Note: unsaved editor changes may be discarded.
open_panelOpens the Ui.Vision panel when the extension is NOT connected: signals the browser over a background wake channel (extension 10.0.170+) to open the Ui.Vision app in a tab. This is the ONLY way the panel opens without a human click — the extension never opens it by itself. Works when the panel or its tab was closed, and even when the browser sits in the tray with zero windows (a window is created).
reload_extensionReloads the Ui.Vision extension from disk (same as the chrome://extensions reload button) — the way to load a freshly built version without a human click. The bridge connection dies with the panel; on startup the panel app reopens as a TAB and reconnects, and the new hello reports the loaded version. If no reconnect arrives within ~15s the new build failed to start and needs a human at chrome://ex
run_macrowrite actionRun a macro against the browser tab and wait for it to finish (can take minutes). Three forms: pass "macro" (a name from list_macros) to open and run that stored macro; pass "script" (inline JavaScript) to run code directly without creating a macro; pass neither to run whatever is currently open in the editor — that last form depends on editor state, so prefer naming the target. Returns the execut
run_selftestwrite actionRuns every self-test of Settings > Desktop Automation in one go: native host connection, WASM image-search engine, desktop screenshot, real mouse input delivery, home-directory read/write, visual compatibility (colors, scaling, screenshot coordinates) and a test macro inside the desktop app - and returns ONE report that starts with "SELFTEST: ALL OK" or "SELFTEST: PROBLEMS FOUND", then one line pe
run_statuswrite actionWhat the macro runner is doing RIGHT NOW: whether a run is in progress, which macro the editor holds, and the freshest log lines. Unlike every other tool, this ANSWERS WHILE run_macro is still executing (extension 10.0.172+) — poll it from a second client/session to watch a long run live instead of waiting blind. screenshot is likewise answerable mid-run for a visual peek.
save_element_imageCrop a rectangle from the MOST RECENT screenshot and save it as a Ui.Vision vision image, for image-based commands like "XClick | Target: <name>.png" or uiv.findImage('<name>.png') in a JS script. Coordinates are absolute pixels in the last screenshot (or in the last magnified view, which converts back itself — never scale by hand).
save_relative_imagewrite actionCreate a green/pink RELATIVE vision image from the MOST RECENT screenshot, for commands like "BClickRelative | Target: <name>.png". The green box marks the anchor element that is searched on the page; the pink box marks where to click, relative to the anchor. Coordinates are absolute pixels in the last screenshot.
screenshotReturns a screenshot of the visible part of the browser tab Ui.Vision plays in. Coordinates passed to save_element_image / save_relative_image are absolute pixels in this image.
select_browserSwitches which connected browser the other tools talk to. Several browsers (or several instances of one browser) can hold a bridge connection at the same time; bridge_status lists their labels. Pass a full label ("chrome#2") for an exact instance, or a bare family name ("firefox") for the most recently connected instance of that family.
send_chatwrite actionSends a message to the REAL in-panel AI Chat — the configured chat model runs it with its own agent tools, exactly as if a user had typed it. Returns immediately; a chat run takes minutes, so poll get_chat until it reports running:false. For self-testing the chat agent end-to-end.
set_ai_settingsSwitches AI settings for independent runs (e.g. benchmark sweeps): provider (uivision | openrouter | anthropic | local), uivision_tier (free | pro), openrouter_model / anthropic_model / local_model / local_base_url, cv_scope (browser | desktop), ocr_engine (1|2|3 OCR.Space, 90 AI provider, 98 built-in cross-platform, 99 OS reader). Only switches between providers the user already configured — API
set_macroApply changes to the macro in the Ui.Vision editor — pass the complete Ui.Vision JSON. PREFER the JS script form {"Name": "name", "Script": "<JavaScript using the uiv.* API>"} over the classic Commands table (call get_authoring_guide for the uiv.* API before writing your first script). When fixing or extending a classic Commands-table macro, CONVERT it to a JS script in the same call and fix it th
type_atEXPLORATION ONLY: click the point (x, y) of the MOST RECENT screenshot and type text there (key names like …, …, … are honoured). Same conversion and same caveat as click_at. Returns what changed on the page afterwards.
Public scan report
scanner v0.1.10 · 2026-10-15 · same rubric, same numbers if you re-run it
- Code scan2 source files scanned13/25
- –Live reliabilityno gateway calls yet and no remote to proben/a
- –Tool poisoningtools not inspected (local package is not executed); not countedn/a
- Auth qualitylocal package, no credentials required12/15
- Maintenancelast push 2 days ago15/15
- Maintainer identityregistry namespace matches repository owner; GitHub account older than a year8/10
Findings (1)
- highShell command built from a string (injection risk)
exec.shell-concatuivision-mcp-bridge.js: …$x.ParentProcessId }` const out = execSync(`powershell -NoProfile -NonInteractive -Command "${script.replace(/"/g, '\\"')}"`, { encodi…
How Ui.Vision MCP compares
Against every graded Scraping and browsing MCP server, from our own scans and uptime checks. Updated after each scan run.
- Safety score
- 74/100
- higher than 40% of 866 Scraping and browsing servers
- Tools
- 24
- the typical Scraping and browsing server has 6
- Tools that change things
- 29%
- typical: 0%. Fewer write tools means less an agent can break
- GitHub stars
- 2,076
- more than 95% of 583 Scraping and browsing servers
- Downloads a week
- 142
- more than 63% of 309 Scraping and browsing servers with a package
What its tools let an agent do: 12 read · 5 create · 2 change · 1 delete · 1 send or post · 3 run or deploy
Install Ui.Vision MCP in Claude Code, Cursor or VS Code
Runs npx -y uivision-mcp-bridge on your machine. Read the scan report first; the gateway never runs local packages.
claude mcp add uivision-mcp -- npx -y uivision-mcp-bridge
What the publisher says
From the Ui.Vision MCP repository's README, as published. We do not edit it. Read it on GitHub
Ui.Vision RPA
- Modern Robotic Process Automation, Selenium IDE compatible
- Ui.Vision is open-source and free for personal and commercial use.
Questions? Suggestions? - Meet us in the Ui.Vision RPA user forum.
Every user benefits from the questions and answers provided in the forum, that is why we would ask you to post the question in the RPA forum first if a public forum is appropriate for your question. The forum is monitored by active users, tech support and the developers, so we would like to concentrate the discussion "over there" in one place.
How to install Ui.Vision:
Ui.Vision RPA for Chrome, Edge and Firefox is modern cross-platform RPA software for macOS, Linux and Windows. It includes a Selenium IDE and Web Macro Recorder. You find the latest version always in the Chrome and Firefox stores. You can use it completely free for private and commercial purposes:
- UI.Vision in the Google Chrome Webstore
- UI.Vision in the Firefox Webstore
- UI.Vision in the Microsoft Edge Webstore
- Ui.Vision Homepage
- List of supported Selenium IDE commands
The new uiv.* JavaScript API and the AI system prompt
Besides the classic command table, macros can be written as modern JavaScript using the uiv. API - DOM and visual finders (uiv.$, uiv.findImage, uiv.ocr.findText, uiv.ai.find), the input tiers (uiv.page., uiv.browser., uiv.desktop.), screenshots, tabs, CSV and downloads. Every call auto-waits and throws a real JS exception on failure, so try/catch works.
complete uiv.* API reference plus the automation recipes the AI assistant works from. This is the same text the AI in the side panel uses, and it is the best hand-written reference for the JS API. You can override it in Settings > AI > System Prompt.
- The Ui.Vision AI system prompt - the
plain-text file, for feeding into an AI assistant.
- llms-full.txt - the same material as one
clients create, edit and run Ui.Vision macros in your browser. Source and setup: mcp/README.md.
- MCP bridge - lets Claude Code and other MCP
command-table command to its uiv.* equivalent, or to the uiv.run('command', 'target', 'value') legacy bridge where no native method exists yet.
- uiv-commands.md (in this repo) - maps every classic
The published prompt page is generated from the source of truth in src/services/ai/macro_agent/service.ts via npm run gen:ai-prompt-page, so run that at release time to keep it in sync.
Building the Chrome, Edge and Firefox Extension
Building the extension is not required if you "only" want to use it.
You can install UI.Vision directly from the Chrome, Edge or Firefox stores, which is the easiest and the recommended way of using the Ui.Vision RPA software. Older versions can be found in the RPA software archive.
The information below is only required and intended for developers:
The project uses Node V20.11.1 and NPM V10.2.4
If you have any questions, please contact us at TEAM AT UI.VISION - Thanks!
To build the extension bundle
npm i -fnpm run buildnpm run build-ffnpm run build creates the Chrome/Edge build in dist, npm run build-ff creates the Firefox build in dist_ff.
To develop
npm i -fnpm startShortened. The full README is on GitHub.
Nothing above is checked by us. What we check is on the safety report.
Grade history
- 2026-10-15restoreC → Bscore 74: Shell command built from a string (injection risk)
Ui.Vision MCP: common questions
- Is Ui.Vision MCP server safe?
- Mostly: it is graded B (74/100). Read the Ui.Vision MCP safety report
- How do I install Ui.Vision MCP?
- It runs on your machine. Copy the Claude Code, Cursor, VS Code or Claude Desktop config from the install section.
- Does Ui.Vision MCP need an API key?
- No secret keys are declared. It reads 1 setting from the environment.
- Is Ui.Vision MCP maintained?
- The last commit was 22 days ago (2026-10-13). The latest release is v1.7.18.
- What can I use instead of Ui.Vision MCP?
- Servers from other publishers that do the same job: Native DevTools MCP server, Stealthy Auto Browse MCP server and GrowBlocks Dev Kit MCP server.
- How does Ui.Vision MCP compare with other Scraping and browsing MCP servers?
- safety score 74/100 (higher than 40% of 866 Scraping and browsing servers); tools 24 (the typical Scraping and browsing server has 6); tools that change things 29% (typical: 0%. Fewer write tools means less an agent can break). Full comparison.
Alternatives to Ui.Vision MCP
Same job from other publishers: the closest match first, then the best rated.
- Native DevToolsMCP server for desktop, browser (CDP), and Android automation. Screenshot, OCR, click, type.not reviewedEstablishedA
- Stealthy Auto BrowseSelf-hosted MCP server for stealth browser automation with human-like OS-level input.not reviewedGrowingA
- GrowBlocks Dev KitBuild, play-test with screenshots, and ship three.js browser games on GrowBlocks.5.0(1)NewA
- SeleniumBase MCPStealthy browser automation, testing, and web-scraping via CDP Mode.not reviewedWidely usedA
- Next AI Draw.iodraw.io diagrams your AI agent draws on a live browser canvas that you can also edit by handnot reviewedWidely usedA