Works with the AI tools you already use
Browser Agent MCP Server
Let your agent drive real web pages via accessibility snapshots and stable element handles — fewer tokens and no fragile coordinate guessing.
Free
Browser Agent MCP Server
Example session with this skill installed
I'm building a support bot in Cursor that needs to log into our internal help desk and close resolved tickets. Screenshot-based attempts keep clicking the wrong buttons and burn tokens. Set up the accessibility-driven browser MCP server for me: register it in my mcp.json, then give me the exact navigate-snapshot-act loop my agent should follow. Context: standard React app with labeled inputs, the agent runs headless on Ubuntu behind an HTTP proxy, and we need to keep login state between sessions. Include the launch flags and any environment variables involved.
- Read your context and instructions
- Compiled the browser agent mcp
Summary
Your agent now drives the help desk through accessibility snapshots and handle-based clicks — no coordinate guessing. The server runs headless behind your proxy, persists login state in a dedicated profile, and registers as a single MCP entry in Cursor.
{
"mcpServers": {
"web-agent": {
"command": "npx",
"args": ["@agent-infra/mcp-server-browser@latest", "--headless", "--proxy-server", "http://proxy.internal:3128", "--user-data-dir", "./.agent-profile", "--output-dir", "./.agent-out"]
}
}
}
| Step | Tool | Rule |
|---|---|---|
| 1 | browser_navigate | Open the ticket URL once |
| 2 | browser_get_clickable_elements | One snapshot per page state |
| 3 | click / fill / select | Act by handle index, never x/y |
| 4 | re-snapshot | Only after the page actually changed |
| 5 | screenshot | Fallback when labels are missing |
Next steps
- Dry-run one resolved ticket before letting the bot close real ones
- Add
--visiononly for canvas widgets; return to structured tools if a vision click misses - Keep
.agent-profileout of git and inspect the download dir before sharing files
Connects securely to your tools. The creator never sees your data.
About this skill
Give your language model a real browser — without the pixel guessing.
Instead of streaming screenshots to a vision model and hoping coordinates land, this reads pages through Puppeteer's accessibility tree and hands the model stable element handles. Clicks, form fills, scrolls and JS evaluation become repeatable at a fraction of the token cost.
What you get:
- Three connection modes: local stdio, a shared HTTP/SSE endpoint for workers, or in-process embedding for TypeScript runtimes
- Full coverage: navigation, tabs, text and markdown extraction, interaction, screenshots, console JS, plus a vision fallback for canvas apps
- Per-request headers for viewport, user agent and coordinate scaling — no restarts
- A runbook for Docker displays, proxies, profile security and common failures
Ship deterministic, cheaper, easier-to-debug browser agents.
How to install
Works the same in every agent - Claude, Cursor, Codex, Copilot and 20+ more.
- 1
Download the ZIP
Free skills download straight away. Paid skills unlock right after purchase.
- 2
Unzip into your skills folder
Every agent reads skills from one folder on your machine. Drop the unzipped folder in there.
- 3
Ask your agent to use it
Restart the agent if it was already running. It picks the skill up automatically - no config needed.
Skills folder by agent
Click the path to copy it. Create the folder if it does not exist yet.
Reviews
No reviews yet
Be one of the first to try it. Every listed skill passes our trust checks below.
Security scanned
Passed our 8-point scan before listing
2 installs
Downloaded by developers to date
Free forever
No account required to browse
Trust & safety
Security scanned
Verified clean 11 days ago
- Free to download with an account