remote-browser-mcp
This server does not currently have a deployable release on Glama. Follow the repository's setup instructions to install and configure it for your MCP client, including any required credentials and local dependencies.
remote-browser
Runs the Playwright MCP's browser headless in Docker on a stoppable AWS EC2 instance, reached through an SSH tunnel, so parallel Claude Code sessions stop opening local Chrome windows. Falls back to local headless Chromium when the tunnel is down. Every session gets an isolated browser context (--isolated).
Design: see the spec in the person-ops repo, docs/superpowers/specs/2026-10-12-remote-browser-design.md.
Install
npm install && npm linkRelated MCP server: sshrew
One-time setup (AWS parts are yours to run)
# 1. IAM: create a dedicated user, attach infra/iam-policy.json, then:
aws configure --profile remote-browser
# 2. Config
mkdir -p ~/.remote-browser
echo '{ "awsProfile": "remote-browser", "region": "eu-west-1" }' > ~/.remote-browser/config.json
# 3. Provision (asks for confirmation before anything billable)
remote-browser initWire into Claude Code:
ln -s ~/Projects/remote-browser/skill ~/.claude/skills/remote-browser
claude mcp add --scope user playwright -- remote-browser-mcpDisable the plugin's own Playwright MCP so two servers do not both launch browsers. Tool names change from mcp__plugin_playwright_playwright__* to mcp__playwright__*; check project skills or agents that reference the old prefix.
SessionStart hook for ~/.claude/settings.json:
{ "hooks": { "SessionStart": [ { "hooks": [ { "type": "command", "command": "node ~/Projects/remote-browser/hooks/session-start.mjs" } ] } ] } }Cost guards
infra/iam-policy.json limits what the credential can do: only t4g.large, only eu-west-1, tagged-instance start/stop, no terminate or delete. If you change region, change aws:RequestedRegion in the policy too. IAM cannot cap how many instances or how long they run, so add a budget (console, your admin login, not the remote-browser user):
Billing > Budgets > Create budget > Cost budget, monthly, about $15. Alerts by email at 50% and 100% of actual spend and 100% of forecast.
Create a customer-managed IAM policy
remote-browser-budget-denyfrominfra/budget-deny-policy.json. Do not attach it to the user yourself: an explicit deny overrides every allow, so attaching it by hand blocksinitandupimmediately. Only the budget action (step 3) should attach it. It deniesRunInstancesandStartInstancesbut notStopInstances, soremote-browser downstill works.On the 100% actual alert, add a budget action: "Apply IAM policy" >
remote-browser-budget-deny> the remote-browser IAM user. Optionally add a second action on the same threshold, "Stop EC2 instances", for the instance id from~/.remote-browser/config.json(instanceId). Both need an execution role thatbudgets.amazonaws.comcan assume; the console offers to create it. Choose automatic execution, not manual approval, or it will not protect you while you sleep.After a trigger, remove the deny policy from the user to use the tool again.
Budgets use billing data that lags by roughly 8-12 hours, so this is a backstop for runaway spend, not a real-time limit. Still check remote-browser status at the end of the day for the first week.
Commands
remote-browser init | up | down | status. Usage details live in skill/SKILL.md.
Config: ~/.remote-browser/config.json (ports, region, profile, idle minutes). REMOTE_BROWSER_HOME overrides the directory.
Tests
npm test for unit tests; npm run test:e2e needs Docker and internet (isolation check against a local container).
Manual end-to-end checklist (record results here)
Tunnel closed: start a session. Banner says
LOCAL FALLBACK. Navigate tohttp://localhost:3000; it works, headless.remote-browser up. Reconnect/mcp. New session banner saysREMOTE. Navigate tohttp://localhost:3000; it loads the laptop's app.Open 3 sessions; set a cookie in one on
http://localhost:3000; the others must not see it.Activity Monitor shows no new Chrome processes during steps 2-3.
sshinto the instance and confirmdocker pslistsrb-chrome.Close all sessions, wait 30+ minutes: instance becomes
stoppedwithoutdown.remote-browser downtwice: second run reports already stopped, no error.Change networks, run
up:aws ec2 describe-security-groupsshows exactly one port-22 rule.
Results: not yet run.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
This server cannot be deployed
Maintenance
Related MCP Connectors
Give AI agents a real cloud Chrome: open sessions, navigate, read pages, click, type and screenshot.
Launch, inspect, control, and share isolated cloud browsers for your agents.
Cloud browser, web extraction, screenshots, and remote CDP tools for AI agents.
Undetectable cloud browser sessions for AI agents and scrapers. Navigate, extract, click, captcha.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceEnables Claude to control NVIDIA Isaac Lab for RL training, environment management, and policy evaluation on a remote GPU instance via SSH tunnel.1MIT
- AlicenseNot gradedqualityCmaintenanceEnables Claude to read files and run allowlisted commands on any Linux machine that can dial out, without inbound SSH or port forwarding.1MIT
- AlicenseNot gradedqualityBmaintenanceCoordinates parallel Claude Code agents on shared repositories and orchestrates multiple Claude subscriptions, enabling live session handoff, conflict detection, and remote terminal control.10 npmMIT
- AlicenseAqualityAmaintenanceEnables Claude Code to launch and supervise multiple concurrent Claude Code sessions in tmux, sending them briefs, reading their progress, answering their prompts, and managing isolated git worktrees.202MIT