mcp-scraper 0.57.0 → 0.57.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.
- package/CHANGELOG.md +10 -0
- package/README.md +1 -1
- package/dist/bin/api-server.cjs +15 -3
- package/dist/bin/api-server.cjs.map +1 -1
- package/dist/bin/api-server.js +1 -1
- package/dist/bin/mcp-scraper-cli.cjs +1 -1
- package/dist/bin/mcp-scraper-cli.cjs.map +1 -1
- package/dist/bin/mcp-scraper-cli.js +1 -1
- package/dist/bin/mcp-scraper-install.cjs +1 -1
- package/dist/bin/mcp-scraper-install.cjs.map +1 -1
- package/dist/bin/mcp-scraper-install.js +1 -1
- package/dist/bin/mcp-stdio-server.cjs +1 -1
- package/dist/bin/mcp-stdio-server.cjs.map +1 -1
- package/dist/bin/mcp-stdio-server.js +2 -2
- package/dist/{chunk-ULAJAZQF.js → chunk-2KL4MSZP.js} +2 -2
- package/dist/chunk-VTBJVKBE.js +7 -0
- package/dist/chunk-VTBJVKBE.js.map +1 -0
- package/dist/{server-NBGZJX4P.js → server-DSCKFM7K.js} +17 -5
- package/dist/{server-NBGZJX4P.js.map → server-DSCKFM7K.js.map} +1 -1
- package/package.json +1 -1
- package/dist/chunk-QQ6ZBYZZ.js +0 -7
- package/dist/chunk-QQ6ZBYZZ.js.map +0 -1
- /package/dist/{chunk-ULAJAZQF.js.map → chunk-2KL4MSZP.js.map} +0 -0
package/CHANGELOG.md
CHANGED
|
@@ -4,6 +4,16 @@ All notable changes to MCP Scraper are documented here. The format is based on [
|
|
|
4
4
|
|
|
5
5
|
## [Unreleased]
|
|
6
6
|
|
|
7
|
+
## [0.57.1] - 2026-08-16
|
|
8
|
+
|
|
9
|
+
### Fixed
|
|
10
|
+
|
|
11
|
+
- Commons image hosting resolves the dedicated public store token and refuses to store anything unless the resolved store is Vercel Blob. `BLOB_READ_WRITE_TOKEN` is empty in production, so the previous release would have written a `file://` path into a public wiki entity instead of failing; hosting now fails loudly with `image_storage_unconfigured`.
|
|
12
|
+
|
|
13
|
+
### Added
|
|
14
|
+
|
|
15
|
+
- `scripts/backfill-commons-images.ts` hosts the still-reachable featured images and article media on Commons storage, rewrites the entity, and records a contribution-ledger entry per rewrite. Dry run by default; `--apply` to write. Run against production: 15 featured images and 20 media sets moved onto Commons hosting; 26 sources were already dead 404s and one SVG is rejected by policy.
|
|
16
|
+
|
|
7
17
|
## [0.57.0] - 2026-08-16
|
|
8
18
|
|
|
9
19
|
### Fixed
|
package/README.md
CHANGED
|
@@ -90,7 +90,7 @@ Build the branded one-click bundle:
|
|
|
90
90
|
npm run build:mcpb
|
|
91
91
|
```
|
|
92
92
|
|
|
93
|
-
The generated bundle is written to `build/mcpb/mcp-scraper-<version>.mcpb` and copied to `public/downloads/` for the hosted download. The current public bundle is `https://mcpscraper.dev/downloads/mcp-scraper.mcpb` (`0.57.
|
|
93
|
+
The generated bundle is written to `build/mcpb/mcp-scraper-<version>.mcpb` and copied to `public/downloads/` for the hosted download. The current public bundle is `https://mcpscraper.dev/downloads/mcp-scraper.mcpb` (`0.57.1`, SHA-256 `ea84195321a47e7550348be6f61ed3e6a293a679c20a6cd39e77cd37870bd636`). Install it by opening or dragging it into Claude Desktop. Claude displays the `MCP Scraper` install card, icon, and API-key configuration field from the bundle manifest.
|
|
94
94
|
|
|
95
95
|
The MCPB install exposes every tool — web-intelligence plus all `browser_*` tools — through the one `mcp-scraper` server.
|
|
96
96
|
|
package/dist/bin/api-server.cjs
CHANGED
|
@@ -44624,7 +44624,7 @@ var PACKAGE_VERSION;
|
|
|
44624
44624
|
var init_version = __esm({
|
|
44625
44625
|
"src/version.ts"() {
|
|
44626
44626
|
"use strict";
|
|
44627
|
-
PACKAGE_VERSION = "0.57.
|
|
44627
|
+
PACKAGE_VERSION = "0.57.1";
|
|
44628
44628
|
}
|
|
44629
44629
|
});
|
|
44630
44630
|
|
|
@@ -64399,8 +64399,12 @@ function decodeBase64Image(value) {
|
|
|
64399
64399
|
}
|
|
64400
64400
|
return bytes;
|
|
64401
64401
|
}
|
|
64402
|
+
function commonsImageBlobStore() {
|
|
64403
|
+
const token6 = process.env.COMMONS_IMAGE_READ_WRITE_TOKEN?.trim() || process.env.COMMONS_IMAGE_BLOB_READ_WRITE_TOKEN?.trim() || process.env.BLOB_READ_WRITE_TOKEN?.trim();
|
|
64404
|
+
return token6 ? new VercelBlobStore(token6) : getBlobStore();
|
|
64405
|
+
}
|
|
64402
64406
|
function isCommonsHostedImageUrl(url) {
|
|
64403
|
-
return /^https:\/\/[^/]*(\.public\.blob\.vercel-storage\.com|blob\.vercel-storage\.com)\//i.test(url)
|
|
64407
|
+
return /^https:\/\/[^/]*(\.public\.blob\.vercel-storage\.com|blob\.vercel-storage\.com)\//i.test(url);
|
|
64404
64408
|
}
|
|
64405
64409
|
async function hostCommonsImage(input) {
|
|
64406
64410
|
if (hostOverride) return hostOverride(input);
|
|
@@ -64436,7 +64440,15 @@ async function hostCommonsImage(input) {
|
|
|
64436
64440
|
}
|
|
64437
64441
|
const extension = contentType.split("/")[1] === "jpeg" ? "jpg" : contentType.split("/")[1];
|
|
64438
64442
|
const storageKey = `commons/images/${digest2.slice(0, 2)}/${digest2}.${extension}`;
|
|
64439
|
-
const
|
|
64443
|
+
const store = commonsImageBlobStore();
|
|
64444
|
+
if (store.kind !== "vercel-blob") {
|
|
64445
|
+
throw new CommonsImageError(
|
|
64446
|
+
"image_storage_unconfigured",
|
|
64447
|
+
"Commons image hosting needs a Vercel Blob token. Refusing to write a local file path into a public wiki entity.",
|
|
64448
|
+
422
|
|
64449
|
+
);
|
|
64450
|
+
}
|
|
64451
|
+
const stored = await store.put(storageKey, bytes, contentType);
|
|
64440
64452
|
const id = `TPW-IMG-${digest2.slice(0, 16).toUpperCase()}`;
|
|
64441
64453
|
await getDb().execute({
|
|
64442
64454
|
sql: `
|