Read the page without brute-force DOM dumps
Use compact state snapshots, `since_hash` polling, and stable refs so the agent can stay oriented without paying to re-read the whole page.
Deterministic, MCP-first browser automation for coding agents. Launch or attach to Chrome over CDP, inspect compact page state with stable refs, extract structured content, and debug real browser traffic without an LLM in the critical path.
Install
uv tool install agentyc agentyc agentyc init stdio mcp · no api key in default path · shared browser ready mcp tools
deterministic extraction routes
smaller default screenshots
average tool latency in benchmark run
Why it exists
Use compact state snapshots, `since_hash` polling, and stable refs so the agent can stay oriented without paying to re-read the whole page.
Click, type, drag, upload, wait, and switch tabs through a direct CDP runtime built for coding agents rather than a custom agent loop.
Wait for requests, inspect responses, export debug bundles, replay calls, and apply narrow network mocks without leaving the browser session.
Core capabilities
Read compact page state with stable refs that survive re-renders instead of targeting brittle selectors or dumping the full DOM every turn.
Extract tables, lists, forms, links, images, and key-value panels without an LLM fallback and without an API key in the default runtime path.
Inspect console logs, network requests, request bodies, traces, mocks, and throttling controls directly from the same MCP browser surface.
Attach multiple runtimes to one browser profile so subagents keep dedicated tabs while still sharing auth, cookies, and local storage.
What you can ask
browser_get_state(mode="min") Read compact browser state with stable element refs and token-aware compaction.
browser_click(ref="e123") Interact using stable refs instead of reconstructing selectors after every render.
browser_extract_content(query="table rows") Extract structured content through deterministic routes with no LLM fallback.
browser_wait_for_response(url_substring="/api", status=200) Synchronize against real network activity instead of relying only on generic idle waits.
browser_export_debug_bundle(include_screenshot=true) Bundle state, logs, network, trace summary, and a screenshot into one debugging artifact.
browser_new_tab(url="https://example.com") Open an additional working surface when one runtime needs more than its owned collaboration tab.
Works with
Claude Code
Claude Desktop
Cursor
Windsurf
OpenCode
Generic MCP clients
Tool surface
Navigation, interaction, extraction, frames, storage, tabs, network control, traces, debug bundles, and session lifecycle all live in one browser runtime.
Runtime model
Agentyc speaks to Chrome and Chromium over CDP and keeps the public MCP contract deterministic and compact.
Token efficiency
Compact state modes, `since_hash` polling, and screenshot optimization keep the browser useful to agents without flooding the context window.