mcp-scraper 0.80.0 → 0.83.0

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 (31) hide show
  1. package/CHANGELOG.md +59 -1
  2. package/README.md +4 -2
  3. package/dist/{analytics-repository-YOY5KMOD.js → analytics-repository-GA6P5S5J.js} +1 -1
  4. package/dist/bin/api-server.js +3 -3
  5. package/dist/bin/mcp-scraper-cli.js +61 -46
  6. package/dist/bin/mcp-scraper-core.js +7 -7
  7. package/dist/bin/mcp-scraper-install.js +2 -2
  8. package/dist/bin/mcp-stdio-server.js +7 -7
  9. package/dist/bin/paa-harvest.js +2 -2
  10. package/dist/{chunk-PMONKQGJ.js → chunk-4NZ6JFK5.js} +2 -2
  11. package/dist/{chunk-VEQPA65D.js → chunk-ACDNW7TG.js} +1 -1
  12. package/dist/{chunk-ID7J23WP.js → chunk-AIVNZZO3.js} +4 -3
  13. package/dist/{chunk-VXLU74YZ.js → chunk-BGD7U3AE.js} +207 -1
  14. package/dist/{chunk-HEUMDX4I.js → chunk-CNAJWRJT.js} +131 -1
  15. package/dist/{chunk-YPOOARYN.js → chunk-FUG2IRKP.js} +1 -1
  16. package/dist/{chunk-XBEUZJHS.js → chunk-HGJJQY24.js} +49 -5
  17. package/dist/{chunk-KNGTQD6U.js → chunk-NH4QAH3X.js} +3 -1
  18. package/dist/{chunk-5UAFBKJR.js → chunk-OPQIGAFB.js} +24 -5
  19. package/dist/{chunk-OY25W46Q.js → chunk-QSZXAA5F.js} +3121 -2222
  20. package/dist/{chunk-P4447RNF.js → chunk-UXVT7FWW.js} +2 -2
  21. package/dist/{chunk-62W6UER7.js → chunk-ZHPGPVJJ.js} +2 -2
  22. package/dist/{extract-bundle-232SA7MI.js → extract-bundle-HTWWJD6N.js} +2 -2
  23. package/dist/{gmail-service-IMUHMRH4.js → gmail-service-VXE7OYNA.js} +3 -3
  24. package/dist/index.cjs +23 -5
  25. package/dist/index.js +2 -2
  26. package/dist/{server-XBRLYGTR.js → server-ICMRDYI4.js} +4789 -2842
  27. package/dist/{site-extract-repository-VDONDDMR.js → site-extract-repository-Y5WQFSQW.js} +6 -2
  28. package/dist/{worker-ICCZR443.js → worker-FM3ZRDY4.js} +3 -3
  29. package/package.json +6 -2
  30. package/public/.well-known/xray-install.json +178 -0
  31. package/public/agent-install.md +194 -0
@@ -1,6 +1,6 @@
1
1
  // release-message.json
2
2
  var release_message_default = {
3
- message: "PAA harvests now expose exact interaction timing, distinguish interrupted work from proven frontier exhaustion, and install with a pinned schema runtime so the hosted and local 354-tool contracts remain identical."
3
+ message: "Install X-Ray in one conversation: audit every public renderer, infer privacy-safe CTA semantics, keep durable setup revisions, and return verified zero-credit readiness and first-answer receipts."
4
4
  };
5
5
 
6
6
  // src/install-terminal.ts
@@ -55,7 +55,7 @@ function renderInstallTerminal(options) {
55
55
  "1/1 install surfaces ready",
56
56
  colorize(`Newest in v${options.version}: ${release_message_default.message}`, "lime", color),
57
57
  "",
58
- `${colorize("Tools", "cyan", color)} ${colorize("(356 MCP tools)", "muted", color)}`,
58
+ `${colorize("Tools", "cyan", color)} ${colorize("(363 MCP tools)", "muted", color)}`,
59
59
  toolRow("search", ["harvest_paa", "search_serp", "maps_search", "maps_place_intel"], color),
60
60
  toolRow("extract", ["extract_url", "map_site_urls", "extract_site", "audit_site", "directory_workflow"], color),
61
61
  toolRow("build", ["create_editorial_reading_room", "rank_tracker_workflow", "portable HTML"], color),
@@ -19,11 +19,11 @@ import {
19
19
  LedgerOperation,
20
20
  MC_PER_CREDIT,
21
21
  calculateConnectedUsageCharge
22
- } from "./chunk-PMONKQGJ.js";
22
+ } from "./chunk-4NZ6JFK5.js";
23
23
  import {
24
24
  recordVendorUsage,
25
25
  runWithCostContext
26
- } from "./chunk-5UAFBKJR.js";
26
+ } from "./chunk-OPQIGAFB.js";
27
27
  import {
28
28
  debitMcIdempotent,
29
29
  getDb,
@@ -10,7 +10,7 @@ import {
10
10
  createSiteExtractContentReader,
11
11
  createSiteExtractImageArtifact,
12
12
  extractJobLimitInfo
13
- } from "./chunk-XBEUZJHS.js";
13
+ } from "./chunk-HGJJQY24.js";
14
14
  import "./chunk-OZJMVCDK.js";
15
15
  import {
16
16
  computeIssues,
@@ -19,7 +19,7 @@ import {
19
19
  renderLinkReport
20
20
  } from "./chunk-PGJQDMC2.js";
21
21
  import "./chunk-DNM65UCK.js";
22
- import "./chunk-PMONKQGJ.js";
22
+ import "./chunk-4NZ6JFK5.js";
23
23
  import "./chunk-GGZEC22A.js";
24
24
  import {
25
25
  getDb
@@ -7,11 +7,11 @@ import {
7
7
  GmailServiceError,
8
8
  normalizeGmailMessage,
9
9
  parseGmailAddresses
10
- } from "./chunk-62W6UER7.js";
10
+ } from "./chunk-ZHPGPVJJ.js";
11
11
  import "./chunk-C5Z4OFKW.js";
12
12
  import "./chunk-T3MZISOF.js";
13
- import "./chunk-PMONKQGJ.js";
14
- import "./chunk-5UAFBKJR.js";
13
+ import "./chunk-4NZ6JFK5.js";
14
+ import "./chunk-OPQIGAFB.js";
15
15
  import "./chunk-YXNDOQXN.js";
16
16
  export {
17
17
  GMAIL_ATTACHMENT_REF_TTL_MS,
package/dist/index.cjs CHANGED
@@ -458,7 +458,7 @@ var NANGO_USD_PER_CONNECTION_MONTH = envRate("NANGO_USD_PER_CONNECTION_MONTH", 1
458
458
  var NANGO_USD_PER_FUNCTION_RUN = envRate("NANGO_USD_PER_FUNCTION_RUN", 1e-4);
459
459
  var NANGO_USD_PER_PROXY_REQUEST = envRate("NANGO_USD_PER_PROXY_REQUEST", 1e-4);
460
460
  var NANGO_USD_PER_COMPUTE_SEC = envRate("NANGO_USD_PER_COMPUTE_SEC", 2e-4);
461
- var BRIGHTDATA_BROWSER_USD_PER_GB = envRate("BRIGHTDATA_BROWSER_USD_PER_GB", 0);
461
+ var BRIGHTDATA_BROWSER_USD_PER_GB = envRate("BRIGHTDATA_BROWSER_USD_PER_GB", 8);
462
462
  function kernelCostUsd(ms, headful) {
463
463
  const sec = Math.max(0, ms) / 1e3;
464
464
  return sec * (headful ? KERNEL_HEADFUL_USD_PER_SEC : KERNEL_HEADLESS_USD_PER_SEC);
@@ -499,7 +499,7 @@ async function runCostTelemetryMigration() {
499
499
  SELECT
500
500
  (SELECT COUNT(*) FROM sqlite_master WHERE type = 'table' AND name IN ('kernel_session_log', 'vendor_usage_log', 'cost_probe_runs')) = 3
501
501
  AND (SELECT COUNT(*) FROM pragma_table_info('kernel_session_log') WHERE name IN ('proxy_source', 'proxy_type', 'method')) = 3
502
- AND (SELECT COUNT(*) FROM pragma_table_info('vendor_usage_log') WHERE name IN ('method', 'source_key')) = 2
502
+ AND (SELECT COUNT(*) FROM pragma_table_info('vendor_usage_log') WHERE name IN ('method', 'source_key', 'provider_duration_ms', 'provider_captcha', 'provider_status')) = 5
503
503
  AND (SELECT COUNT(*) FROM sqlite_master WHERE type = 'index' AND name = 'vendor_usage_log_vendor_source_key') = 1
504
504
  AND (SELECT COUNT(*) FROM pragma_table_info('cost_probe_runs') WHERE name IN ('units', 'unit_type', 'mode')) = 3
505
505
  AS ready
@@ -557,6 +557,9 @@ async function runCostTelemetryMigration() {
557
557
  est_cost_usd REAL NOT NULL DEFAULT 0,
558
558
  error TEXT,
559
559
  source_key TEXT,
560
+ provider_duration_ms INTEGER,
561
+ provider_captcha INTEGER,
562
+ provider_status TEXT,
560
563
  created_at TEXT NOT NULL DEFAULT (datetime('now'))
561
564
  )
562
565
  `);
@@ -571,6 +574,18 @@ async function runCostTelemetryMigration() {
571
574
  await db.execute(`ALTER TABLE vendor_usage_log ADD COLUMN source_key TEXT`);
572
575
  } catch {
573
576
  }
577
+ try {
578
+ await db.execute(`ALTER TABLE vendor_usage_log ADD COLUMN provider_duration_ms INTEGER`);
579
+ } catch {
580
+ }
581
+ try {
582
+ await db.execute(`ALTER TABLE vendor_usage_log ADD COLUMN provider_captcha INTEGER`);
583
+ } catch {
584
+ }
585
+ try {
586
+ await db.execute(`ALTER TABLE vendor_usage_log ADD COLUMN provider_status TEXT`);
587
+ } catch {
588
+ }
574
589
  await db.execute(`CREATE UNIQUE INDEX IF NOT EXISTS vendor_usage_log_vendor_source_key ON vendor_usage_log(vendor, source_key) WHERE source_key IS NOT NULL`);
575
590
  await db.execute(`
576
591
  CREATE TABLE IF NOT EXISTS cost_probe_runs (
@@ -653,8 +668,8 @@ async function recordVendorUsage(r) {
653
668
  const db = getDb();
654
669
  const result = await db.execute({
655
670
  sql: `INSERT OR IGNORE INTO vendor_usage_log
656
- (id, op, probe_run_id, user_id, vendor, model, units, unit_type, est_cost_usd, error, method, source_key)
657
- VALUES (?,?,?,?,?,?,?,?,?,?,?,?)`,
671
+ (id, op, probe_run_id, user_id, vendor, model, units, unit_type, est_cost_usd, error, method, source_key, provider_duration_ms, provider_captcha, provider_status)
672
+ VALUES (?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)`,
658
673
  args: [
659
674
  (0, import_node_crypto2.randomUUID)(),
660
675
  r.op ?? ctx?.op ?? null,
@@ -667,7 +682,10 @@ async function recordVendorUsage(r) {
667
682
  vendorCostUsd(r.vendor, r.units),
668
683
  r.error ?? null,
669
684
  r.method ?? ctx?.subOp ?? null,
670
- r.sourceKey ?? null
685
+ r.sourceKey ?? null,
686
+ r.providerDurationMs ?? null,
687
+ boolToInt(r.providerCaptcha),
688
+ r.providerStatus ?? null
671
689
  ]
672
690
  });
673
691
  return result.rowsAffected === 1;
package/dist/index.js CHANGED
@@ -1,10 +1,10 @@
1
1
  import {
2
2
  harvest
3
- } from "./chunk-KNGTQD6U.js";
3
+ } from "./chunk-NH4QAH3X.js";
4
4
  import "./chunk-OM7HVEJ3.js";
5
5
  import {
6
6
  recordVendorUsage
7
- } from "./chunk-5UAFBKJR.js";
7
+ } from "./chunk-OPQIGAFB.js";
8
8
  import "./chunk-OWF2JJKN.js";
9
9
  import "./chunk-YXNDOQXN.js";
10
10