smart-web-mcp 0.4.4 → 0.5.1

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 (44) hide show
  1. package/CHANGELOG.md +25 -0
  2. package/README.md +43 -24
  3. package/dist/browser-session.d.ts +46 -0
  4. package/dist/browser-session.js +215 -0
  5. package/dist/browser-session.js.map +1 -0
  6. package/dist/index.js +57 -2
  7. package/dist/index.js.map +1 -1
  8. package/dist/shared.d.ts +27 -2
  9. package/dist/shared.js +54 -10
  10. package/dist/shared.js.map +1 -1
  11. package/dist/smartcrawl.d.ts +67 -0
  12. package/dist/smartcrawl.js +393 -0
  13. package/dist/smartcrawl.js.map +1 -0
  14. package/dist/smartfetch/archive-fallback.js +2 -2
  15. package/dist/smartfetch/archive-fallback.js.map +1 -1
  16. package/dist/smartfetch/provider-policy.js +24 -6
  17. package/dist/smartfetch/provider-policy.js.map +1 -1
  18. package/dist/smartfetch/provider-types.d.ts +1 -0
  19. package/dist/smartfetch/providers/dcinside.js +1 -1
  20. package/dist/smartfetch/providers/dcinside.js.map +1 -1
  21. package/dist/smartfetch/providers/hackernews.d.ts +2 -0
  22. package/dist/smartfetch/providers/hackernews.js +154 -0
  23. package/dist/smartfetch/providers/hackernews.js.map +1 -0
  24. package/dist/smartfetch/providers/index.js +3 -1
  25. package/dist/smartfetch/providers/index.js.map +1 -1
  26. package/dist/smartfetch/providers/naver-blog.js +1 -1
  27. package/dist/smartfetch/providers/naver-blog.js.map +1 -1
  28. package/dist/smartfetch/providers/naver-cafe.d.ts +2 -0
  29. package/dist/smartfetch/providers/naver-cafe.js +163 -0
  30. package/dist/smartfetch/providers/naver-cafe.js.map +1 -0
  31. package/dist/smartfetch/providers/x.js +3 -3
  32. package/dist/smartfetch/providers/x.js.map +1 -1
  33. package/dist/smartfetch/providers/youtube.js +20 -4
  34. package/dist/smartfetch/providers/youtube.js.map +1 -1
  35. package/dist/smartfetch-internals.d.ts +13 -0
  36. package/dist/smartfetch-internals.js +19 -0
  37. package/dist/smartfetch-internals.js.map +1 -0
  38. package/dist/smartfetch.d.ts +11 -1
  39. package/dist/smartfetch.js +104 -124
  40. package/dist/smartfetch.js.map +1 -1
  41. package/dist/smartsearch.d.ts +12 -1
  42. package/dist/smartsearch.js +198 -24
  43. package/dist/smartsearch.js.map +1 -1
  44. package/package.json +11 -5
@@ -1,26 +1,25 @@
1
- import { execFileSync } from "node:child_process";
2
- import { dirname, resolve } from "node:path";
3
- import { fileURLToPath } from "node:url";
4
1
  import { asString, cleanLinks, dedupeUrls, envFlag, extractAnchorHrefs, extractUrls, inferTarget, isDcinsideUrl, needsDynamicCrawl, resolveValidatedUrl, validateOutboundUrl, } from "./shared.js";
2
+ import { runBrowserSession } from "./browser-session.js";
3
+ import { getImpitCache, getImpitLoader, setImpitCache } from "./smartfetch-internals.js";
5
4
  import { discoverAssets } from "./smartfetch/assets.js";
6
5
  import { maybeUseArchiveFallback } from "./smartfetch/archive-fallback.js";
7
6
  import { resolveSmartfetchProvider } from "./smartfetch/providers/index.js";
8
- const thisDir = typeof __dirname !== "undefined" ? __dirname : dirname(fileURLToPath(import.meta.url));
9
7
  const DEFAULT_USER_AGENT = "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/134.0.0.0 Safari/537.36";
10
- let impitCache = undefined;
8
+ const FAILURE_CACHE_TTL_MS = 30_000;
11
9
  function allowPrivateHosts() {
12
10
  return envFlag("SMART_WEB_ALLOW_PRIVATE_HOSTS");
13
11
  }
14
12
  async function getImpit() {
15
- if (impitCache !== undefined)
16
- return impitCache;
13
+ const impitCache = getImpitCache();
14
+ if (impitCache !== undefined && Date.now() < impitCache.expiresAt)
15
+ return impitCache.value;
17
16
  try {
18
- impitCache = (await import("impit")).Impit;
17
+ setImpitCache({ value: (await getImpitLoader()()).Impit, expiresAt: Number.POSITIVE_INFINITY });
19
18
  }
20
19
  catch {
21
- impitCache = false;
20
+ setImpitCache({ value: false, expiresAt: Date.now() + FAILURE_CACHE_TTL_MS });
22
21
  }
23
- return impitCache;
22
+ return getImpitCache()?.value;
24
23
  }
25
24
  async function runNativeFetch(url, timeoutMs) {
26
25
  const headers = {
@@ -68,7 +67,7 @@ async function runNativeFetch(url, timeoutMs) {
68
67
  };
69
68
  }
70
69
  const links = [...extractAnchorHrefs(body), ...extractUrls(body)];
71
- return { ok: true, method: "plain_fetch", content: body, links: dedupeUrls(links) };
70
+ return { ok: true, method: "plain_fetch", content: body, links: dedupeUrls(links), final_url: resolved.url };
72
71
  }
73
72
  catch (error) {
74
73
  const message = error instanceof Error ? error.message : String(error);
@@ -133,7 +132,7 @@ async function runImpitFetch(url, timeoutMs) {
133
132
  };
134
133
  }
135
134
  const links = [...extractAnchorHrefs(body), ...extractUrls(body)];
136
- return { ok: true, method: "impit_fetch", content: body, links: dedupeUrls(links) };
135
+ return { ok: true, method: "impit_fetch", content: body, links: dedupeUrls(links), final_url: resolved.url };
137
136
  }
138
137
  catch (error) {
139
138
  const message = error instanceof Error ? error.message : String(error);
@@ -150,121 +149,48 @@ async function runImpitFetch(url, timeoutMs) {
150
149
  };
151
150
  }
152
151
  }
153
- async function runPlaywrightFetch(url, timeoutMs) {
154
- const resolved = await resolveValidatedUrl(url, {
155
- allowPrivateHosts: allowPrivateHosts(),
152
+ export function choosePlaywrightWaitUntil(target) {
153
+ return target === "dcinside_post" ? "domcontentloaded" : "networkidle";
154
+ }
155
+ export function choosePlaywrightContent(page) {
156
+ return String(page.html || page.text || "");
157
+ }
158
+ export function shouldUseProviderSeed(target, forceDynamic) {
159
+ return !forceDynamic && (target === "youtube_video" || target === "x_post");
160
+ }
161
+ async function runPlaywrightFetch(url, timeoutMs, target) {
162
+ const extraHeaders = { "user-agent": DEFAULT_USER_AGENT };
163
+ if (isDcinsideUrl(url)) {
164
+ extraHeaders["accept-language"] = "ko-KR,ko;q=0.9,en-US;q=0.8,en;q=0.7";
165
+ extraHeaders.referer = "https://gall.dcinside.com/";
166
+ }
167
+ const result = await runBrowserSession({
168
+ url,
156
169
  timeoutMs,
157
- headers: { "user-agent": DEFAULT_USER_AGENT },
170
+ allowPrivateHosts: allowPrivateHosts(),
171
+ waitUntil: choosePlaywrightWaitUntil(target),
172
+ extraHeaders,
173
+ maxAnchors: 400,
158
174
  });
159
- if (!resolved.ok) {
160
- return {
161
- ok: false,
162
- method: "playwright_stealth",
163
- content: "",
164
- links: [],
165
- error: {
166
- category: "block",
167
- code: resolved.reason,
168
- message: resolved.message,
169
- },
170
- };
171
- }
172
- const script = `
173
- (async () => {
174
- try {
175
- const { chromium } = require("playwright-extra")
176
- const StealthPlugin = require("puppeteer-extra-plugin-stealth")
177
- chromium.use(StealthPlugin())
178
-
179
- async function launchBrowser() {
180
- const attempts = [
181
- { channel: process.env.SMARTFETCH_CHROME_CHANNEL || "chrome", headless: true },
182
- { executablePath: process.env.SMARTFETCH_CHROME_PATH, headless: true },
183
- { headless: true },
184
- ]
185
- let lastError = null
186
- for (const options of attempts) {
187
- if (options.executablePath === undefined) delete options.executablePath
188
- try {
189
- return await chromium.launch(options)
190
- } catch (error) {
191
- lastError = error
192
- }
193
- }
194
- throw lastError
195
- }
196
-
197
- const browser = await launchBrowser()
198
- const context = await browser.newContext({
199
- userAgent: ${JSON.stringify(DEFAULT_USER_AGENT)},
200
- locale: "ko-KR",
201
- })
202
- const page = await context.newPage()
203
- await page.goto(${JSON.stringify(resolved.url)}, { waitUntil: "networkidle", timeout: ${timeoutMs} })
204
-
205
- const html = await page.content()
206
- const text = await page.evaluate(() => document.body?.innerText || "")
207
- const links = await page.evaluate(() => Array.from(document.querySelectorAll("a[href]")).map((node) => node.href).filter(Boolean))
208
-
209
- await browser.close()
210
-
211
- console.log(JSON.stringify({
212
- ok: Boolean(text.trim() || html.trim()),
213
- method: "playwright_stealth",
214
- content: html,
215
- text,
216
- links,
217
- }))
218
- } catch (error) {
219
- console.log(JSON.stringify({
220
- ok: false,
221
- method: "playwright_stealth",
222
- content: "",
223
- links: [],
224
- error: String(error && error.message ? error.message : error),
225
- }))
226
- }
227
- })()
228
- `;
229
- try {
230
- const output = execFileSync("node", ["-e", script], {
231
- cwd: resolve(thisDir, ".."),
232
- timeout: Math.max(timeoutMs + 10000, 20000),
233
- encoding: "utf-8",
234
- maxBuffer: 10 * 1024 * 1024,
235
- }).trim();
236
- const parsed = JSON.parse(output);
237
- if (!parsed.ok) {
238
- return {
239
- ok: false,
240
- method: "playwright_stealth",
241
- content: "",
242
- links: [],
243
- error: {
244
- category: String(parsed.error || "").toLowerCase().includes("timeout") ? "timeout" : "unavailable",
245
- code: "playwright_fetch_failed",
246
- message: String(parsed.error || "unknown playwright failure"),
247
- },
248
- };
249
- }
250
- const content = String(parsed.text || parsed.content || "");
251
- const links = Array.isArray(parsed.links) ? parsed.links.map((item) => asString(item)) : [];
252
- return { ok: true, method: "playwright_stealth", content, links: dedupeUrls(links) };
253
- }
254
- catch (error) {
255
- const message = error instanceof Error ? error.message : String(error);
175
+ if (!result.ok) {
256
176
  return {
257
177
  ok: false,
258
- method: "playwright_stealth",
178
+ method: result.method,
259
179
  content: "",
260
180
  links: [],
261
- error: {
262
- category: message.toLowerCase().includes("timeout") ? "timeout" : "unavailable",
263
- code: "playwright_exec_failed",
264
- message,
265
- },
181
+ error: result.error,
266
182
  };
267
183
  }
184
+ return {
185
+ ok: true,
186
+ method: result.method,
187
+ content: choosePlaywrightContent(result),
188
+ links: dedupeUrls(result.links.map((item) => asString(item))),
189
+ final_url: result.final_url,
190
+ };
191
+ }
192
+ function riskLevelForTarget(target) {
193
+ return target === "x_post" ? "high" : target === "generic" ? "low" : "medium";
268
194
  }
269
195
  function baseOutput(url, target) {
270
196
  return {
@@ -311,7 +237,7 @@ function validateOutput(output) {
311
237
  }
312
238
  return "";
313
239
  }
314
- export async function runSmartfetch(options) {
240
+ export async function runSmartfetch(options, runtime = {}) {
315
241
  const target = inferTarget(options.url, options.target || "auto");
316
242
  const timeoutMs = Math.max(3000, Math.floor(Number(options.timeoutMs || 25000)));
317
243
  const output = baseOutput(options.url, target);
@@ -331,13 +257,23 @@ export async function runSmartfetch(options) {
331
257
  }
332
258
  let active;
333
259
  if (options.forceDynamic) {
334
- active = await runPlaywrightFetch(options.url, timeoutMs);
260
+ active = await runPlaywrightFetchWithRuntime(options.url, timeoutMs, target, runtime);
335
261
  output.evidence.playwright_attempted = true;
336
262
  output.evidence.playwright_success = active.ok;
337
263
  output.retrieval_method.push(active.method);
338
264
  if (active.error)
339
265
  output.errors.push(active.error);
340
266
  }
267
+ else if (shouldUseProviderSeed(target, options.forceDynamic)) {
268
+ active = {
269
+ ok: true,
270
+ method: target === "youtube_video" ? "youtube_metadata_seed" : "x_public_seed",
271
+ content: "",
272
+ links: [],
273
+ final_url: options.url,
274
+ };
275
+ output.retrieval_method.push(active.method);
276
+ }
341
277
  else {
342
278
  const tier1 = await runImpitFetch(options.url, timeoutMs);
343
279
  output.evidence.impit_attempted = true;
@@ -347,7 +283,7 @@ export async function runSmartfetch(options) {
347
283
  output.errors.push(tier1.error);
348
284
  active = tier1;
349
285
  if (needsDynamicCrawl(active)) {
350
- const tier2 = await runPlaywrightFetch(options.url, timeoutMs);
286
+ const tier2 = await runPlaywrightFetchWithRuntime(options.url, timeoutMs, target, runtime);
351
287
  output.evidence.playwright_attempted = true;
352
288
  output.evidence.playwright_success = tier2.ok;
353
289
  output.retrieval_method.push(tier2.method);
@@ -365,10 +301,21 @@ export async function runSmartfetch(options) {
365
301
  output.retrieval_method.push(active.method);
366
302
  }
367
303
  }
368
- const provider = resolveSmartfetchProvider(options.url, target);
304
+ let effectiveTarget = target;
305
+ if ((options.target || "auto") === "auto") {
306
+ const inferred = inferTarget(active.final_url || options.url, "auto");
307
+ if (inferred !== effectiveTarget) {
308
+ effectiveTarget = inferred;
309
+ output.target = inferred;
310
+ output.risk_level = riskLevelForTarget(inferred);
311
+ }
312
+ }
313
+ const providerUrl = active.final_url || options.url;
314
+ const provider = resolveSmartfetchProvider(providerUrl, effectiveTarget);
369
315
  const normalized = await provider.normalize({
370
316
  url: options.url,
371
- target,
317
+ resolvedUrl: providerUrl,
318
+ target: effectiveTarget,
372
319
  timeoutMs,
373
320
  active,
374
321
  errors: output.errors,
@@ -469,4 +416,37 @@ export async function renderSmartfetchUrl(url, format, timeoutMs) {
469
416
  });
470
417
  return renderSmartfetch(output, format);
471
418
  }
419
+ async function runPlaywrightFetchWithRuntime(url, timeoutMs, target, runtime) {
420
+ if (!runtime.runBrowserSession)
421
+ return runPlaywrightFetch(url, timeoutMs, target);
422
+ const extraHeaders = { "user-agent": DEFAULT_USER_AGENT };
423
+ if (isDcinsideUrl(url)) {
424
+ extraHeaders["accept-language"] = "ko-KR,ko;q=0.9,en-US;q=0.8,en;q=0.7";
425
+ extraHeaders.referer = "https://gall.dcinside.com/";
426
+ }
427
+ const result = await runtime.runBrowserSession({
428
+ url,
429
+ timeoutMs,
430
+ allowPrivateHosts: allowPrivateHosts(),
431
+ waitUntil: choosePlaywrightWaitUntil(target),
432
+ extraHeaders,
433
+ maxAnchors: 400,
434
+ });
435
+ if (!result.ok) {
436
+ return {
437
+ ok: false,
438
+ method: result.method,
439
+ content: "",
440
+ links: [],
441
+ error: result.error,
442
+ };
443
+ }
444
+ return {
445
+ ok: true,
446
+ method: result.method,
447
+ content: choosePlaywrightContent(result),
448
+ links: dedupeUrls(result.links.map((item) => asString(item))),
449
+ final_url: result.final_url,
450
+ };
451
+ }
472
452
  //# sourceMappingURL=smartfetch.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"smartfetch.js","sourceRoot":"","sources":["../src/smartfetch.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"smartfetch.js","sourceRoot":"","sources":["../src/smartfetch.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,5 @@
1
1
  import { SearchResponse } from "./shared.js";
2
+ import { SmartcrawlMode, runSmartcrawl } from "./smartcrawl.js";
2
3
  export type SmartsearchOptions = {
3
4
  query: string;
4
5
  numResults?: number;
@@ -6,6 +7,16 @@ export type SmartsearchOptions = {
6
7
  contextMaxCharacters?: number;
7
8
  timeoutMs?: number;
8
9
  searxngBaseUrl?: string;
10
+ siteCrawl?: boolean;
11
+ crawlUrl?: string;
12
+ crawlMode?: SmartcrawlMode;
13
+ crawlLimit?: number;
14
+ crawlMaxPages?: number;
15
+ crawlMaxDepth?: number;
16
+ crawlTimeoutMs?: number;
9
17
  };
10
- export declare function runSmartsearch(options: SmartsearchOptions): Promise<SearchResponse>;
18
+ export type SmartsearchRuntime = {
19
+ runSmartcrawl?: typeof runSmartcrawl;
20
+ };
21
+ export declare function runSmartsearch(options: SmartsearchOptions, runtime?: SmartsearchRuntime): Promise<SearchResponse>;
11
22
  export declare function renderSmartsearch(response: SearchResponse): string;