A side-by-side look at the MCP Pointer and Ui Annotator MCP MCP servers: transport, auth, tools, quality signals, and the config to install either one in Claude, Cursor, Windsurf or VS Code.
Verdict: choose MCP Pointer for browser automation work as a local process; choose Ui Annotator MCP for browser automation as a local process. You can also run both side by side in one mcpServers block.
UI_ANNOTATOR_PORT.annotate, get_elements, highlight_element.Rows where the two servers differ are marked.
| Spec | ||
|---|---|---|
| Category | Browser Automation | Browser Automation |
| Quality signal | 56/100 · Good | 60/100 · Good |
| Install command | Confirmed | Confirmed |
| Transport | Local subprocess (stdio) | Local subprocess (stdio) |
| Auth | No auth required | No auth required |
| Pricing | Free | Free |
| Required env vars | None listed | UI_ANNOTATOR_PORT |
| Verified owner | Community listing | Community listing |
| GitHub stars | 597 | 21 |
| Directory activity | 2 views 0 installs 0 upvotes | 2 views 0 installs 0 upvotes |
| Tools | Not listed | 5 |
| Full listing | View MCP Pointer | View Ui Annotator MCP |
No tool names declared yet. Check the project README from the listing page.
annotateOpen a web page with hover annotations. Returns a proxy URL that adds interactive element labels to any page. User opens this URL in any browser to see annotations on hover.get_elementsGet all UI elements detected on the currently annotated page. Returns element names, CSS selectors, positions, and sizes. Use this to understand what the user is referring to when they describe a UI element.highlight_elementBriefly flash-highlight a specific element on the page so the user can see which element you are referring to. Useful for confirming "do you mean this element?"rescan_elementsForce the annotated page to rescan all UI elements. Use this after the page content has changed (e.g. after navigation, DOM updates, or user interaction).inspect_modeToggle inspect mode on the annotated page. When ON, the user can click any element to copy its name. When OFF, the page behaves normally. Use this to help the user copy element names for communicating design changes.Paste either block (or both) into your client config, e.g. claude_desktop_config.json or ~/.cursor/mcp.json. We only show a config when the install command is confirmed.
{
"mcpServers": {
"etsd-tech-mcp-pointer": {
"command": "npx",
"args": [
"-y",
"@mcp-pointer/server"
]
}
}
}
{
"mcpServers": {
"mcpware-ui-annotator-mcp": {
"command": "npx",
"args": [
"-y",
"@mcpware/ui-annotator"
],
"env": {
"UI_ANNOTATOR_PORT": "YOUR_UI_ANNOTATOR_PORT_HERE"
}
}
}
}