About Reticle
Reticle's bridge and MCP server let coding agents inspect a running web app. The app's browser SDK connects to a local WebSocket endpoint, while the agent uses tools to read, interact with, and assert on app state.
Key features
- 01Local WebSocket bridge for the app
- 02Tools for navigation, observation, and interaction
- 03Assertions and act-and-wait verdicts
- 04Invoke unadvertised tools by name
- 05Option to advertise the full tool set
Use cases
- 01Verify page state in a running app
- 02Perform actions and observe app responses
- 03Run assertions against app behavior
MCP support
It exposes MCP tools over stdio and starts the local bridge automatically; the app's `@reticlehq/browser` SDK connects to that bridge.
Configuration
Local server config is the same for every client. Copy it into your client’s MCP config file.
Tools
10Saved tool list · updated 1d ago
| Parameter | Type | Required | Description |
|---|---|---|---|
| url | string | No | The URL to navigate to. |
| hard | boolean | No | With reload:true, bypass the browser cache (Cmd+Shift+R). |
| reload | boolean | No | Reload the current page instead of navigating (replaces the former standalone refresh tool). |
| sessionId | string | No | Target a specific tab. Omit unless you mean one — see instructions. |
| timeout_ms | integer | No | How long to wait for the page to come back (the SDK reconnecting at the new URL, or under the same id on a reload) before answering confirmed:false. |
Details
From the project README@reticlehq/server
The Reticle bridge + MCP server. It hosts a localhost WebSocket endpoint your app's @reticlehq/browser SDK connects to, and exposes MCP tools your coding agent uses to look at, act on, observe, and assert against the live app.
npx @reticlehq/server init # wire the project: SDK + build plugin + MCP registration
npx @reticlehq/server mcp # MCP over stdio; auto-starts the bridge on ws://localhost:4400
The package installs a reticle bin, so inside a project reticle mcp and npx @reticlehq/server mcp are the same command. reticle is not a package name on npm.
Point your agent at it. On Claude Code, register it at user scope:
claude mcp add reticle -s user -- npx @reticlehq/server mcp
Default tools (10):
reticle_navigate, reticle_look, reticle_act, reticle_act_and_wait, reticle_observe, reticle_assert, reticle_session, reticle_tools, reticle_run, reticle_verify.
Only reticle_act_and_wait and reticle_assert return a verdict; everything else moves or reads the app.
More tools ship but are not advertised, to keep the per-turn tool payload small: screenshots and visual diff, saved flows, recording, baselines, clock control, viewport, crawl, coverage, network mocking, leases and more. Reach any of them by name with reticle_run, list them with reticle_tools, or advertise the whole surface with RETICLE_ADVERTISE_ALL_TOOLS=1 (this roughly doubles the per-turn tool payload).
See the main README.
License
FSL-1.1-ALv2 (source-available: free for any use except reselling Reticle itself; converts to Apache-2.0 after two years). Files under dist/features/ee/ are enterprise features covered by the Reticle Enterprise License — free for development, testing, and evaluation; a license key activates them in production.
Comments
New to MCP?
From what the protocol is to installing your first server, these answers cover most first questions.
An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.