cdt
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., "@cdtStart a new browser session using my Edge cookies"
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.
cdt
cdt drives an isolated, already-logged-in Edge from the shell. It reuses your daily Edge's login cookies through a browser-extension bridge, so the browser it launches is a copy of your daily Edge — signed in, with no passwords involved. It's a thin CLI wrapper over chrome-devtools-mcp, turning its MCP tools into on-demand shell commands.
Why
When an AI agent automates a browser that needs a login, you usually pick between two bad options: let the AI log in itself (it hits CAPTCHAs, 2FA, anti-bot walls), or hard-code credentials into the script (they leak). cdt takes a third path: the AI reuses your daily Edge session. The site sees a normal, already-authenticated browser — no AI login flow, no credentials in code.
Related MCP server: Konnect
Features
Reuses your login state — a browser extension reads cookies from your daily Edge; the isolated Edge cdt launches is already logged in.
Credentials stay local — cookies travel over a WebSocket/HTTP on
127.0.0.1into an isolated profile; they're never written to cdt's config or handed to the AI as passwords.Session isolation — each
cdt startspins up its own short session id, profile, and Edge process; concurrent AI windows never share a browser.On-demand CLI — every chrome-devtools-mcp tool (
navigate_page,take_snapshot,click,fill, …) becomes a shell command, scoped by--session=<id>.Self-cleaning —
start/prepareauto-reap dead sessions and hung launches (daemon alive but Edge never came up); a working session is never killed.AI-skill ready — one command installs the cdt skill into Claude Code and Codex.
How it works
flowchart LR
DE["Daily Edge<br/>(logged in)"] --> EXT["CDT Bridge extension"]
EXT -->|WebSocket<br/>127.0.0.1:17890| BR["cdt daemon<br/>(bridge)"]
CLI["cdt start"] -->|HTTP /inject| BR
BR -->|puppeteer writes cookies| P[("isolated profile<br/>cdt-<id>")]
P --> CD["chrome-devtools<br/>(per session)"]
CD --> IE["isolated Edge<br/>(logged in)"]
TOOL["cdt tool<br/>--session"] -.->|drives| CDFour pieces cooperate:
CDT Bridge extension (loaded in your daily Edge) — reads cookies via the
chrome.cookiesAPI and pushes them over a local WebSocket.cdt daemon (
bridge/daemon.mjs, resident) — runs the WebSocket server the extension connects to, plus an HTTP server on127.0.0.1:17891that cdt calls:/status,/cookies,/inject.cdt CLI (
cdt.ps1) — what you and the AI run.startasks the daemon to inject cookies into a fresh isolated profile, then hands that profile to chrome-devtools.chrome-devtools-mcp — launches and drives the isolated Edge: one daemon + one browser per session id.
Requirements
Windows — the CLI entry point is PowerShell (
cdt.ps1);bin/cdt.mjsis a shim that forwards to it. The daemon and extension are portable JS; only the CLI glue is Windows-specific for now.Edge — both your daily browser (the cookie source) and the automation target.
Node ≥ 18 on PATH, and the global npm
bindirectory on PATH (socdtandchrome-devtoolsresolve).
Installation (one-time)
In the cdt source directory:
npm i -g .
cdt doctorcdt doctor installs the chrome-devtools-mcp CLI if missing, detects the Edge path into config, and starts the cdt daemon.
Load the CDT Bridge extension in your daily Edge: run cdt extension to print its path, then edge://extensions → Developer mode → "Load unpacked" → select that directory. The popup should show connected.
Confirm the bridge:
cdt prepare # reports extension status + cookie count(Optional) Deploy the skill to AI tools so the AI can drive cdt:
cdt skills install --targets all # ~/.claude/skills/cdt, ~/.codex/skills/cdtUsage
cdt start # inject cookies + launch isolated Edge; prints session=<id>
cdt navigate_page --session=<id> --type url --url https://github.com
cdt take_snapshot --session=<id> # shows your logged-in home → it works
cdt stop --session=<id>Reuse the session=<id> from cdt start on every following command.
Commands
Command | Purpose |
| Ensure daemon running + report extension status (auto-cleans orphans first) |
| Auto-clean + inject cookies + launch isolated Edge; prints sessionId (not customizable) |
| Forward to chrome-devtools ( |
| Stop session + kill leftover Edge + delete profile + clear marker |
| List sessions (alive/orphan) + profiles |
| Remove markers + profiles for dead or hung sessions |
| Set config ( |
| Install chrome-devtools CLI + detect Edge + check extension |
| Print extension dir (load at |
| Manage the AI skill ( |
| Remove skill + package |
Sessions & automatic cleanup
Each cdt start creates an isolated session with a short random id. cdt start and cdt prepare first run an automatic cleanup. A session is reaped when:
dead — its chrome-devtools daemon is no longer running; or
hung — the daemon is alive but Edge never came up for over 90s (a stuck launch).
Edge is the heartbeat: daemon alive + Edge up = working → left alone; daemon alive + Edge absent past the grace window = stuck → cleaned promptly. A working session is never killed; a hung one doesn't wait for a reboot.
Configuration
cdt config set executable "C:\Program Files (x86)\Microsoft\Edge\Application\msedge.exe"
cdt config set httpPort 17891
cdt config set profilesDir "D:\cdt-profiles"
cdt config listRead on every run and injected into the process environment. Config lives in ~/.cdt/config.json.
Troubleshooting
cdt starthangs / prints no session id — Edge launching occasionally stalls (a chrome-devtools-mcp/Edge quirk). Kill it and runcdt startagain; the previous hung session is auto-cleaned on the next run.Extension shows disconnected — run
cdt doctor(restarts the daemon), or click reconnect in the extension popup. The extension retries in the background.session <id> was not started— you forgot the--session=<id>fromcdt start, or the session was auto-cleaned. Runcdt startfor a fresh id.A session id collision on
cdt start— extremely rare; first decide whether you started that session yourself, onlycdt stopit if you did, otherwise justcdt startagain.
Status & limitations
cdt is an early-stage, Windows-first tool (the CLI entry point is PowerShell). It wraps chrome-devtools-mcp, an official Google project. Known rough edge: Edge launching can intermittently stall — the automatic cleanup is designed to absorb exactly this.
Uninstall
cdt uninstall # removes the deployed skill + the package
Remove-Item -Recurse $HOME\.cdt # config/profiles/sessions (manual)Also remove the CDT Bridge extension in daily Edge.
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.
Latest Blog Posts
- 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/arsonist-g/cdt'
If you have feedback or need assistance with the MCP directory API, please join our Discord server