mcp-scraper 0.67.0 → 0.68.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.
package/CHANGELOG.md CHANGED
@@ -4,6 +4,35 @@ All notable changes to MCP Scraper are documented here. The format is based on [
4
4
 
5
5
  ## [Unreleased]
6
6
 
7
+ ## [0.68.0] - 2026-08-26
8
+
9
+ ### Added
10
+
11
+ - X-Ray now models explicit sessions, immutable attribution touches, deterministic people, canonical phone and CRM events, versioned conversion rules, signed webhook receipts, and full cross-system customer journeys.
12
+ - Added signed webhook ingestion for CallRail, CallTrackingMetrics, Twilio, HubSpot, and HighLevel, plus durable encrypted CRM import and ad-activation delivery workers with bounded retries and dead-letter evidence.
13
+ - Added X-Ray MCP tools for connection readiness, conversion rules, canonical server events, attribution coverage, and person journeys.
14
+ - Added declarative page, click, phone-link, and same-origin form event definitions that existing Pixel installs load automatically, with matching REST and MCP controls.
15
+ - Added direct activation mapping for Google, Meta, TikTok, and Reddit through verified connected-action tools, with per-conversion idempotency and provider receipt state.
16
+ - Added an end-to-end X-Ray proof harness covering consented Google click attribution, phone and CRM stage events, conversion deduplication, verified activation, scheduled delivery, safe receipts, and journey readback.
17
+
18
+ ### Changed
19
+
20
+ - Browser collection now retains consented first-party visitor continuity, explicit 30-minute sessions, first/last/ordered attribution touches, dwell time, scroll depth, expanded native click identifiers, and an explicit identify API without probabilistic fingerprinting.
21
+ - Conversion persistence and eligible activation-job creation now commit atomically; configured-but-unverified destinations cannot receive conversion jobs.
22
+ - Restricted contact and webhook payloads use purpose-bound encryption with scheduled expiry, while deterministic identity joins use keyed HMACs and provider match payloads use normalized hashes.
23
+ - Public MCP catalog mirrors now report the canonical 275-tool inventory generated from the runtime contract.
24
+
25
+ ### Fixed
26
+
27
+ - X-Ray Pixel now initializes when frameworks insert its script after hydration and sends credential-free beacons without a browser preflight, restoring collection for Next.js and other dynamically rendered sites.
28
+ - Duplicate conversion submissions now return the persisted conversion ID instead of a newly generated non-existent ID.
29
+
30
+ ## [0.67.1] - 2026-08-26
31
+
32
+ ### Fixed
33
+
34
+ - `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.
35
+
7
36
  ## [0.67.0] - 2026-08-26
8
37
 
9
38
  ### Added
@@ -1135,7 +1164,10 @@ All notable changes to MCP Scraper are documented here. The format is based on [
1135
1164
  - Write actions remain unavailable until the account owner explicitly enables them.
1136
1165
  - Provider-specific connection data is normalized into one agent-facing contract.
1137
1166
 
1138
- [Unreleased]: https://github.com/VilovietaSEO/mcp-scraper/compare/v0.66.7...HEAD
1167
+ [Unreleased]: https://github.com/VilovietaSEO/mcp-scraper/compare/v0.68.0...HEAD
1168
+ [0.68.0]: https://github.com/VilovietaSEO/mcp-scraper/compare/v0.67.1...v0.68.0
1169
+ [0.67.1]: https://github.com/VilovietaSEO/mcp-scraper/compare/v0.67.0...v0.67.1
1170
+ [0.67.0]: https://github.com/VilovietaSEO/mcp-scraper/compare/v0.66.7...v0.67.0
1139
1171
  [0.66.7]: https://github.com/VilovietaSEO/mcp-scraper/compare/v0.66.6...v0.66.7
1140
1172
  [0.66.6]: https://github.com/VilovietaSEO/mcp-scraper/compare/v0.66.5...v0.66.6
1141
1173
  [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.0`, SHA-256 `03cd764c2ec1741ae0a64373f91324a8f46b523d4bf2ace8d9845f8c45f8d9e4`). 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.
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.68.0`, SHA-256 `bbf4525ff5bb482f889f5b1883e078186e92c1737f3aaf1936e7dae7d4c7a74b`). 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
 
@@ -317,7 +317,7 @@ The `mcp-scraper` server (and the MCPB bundle, which runs it) exposes both secti
317
317
 
318
318
  All MCP tools return `structuredContent` with the IDs, URLs, CSV paths, transcripts, browser session handles, replay paths, artifacts, recipe fields, or blueprint fields needed by the next step, plus readable text content for compatibility. Runtime `tools/list` omits output schemas so strict clients can register the complete catalog; the generated developer manifest retains every canonical output schema for validation and typed SDK generation. All tools carry MCP annotations; file-writing tools such as replay downloads and annotations state their filesystem side effects.
319
319
 
320
- The canonical tool inventory is generated at `docs/mcp-tool-manifest.generated.json`. The unified server exposes 259 tools: 158 scraper, browser, workflow, billing, and connected-service tools plus 101 durable-memory tools. The scraper-side inventory includes rendered site-content similarity, governed Local Sourcebook tools, Transparent Commons entity, linkset, and publication tools, direct site-export text and image readers, the searchable News Publisher and Editorial Reading Room template workflow, and 24 X-Ray tools for pixel administration, reporting, attribution journeys, campaign links, exports, and scheduled reports. Successful evidence-compiled Local Sourcebook revisions publish automatically to their canonical `localsourcebook.com` category profile and review URLs; administrator controls handle exceptional rejection or unpublishing. Release verification compares the exact local and hosted tool-name sets, not only the count.
320
+ The canonical tool inventory is generated at `docs/mcp-tool-manifest.generated.json`. The unified server exposes 275 tools: 174 scraper, browser, workflow, billing, and connected-service tools plus 101 durable-memory tools. The scraper-side inventory includes rendered site-content similarity, governed Local Sourcebook tools, Transparent Commons entity, linkset, and publication tools, direct site-export text and image readers, the searchable News Publisher and Editorial Reading Room template workflow, and 33 X-Ray tools for pixel administration, reporting, attribution journeys, campaign links, exports, and scheduled reports. Successful evidence-compiled Local Sourcebook revisions publish automatically to their canonical `localsourcebook.com` category profile and review URLs; administrator controls handle exceptional rejection or unpublishing. Release verification compares the exact local and hosted tool-name sets, not only the count.
321
321
 
322
322
  For contract parity, stdio and MCPB memory calls invoke the matching public tool on the hosted MCP Scraper `/mcp` endpoint. The hosted aggregate runtime owns MCP Scraper-specific billing, scheduling, credential, and in-process cutover policy; its internal `/memory/mcp-call` bridge is a fallback to the standalone memory service, not the public stdio execution path. Direct `mcp-memory` OAuth and stdio clients continue to use `memory.mcpscraper.dev` and must be verified as a separate dependent release surface.
323
323
 
@@ -17,8 +17,10 @@ import {
17
17
  analyticsTimeseries,
18
18
  archiveAnalyticsActivationDestination,
19
19
  archiveAnalyticsCampaignLink,
20
+ claimAnalyticsCrmImportRows,
20
21
  claimAnalyticsFormDeliveryJobs,
21
22
  closeAnalyticsPool,
23
+ completeAnalyticsCrmImportRow,
22
24
  completeAnalyticsFormDelivery,
23
25
  createAnalyticsActivationDestination,
24
26
  createAnalyticsCampaignLink,
@@ -28,18 +30,23 @@ import {
28
30
  createAnalyticsForm,
29
31
  createAnalyticsPixel,
30
32
  createAnalyticsSite,
33
+ deferAnalyticsCrmImportRow,
31
34
  deferAnalyticsFormDelivery,
32
35
  deleteAnalyticsSite,
36
+ getAnalyticsActivationDestinationConnectionRef,
33
37
  getAnalyticsPersonJourney,
34
38
  getAnalyticsPool,
35
39
  getPublicAnalyticsForm,
40
+ identityHmac,
36
41
  ingestAnalyticsEvents,
37
42
  isAnalyticsFormPlacementApproved,
38
43
  linkAnalyticsFormIdentity,
39
44
  listAnalyticsActivationDestinations,
45
+ listAnalyticsActivationReceipts,
40
46
  listAnalyticsCampaignLinks,
41
47
  listAnalyticsCrmImports,
42
48
  listAnalyticsForms,
49
+ listAnalyticsHostGroups,
43
50
  listAnalyticsPeople,
44
51
  listAnalyticsPixels,
45
52
  listAnalyticsSites,
@@ -48,19 +55,30 @@ import {
48
55
  normalizeAnalyticsUrl,
49
56
  normalizeContentOptions,
50
57
  normalizeObservedHostname,
58
+ pollAnalyticsActivationDiagnostics,
59
+ prepareAnalyticsLinkerIssue,
51
60
  queueAnalyticsActivation,
52
61
  queueAnalyticsFormDelivery,
53
62
  recordAnalyticsFormSubmission,
63
+ redeemAnalyticsLinkerRecord,
54
64
  refreshAnalyticsDailyRollups,
55
65
  refreshAnalyticsDailyRollupsIfDue,
66
+ requireAnalyticsAccess,
67
+ requireAnalyticsEditor,
56
68
  resolveAnalyticsCampaignLink,
69
+ retryAnalyticsActivationJob,
57
70
  sanitizeAnalyticsProperties,
58
71
  sanitizeClickIds,
72
+ setAnalyticsActivationReadiness,
59
73
  setAnalyticsPixelDomainState,
74
+ sweepAnalyticsRestrictedRetention,
75
+ testAnalyticsActivationDestination,
60
76
  updateAnalyticsBusinessModel,
61
77
  updateAnalyticsPixel,
62
- upsertAnalyticsAdSpend
63
- } from "./chunk-CNLLTD5B.js";
78
+ upsertAnalyticsAdSpend,
79
+ upsertAnalyticsHostGroup
80
+ } from "./chunk-SZEDXVJH.js";
81
+ import "./chunk-65FTMB7G.js";
64
82
  export {
65
83
  ANALYTICS_CONTENT_SORTS,
66
84
  AnalyticsRepositoryError,
@@ -80,8 +98,10 @@ export {
80
98
  analyticsTimeseries,
81
99
  archiveAnalyticsActivationDestination,
82
100
  archiveAnalyticsCampaignLink,
101
+ claimAnalyticsCrmImportRows,
83
102
  claimAnalyticsFormDeliveryJobs,
84
103
  closeAnalyticsPool,
104
+ completeAnalyticsCrmImportRow,
85
105
  completeAnalyticsFormDelivery,
86
106
  createAnalyticsActivationDestination,
87
107
  createAnalyticsCampaignLink,
@@ -91,18 +111,23 @@ export {
91
111
  createAnalyticsForm,
92
112
  createAnalyticsPixel,
93
113
  createAnalyticsSite,
114
+ deferAnalyticsCrmImportRow,
94
115
  deferAnalyticsFormDelivery,
95
116
  deleteAnalyticsSite,
117
+ getAnalyticsActivationDestinationConnectionRef,
96
118
  getAnalyticsPersonJourney,
97
119
  getAnalyticsPool,
98
120
  getPublicAnalyticsForm,
121
+ identityHmac,
99
122
  ingestAnalyticsEvents,
100
123
  isAnalyticsFormPlacementApproved,
101
124
  linkAnalyticsFormIdentity,
102
125
  listAnalyticsActivationDestinations,
126
+ listAnalyticsActivationReceipts,
103
127
  listAnalyticsCampaignLinks,
104
128
  listAnalyticsCrmImports,
105
129
  listAnalyticsForms,
130
+ listAnalyticsHostGroups,
106
131
  listAnalyticsPeople,
107
132
  listAnalyticsPixels,
108
133
  listAnalyticsSites,
@@ -111,16 +136,26 @@ export {
111
136
  normalizeAnalyticsUrl,
112
137
  normalizeContentOptions,
113
138
  normalizeObservedHostname,
139
+ pollAnalyticsActivationDiagnostics,
140
+ prepareAnalyticsLinkerIssue,
114
141
  queueAnalyticsActivation,
115
142
  queueAnalyticsFormDelivery,
116
143
  recordAnalyticsFormSubmission,
144
+ redeemAnalyticsLinkerRecord,
117
145
  refreshAnalyticsDailyRollups,
118
146
  refreshAnalyticsDailyRollupsIfDue,
147
+ requireAnalyticsAccess,
148
+ requireAnalyticsEditor,
119
149
  resolveAnalyticsCampaignLink,
150
+ retryAnalyticsActivationJob,
120
151
  sanitizeAnalyticsProperties,
121
152
  sanitizeClickIds,
153
+ setAnalyticsActivationReadiness,
122
154
  setAnalyticsPixelDomainState,
155
+ sweepAnalyticsRestrictedRetention,
156
+ testAnalyticsActivationDestination,
123
157
  updateAnalyticsBusinessModel,
124
158
  updateAnalyticsPixel,
125
- upsertAnalyticsAdSpend
159
+ upsertAnalyticsAdSpend,
160
+ upsertAnalyticsHostGroup
126
161
  };