mcp-scraper 0.3.12 → 0.3.14

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.
Files changed (33) hide show
  1. package/dist/bin/api-server.cjs +13 -3
  2. package/dist/bin/api-server.cjs.map +1 -1
  3. package/dist/bin/api-server.js +1 -1
  4. package/dist/bin/browser-agent-stdio-server.cjs +4 -4
  5. package/dist/bin/browser-agent-stdio-server.cjs.map +1 -1
  6. package/dist/bin/browser-agent-stdio-server.js +2 -2
  7. package/dist/bin/mcp-scraper-cli.cjs +1 -1
  8. package/dist/bin/mcp-scraper-cli.cjs.map +1 -1
  9. package/dist/bin/mcp-scraper-cli.js +1 -1
  10. package/dist/bin/mcp-scraper-combined-stdio-server.cjs +28 -19
  11. package/dist/bin/mcp-scraper-combined-stdio-server.cjs.map +1 -1
  12. package/dist/bin/mcp-scraper-combined-stdio-server.js +3 -3
  13. package/dist/bin/mcp-scraper-install.cjs +1 -1
  14. package/dist/bin/mcp-scraper-install.cjs.map +1 -1
  15. package/dist/bin/mcp-scraper-install.js +1 -1
  16. package/dist/bin/mcp-stdio-server.cjs +25 -3
  17. package/dist/bin/mcp-stdio-server.cjs.map +1 -1
  18. package/dist/bin/mcp-stdio-server.js +3 -2
  19. package/dist/bin/mcp-stdio-server.js.map +1 -1
  20. package/dist/chunk-3QHZPR4U.js +7 -0
  21. package/dist/chunk-3QHZPR4U.js.map +1 -0
  22. package/dist/{chunk-BW3DGFNQ.js → chunk-AX7UBYLG.js} +5 -5
  23. package/dist/chunk-AX7UBYLG.js.map +1 -0
  24. package/dist/{chunk-7R7VBQRV.js → chunk-HM6FHV5U.js} +17 -4
  25. package/dist/{chunk-7R7VBQRV.js.map → chunk-HM6FHV5U.js.map} +1 -1
  26. package/dist/{server-CUPDJLWM.js → server-ILIVSPNY.js} +3 -3
  27. package/docs/mcp-tool-craft-lint.generated.md +1 -1
  28. package/docs/mcp-tool-manifest.generated.json +1 -1
  29. package/package.json +1 -1
  30. package/dist/chunk-BW3DGFNQ.js.map +0 -1
  31. package/dist/chunk-FB5ZJGFN.js +0 -7
  32. package/dist/chunk-FB5ZJGFN.js.map +0 -1
  33. /package/dist/{server-CUPDJLWM.js.map → server-ILIVSPNY.js.map} +0 -0
@@ -10,7 +10,7 @@ import {
10
10
  import "../chunk-LFATOGDF.js";
11
11
  import {
12
12
  PACKAGE_VERSION
13
- } from "../chunk-FB5ZJGFN.js";
13
+ } from "../chunk-3QHZPR4U.js";
14
14
 
15
15
  // src/cli/human-cli.ts
16
16
  import { Command } from "commander";
@@ -44,6 +44,19 @@ function harvestTimeoutBudget(maxQuestions, serpOnly = false) {
44
44
  return { serverMs, clientMs };
45
45
  }
46
46
 
47
+ // src/lib/browser-service-env.ts
48
+ function browserServiceProfileName() {
49
+ const value = (process.env.BROWSER_AGENT_PROFILE_NAME ?? process.env.BROWSER_SERVICE_PROFILE_NAME ?? process.env.KERNEL_BROWSER_PROFILE_NAME ?? process.env.KERNEL_PROFILE_NAME)?.trim();
50
+ return value || void 0;
51
+ }
52
+ function browserServiceProfileSaveChanges() {
53
+ const value = (process.env.BROWSER_AGENT_PROFILE_SAVE_CHANGES ?? process.env.BROWSER_SERVICE_PROFILE_SAVE_CHANGES ?? process.env.KERNEL_BROWSER_PROFILE_SAVE_CHANGES ?? process.env.KERNEL_PROFILE_SAVE_CHANGES)?.trim().toLowerCase();
54
+ if (!value) return void 0;
55
+ if (["1", "true", "yes", "on"].includes(value)) return true;
56
+ if (["0", "false", "no", "off"].includes(value)) return false;
57
+ return void 0;
58
+ }
59
+
47
60
  // src/mcp/http-mcp-tool-executor.ts
48
61
  function youtubeVideoIdFromUrl(url) {
49
62
  if (!url) return null;
@@ -89,6 +102,15 @@ function httpErrorPayload(path, res, data) {
89
102
  message: typeof bodyMessage === "string" && bodyMessage.trim() ? bodyMessage : `MCP Scraper HTTP ${res.status}${res.statusText ? ` ${res.statusText}` : ""} for ${path}`
90
103
  };
91
104
  }
105
+ function withDefaultHostedProfile(input) {
106
+ const profile = input.profile?.trim() || browserServiceProfileName();
107
+ const saveProfileChanges = input.saveProfileChanges ?? browserServiceProfileSaveChanges();
108
+ return {
109
+ ...input,
110
+ ...profile ? { profile } : {},
111
+ ...typeof saveProfileChanges === "boolean" ? { saveProfileChanges } : {}
112
+ };
113
+ }
92
114
  var HttpMcpToolExecutor = class {
93
115
  baseUrl;
94
116
  apiKey;
@@ -243,10 +265,10 @@ var HttpMcpToolExecutor = class {
243
265
  return this.call("/facebook/video-transcribe", input, this.httpTimeoutOverrideMs ?? 24e4);
244
266
  }
245
267
  instagramProfileContent(input) {
246
- return this.call("/instagram/profile-content", input, this.httpTimeoutOverrideMs ?? 24e4);
268
+ return this.call("/instagram/profile-content", withDefaultHostedProfile(input), this.httpTimeoutOverrideMs ?? 24e4);
247
269
  }
248
270
  instagramMediaDownload(input) {
249
- return this.call("/instagram/media-download", input, this.httpTimeoutOverrideMs ?? 3e5);
271
+ return this.call("/instagram/media-download", withDefaultHostedProfile(input), this.httpTimeoutOverrideMs ?? 3e5);
250
272
  }
251
273
  mapsPlaceIntel(input) {
252
274
  return this.call("/maps/place", input);
@@ -301,19 +323,6 @@ var import_node_fs2 = require("fs");
301
323
  var import_node_os3 = require("os");
302
324
  var import_node_path3 = require("path");
303
325
 
304
- // src/lib/browser-service-env.ts
305
- function browserServiceProfileName() {
306
- const value = (process.env.BROWSER_AGENT_PROFILE_NAME ?? process.env.BROWSER_SERVICE_PROFILE_NAME ?? process.env.KERNEL_BROWSER_PROFILE_NAME ?? process.env.KERNEL_PROFILE_NAME)?.trim();
307
- return value || void 0;
308
- }
309
- function browserServiceProfileSaveChanges() {
310
- const value = (process.env.BROWSER_AGENT_PROFILE_SAVE_CHANGES ?? process.env.BROWSER_SERVICE_PROFILE_SAVE_CHANGES ?? process.env.KERNEL_BROWSER_PROFILE_SAVE_CHANGES ?? process.env.KERNEL_PROFILE_SAVE_CHANGES)?.trim().toLowerCase();
311
- if (!value) return void 0;
312
- if (["1", "true", "yes", "on"].includes(value)) return true;
313
- if (["0", "false", "no", "off"].includes(value)) return false;
314
- return void 0;
315
- }
316
-
317
326
  // src/services/fanout/export.ts
318
327
  var import_node_fs = require("fs");
319
328
  var import_node_os = require("os");
@@ -444,7 +453,7 @@ render();
444
453
  }
445
454
 
446
455
  // src/version.ts
447
- var PACKAGE_VERSION = "0.3.12";
456
+ var PACKAGE_VERSION = "0.3.14";
448
457
 
449
458
  // src/mcp/browser-agent-tool-schemas.ts
450
459
  var import_zod = require("zod");
@@ -1136,13 +1145,13 @@ function registerBrowserAgentMcpTools(server2, opts) {
1136
1145
  const baseUrl2 = opts.baseUrl.replace(/\/$/, "");
1137
1146
  const consoleBase = (opts.consoleBaseUrl ?? opts.baseUrl).replace(/\/$/, "");
1138
1147
  const timeoutMs = opts.timeoutMs ?? 9e4;
1139
- async function req(method, path, body) {
1148
+ async function req(method, path, body, requestTimeoutMs = timeoutMs) {
1140
1149
  try {
1141
1150
  const res = await fetch(`${baseUrl2}${path}`, {
1142
1151
  method,
1143
1152
  headers: { "Content-Type": "application/json", "x-api-key": opts.apiKey },
1144
1153
  body: body ? JSON.stringify(body) : void 0,
1145
- signal: AbortSignal.timeout(timeoutMs)
1154
+ signal: AbortSignal.timeout(requestTimeoutMs)
1146
1155
  });
1147
1156
  const data = await res.json().catch(() => ({}));
1148
1157
  return { ok: res.ok, data };
@@ -1728,7 +1737,7 @@ function registerBrowserAgentMcpTools(server2, opts) {
1728
1737
  first_party_domain: input.first_party_domain,
1729
1738
  reset: input.reset,
1730
1739
  export: input.export
1731
- });
1740
+ }, Math.max(timeoutMs, (input.wait_ms ?? (input.prompt ? 9e4 : 8e3)) + 3e4));
1732
1741
  if (!res.ok) return errorResult("browser_capture_fanout", res.data, input.session_id);
1733
1742
  const hosted = res.data?.result ?? res.data;
1734
1743
  let exports2 = res.data?.exports ?? null;