29 lines
986 B
JavaScript
29 lines
986 B
JavaScript
import fs from "node:fs";
|
|
|
|
// Context Kit patch for @zhafron/mcp-web-search 1.3.0.
|
|
// Upstream hard-codes the fetch_url schema limit to 25 MiB even though the
|
|
// runtime extractor already uses MAX_BYTES. Keep this narrow and fail the build
|
|
// if upstream changes the compiled source shape.
|
|
const serverPath = "/usr/local/lib/node_modules/@zhafron/mcp-web-search/dist/src/server.js";
|
|
let source = fs.readFileSync(serverPath, "utf8");
|
|
|
|
const replacements = [
|
|
[
|
|
'import { MAX_RESULTS } from "./constants.js";',
|
|
'import { MAX_BYTES, MAX_RESULTS } from "./constants.js";'
|
|
],
|
|
[
|
|
"max_download_bytes: z.number().int().min(1).max(26214400).optional()",
|
|
"max_download_bytes: z.number().int().min(1).max(MAX_BYTES).optional()"
|
|
]
|
|
];
|
|
|
|
for (const [before, after] of replacements) {
|
|
if (!source.includes(before)) {
|
|
throw new Error(`mcp-web-search patch target not found: ${before}`);
|
|
}
|
|
source = source.replace(before, after);
|
|
}
|
|
|
|
fs.writeFileSync(serverPath, source);
|