mcp-scraper 0.67.0 → 0.67.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 +9 -1
- package/README.md +1 -1
- package/dist/bin/api-server.cjs +15 -3
- package/dist/bin/api-server.js +1 -1
- package/dist/bin/mcp-scraper-cli.cjs +1 -1
- package/dist/bin/mcp-scraper-cli.js +1 -1
- package/dist/bin/mcp-scraper-install.cjs +2 -2
- package/dist/bin/mcp-scraper-install.js +2 -2
- package/dist/bin/mcp-stdio-server.cjs +16 -4
- package/dist/bin/mcp-stdio-server.js +3 -3
- package/dist/{chunk-IHDTONZV.js → chunk-HUNXSVKU.js} +1 -1
- package/dist/{chunk-XOOKZYZG.js → chunk-STQQOEHC.js} +15 -3
- package/dist/{chunk-GT63KEUB.js → chunk-VES63X4Q.js} +1 -1
- package/dist/{server-MFVYRB6I.js → server-ROIJWWJG.js} +2 -2
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -4,6 +4,12 @@ All notable changes to MCP Scraper are documented here. The format is based on [
|
|
|
4
4
|
|
|
5
5
|
## [Unreleased]
|
|
6
6
|
|
|
7
|
+
## [0.67.1] - 2026-08-26
|
|
8
|
+
|
|
9
|
+
### Fixed
|
|
10
|
+
|
|
11
|
+
- `commons_host_image` now returns its complete success payload through both readable JSON text and MCP `structuredContent`, so typed clients can consume permanent image provenance without reparsing text.
|
|
12
|
+
|
|
7
13
|
## [0.67.0] - 2026-08-26
|
|
8
14
|
|
|
9
15
|
### Added
|
|
@@ -1135,7 +1141,9 @@ All notable changes to MCP Scraper are documented here. The format is based on [
|
|
|
1135
1141
|
- Write actions remain unavailable until the account owner explicitly enables them.
|
|
1136
1142
|
- Provider-specific connection data is normalized into one agent-facing contract.
|
|
1137
1143
|
|
|
1138
|
-
[Unreleased]: https://github.com/VilovietaSEO/mcp-scraper/compare/v0.
|
|
1144
|
+
[Unreleased]: https://github.com/VilovietaSEO/mcp-scraper/compare/v0.67.1...HEAD
|
|
1145
|
+
[0.67.1]: https://github.com/VilovietaSEO/mcp-scraper/compare/v0.67.0...v0.67.1
|
|
1146
|
+
[0.67.0]: https://github.com/VilovietaSEO/mcp-scraper/compare/v0.66.7...v0.67.0
|
|
1139
1147
|
[0.66.7]: https://github.com/VilovietaSEO/mcp-scraper/compare/v0.66.6...v0.66.7
|
|
1140
1148
|
[0.66.6]: https://github.com/VilovietaSEO/mcp-scraper/compare/v0.66.5...v0.66.6
|
|
1141
1149
|
[0.66.5]: https://github.com/VilovietaSEO/mcp-scraper/compare/v0.66.4...v0.66.5
|
package/README.md
CHANGED
|
@@ -159,7 +159,7 @@ Build the branded one-click bundle:
|
|
|
159
159
|
npm run build:mcpb
|
|
160
160
|
```
|
|
161
161
|
|
|
162
|
-
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.67.
|
|
162
|
+
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.67.1`, SHA-256 `257eb19b72d228cc4aec4973778036cfc7c13419da6de35391ea7179ce629a03`). Install it by opening or dragging it into Claude Desktop. Claude displays the `MCP Scraper` install card, icon, API-key configuration field, and manually curated current-release message from the bundle manifest.
|
|
163
163
|
|
|
164
164
|
The MCPB install exposes every tool — web-intelligence plus all `browser_*` tools — through the one `mcp-scraper` server.
|
|
165
165
|
|
package/dist/bin/api-server.cjs
CHANGED
|
@@ -50238,7 +50238,7 @@ var PACKAGE_VERSION;
|
|
|
50238
50238
|
var init_version = __esm({
|
|
50239
50239
|
"src/version.ts"() {
|
|
50240
50240
|
"use strict";
|
|
50241
|
-
PACKAGE_VERSION = "0.67.
|
|
50241
|
+
PACKAGE_VERSION = "0.67.1";
|
|
50242
50242
|
}
|
|
50243
50243
|
});
|
|
50244
50244
|
|
|
@@ -57192,6 +57192,18 @@ async function readResponseData(res) {
|
|
|
57192
57192
|
return text2;
|
|
57193
57193
|
}
|
|
57194
57194
|
}
|
|
57195
|
+
function attachJsonStructuredContent(result) {
|
|
57196
|
+
if (result.isError || result.structuredContent) return result;
|
|
57197
|
+
const text2 = result.content.find((part) => part.type === "text");
|
|
57198
|
+
if (!text2 || text2.type !== "text") return result;
|
|
57199
|
+
try {
|
|
57200
|
+
const parsed = JSON.parse(text2.text);
|
|
57201
|
+
if (!parsed || typeof parsed !== "object" || Array.isArray(parsed)) return result;
|
|
57202
|
+
return { ...result, structuredContent: parsed };
|
|
57203
|
+
} catch {
|
|
57204
|
+
return result;
|
|
57205
|
+
}
|
|
57206
|
+
}
|
|
57195
57207
|
function httpErrorPayload(path6, res, data) {
|
|
57196
57208
|
const objectData = data && typeof data === "object" && !Array.isArray(data) ? data : null;
|
|
57197
57209
|
const rawCode = objectData?.code ?? objectData?.errorCode ?? objectData?.error_code;
|
|
@@ -57811,8 +57823,8 @@ var init_http_mcp_tool_executor = __esm({
|
|
|
57811
57823
|
commonsGetProposal(input) {
|
|
57812
57824
|
return this.getJson(`/commons/proposals/${encodeURIComponent(input.proposalId)}`);
|
|
57813
57825
|
}
|
|
57814
|
-
commonsHostImage(input) {
|
|
57815
|
-
return this.call("/commons/images", input);
|
|
57826
|
+
async commonsHostImage(input) {
|
|
57827
|
+
return attachJsonStructuredContent(await this.call("/commons/images", input));
|
|
57816
57828
|
}
|
|
57817
57829
|
commonsUpdateEditorialArticle(input) {
|
|
57818
57830
|
const { idempotencyKey: idempotencyKey4, ...body } = input;
|
package/dist/bin/api-server.js
CHANGED
|
@@ -17,7 +17,7 @@ loadDotEnv();
|
|
|
17
17
|
async function main() {
|
|
18
18
|
const [{ serve }, { app }, { startWorker }, { migrate }] = await Promise.all([
|
|
19
19
|
import("@hono/node-server"),
|
|
20
|
-
import("../server-
|
|
20
|
+
import("../server-ROIJWWJG.js"),
|
|
21
21
|
import("../worker-JGWV2LID.js"),
|
|
22
22
|
import("../db-ZGZAKYBW.js")
|
|
23
23
|
]);
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
|
|
4
4
|
// release-message.json
|
|
5
5
|
var release_message_default = {
|
|
6
|
-
message: "Transparent Commons
|
|
6
|
+
message: "Transparent Commons image hosting now accepts the source a user has and returns the same permanent-image result in both readable and typed MCP channels."
|
|
7
7
|
};
|
|
8
8
|
|
|
9
9
|
// src/install-terminal.ts
|
|
@@ -112,7 +112,7 @@ function renderInstallTerminal(options) {
|
|
|
112
112
|
}
|
|
113
113
|
|
|
114
114
|
// src/version.ts
|
|
115
|
-
var PACKAGE_VERSION = "0.67.
|
|
115
|
+
var PACKAGE_VERSION = "0.67.1";
|
|
116
116
|
|
|
117
117
|
// bin/mcp-scraper-install.ts
|
|
118
118
|
var noColor = process.argv.includes("--no-color") || process.env.NO_COLOR !== void 0 || process.env.FORCE_COLOR === "0" || !process.stdout.isTTY;
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
import {
|
|
3
3
|
renderInstallTerminal
|
|
4
|
-
} from "../chunk-
|
|
4
|
+
} from "../chunk-HUNXSVKU.js";
|
|
5
5
|
import {
|
|
6
6
|
PACKAGE_VERSION
|
|
7
|
-
} from "../chunk-
|
|
7
|
+
} from "../chunk-VES63X4Q.js";
|
|
8
8
|
|
|
9
9
|
// bin/mcp-scraper-install.ts
|
|
10
10
|
var noColor = process.argv.includes("--no-color") || process.env.NO_COLOR !== void 0 || process.env.FORCE_COLOR === "0" || !process.stdout.isTTY;
|
|
@@ -497,6 +497,18 @@ async function readResponseData(res) {
|
|
|
497
497
|
return text;
|
|
498
498
|
}
|
|
499
499
|
}
|
|
500
|
+
function attachJsonStructuredContent(result) {
|
|
501
|
+
if (result.isError || result.structuredContent) return result;
|
|
502
|
+
const text = result.content.find((part) => part.type === "text");
|
|
503
|
+
if (!text || text.type !== "text") return result;
|
|
504
|
+
try {
|
|
505
|
+
const parsed = JSON.parse(text.text);
|
|
506
|
+
if (!parsed || typeof parsed !== "object" || Array.isArray(parsed)) return result;
|
|
507
|
+
return { ...result, structuredContent: parsed };
|
|
508
|
+
} catch {
|
|
509
|
+
return result;
|
|
510
|
+
}
|
|
511
|
+
}
|
|
500
512
|
function httpErrorPayload(path, res, data) {
|
|
501
513
|
const objectData = data && typeof data === "object" && !Array.isArray(data) ? data : null;
|
|
502
514
|
const rawCode = objectData?.code ?? objectData?.errorCode ?? objectData?.error_code;
|
|
@@ -1107,8 +1119,8 @@ var HttpMcpToolExecutor = class {
|
|
|
1107
1119
|
commonsGetProposal(input) {
|
|
1108
1120
|
return this.getJson(`/commons/proposals/${encodeURIComponent(input.proposalId)}`);
|
|
1109
1121
|
}
|
|
1110
|
-
commonsHostImage(input) {
|
|
1111
|
-
return this.call("/commons/images", input);
|
|
1122
|
+
async commonsHostImage(input) {
|
|
1123
|
+
return attachJsonStructuredContent(await this.call("/commons/images", input));
|
|
1112
1124
|
}
|
|
1113
1125
|
commonsUpdateEditorialArticle(input) {
|
|
1114
1126
|
const { idempotencyKey, ...body } = input;
|
|
@@ -1310,7 +1322,7 @@ render();
|
|
|
1310
1322
|
}
|
|
1311
1323
|
|
|
1312
1324
|
// src/version.ts
|
|
1313
|
-
var PACKAGE_VERSION = "0.67.
|
|
1325
|
+
var PACKAGE_VERSION = "0.67.1";
|
|
1314
1326
|
|
|
1315
1327
|
// src/mcp/input-field-descriptions.ts
|
|
1316
1328
|
var import_zod = require("zod");
|
|
@@ -18796,7 +18808,7 @@ var HostedMemoryMcpToolExecutor = class {
|
|
|
18796
18808
|
|
|
18797
18809
|
// release-message.json
|
|
18798
18810
|
var release_message_default = {
|
|
18799
|
-
message: "Transparent Commons
|
|
18811
|
+
message: "Transparent Commons image hosting now accepts the source a user has and returns the same permanent-image result in both readable and typed MCP channels."
|
|
18800
18812
|
};
|
|
18801
18813
|
|
|
18802
18814
|
// src/install-terminal.ts
|
|
@@ -13,18 +13,18 @@ import {
|
|
|
13
13
|
registerScheduledResultsMcpTools,
|
|
14
14
|
registerSerpIntelligenceCaptureTools,
|
|
15
15
|
resolveDeploymentProfile
|
|
16
|
-
} from "../chunk-
|
|
16
|
+
} from "../chunk-STQQOEHC.js";
|
|
17
17
|
import "../chunk-PGJQDMC2.js";
|
|
18
18
|
import "../chunk-2L4C4DAZ.js";
|
|
19
19
|
import "../chunk-ES25GP6C.js";
|
|
20
20
|
import {
|
|
21
21
|
renderInstallTerminal
|
|
22
|
-
} from "../chunk-
|
|
22
|
+
} from "../chunk-HUNXSVKU.js";
|
|
23
23
|
import "../chunk-VXLU74YZ.js";
|
|
24
24
|
import "../chunk-GGZEC22A.js";
|
|
25
25
|
import {
|
|
26
26
|
PACKAGE_VERSION
|
|
27
|
-
} from "../chunk-
|
|
27
|
+
} from "../chunk-VES63X4Q.js";
|
|
28
28
|
import "../chunk-DNM65UCK.js";
|
|
29
29
|
import "../chunk-AYJHI2FK.js";
|
|
30
30
|
import "../chunk-65FTMB7G.js";
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
// release-message.json
|
|
2
2
|
var release_message_default = {
|
|
3
|
-
message: "Transparent Commons
|
|
3
|
+
message: "Transparent Commons image hosting now accepts the source a user has and returns the same permanent-image result in both readable and typed MCP channels."
|
|
4
4
|
};
|
|
5
5
|
|
|
6
6
|
// src/install-terminal.ts
|
|
@@ -25,7 +25,7 @@ import {
|
|
|
25
25
|
} from "./chunk-VXLU74YZ.js";
|
|
26
26
|
import {
|
|
27
27
|
PACKAGE_VERSION
|
|
28
|
-
} from "./chunk-
|
|
28
|
+
} from "./chunk-VES63X4Q.js";
|
|
29
29
|
import {
|
|
30
30
|
createPrivateArtifact,
|
|
31
31
|
privateArtifactOwnerId,
|
|
@@ -12136,6 +12136,18 @@ async function readResponseData(res) {
|
|
|
12136
12136
|
return text;
|
|
12137
12137
|
}
|
|
12138
12138
|
}
|
|
12139
|
+
function attachJsonStructuredContent(result) {
|
|
12140
|
+
if (result.isError || result.structuredContent) return result;
|
|
12141
|
+
const text = result.content.find((part) => part.type === "text");
|
|
12142
|
+
if (!text || text.type !== "text") return result;
|
|
12143
|
+
try {
|
|
12144
|
+
const parsed = JSON.parse(text.text);
|
|
12145
|
+
if (!parsed || typeof parsed !== "object" || Array.isArray(parsed)) return result;
|
|
12146
|
+
return { ...result, structuredContent: parsed };
|
|
12147
|
+
} catch {
|
|
12148
|
+
return result;
|
|
12149
|
+
}
|
|
12150
|
+
}
|
|
12139
12151
|
function httpErrorPayload(path, res, data) {
|
|
12140
12152
|
const objectData = data && typeof data === "object" && !Array.isArray(data) ? data : null;
|
|
12141
12153
|
const rawCode = objectData?.code ?? objectData?.errorCode ?? objectData?.error_code;
|
|
@@ -12746,8 +12758,8 @@ var HttpMcpToolExecutor = class {
|
|
|
12746
12758
|
commonsGetProposal(input) {
|
|
12747
12759
|
return this.getJson(`/commons/proposals/${encodeURIComponent(input.proposalId)}`);
|
|
12748
12760
|
}
|
|
12749
|
-
commonsHostImage(input) {
|
|
12750
|
-
return this.call("/commons/images", input);
|
|
12761
|
+
async commonsHostImage(input) {
|
|
12762
|
+
return attachJsonStructuredContent(await this.call("/commons/images", input));
|
|
12751
12763
|
}
|
|
12752
12764
|
commonsUpdateEditorialArticle(input) {
|
|
12753
12765
|
const { idempotencyKey, ...body } = input;
|
|
@@ -199,7 +199,7 @@ import {
|
|
|
199
199
|
resolveDeploymentProfile,
|
|
200
200
|
resolveLocalSourcebookSchemaType,
|
|
201
201
|
transcribeMediaUrl
|
|
202
|
-
} from "./chunk-
|
|
202
|
+
} from "./chunk-STQQOEHC.js";
|
|
203
203
|
import {
|
|
204
204
|
auditImageUrls,
|
|
205
205
|
auditImages,
|
|
@@ -256,7 +256,7 @@ import {
|
|
|
256
256
|
} from "./chunk-GGZEC22A.js";
|
|
257
257
|
import {
|
|
258
258
|
PACKAGE_VERSION
|
|
259
|
-
} from "./chunk-
|
|
259
|
+
} from "./chunk-VES63X4Q.js";
|
|
260
260
|
import {
|
|
261
261
|
SITE_EXTRACT_ARTIFACT_PREFIX,
|
|
262
262
|
abandonExtractSettlement,
|