mcp-scraper 0.67.1 → 0.69.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,51 @@ All notable changes to MCP Scraper are documented here. The format is based on [
4
4
 
5
5
  ## [Unreleased]
6
6
 
7
+ ## [0.69.0] - 2026-08-27
8
+
9
+ ### Added
10
+
11
+ - Added production reporting for sessions, visitors, confirmed and candidate-assisted journeys, chronological timelines, lead-stage funnels, seven attribution models, ad-spend efficiency, lead scores, and evidence-gated predictions.
12
+ - Added four-purpose consent receipts, GPC and withdrawal enforcement, purpose-specific retention, governed export and deletion, namespace isolation, and audited deterministic promotion of candidate associations.
13
+ - Added guided setup and product-health evidence, configurable fixed or conditional event values, saved report views, privacy-safe support diagnostics, and scale/restore verification tooling.
14
+ - Added documented and tenant-discovered CRM capability profiles for HubSpot, Salesforce, HighLevel, Zoho, Pipedrive, and Keap, including explicit field provisioning, person sync, journey activity, pipeline-event mapping, test writes, and incremental outcome reads where the provider supports them.
15
+ - Added CallRail and Twilio reconciliation actions and expanded the unified public MCP catalog to 315 tools with 40 new production X-Ray operations.
16
+
17
+ ### Changed
18
+
19
+ - X-Ray MCP operations now publish operation-specific input and output contracts, bounded redacted results, explicit destructive annotations, and persisted conflicting-idempotency-key rejection.
20
+ - Candidate-assisted evidence remains a separately conserved reporting overlay and cannot activate ads, update CRM records, train predictions, or establish a confirmed identity without deterministic evidence.
21
+ - CRM person sync is contact-only; deals are created or updated only through an approved, versioned pipeline-event mapping.
22
+ - The Pixel now enforces independent site-analytics, enhanced-matching, and advertising-measurement purposes while retaining necessary-only consent receipts and deletion precedence.
23
+
24
+ ### Fixed
25
+
26
+ - Activation readiness now persists accepted provider evidence without UUID/text casting failures and unwraps typed connected-service receipts before verification.
27
+ - Public catalog mirrors, provider inventories, readiness guards, and release contracts now agree on the 315-tool and 329-action production surfaces.
28
+
29
+ ## [0.68.0] - 2026-08-26
30
+
31
+ ### Added
32
+
33
+ - 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.
34
+ - 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.
35
+ - Added X-Ray MCP tools for connection readiness, conversion rules, canonical server events, attribution coverage, and person journeys.
36
+ - Added declarative page, click, phone-link, and same-origin form event definitions that existing Pixel installs load automatically, with matching REST and MCP controls.
37
+ - Added direct activation mapping for Google, Meta, TikTok, and Reddit through verified connected-action tools, with per-conversion idempotency and provider receipt state.
38
+ - 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.
39
+
40
+ ### Changed
41
+
42
+ - 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.
43
+ - Conversion persistence and eligible activation-job creation now commit atomically; configured-but-unverified destinations cannot receive conversion jobs.
44
+ - 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.
45
+ - Public MCP catalog mirrors now report the canonical 275-tool inventory generated from the runtime contract.
46
+
47
+ ### Fixed
48
+
49
+ - 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.
50
+ - Duplicate conversion submissions now return the persisted conversion ID instead of a newly generated non-existent ID.
51
+
7
52
  ## [0.67.1] - 2026-08-26
8
53
 
9
54
  ### Fixed
@@ -1141,7 +1186,9 @@ All notable changes to MCP Scraper are documented here. The format is based on [
1141
1186
  - Write actions remain unavailable until the account owner explicitly enables them.
1142
1187
  - Provider-specific connection data is normalized into one agent-facing contract.
1143
1188
 
1144
- [Unreleased]: https://github.com/VilovietaSEO/mcp-scraper/compare/v0.67.1...HEAD
1189
+ [Unreleased]: https://github.com/VilovietaSEO/mcp-scraper/compare/v0.69.0...HEAD
1190
+ [0.69.0]: https://github.com/VilovietaSEO/mcp-scraper/compare/v0.68.0...v0.69.0
1191
+ [0.68.0]: https://github.com/VilovietaSEO/mcp-scraper/compare/v0.67.1...v0.68.0
1145
1192
  [0.67.1]: https://github.com/VilovietaSEO/mcp-scraper/compare/v0.67.0...v0.67.1
1146
1193
  [0.67.0]: https://github.com/VilovietaSEO/mcp-scraper/compare/v0.66.7...v0.67.0
1147
1194
  [0.66.7]: https://github.com/VilovietaSEO/mcp-scraper/compare/v0.66.6...v0.66.7
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.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.
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.69.0`, SHA-256 `052a9fc23beb72deae11e48c1e49978aaab6408a0cb1ce13415a17eec7508330`). 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 315 tools: 214 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-KO5CK5ZT.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
  };