onui_list_pagesLABSCO SUMMARY
The pointing gesture, made machine-readable.
Describing a visual bug in words is the slow part of UI work; here you click the element or drag a box around it and the selector, geometry and severity travel to the agent intact. Annotate mode deliberately freezes the page so element positions stay stable while you mark up — exit the mode to scroll, then re-enter.
What it is
A browser extension for Chrome, Edge and Firefox paired with a local MCP server, for annotation-first UI work. You mark up a live page with comments, an intent and a severity; the agent reads those annotations, with element selectors or region geometry attached, without any change to the application's code.
What you get
- Pages that carry annotations, listed for the agent —
onui_list_pages - Annotations for a page read back with comment, intent (
fix,change,question,approve) and severity (blocking,important,suggestion) —onui_get_annotations - A page-level report at the output level you choose —
compact,standard,detailedorforensic—onui_get_report - Search across comment, selector, path, tag text and region geometry tokens —
onui_search_annotations - Annotation metadata updated one at a time or in bulk once work is done —
onui_update_annotation_metadata,onui_bulk_update_annotation_metadata - Handled annotations removed individually or cleared for a whole page URL —
onui_delete_annotation,onui_clear_page_annotations - Two capture modes: element targeting with
Shiftmulti-select for batches up to 25, and rectangle or ellipse region drawing for layout and spacing issues
Requirements
No account and no key — everything stays on the machine, with no cloud backend. Node 20+ for the MCP bridge, which the release installer sets up from a prebuilt bundle; the extension comes from the Chrome Web Store, Edge Add-ons, or the installer script, and Chromium browsers need one manual Load unpacked step from ~/.onui/extensions/current. Setup registers onui-local for Claude Code and Codex automatically; other clients get the same node … onui-cli.js mcp command entry, which must use an absolute path. The package.json names it onui at 2.2.3, and the MCP package is workspace-local, so run its setup and doctor commands from the repository. Restricted browser pages such as chrome:// and about: are out of scope.
Setup effort
One command — curl -fsSL https://github.com/onllm-dev/onUI/releases/latest/download/install.sh | bash
USE CASES
Handing a batch of UI fixes to a coding agent
Mark every problem on the page with intent and severity, then let the agent pull the whole set with selectors attached.
Flagging a layout problem that has no single element
Draw a rectangle or ellipse around the region so spacing and grouping issues arrive with geometry rather than a guess at a selector.
Giving the agent a summary instead of a dump
Generate a page-level report at the output level the agent needs, from a one-line compact form up to forensic detail.
Closing the loop after fixes land
Delete the annotations that were handled, then clear the page once everything on it is done.
8 tools
Listed in project docs. Your client may show a different list.
onui_get_annotationsonui_get_reportonui_search_annotationsonui_update_annotation_metadataonui_bulk_update_annotation_metadataonui_delete_annotationonui_clear_page_annotationsBEFORE YOU INSTALL
What to know first
Tools you get
8 tools named in the project's documentation.
INSTALLATION
Connect your client
Server setup
curl -fsSL https://github.com/onllm-dev/onUI/releases/latest/download/install.sh | bashMCP Clients
Claude Desktop
{
"mcpServers": {
"onui-local": {
"command": "node",
"args": [
"~/.onui/mcp/v2.2.3/dist/bin/onui-cli.js",
"mcp"
]
}
}
}Write the ~ in these blocks out as your full home directory: the project says to use an absolute path for onui-cli.js, and the client does not start node through a shell that would expand it.
VS Code
{
"servers": {
"onui-local": {
"command": "node",
"args": [
"~/.onui/mcp/v2.2.3/dist/bin/onui-cli.js",
"mcp"
]
}
}
}Write the ~ in these blocks out as your full home directory: the project says to use an absolute path for onui-cli.js, and the client does not start node through a shell that would expand it.
Claude Code, Codex
curl -fsSL https://github.com/onllm-dev/onUI/releases/latest/download/install.sh | bash -s -- --mcpWrite the ~ in these blocks out as your full home directory: the project says to use an absolute path for onui-cli.js, and the client does not start node through a shell that would expand it.