New:Microsoft Teams Notifications Are Now Available in Socket.Learn more
Get Started

ridealong-mcp

Package Overview
Dependencies
Maintainers
1
Versions
1
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

ridealong-mcp

A browser your AI drives. Ride along, grab the wheel anytime. MCP server for Claude Code with a real Chrome and a live H.264 view.

latest
Source
npmnpm
Version
0.1.0
Version published
Weekly downloads
41
-77.72%
Maintainers
1
Weekly downloads
 
Created
Source
Ridealong

RIDEALONG

A browser your AI drives. Ride along, grab the wheel anytime.
MCP server for Claude Code · real Google Chrome · live H.264 view · human-in-the-loop by design

CI MIT node MCP tests

Website · Quick start · Site en français · README en français

Ridealong live view: Claude's cursor, the action journal, then Manual mode

Every browser MCP lets an agent click around in the dark. Ridealong puts you in the passenger seat. Claude drives a real Chrome; you open one link and see exactly what it sees, where it clicks, what it typed — and when it hits a login, a CAPTCHA or a payment, you take the wheel from your phone, then hand it back.

In Claude Code

Ridealong is an MCP server: Claude calls its tools like any other, but every step is visible on the live view, William's pointer and messages come back into the transcript, and sensitive actions wait for an approval.

A Claude Code session using Ridealong: navigate, snapshot, act, console_errors, a channel message from William, ask_approval

On your phone

Live view on desktop: tabs, Claude's cursor, the action journalLive view on a phone with an approval card: Approuver / Refuser

Not just another browser MCP

Console errors, network requests with cookies, real tabs, stable refs, approvals and manual mode, live view

Why Ridealong

Typical browser MCPRidealong
Browserheadless Chromiumreal Google Chrome (codecs, extensions, your profile)
Watch the agentscreenshots on requestlive stream, GPU-encoded H.264, ~150 ms behind
Intervenestop the runManual mode: your clicks, keys and scroll go straight into the page
Sensitive actionshopeask_approval: Approve / Deny on your phone, the tool waits
Guide the agenttype a long prompttap the element on the live view, or send a one-line message
Secretsin the transcriptnever: Manual input is not stored, logged, or visible to Claude
Session diesreconnect by handself-healing relay + zombie-proof live view

Quick start

On the machine Claude drives — nothing to host:

git clone https://github.com/williamblaismedia-create/ridealong && cd ridealong && npm ci && npm run build
claude mcp add ridealong -- "$PWD/scripts/ridealong-local.sh"

Then, in Claude Code: "open timeliner.io and give me the live view". You get a signed link (http://127.0.0.1:9400/#token=…). Open it once on a device and the bare address works for 30 days — bookmark it.

In Docker (Chrome under Xvfb, ffmpeg, persistent profile):

docker build -t ridealong . && claude mcp add ridealong -- docker run -i --rm -p 9400:9400 -v ridealong-data:/data ridealong

On an always-on server with an NVIDIA GPU, a Cloudflare tunnel and a relay that survives your laptop sleeping: the reference setup is in docs/DEPLOIEMENT-W-AGENT.md (French).

ffmpeg installed → H.264 video (NVENC · VideoToolbox · libx264, auto-detected). No ffmpeg → JPEG frames. Either way it works.

What you get on the live view

  • Claude's cursor gliding to each target, a ripple on click, the action label — and a journal with timestamps.
  • Auto | Manual toggle. In Manual, mouse, keyboard, trackpad scroll and pinch are relayed; Claude's perception is suspended while you type.
  • Pause Claude without taking control.
  • Approval cards when Claude calls ask_approval.
  • Point at things (Auto mode tap → "William points at: button « Login »") and message Claude from the page. They reach Claude at the end of his next tool result — or instantly, as a Claude Code channel, if you start Claude with --dangerously-load-development-channels server:ridealong (also relays "took the wheel" / "paused").
  • Real tabs: the strip mirrors Chrome; tap one to move Claude's target.
  • Resolution picker (720p → 2K), applied live and remembered.
  • Capture, fullscreen, video/JPEG switch, reconnects by itself, phone-ready.

Tools

PerceiveActTabsLive view
state snapshot find readnavigate reload act fill scrolltabs_list tabs_open tabs_select tabs_closelive_start live_mode live_stop
diff screenshot console_errorsask_approval inbox
network_requests fetch_with_session

Everything follows one target tab. Elements carry stable [ref]s from snapshot/find, so Claude acts by reference, never by brittle selectors. Chrome's HTTP cache and service workers are bypassed: a site you just deployed is what Claude sees.

How it works

Claude Code ──stdio──▶ ridealong (MCP) ──CDP──▶ Google Chrome
                          │
                          └─ live view ── ws ──▶ your browser / phone
                              JPEG frames, or CDP screencast → ffmpeg (GPU) → fMP4 → MSE
                              input relay ◀── Manual mode (never stored)

Two Claude Code sessions on one Chrome? The second follows the first as a control client and promotes itself if the first goes away. A local relay (scripts/ridealong-mcp-relay.mjs) keeps the MCP session alive across a dead SSH link by replaying the handshake.

Guarantees

  • No capture. Manual-mode input is relayed straight to Chrome and never retained; perception tools refuse to run while you have control; password fields never expose values in snapshots. A test suite pins this down.
  • Signed, expiring links (HMAC, 30 s – 1 h). Device tokens (30 days) live only in your browser. Rotate RIDEALONG_LIVE_SECRET to revoke everything.
  • Loopback by default. The live view listens on 127.0.0.1; you choose how to expose it.

Roadmap

  • Session recording (video + journal as chapters)
  • Adaptive bitrate for weak mobile links
  • Profiles: one Chrome context per client / task, incognito
  • Annotated screenshots (refs drawn on the image)
  • npx ridealong-mcp

Contributing

Issues and PRs welcome — see CONTRIBUTING.md. npm test runs 131 tests against a real Chromium (and ffmpeg when present).

Built by W Automatisations · Montréal · MIT

Keywords

mcp

FAQs

Package last updated on 13 Sep 2026

Related posts