Echo
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@EchoOpen https://example.com in a new tab"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Echo
Echo is a desktop browser that runs on your computer. It exposes an MCP server so Cursor, Claude Desktop, ChatGPT/Codex, Continue, Cline, Windsurf, VS Code, and other MCP clients can drive it with your existing subscription.
There is no model API and no cloud Chromium. The browser window you see is the one the assistant controls.
Quick start
Install Echo on your computer (Windows, Mac, or Linux — see below).
Leave Echo running. Closing the window hides it; it keeps running in the tray (Windows/Linux) or menu bar (Mac).
Open Settings (⋮ menu, top right) → Connections.
Click Connect for Cursor, Claude, or ChatGPT/Codex.
Fully quit and reopen that AI app so it picks up Echo.
Ask the assistant to search the web or open a page — it should use Echo’s tools (
navigate,snapshot,search_web, etc.).
MCP URL on the same computer: http://127.0.0.1:18931/mcp
Server name: echo
A bearer token is shown in Settings → Connections (Echo creates it on first launch).
Related MCP server: agentify-desktop
Download
Installers: GitHub Releases
Pick the file for your OS:
Your computer | Download this file |
Windows (Intel/AMD 64-bit) |
|
Windows (ARM — Surface, Snapdragon PC) |
|
Mac (Apple Silicon or Intel) |
|
Linux (64-bit) |
|
If the Releases page is empty, the maintainer needs to publish a version tag (for example v1.0.0) so GitHub Actions builds the installers. Until then, use Run from source below.
Repo: https://github.com/krishngohel/local-browser
Install — Windows
Download the installer for your CPU from Releases:
Most PCs:
Echo-Setup-*-x64.exeARM laptops (Surface Pro X, Snapdragon, Copilot+ PC):
Echo-Setup-*-arm64.exe— do not use the x64 build on ARM.
Run the installer. Windows SmartScreen may warn because the build is unsigned:
Click More info → Run anyway.
Finish the wizard. Echo installs to
%LOCALAPPDATA%\Programs\Echo\and adds Desktop + Start Menu shortcuts.Echo opens when setup finishes. Leave it running.
Closing the window does not quit Echo — it hides to the system tray (by the clock). Right-click the Echo icon there to Show or Quit.
Open Settings: click the ⋮ menu (top right) → Connections.
Uninstall: Windows Settings → Apps → Echo. Your browsing profile stays in %APPDATA%\Echo unless you delete that folder manually.
Install — Mac
Download
Echo-1.0.0-mac-universal.dmgfrom Releases.Open the
.dmg. Drag Echo to Applications.Eject the disk image. Do not keep using Echo from the mounted
.dmg— it will stop working after eject. Echo warns you if you launch from the disk image.Open Echo from Applications.
First launch — Gatekeeper: the app is unsigned (no Apple Developer ID yet). macOS blocks a normal double-click:
Right-click Echo → Open → Open.
On macOS Sequoia or later, if needed: System Settings → Privacy & Security → Open Anyway.
Leave Echo running. The red close button hides the window; Echo stays in the Dock and menu bar (top right).
Show again: click the Dock icon, menu-bar icon, or Echo → Show Echo.
Quit: Echo → Quit Echo, Cmd+Q, or menu-bar icon → Quit.
Open Settings: ⋮ menu → Connections.
If you use Claude Desktop: install Node.js (LTS) from nodejs.org. Claude launched from the Dock cannot see Homebrew’s PATH; Echo writes Node’s full path when you click Connect.
Profile folder: ~/Library/Application Support/Echo
Firewall (optional): if another device on your Wi-Fi cannot connect, allow Echo in System Settings → Network → Firewall.
Install — Linux
Download
Echo-1.0.0-linux-x64.AppImagefrom Releases.Make it executable and run it:
chmod +x Echo-1.0.0-linux-x64.AppImage
./Echo-1.0.0-linux-x64.AppImageLeave Echo running (system tray). Open Settings → Connections from the ⋮ menu.
Profile folder: ~/.config/Echo (or the Electron userData path for the packaged app).
Firewall (optional): allow TCP port 18931 (or the port shown in Settings) if another device on your LAN needs to connect.
Connect your AI
Echo must be running before you connect. Open Settings (⋮) → Connections.
The green dot next to MCP server means Echo is listening. Copy the This computer URL if you need it manually: http://127.0.0.1:18931/mcp.
What the assistant can do
Tools are grouped. Each group is a switch in Settings → Tools (the same switches appear under Transfers). Turning a group off removes those tools from the assistant entirely.
Group | Tools | On by default | What it covers |
Always on | 1 | Yes |
|
Browse and click | 15 | Yes | tabs, navigate, snapshot, click, type, fill, scroll, wait |
Screenshots and live feed | 2 | Yes |
|
Search and article text | 2 | Yes |
|
Console and network | 2 | Yes |
|
Product tests | 5 | Yes | viewport, test start / assert / end |
Recordings | 5 | Yes | record, list, replay, delete |
Read and data | 9 | Yes | text, find, links, tables, forms, page info, HTML, PDF text, CAPTCHA check ( |
Interaction depth | 11 | No | hover, drag, right-click, dialogs, frames, zoom, file upload, batch-fill a form |
Sessions and state | 14 | No | cookies, storage, history, downloads, bookmarks, clear site data, applicant profile, live application sessions |
Automation and QA | 9 | No | asserts, visual diff, page speed, request log, schedules |
Two of those groups reach past the page: Interaction depth includes uploading any local file the assistant names or writes itself, and Sessions and state exposes every cookie and storage value in this profile, including sign-in tokens, plus the applicant profile you save for job applications.
That adds up to 41 tools on a fresh install and 75 with every group on. Two more tools need their own switches: evaluate (run JavaScript in the page; Interaction depth plus Settings → Transfers) and captcha_solve (vision solver; Read and data plus Settings → System — Connected assistant, or an OpenAI/Gemini API key). With both on, the total is 77.
Reconnect the AI client after changing groups. MCP clients read the tool list once, at startup.
Full descriptions: skills/ECHO-SKILL-TREE.md.
Cursor
In Echo: click Connect under Cursor.
Echo writes
~/.cursor/mcp.json(backs up any existing file tomcp.json.bak).In Cursor: Settings → MCP — enable
echoif it shows as disabled.Start a new chat. The assistant should see Echo tools (
navigate,snapshot,search_web, …).
Claude Desktop
Connect does not hot-plug. Echo writes a config file; Claude only reads it on startup.
In Echo: click Connect under Claude Desktop (Echo must be running).
Echo writes Claude’s config:
Mac:
~/Library/Application Support/Claude/claude_desktop_config.jsonWindows:
%APPDATA%\Claude\claude_desktop_config.jsonLinux:
~/.config/Claude/claude_desktop_config.json
Fully quit Claude Desktop — this is the step most people miss:
Mac: Cmd+Q (closing the red button is not enough)
Windows: right-click Claude in the system tray → Exit
Keep Echo running (tray / menu bar).
Open Claude again.
In Claude: Settings → Developer → Local MCP servers — confirm
echois listed. A hammer icon in chat means MCP tools are active.
Packaged Echo (v1.0.1+) uses Echo itself as the bridge — Node.js is not required.
Do not use Claude’s “Add custom connector” — that is for public HTTPS servers only.
If it still fails, see Claude will not connect below.
ChatGPT / Codex desktop
In Echo: click Connect under ChatGPT / Codex.
Echo writes
~/.codex/config.toml(backs up toconfig.toml.bak).Fully quit and reopen ChatGPT desktop or Codex.
Note: chatgpt.com in a normal browser cannot reach Echo on your computer unless you set up your own HTTPS tunnel.
Any other MCP client
On the same Settings page, copy one of:
HTTP (this computer) — Cursor, Continue, Cline, Windsurf, VS Code, etc.
stdio (this computer) — clients that only support command-based MCP.
This network — if the AI client runs on another device on your Wi-Fi (uses your computer’s LAN IP; still needs the bearer token).
Paste the JSON/TOML into that client’s MCP config. Include the Authorization: Bearer … header exactly as shown.
Verify it works
Echo is running (tray / menu bar).
Settings → Connections shows MCP server as listening.
Your AI app was fully restarted after Connect.
Ask something like: “Search Google for Echo browser MCP and open the first result in Echo.”
The assistant should call tools such as search_web, navigate, and snapshot. If tools are missing, check that echo is enabled in the client’s MCP settings and reconnect.
Captcha / login / 2FA: complete it in the Echo window yourself. Tell the assistant to wait_for and then continue.
Day-to-day use
Action | Windows / Linux | Mac |
Hide window | Close window (stays in tray) | Red button (stays in Dock + menu bar) |
Show Echo again | Tray icon → Show | Dock or menu-bar icon |
Quit completely | Tray → Quit | Echo menu → Quit, or Cmd+Q |
Open Settings | ⋮ menu | ⋮ menu |
New tab | Ctrl+T | Cmd+T |
Focus address bar | Ctrl+L | Cmd+L |
Incognito tab | Ctrl+Shift+N | Cmd+Shift+N |
Command palette | Ctrl+K | Cmd+K |
Command palette: Ctrl+K (Cmd+K on Mac) opens a search box over the page for tabs, history, bookmarks, settings, and actions.
Incognito tab: Ctrl+Shift+N (Cmd+Shift+N on Mac) opens a tab on a shared throwaway cookie jar, cleared when the last incognito tab closes. It writes no history and keeps nothing after you close it.
Assistant pill: while an AI client is connected, a pill in the toolbar shows the tool it is running. Click Pause there to stop the assistant mid-flow. Paused tools return "Echo is paused by the user" until you resume.
Appearance: Settings → Appearance. Light, dark, or follow the system, plus compact chrome and the home page.
Activity: Settings → Activity. The last calls this session, with client, tool, how long it took, and the result. Clear it or pause from the same page.
Tools: Settings → Tools. Every tool a connected assistant can call, its group, and whether it is on right now.
Open at login: Settings → System → Open at login (starts hidden in the background).
Downloads, screenshots, recordings: Settings → System → Open folder.
Token usage and tool count: Settings → Transfers. Turn off page photos, watch frames, or the skill tree on connect if you want fewer tokens. A fresh install exposes 40 tools; Cursor and some other clients get unreliable past roughly 40 tools across every MCP server at once, so turn groups off if that cap bites. Reconnect the AI client after changing tool groups.
Updates: Windows and Linux check for a new version automatically and download it in the background — Settings → About shows "Restart now" once it's ready, and it never restarts on its own, though a downloaded update is applied the next time you quit Echo normally, not only via that button (worth knowing since this is a tray app people rarely quit on purpose). Linux auto-update only works when running the actual launched .AppImage file, since that's what electron-updater's AppImage support relies on. Mac doesn't auto-update (no code-signing certificate yet); Settings → About shows a "View release" link when a newer version exists, for a manual reinstall.
Run from source (developers)
Requires Node.js 20+.
git clone https://github.com/krishngohel/local-browser.git
cd local-browser
npm install
npm run devThis compiles the app and opens the Electron window. Playwright connects to the same Chromium over CDP (port 9333). You do not need a separate browser install.
Build an installer on your machine:
npm run distOS | Output |
Windows x64 |
|
Windows ARM64 |
|
Mac |
|
Linux |
|
You cannot build a Mac .dmg from Windows — that requires a Mac or GitHub Actions on macos-latest.
On Windows, after npm run dist, npm run start-menu adds Echo to the Start Menu without rerunning the installer wizard.
Troubleshooting
“Echo is already running”
Only one Echo instance should run (MCP port conflict). Find Echo in the tray (Windows/Linux) or menu bar (Mac). Quit from there, then open Echo once.
Claude will not connect
Connect saves a file — it does not restart Claude for you.
Echo must be running when Claude starts (tray on Windows, menu bar on Mac).
Fully quit Claude, not just close the chat window:
Mac: Cmd+Q
Windows: tray icon → Exit
Reopen Claude. Check Settings → Developer → Local MCP servers for
echo.In Echo Settings → Connections, status should change from “Saved in Claude” to Connected now (green) once Claude’s bridge is live.
On v1.0.0, install Node.js and click Connect again. v1.0.1+ does not need Node — update from Releases.
Claude logs (if needed): Mac
~/Library/Logs/Claude/, Windows%APPDATA%\Claude\logs\.
Cursor / Claude does not see Echo (general)
Echo must be running before the AI app starts (or restart the AI app after Echo is up).
Click Connect again in Settings → Connections.
Fully quit Cursor or Claude (not just close the chat window), then reopen.
Cursor: Settings → MCP → enable
echo.Claude: use Local MCP servers, not “Add custom connector”.
Claude says Node.js is missing
Install Node from https://nodejs.org, then click Connect again in Echo so it writes the correct path.
Mac: “Echo cannot be opened” / “damaged”
Right-click → Open, or System Settings → Privacy & Security → Open Anyway. This is normal for unsigned apps.
Mac: opened from the disk image
Drag Echo to Applications, eject the .dmg, open from Applications.
SmartScreen / Gatekeeper warnings
Installers are unsigned until an code-signing certificate is added. Use the steps above — the app is built from this repo’s GitHub Actions.
Google shows captcha or consent
Complete it in the Echo window, or turn on Settings → System → CAPTCHA solver. Choose Connected assistant (the connected AI looks at challenge images Echo returns) or paste your own OpenAI or Gemini key. Invisible score-based checks still need you to click. Ask the assistant to wait (wait_for) and retry.
Another device on Wi-Fi cannot connect
Use the This network URL and token from Settings. Allow Echo through the host computer’s firewall on private networks. Do not share the token publicly.
MCP port in use
Echo prefers port 18931 and tries 18931–18940. Port 8931 is avoided (Playwright MCP default). Check Settings for the actual URL.
Windows ARM laptop (Surface, Snapdragon)
Use Echo-Setup-*-arm64.exe, not the x64 installer. The x64 build may fail to install, crash, or behave oddly under emulation. Releases from v1.0.2 include a native ARM64 Windows build. Settings → System → About → System type should say ARM64-based PC.
What Echo gives an assistant
On connect, Echo sends a skill tree (how to browse, search, screenshot, record, etc.) unless you turn that off in Settings → Transfers.
Browse and click: tabs_list, tabs_new, tabs_close, tabs_select, navigate, back, reload, snapshot, click, type, fill, press, scroll, select, wait_for
Screenshots and live feed: screenshot, watch
Search and article text: search_web, extract_readable
Console and network: console_errors, network_failures
Product tests: viewport_set, test_start, test_assert_text, test_assert_url, test_end
Recordings: record_start, record_stop, recordings_list, recording_play, recording_delete
Read and data: get_text, find, links, tables, forms, page_info, html, pdf_text, captcha_check (plus captcha_solve when the solver is on in Settings → System)
Three more groups are off until you turn them on in Settings → Tools:
Interaction depth: hover, double_click, right_click, drag, keyboard_shortcut, upload_file, dialog, frames, frame_select, zoom, fill_form (plus evaluate with its own switch)
Sessions and state: cookies_get, cookies_set, cookies_clear, storage_get, storage_set, clear_site_data, history_search, downloads_list, bookmarks, profile_get, profile_set, profile_suggest_fill, apps_session_start, apps_session_end
Automation and QA: assert_visible, assert_url, assert_count, visual_baseline, visual_diff, perf_timing, network_log, schedule_recording, run_recording_steps
Always snapshot before click / type / fill. Refs look like e0, e1.
Full guide: skills/ECHO-SKILL-TREE.md
Security (read this)
Anything you log into in Echo is visible to a connected assistant while MCP is connected.
MCP listens on this computer and your LAN (
0.0.0.0:18931, or the next free port). Same-machine clients should use127.0.0.1.A bearer token protects the MCP server. Echo writes it into Cursor/Claude config when you Connect. Do not post the token online.
Echo uses a separate profile from your daily Chrome — not your normal browser cookies.
Downloads: app data folder →
downloads/. Recordings:recordings/.
Legal
Also in the app: Settings → About, Privacy, Terms.
Build / release (maintainers)
GitHub Actions (.github/workflows/release.yml) builds Windows, Mac, and Linux installers on v* tags (for example git tag v1.0.0 && git push origin v1.0.0). Manual Run workflow uploads artifacts to the Actions run but does not create a Release page.
Mac and Windows builds are unsigned unless signing secrets are configured.
Every tagged release is also what installed Windows/Linux copies auto-update to (Mac gets a manual-reinstall notice instead — see Day-to-day use, above). There's no separate "ship an update" step: tagging a release is shipping the update.
Script | What it does |
| Build + run unpackaged |
| Installer for this OS |
| Single-platform installer |
| Verify packaging files and the built output (run after |
| Unit tests (no browser needed) |
| Unit tests, end-to-end tool tests, and the Claude bridge test |
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.
No tool schema history has been recorded yet.
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
Live browser debugging for AI assistants — DOM, console, network via MCP.
Stealth web browser for agents: search, fetch, click, download and type in persistent MCP sessions.
Scrape, crawl and search the web for AI agents via MCP.
A comprehensive Model Context Protocol (MCP) server that enables AI assistants to interact with yo…
Related MCP Servers
- AlicenseNot gradedqualityBmaintenanceAn MCP Server that enables AI assistants to interact with your local browsers.3,60754MIT

agentify-desktopofficial
AlicenseNot gradedqualityBmaintenanceMCP server that enables AI tools to control local browser sessions for ChatGPT, Claude, and other AI services, supporting querying, navigation, file uploads, and artifact management.44546Mozilla Public 2.0- AlicenseNot gradedqualityBmaintenanceMCP server for controlling a local camofox-browser instance, enabling LLM agents to perform web automation tasks such as navigation, interaction, snapshotting, and content extraction.43MIT
- FlicenseNot gradedqualityBmaintenanceAn MCP server that lets AI assistants drive real Chromium browsers — navigate, click, type, read pages, run OCR, and record network traffic. 43 tools, credentials stay local, zero telemetry.-
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/krishngohel/local-browser'
If you have feedback or need assistance with the MCP directory API, please join our Discord server