cdp-mcp-server 5.0.1 → 5.0.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -7,9 +7,9 @@
7
7
  * 3. Lazy auto-connect on first tool call (Fix 8)
8
8
  */
9
9
  import WebSocket from 'ws';
10
- import { discoverBrowserInstances, resolveWsUrlAsync, findBestInstance, } from './browser-discovery.js';
10
+ import { discoverBrowserInstances, resolveWsUrlAsync, findBestInstance, scanBrowserProcesses, } from './browser-discovery.js';
11
11
  import { ActionableError } from '../utils/error-handler.js';
12
- // ─── HealthMonitor ──────────────────────────────────────────────────
12
+ import { classifyConnectFailure, } from '../utils/connect-diagnostics.js';
13
13
  export class HealthMonitor {
14
14
  client;
15
15
  timer = null;
@@ -19,6 +19,8 @@ export class HealthMonitor {
19
19
  lastGoodWsUrl = null;
20
20
  /** When true, onDisconnect() skips auto-reconnect (P1-4: browser.connect race). */
21
21
  suppressAutoReconnect = false;
22
+ /** How the current connection was established (5.0.3). */
23
+ connectionMode = 'unknown';
22
24
  // Options (with defaults)
23
25
  pingIntervalMs;
24
26
  pongTimeoutMs;
@@ -29,6 +31,10 @@ export class HealthMonitor {
29
31
  cdpPort;
30
32
  overrideUserDataDir;
31
33
  preferredProfile;
34
+ extraUserDataDirs;
35
+ processScan;
36
+ scanFn;
37
+ discoverFn;
32
38
  // Observable health state
33
39
  health = {
34
40
  status: 'disconnected',
@@ -47,6 +53,10 @@ export class HealthMonitor {
47
53
  this.cdpPort = opts.cdpPort ?? 9222;
48
54
  this.overrideUserDataDir = opts.overrideUserDataDir ?? null;
49
55
  this.preferredProfile = opts.preferredProfile ?? '';
56
+ this.extraUserDataDirs = opts.extraUserDataDirs ?? [];
57
+ this.processScan = opts.processScan ?? true;
58
+ this.scanFn = opts.scanFn ?? scanBrowserProcesses;
59
+ this.discoverFn = opts.discoverFn ?? discoverBrowserInstances;
50
60
  }
51
61
  // ── Lifecycle ───────────────────────────────────────────────────
52
62
  /** Start the periodic health-check timer. */
@@ -86,7 +96,7 @@ export class HealthMonitor {
86
96
  const delay = this.reconnectBaseDelayMs * Math.pow(2, this.reconnectAttempts - 1);
87
97
  await this._sleep(delay);
88
98
  try {
89
- const { wsUrl } = await resolveWsUrlAsync(this.overrideUserDataDir, this.cdpHost, this.cdpPort);
99
+ const { wsUrl } = await resolveWsUrlAsync(this.overrideUserDataDir, this.extraUserDataDirs, this.cdpHost, this.cdpPort);
90
100
  await this.client.connect(wsUrl);
91
101
  this.lastGoodWsUrl = wsUrl;
92
102
  this.onConnected();
@@ -120,14 +130,21 @@ export class HealthMonitor {
120
130
  }
121
131
  /** Internal auto-connect implementation. */
122
132
  async _doAutoConnect() {
133
+ const probes = [];
134
+ const connectErrors = [];
135
+ let portFilesFound = 0;
136
+ let scan = null;
123
137
  // Strategy 1: Try last known good connection
124
138
  if (this.lastGoodWsUrl) {
125
139
  try {
126
140
  await this.client.connect(this.lastGoodWsUrl);
127
141
  this.onConnected();
142
+ this.connectionMode = await this._detectMode();
128
143
  return;
129
144
  }
130
- catch { /* try next strategy */ }
145
+ catch (e) {
146
+ connectErrors.push(errText(e));
147
+ }
131
148
  }
132
149
  // Strategy 2: Probe common debugging ports via HTTP /json/version
133
150
  const COMMON_PORTS = [this.cdpPort, 9222, 9229, 9333, 9515];
@@ -137,41 +154,145 @@ export class HealthMonitor {
137
154
  const resp = await fetch(`http://${this.cdpHost}:${port}/json/version`, {
138
155
  signal: AbortSignal.timeout(2000),
139
156
  });
140
- const data = (await resp.json());
141
- if (data.webSocketDebuggerUrl) {
142
- await this.client.connect(data.webSocketDebuggerUrl);
143
- this.lastGoodWsUrl = data.webSocketDebuggerUrl;
144
- this.onConnected();
145
- return;
157
+ if (resp.ok) {
158
+ probes.push({ port, outcome: 'ok', status: resp.status });
159
+ const data = (await resp.json());
160
+ if (data.webSocketDebuggerUrl) {
161
+ await this.client.connect(data.webSocketDebuggerUrl);
162
+ this.lastGoodWsUrl = data.webSocketDebuggerUrl;
163
+ this.onConnected();
164
+ this.connectionMode = 'legacy';
165
+ return;
166
+ }
167
+ }
168
+ else {
169
+ probes.push({
170
+ port,
171
+ outcome: resp.status === 404 ? 'not_found' : 'error',
172
+ status: resp.status,
173
+ });
146
174
  }
147
175
  }
148
- catch {
149
- continue;
176
+ catch (e) {
177
+ probes.push({ port, outcome: 'refused', detail: errText(e) });
150
178
  }
151
179
  }
152
- // Strategy 3: File-based discovery (DevToolsActivePort)
153
- const instances = discoverBrowserInstances();
154
- if (instances.length > 0) {
180
+ // Strategy 3: File-based discovery (DevToolsActivePort). The port file
181
+ // points at /devtools/browser/<uuid> — the same WS endpoint the gated
182
+ // approval-mode server exposes — so a connect here succeeds where HTTP
183
+ // discovery 404s (approval mode), and the user gets a permission dialog.
184
+ const tryFileDiscovery = async (extraDirs) => {
185
+ const instances = this.discoverFn({ extraPaths: extraDirs });
186
+ portFilesFound += instances.length;
187
+ if (instances.length === 0)
188
+ return false;
155
189
  const best = this.preferredProfile
156
190
  ? findBestInstance(instances, this.preferredProfile)
157
191
  : instances[0];
158
- if (best) {
192
+ if (!best)
193
+ return false;
194
+ try {
195
+ await this.client.connect(best.wsUrl);
196
+ this.lastGoodWsUrl = best.wsUrl;
197
+ this.overrideUserDataDir = best.userDataDir;
198
+ this.onConnected();
199
+ this.connectionMode = await this._detectMode();
200
+ return true;
201
+ }
202
+ catch (e) {
203
+ connectErrors.push(errText(e));
204
+ return false;
205
+ }
206
+ };
207
+ if (await tryFileDiscovery(this.extraUserDataDirs))
208
+ return;
209
+ // Strategy 4: Process command-line scan (default ON) — finds
210
+ // portable/custom browser data dirs and debug ports, then retries the
211
+ // HTTP probe and file discovery with enriched inputs.
212
+ if (this.processScan) {
213
+ scan = await this.scanFn();
214
+ const enrichedPorts = scan.ports.filter((p) => !uniquePorts.includes(p));
215
+ for (const port of enrichedPorts) {
159
216
  try {
160
- await this.client.connect(best.wsUrl);
161
- this.lastGoodWsUrl = best.wsUrl;
162
- this.overrideUserDataDir = best.userDataDir;
163
- this.onConnected();
164
- return;
217
+ const resp = await fetch(`http://${this.cdpHost}:${port}/json/version`, {
218
+ signal: AbortSignal.timeout(2000),
219
+ });
220
+ if (resp.ok) {
221
+ probes.push({ port, outcome: 'ok', status: resp.status });
222
+ const data = (await resp.json());
223
+ if (data.webSocketDebuggerUrl) {
224
+ await this.client.connect(data.webSocketDebuggerUrl);
225
+ this.lastGoodWsUrl = data.webSocketDebuggerUrl;
226
+ this.onConnected();
227
+ this.connectionMode = 'legacy';
228
+ return;
229
+ }
230
+ }
231
+ else {
232
+ probes.push({
233
+ port,
234
+ outcome: resp.status === 404 ? 'not_found' : 'error',
235
+ status: resp.status,
236
+ });
237
+ }
165
238
  }
166
- catch { /* fall through to error */ }
239
+ catch (e) {
240
+ probes.push({ port, outcome: 'refused', detail: errText(e) });
241
+ }
242
+ }
243
+ if (scan.userDataDirs.length > 0 &&
244
+ (await tryFileDiscovery(scan.userDataDirs))) {
245
+ return;
167
246
  }
168
247
  }
169
- // All strategies failed — throw actionable error
170
- throw new ActionableError('Could not find any browser with remote debugging enabled.', `To fix, do ONE of these:\n` +
171
- ` 1. Chrome/Edge: Go to chrome://flags → search "remote debugging" → Enable → Relaunch\n` +
172
- ` 2. Or launch with flag: chrome --remote-debugging-port=9222\n` +
173
- ` 3. Or set CDP_PORT env var if using a non-standard port\n\n` +
174
- `The server will auto-connect once debugging is enabled. No manual connect needed.`);
248
+ // All strategies failed — classify and throw an actionable error
249
+ const processInfo = scan
250
+ ? {
251
+ browsersRunning: scan.browsersRunning,
252
+ flagPresent: scan.ports.length > 0,
253
+ }
254
+ : null;
255
+ const diagnosis = classifyConnectFailure({
256
+ probes,
257
+ portFilesFound,
258
+ connectErrors,
259
+ processInfo,
260
+ host: this.cdpHost,
261
+ primaryPort: this.cdpPort,
262
+ });
263
+ throw new ActionableError(diagnosis.headline, diagnosis.fix, {
264
+ kind: diagnosis.kind,
265
+ probes,
266
+ });
267
+ }
268
+ /**
269
+ * After a successful connect via the file-based path, detect whether the
270
+ * browser is a legacy CDP server or the gated/approval-mode server by
271
+ * probing /json/version (which only legacy servers answer).
272
+ */
273
+ async _detectMode() {
274
+ let host = this.cdpHost;
275
+ let port = this.cdpPort;
276
+ const url = this.client.url;
277
+ if (url) {
278
+ try {
279
+ const parsed = new URL(url);
280
+ host = parsed.hostname || host;
281
+ port = parseInt(parsed.port || String(this.cdpPort), 10);
282
+ }
283
+ catch { /* keep defaults */ }
284
+ }
285
+ try {
286
+ const resp = await fetch(`http://${host}:${port}/json/version`, {
287
+ signal: AbortSignal.timeout(2000),
288
+ });
289
+ return resp.ok ? 'legacy' : 'approval';
290
+ }
291
+ catch {
292
+ // Legacy servers always answer /json/version; failure + live WS
293
+ // strongly suggests approval mode, but stay honest.
294
+ return 'approval';
295
+ }
175
296
  }
176
297
  /** Update the override directory (e.g. after `browser.connect`). */
177
298
  setOverrideUserDataDir(dir) {
@@ -216,4 +337,10 @@ export class HealthMonitor {
216
337
  return new Promise((resolve) => setTimeout(resolve, ms));
217
338
  }
218
339
  }
340
+ /** Extract a short error message from an unknown thrown value. */
341
+ function errText(e) {
342
+ if (e instanceof Error)
343
+ return e.message;
344
+ return String(e);
345
+ }
219
346
  //# sourceMappingURL=health-monitor.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"health-monitor.js","sourceRoot":"","sources":["../../src/connection/health-monitor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"health-monitor.js","sourceRoot":"","sources":["../../src/connection/health-monitor.ts"],"names":[],"mappings":"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"}
@@ -3,9 +3,9 @@
3
3
  */
4
4
  export { CDPClient } from './cdp-client.js';
5
5
  export type { ConnectionState, CDPClientOptions } from './cdp-client.js';
6
- export { discoverBrowserInstances, resolveWsUrl, resolveWsUrlAsync, findBestInstance, } from './browser-discovery.js';
7
- export type { DiscoverOptions, WsUrlResult } from './browser-discovery.js';
6
+ export { discoverBrowserInstances, resolveWsUrl, resolveWsUrlAsync, findBestInstance, parseBrowserCommandLine, scanBrowserProcesses, } from './browser-discovery.js';
7
+ export type { DiscoverOptions, WsUrlResult, CommandLineInfo, ProcessScanResult, } from './browser-discovery.js';
8
8
  export { HealthMonitor } from './health-monitor.js';
9
- export type { HealthStatus, HealthState, HealthMonitorOptions, } from './health-monitor.js';
9
+ export type { HealthStatus, HealthState, HealthMonitorOptions, ConnectionMode, } from './health-monitor.js';
10
10
  export { DomainManager } from './domain-manager.js';
11
11
  export { TabSessionService } from './tab-session-service.js';
@@ -2,7 +2,7 @@
2
2
  * Connection module — public surface.
3
3
  */
4
4
  export { CDPClient } from './cdp-client.js';
5
- export { discoverBrowserInstances, resolveWsUrl, resolveWsUrlAsync, findBestInstance, } from './browser-discovery.js';
5
+ export { discoverBrowserInstances, resolveWsUrl, resolveWsUrlAsync, findBestInstance, parseBrowserCommandLine, scanBrowserProcesses, } from './browser-discovery.js';
6
6
  export { HealthMonitor } from './health-monitor.js';
7
7
  export { DomainManager } from './domain-manager.js';
8
8
  export { TabSessionService } from './tab-session-service.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/connection/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAG5C,OAAO,EACL,wBAAwB,EACxB,YAAY,EACZ,iBAAiB,EACjB,gBAAgB,GACjB,MAAM,wBAAwB,CAAC;AAGhC,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAOpD,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAEpD,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/connection/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAG5C,OAAO,EACL,wBAAwB,EACxB,YAAY,EACZ,iBAAiB,EACjB,gBAAgB,EAChB,uBAAuB,EACvB,oBAAoB,GACrB,MAAM,wBAAwB,CAAC;AAQhC,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAQpD,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAEpD,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC"}
package/dist/index.d.ts CHANGED
@@ -1,3 +1,4 @@
1
+ #!/usr/bin/env node
1
2
  /**
2
3
  * Entry point for the CDP Browser MCP Server v5.
3
4
  *
package/dist/index.js CHANGED
@@ -1,3 +1,4 @@
1
+ #!/usr/bin/env node
1
2
  /**
2
3
  * Entry point for the CDP Browser MCP Server v5.
3
4
  *
@@ -49,7 +50,7 @@ import { registerDebugTools } from './tools/debug.js';
49
50
  import { registerFormTools } from './tools/form.js';
50
51
  import { getSlimTools, mapSlimToFull } from './tools/slim-mode.js';
51
52
  // ─── Bootstrap ──────────────────────────────────────────────────────
52
- const VERSION = '5.0.1';
53
+ const VERSION = '5.0.3';
53
54
  const config = loadConfig();
54
55
  const cdpClient = new CDPClient({ commandTimeout: config.globalTimeout });
55
56
  // Lazy initialization: HealthMonitor is created but doesn't discover browsers
@@ -57,6 +58,8 @@ const healthMonitor = new HealthMonitor(cdpClient, {
57
58
  cdpHost: config.cdpHost,
58
59
  cdpPort: config.cdpPort,
59
60
  preferredProfile: config.autoConnectProfile,
61
+ extraUserDataDirs: config.userDataDir ? [config.userDataDir] : [],
62
+ processScan: config.processScan,
60
63
  });
61
64
  const domainManager = new DomainManager();
62
65
  const tabSessionService = new TabSessionService();
@@ -443,7 +446,8 @@ registry.register(defineTool({
443
446
  name: 'ping',
444
447
  description: 'Health check. Returns server version and connection status.',
445
448
  inputSchema: { type: 'object', properties: {} },
446
- handler: async () => success(`pong — CDP Browser MCP v${VERSION}\nConnected: ${cdpClient.isConnected}`),
449
+ handler: async () => success(`pong — CDP Browser MCP v${VERSION}\nConnected: ${cdpClient.isConnected}` +
450
+ (cdpClient.isConnected ? `\nMode: ${healthMonitor.connectionMode}` : '')),
447
451
  }));
448
452
  registry.register(defineTool({
449
453
  name: 'status',
@@ -453,6 +457,10 @@ registry.register(defineTool({
453
457
  const lines = [
454
458
  `## CDP Browser MCP Server v${VERSION}`,
455
459
  `Connected: ${cdpClient.isConnected}`,
460
+ ...(cdpClient.isConnected
461
+ ? [`Connection mode: ${healthMonitor.connectionMode}`]
462
+ : []),
463
+ `Process scan: ${config.processScan ? 'on' : 'off'}`,
456
464
  `Default timeout: ${config.globalTimeout}ms`,
457
465
  `Default cleanup: ${config.defaultCleanupStrategy}`,
458
466
  `Session TTL: ${config.sessionTTL}ms`,
@@ -483,7 +491,7 @@ if (config.slimMode) {
483
491
  registerFormTools(registry, ctx);
484
492
  }
485
493
  else {
486
- // Full mode: all 15 tools
494
+ // Full mode: all 14 tools
487
495
  registerTabsTools(registry, ctx);
488
496
  registerPageTools(registry, ctx);
489
497
  registerInteractTools(registry, ctx);
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}