mcp-scraper 0.33.7 → 0.34.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 (42) hide show
  1. package/dist/bin/api-server.cjs +10063 -10012
  2. package/dist/bin/api-server.cjs.map +1 -1
  3. package/dist/bin/api-server.js +2 -2
  4. package/dist/bin/mcp-scraper-cli.cjs +2 -1
  5. package/dist/bin/mcp-scraper-cli.cjs.map +1 -1
  6. package/dist/bin/mcp-scraper-cli.js +3 -3
  7. package/dist/bin/mcp-scraper-install.cjs +1 -1
  8. package/dist/bin/mcp-scraper-install.cjs.map +1 -1
  9. package/dist/bin/mcp-scraper-install.js +1 -1
  10. package/dist/bin/mcp-stdio-server.cjs +15 -8
  11. package/dist/bin/mcp-stdio-server.cjs.map +1 -1
  12. package/dist/bin/mcp-stdio-server.js +3 -3
  13. package/dist/bin/paa-harvest.cjs +22 -0
  14. package/dist/bin/paa-harvest.cjs.map +1 -1
  15. package/dist/bin/paa-harvest.js +2 -2
  16. package/dist/{chunk-XVCETVYY.js → chunk-4KQVIYIH.js} +11 -3
  17. package/dist/chunk-4KQVIYIH.js.map +1 -0
  18. package/dist/{chunk-V73MPRU6.js → chunk-CB5C3BPB.js} +17 -1
  19. package/dist/chunk-CB5C3BPB.js.map +1 -0
  20. package/dist/{chunk-H6QECE2U.js → chunk-J32XSMJI.js} +16 -10
  21. package/dist/chunk-J32XSMJI.js.map +1 -0
  22. package/dist/chunk-NFMIHEYE.js +7 -0
  23. package/dist/chunk-NFMIHEYE.js.map +1 -0
  24. package/dist/{chunk-AT2PFWHW.js → chunk-ZID3WQID.js} +2 -2
  25. package/dist/index.cjs +22 -0
  26. package/dist/index.cjs.map +1 -1
  27. package/dist/index.d.cts +3 -0
  28. package/dist/index.d.ts +3 -0
  29. package/dist/index.js +2 -2
  30. package/dist/{server-B35CQJB3.js → server-LKVPEQFE.js} +130 -108
  31. package/dist/server-LKVPEQFE.js.map +1 -0
  32. package/dist/{worker-3LYNVGLF.js → worker-ZZHSYI3Y.js} +3 -3
  33. package/docs/mcp-tool-manifest.generated.json +36 -8
  34. package/package.json +1 -1
  35. package/dist/chunk-H6QECE2U.js.map +0 -1
  36. package/dist/chunk-HAMN42SP.js +0 -7
  37. package/dist/chunk-HAMN42SP.js.map +0 -1
  38. package/dist/chunk-V73MPRU6.js.map +0 -1
  39. package/dist/chunk-XVCETVYY.js.map +0 -1
  40. package/dist/server-B35CQJB3.js.map +0 -1
  41. /package/dist/{chunk-AT2PFWHW.js.map → chunk-ZID3WQID.js.map} +0 -0
  42. /package/dist/{worker-3LYNVGLF.js.map → worker-ZZHSYI3Y.js.map} +0 -0
@@ -0,0 +1,7 @@
1
+ // src/version.ts
2
+ var PACKAGE_VERSION = "0.34.0";
3
+
4
+ export {
5
+ PACKAGE_VERSION
6
+ };
7
+ //# sourceMappingURL=chunk-NFMIHEYE.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/version.ts"],"sourcesContent":["export const PACKAGE_VERSION = '0.34.0'\n"],"mappings":";AAAO,IAAM,kBAAkB;","names":[]}
@@ -3,7 +3,7 @@ import {
3
3
  } from "./chunk-K443GQY5.js";
4
4
  import {
5
5
  DEFAULT_MAPS_PROXY_MODE
6
- } from "./chunk-V73MPRU6.js";
6
+ } from "./chunk-CB5C3BPB.js";
7
7
 
8
8
  // src/lib/slugify.ts
9
9
  function slugify(s) {
@@ -1925,4 +1925,4 @@ export {
1925
1925
  runWorkflow,
1926
1926
  runWorkflowStep
1927
1927
  };
1928
- //# sourceMappingURL=chunk-AT2PFWHW.js.map
1928
+ //# sourceMappingURL=chunk-ZID3WQID.js.map
package/dist/index.cjs CHANGED
@@ -64,8 +64,23 @@ var HarvestOptionsSchema = import_zod.z.object({
64
64
  format: import_zod.z.enum(["json", "csv", "both"]).default("both"),
65
65
  serpOnly: import_zod.z.boolean().default(false),
66
66
  pages: import_zod.z.number().int().min(1).max(2).default(1),
67
+ recency: import_zod.z.enum(["day", "week", "month", "year"]).optional(),
67
68
  softDeadlineMs: import_zod.z.number().optional()
68
69
  });
70
+ function recencyToTbs(recency) {
71
+ switch (recency) {
72
+ case "day":
73
+ return "qdr:d";
74
+ case "week":
75
+ return "qdr:w";
76
+ case "month":
77
+ return "qdr:m";
78
+ case "year":
79
+ return "qdr:y";
80
+ default:
81
+ return void 0;
82
+ }
83
+ }
69
84
  var MapsPlaceOptionsSchema = import_zod.z.object({
70
85
  businessName: import_zod.z.string().min(1),
71
86
  location: import_zod.z.string().min(1),
@@ -887,6 +902,7 @@ var BrowserDriver = class {
887
902
  async navigateToSERP(query, uule, gl, hl, options) {
888
903
  const params = new URLSearchParams({ q: query, gl, hl, pws: "0" });
889
904
  if (options?.num) params.set("num", String(options.num));
905
+ if (options?.tbs) params.set("tbs", options.tbs);
890
906
  if (uule) params.set("uule", uule);
891
907
  const url = "https://www.google.com/search?" + params.toString();
892
908
  const navUrl = serpArrivalUrl(url);
@@ -2453,6 +2469,7 @@ var PAAExtractor = class {
2453
2469
  options.hl,
2454
2470
  {
2455
2471
  ...options.serpOnly ? { num: 100 } : {},
2472
+ ...recencyToTbs(options.recency) ? { tbs: recencyToTbs(options.recency) } : {},
2456
2473
  debug: options.debug
2457
2474
  }
2458
2475
  );
@@ -2472,6 +2489,8 @@ var PAAExtractor = class {
2472
2489
  let allOrganic2 = organicResults2;
2473
2490
  if ((options.pages ?? 1) >= 2) {
2474
2491
  const p2params = new URLSearchParams({ q: options.query, gl: options.gl, hl: options.hl, pws: "0", start: "10" });
2492
+ if (recencyToTbs(options.recency)) p2params.set("tbs", recencyToTbs(options.recency));
2493
+ if (recencyToTbs(options.recency)) p2params.set("tbs", recencyToTbs(options.recency));
2475
2494
  if (uule) p2params.set("uule", uule);
2476
2495
  await this.driver.navigateTo("https://www.google.com/search?" + p2params.toString());
2477
2496
  await this.throwIfCaptcha(page, "Google SERP page 2");
@@ -2531,6 +2550,8 @@ var PAAExtractor = class {
2531
2550
  let locationEvidence2 = initialLocationEvidence;
2532
2551
  if ((options.pages ?? 1) >= 2) {
2533
2552
  const p2params = new URLSearchParams({ q: options.query, gl: options.gl, hl: options.hl, pws: "0", start: "10" });
2553
+ if (recencyToTbs(options.recency)) p2params.set("tbs", recencyToTbs(options.recency));
2554
+ if (recencyToTbs(options.recency)) p2params.set("tbs", recencyToTbs(options.recency));
2534
2555
  if (uule) p2params.set("uule", uule);
2535
2556
  await this.driver.navigateTo("https://www.google.com/search?" + p2params.toString());
2536
2557
  await this.throwIfCaptcha(page, "Google SERP page 2");
@@ -2597,6 +2618,7 @@ var PAAExtractor = class {
2597
2618
  let locationEvidence = initialLocationEvidence;
2598
2619
  if ((options.pages ?? 1) >= 2) {
2599
2620
  const p2params = new URLSearchParams({ q: options.query, gl: options.gl, hl: options.hl, pws: "0", start: "10" });
2621
+ if (recencyToTbs(options.recency)) p2params.set("tbs", recencyToTbs(options.recency));
2600
2622
  if (uule) p2params.set("uule", uule);
2601
2623
  await this.driver.navigateTo("https://www.google.com/search?" + p2params.toString());
2602
2624
  await this.throwIfCaptcha(page, "Google SERP page 2");