@canonry/canonry 7.88.0 → 7.89.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.
Files changed (152) hide show
  1. package/assets/agent-workspace/skills/canonry/references/canonry-cli.md +4 -4
  2. package/assets/assets/{AgentSetupPage-DV06oPTd.js → AgentSetupPage-BU1supL8.js} +6 -6
  3. package/assets/assets/AuditHistoryPanel-D7or_J3j.js +1 -0
  4. package/assets/assets/{BacklinksPage-Dw0wgYlg.js → BacklinksPage-SOls3ew4.js} +1 -1
  5. package/assets/assets/{ChartPrimitives-4D5wgAn5.js → ChartPrimitives-Cs2iavxU.js} +1 -1
  6. package/assets/assets/{Hint-CfeZmZig.js → Hint-uoVNfr0U.js} +1 -1
  7. package/assets/assets/{HistoryPage-DsDx15am.js → HistoryPage-LNKtQ6a8.js} +1 -1
  8. package/assets/assets/{InfoTooltip-DrBIPuSU.js → InfoTooltip-CNLlIWeP.js} +1 -1
  9. package/assets/assets/MeasurementPropertyPage-CTZzlHWE.js +4 -0
  10. package/assets/assets/ProjectPage-D79zuY-M.js +11 -0
  11. package/assets/assets/{RunsPage-BggqKbOG.js → RunsPage-B8zUD2gr.js} +1 -1
  12. package/assets/assets/{SettingsPage-B7ns_ECx.js → SettingsPage-BOQgT_7N.js} +1 -1
  13. package/assets/assets/SiteHealthSection-G3_MShnD.js +2 -0
  14. package/assets/assets/{ToneBadge-B8hKcr8p.js → ToneBadge-DawS8vMp.js} +6 -6
  15. package/assets/assets/TrafficPage-DJUqxtrQ.js +40 -0
  16. package/assets/assets/TrafficSourceDetailPage-OVY_L73m.js +1 -0
  17. package/assets/assets/{account-context-pzV-boTi.js → account-context-DoI9S9qY.js} +1 -1
  18. package/assets/assets/agent-trust-copy-CZpfPr4M.js +1 -0
  19. package/assets/assets/{card-Mu_5i5fM.js → card-ClURYmZN.js} +1 -1
  20. package/assets/assets/{format-helpers-C8QYorwm.js → format-helpers-CscAFAMJ.js} +2 -2
  21. package/assets/assets/{index-BOUrrC9J.css → index-Bhpq6fUo.css} +1 -1
  22. package/assets/assets/index-y0Wx0ZWq.js +60 -0
  23. package/assets/assets/{query-client-CdG4DC3B.js → query-client-Dm_GqsTu.js} +1 -1
  24. package/assets/assets/react-query-BwhgbuS1.js +1 -0
  25. package/assets/assets/{react-sigma_core.esm.min-BfnfPCis.js → react-sigma_core.esm.min-6J0MSvMJ.js} +1 -1
  26. package/assets/assets/server-traffic-C-_D6pdo.js +1 -0
  27. package/assets/assets/{service-B85wjZQP.js → service-C7qDx_qB.js} +1 -1
  28. package/assets/assets/{vendor-lucide-CoTHJwai.js → vendor-lucide-Bo69m9KC.js} +1 -1
  29. package/assets/assets/{vendor-markdown-cQgSk2i0.js → vendor-markdown-BiRP51B0.js} +1 -1
  30. package/assets/assets/{vendor-radix-wS8sWIWE.js → vendor-radix-PQeN8gOe.js} +1 -1
  31. package/assets/assets/{vendor-recharts-AnNqECZW.js → vendor-recharts-CY6tH-r6.js} +1 -1
  32. package/assets/assets/{vendor-tanstack-q5SvZtcv.js → vendor-tanstack-tBjrfzKu.js} +1 -1
  33. package/assets/index.html +15 -15
  34. package/dist/{ads-4TAIMWZC.js → ads-XEW2LBKV.js} +3 -3
  35. package/dist/{agent-C7NKP2TO.js → agent-VYADMMPT.js} +7 -7
  36. package/dist/{agent-ask-EPH5FDM6.js → agent-ask-4G57GM3S.js} +3 -3
  37. package/dist/{agent-conversations-LPBBVRKK.js → agent-conversations-MRKRCXQI.js} +3 -3
  38. package/dist/{agent-journeys-MBORINJA.js → agent-journeys-WEUEYRMK.js} +3 -3
  39. package/dist/{agent-memory-NJIZO75R.js → agent-memory-YLAOXQQ6.js} +3 -3
  40. package/dist/{agent-providers-ZQVUOCX6.js → agent-providers-AWKQRJDZ.js} +3 -3
  41. package/dist/{agent-transcript-67HFY5GT.js → agent-transcript-HXYFVCUD.js} +3 -3
  42. package/dist/{analytics-TUO6BVB6.js → analytics-5G5G5OJU.js} +3 -3
  43. package/dist/{apply-V7A5O7YS.js → apply-FCKZG7A2.js} +3 -3
  44. package/dist/{backfill-PGKYR6NA.js → backfill-3CTZHCJS.js} +10 -10
  45. package/dist/{backlinks-5GGPQNR4.js → backlinks-Q53JT63C.js} +3 -3
  46. package/dist/{bing-PQOLIW2X.js → bing-FOY2UVIM.js} +34 -8
  47. package/dist/{bootstrap-IH3XX6PI.js → bootstrap-FXIT7LDW.js} +10 -10
  48. package/dist/{cdp-B3PFQ5RB.js → cdp-WWQW3LIZ.js} +7 -7
  49. package/dist/{chunk-FLJVGHTQ.js → chunk-2BZJ4W27.js} +3 -3
  50. package/dist/{chunk-DILCH7RL.js → chunk-3H5VURTU.js} +1 -1
  51. package/dist/{chunk-CYQCO5NY.js → chunk-3IC7PRTW.js} +1 -1
  52. package/dist/{chunk-N6AWKBLY.js → chunk-4INNOSWU.js} +5 -5
  53. package/dist/{chunk-FNQFM3TK.js → chunk-5GQ2AGWS.js} +3 -3
  54. package/dist/{chunk-TAQHHXBC.js → chunk-7522CQ2E.js} +4 -4
  55. package/dist/{chunk-5KDJJO2N.js → chunk-A6DKZ4KQ.js} +1 -1
  56. package/dist/{chunk-TL52ELES.js → chunk-DPKA5CWK.js} +1 -1
  57. package/dist/{chunk-FL76YWYN.js → chunk-DX46HM7S.js} +1 -1
  58. package/dist/{chunk-PBOIN52J.js → chunk-EWR25OVQ.js} +2 -2
  59. package/dist/{chunk-2KL2XHS6.js → chunk-GDEYX6E3.js} +4 -4
  60. package/dist/{chunk-E4DUE2PW.js → chunk-GSNKBXGN.js} +6 -6
  61. package/dist/{chunk-4VMHN5LL.js → chunk-HSOZSLIZ.js} +99 -30
  62. package/dist/{chunk-DVWAA3ES.js → chunk-IK3PYAQU.js} +21 -21
  63. package/dist/{chunk-UVXQQZB5.js → chunk-J7V7TYX7.js} +2 -2
  64. package/dist/{chunk-PZLEKWYA.js → chunk-JLBJEQPV.js} +1 -1
  65. package/dist/{chunk-6DIDDYG6.js → chunk-KAGMYJYG.js} +5 -5
  66. package/dist/{chunk-4T2VZPDG.js → chunk-MNLQY5WG.js} +2 -2
  67. package/dist/{chunk-D354CQ6T.js → chunk-MXGME7NG.js} +1 -1
  68. package/dist/{chunk-OKLDBQYW.js → chunk-RE24YYIY.js} +4 -4
  69. package/dist/{chunk-R7K24KY7.js → chunk-S7D2ELTC.js} +3 -3
  70. package/dist/{chunk-EGUJNHAZ.js → chunk-TCANF22P.js} +2 -2
  71. package/dist/{chunk-5WWEZ26Y.js → chunk-UIULMWJX.js} +2 -2
  72. package/dist/{chunk-O7OZVZWR.js → chunk-VBM6T5ZP.js} +21 -13
  73. package/dist/{chunk-IR3MYKIA.js → chunk-VL4AZGUA.js} +1 -1
  74. package/dist/{chunk-MEN27RAJ.js → chunk-WE6FSG7J.js} +1 -1
  75. package/dist/{chunk-EYSQMZ6L.js → chunk-WHN4RF2Y.js} +373 -369
  76. package/dist/{chunk-4A4X7VXE.js → chunk-WPTCWNA6.js} +2 -2
  77. package/dist/{chunk-LBZYPZAA.js → chunk-X6XFWQCE.js} +7 -7
  78. package/dist/{chunk-BDLC3DFM.js → chunk-Y35D3ZCH.js} +2 -2
  79. package/dist/{chunk-Q2SJRZA3.js → chunk-YKLYWVLL.js} +46 -2
  80. package/dist/{chunk-IPOYH4WE.js → chunk-YW2IQEWS.js} +1 -1
  81. package/dist/{chunk-ZQGWB7VJ.js → chunk-ZEWOPHTA.js} +1 -1
  82. package/dist/{chunk-MCQK432C.js → chunk-ZX4TZNP4.js} +1 -1
  83. package/dist/{chunk-EL4HRIID.js → chunk-ZYEWB5BK.js} +3 -3
  84. package/dist/{citations-J3IGPX4L.js → citations-ZZ6ODCGZ.js} +3 -3
  85. package/dist/{cli-catalog-2PCRGKPH.js → cli-catalog-HEX47BKL.js} +3 -3
  86. package/dist/{cli-commands-4MUJZCZO.js → cli-commands-6OLN355M.js} +7 -7
  87. package/dist/cli.js +13 -13
  88. package/dist/{competitor-X7Q2AZGL.js → competitor-6MRHORU2.js} +3 -3
  89. package/dist/{content-HTR3PJPX.js → content-S2UOGTLN.js} +3 -3
  90. package/dist/{dashboard-LSO57ZEE.js → dashboard-J4H3FVKH.js} +6 -6
  91. package/dist/{demo-P25N4SKK.js → demo-7PJJQMLO.js} +1 -1
  92. package/dist/{demo-server-6Z5XSHFS.js → demo-server-55I5LNNS.js} +12 -12
  93. package/dist/{discover-KE6TQPOC.js → discover-O4NFDHGP.js} +3 -3
  94. package/dist/{discover-eval-XKOYGCRW.js → discover-eval-PE2MW42B.js} +3 -3
  95. package/dist/{doctor-RL2J54I3.js → doctor-GT4MMJQJ.js} +3 -3
  96. package/dist/{evidence-CYJ4AKUZ.js → evidence-Z344KVJX.js} +3 -3
  97. package/dist/{export-cmd-2YM3PXCW.js → export-cmd-Z6WWLI6H.js} +3 -3
  98. package/dist/{ga-XAB66MJO.js → ga-SXIGAF5F.js} +3 -3
  99. package/dist/{gbp-CDGBLRVV.js → gbp-CSLWSEKF.js} +3 -3
  100. package/dist/{google-XHCUKQ3J.js → google-EAQJ46AR.js} +4 -4
  101. package/dist/{google-marketing-ZR6NTWEY.js → google-marketing-NVKB4NLG.js} +1 -1
  102. package/dist/{health-cmd-VS3EIFJD.js → health-cmd-6IYRMZS3.js} +3 -3
  103. package/dist/{history-YIGYYNZJ.js → history-KLZI7IKJ.js} +3 -3
  104. package/dist/index.d.ts +14 -14
  105. package/dist/index.js +25 -25
  106. package/dist/{init-ST3BXHQF.js → init-LFLCM6KJ.js} +12 -12
  107. package/dist/{insights-KZS6TYYL.js → insights-C7NN64E2.js} +3 -3
  108. package/dist/intelligence-service-ENI35JFR.js +16 -0
  109. package/dist/{journeys-USOPWGW5.js → journeys-C34YDOM6.js} +3 -3
  110. package/dist/{keys-XY7LSM3S.js → keys-4RDLFHXO.js} +3 -3
  111. package/dist/{keyword-PKBFHHF5.js → keyword-BZEJEYAG.js} +3 -3
  112. package/dist/{logs-PROW5TQJ.js → logs-5FPZRSZM.js} +3 -3
  113. package/dist/{mcp-OQGC62QU.js → mcp-574UA5Y3.js} +4 -4
  114. package/dist/mcp.js +9 -9
  115. package/dist/{measurement-plan-AI4NNBTO.js → measurement-plan-2H4KHD2Y.js} +5 -5
  116. package/dist/{notify-6HRPNJZ5.js → notify-TFXL4CSH.js} +3 -3
  117. package/dist/{organic-evidence-IXCSUGGY.js → organic-evidence-R55KSYFN.js} +3 -3
  118. package/dist/{overview-2WS3CFHK.js → overview-NJTCLHAB.js} +4 -4
  119. package/dist/{project-ENUZG62V.js → project-PV36DZDG.js} +3 -3
  120. package/dist/{query-WE3ZWTIB.js → query-5SVITJ4K.js} +3 -3
  121. package/dist/{research-DZSD5UZ2.js → research-JSET5FNY.js} +3 -3
  122. package/dist/{results-export-JMUMYNUE.js → results-export-5EFMXTPG.js} +3 -3
  123. package/dist/{run-QXOO7CRK.js → run-NOSOG3YH.js} +4 -4
  124. package/dist/{schedule-3RJKGUDN.js → schedule-I3ACQC2C.js} +3 -3
  125. package/dist/{search-SGS4H7I4.js → search-EE53K7J5.js} +3 -3
  126. package/dist/{serve-T24QKEUY.js → serve-SDU77HVC.js} +26 -26
  127. package/dist/{session-HPH2A4AZ.js → session-FYZCUPVX.js} +13 -13
  128. package/dist/{settings-K44RK2TW.js → settings-CEI7EKPO.js} +3 -3
  129. package/dist/{skills-HGPPGBXG.js → skills-TRTFFZU3.js} +2 -2
  130. package/dist/{snapshot-FEHHQRY3.js → snapshot-2RXVTDTZ.js} +3 -3
  131. package/dist/{src-4PAYI7GE.js → src-DYJHW2HG.js} +2 -2
  132. package/dist/{status-L5HVFWTS.js → status-2VHBSIRY.js} +4 -4
  133. package/dist/{technical-aeo-Z43UCW6E.js → technical-aeo-3OMGT4ZT.js} +3 -3
  134. package/dist/{telemetry-D47SSSG7.js → telemetry-5F4EHGR2.js} +4 -4
  135. package/dist/{tools-WCWUY2ZJ.js → tools-C3IIMXBJ.js} +11 -11
  136. package/dist/{traffic-5KH62P43.js → traffic-S3VUYBG6.js} +5 -5
  137. package/dist/{trends-RMAXZKRO.js → trends-RQ4B2QWA.js} +3 -3
  138. package/dist/{users-WT54XNEI.js → users-T6OOG5YB.js} +3 -3
  139. package/dist/{visibility-stats-HU62U5MA.js → visibility-stats-2O24MQCV.js} +3 -3
  140. package/dist/{wordpress-BDAKQ4MU.js → wordpress-SDENOBFI.js} +3 -3
  141. package/package.json +1 -1
  142. package/assets/assets/AuditHistoryPanel-C1JnxBFK.js +0 -1
  143. package/assets/assets/MeasurementPropertyPage-Bkxt3QcY.js +0 -4
  144. package/assets/assets/ProjectPage-CzrD1lpf.js +0 -11
  145. package/assets/assets/SiteHealthSection-B2YibqCs.js +0 -2
  146. package/assets/assets/TrafficPage-DRTbgzKI.js +0 -40
  147. package/assets/assets/TrafficSourceDetailPage-sgLE2gdJ.js +0 -1
  148. package/assets/assets/agent-trust-copy-DBtiOpFu.js +0 -1
  149. package/assets/assets/extract-error-message-D_ptq0tW.js +0 -1
  150. package/assets/assets/index-fN5qDR8H.js +0 -60
  151. package/assets/assets/react-query-CxeygwoL.js +0 -1
  152. package/dist/intelligence-service-LCTP5BC7.js +0 -16
@@ -2,11 +2,11 @@ import {
2
2
  dedupeGscSitemapUrls,
3
3
  resolveDiscoveredGscSitemapUrls,
4
4
  submitGscSitemapBatches
5
- } from "./chunk-PZLEKWYA.js";
5
+ } from "./chunk-JLBJEQPV.js";
6
6
  import {
7
7
  measurementDraftOperationSchema,
8
8
  runMeasurementDraftAction
9
- } from "./chunk-FL76YWYN.js";
9
+ } from "./chunk-DX46HM7S.js";
10
10
  import {
11
11
  CliError
12
12
  } from "./chunk-HGMYEDAQ.js";
@@ -187,7 +187,7 @@ import {
187
187
  trendSurfaceSchema,
188
188
  visibilityCompareSelectionSchema,
189
189
  visibilityReportRequestSchema
190
- } from "./chunk-Q2SJRZA3.js";
190
+ } from "./chunk-YKLYWVLL.js";
191
191
 
192
192
  // src/mcp/tool-registry.ts
193
193
  import { z as z2 } from "zod";
@@ -494,16 +494,24 @@ var bingWindowShape = {
494
494
  days: z2.number().int().positive().optional().describe("Span in days ending at endDate or at the newest stored day (default 28).")
495
495
  };
496
496
  var bingWindowInputSchema = z2.object(bingWindowShape);
497
- var bingQueriesInputSchema = z2.object({
497
+ var bingRangeShape = {
498
498
  ...bingWindowShape,
499
- query: z2.string().optional().describe("Substring filter on the query."),
499
+ window: z2.enum(["7d", "30d", "90d", "all"]).optional().describe("Window ending at endDate or the newest stored day. Not with startDate or days.")
500
+ };
501
+ var bingTrafficInputSchema = z2.object(bingRangeShape);
502
+ var bingMatchSchema = z2.enum(["contains", "exact"]).optional().describe("contains (default) or exact: one whole query or page, e.g. with groupBy=week for its weeks.");
503
+ var bingQueriesInputSchema = z2.object({
504
+ ...bingRangeShape,
505
+ query: z2.string().optional().describe("Filter on the query: a substring, or the whole query with match=exact."),
506
+ match: bingMatchSchema,
500
507
  groupBy: z2.enum(["query", "week"]).optional(),
501
508
  limit: z2.number().int().positive().max(5e3).optional(),
502
509
  offset: z2.number().int().nonnegative().optional()
503
510
  });
504
511
  var bingPagesInputSchema = z2.object({
505
- ...bingWindowShape,
506
- page: z2.string().optional().describe("Substring filter on the page URL."),
512
+ ...bingRangeShape,
513
+ page: z2.string().optional().describe("Filter on the page URL: a substring, or the whole URL with match=exact."),
514
+ match: bingMatchSchema,
507
515
  groupBy: z2.enum(["page", "week"]).optional(),
508
516
  limit: z2.number().int().positive().max(5e3).optional(),
509
517
  offset: z2.number().int().nonnegative().optional()
@@ -2533,24 +2541,24 @@ var rawCanonryMcpTools = [
2533
2541
  defineTool({
2534
2542
  name: "canonry_bing_traffic",
2535
2543
  title: "Get Bing traffic",
2536
- description: "Get stored daily Bing search clicks and impressions for the whole site, with window totals and CTR (no call to Bing). These daily rows are the site total; use them for Bing headline numbers, never a sum of canonry_bing_queries rows. latestAvailableDate is the newest stored day (Bing lags 2 to 3 days); earliestAvailableDate says how far back history goes.",
2544
+ description: "Get stored daily Bing search clicks and impressions for the whole site, with window totals and CTR (no call to Bing). These daily rows are the site total; use them for Bing headline numbers, never a sum of canonry_bing_queries rows. periodComparison compares the window with the stored window before it, or its own halves when basis is split-window; trends are fitted over the calendar. latestAvailableDate is the newest stored day (Bing lags 2 to 3 days); earliestAvailableDate says how far back history goes.",
2537
2545
  access: "read",
2538
2546
  tier: "bing",
2539
- inputSchema: bingWindowInputSchema,
2547
+ inputSchema: bingTrafficInputSchema,
2540
2548
  annotations: readAnnotations(),
2541
2549
  openApiOperations: ["GET /api/v1/projects/{name}/bing/traffic"],
2542
- handler: (client, input) => client.bingTraffic(input.project, bingWindowQuery(input))
2550
+ handler: (client, input) => client.bingTraffic(input.project, { ...bingWindowQuery(input), window: input.window })
2543
2551
  }),
2544
2552
  defineTool({
2545
2553
  name: "canonry_bing_queries",
2546
2554
  title: "Get Bing query stats",
2547
- description: "Get stored Bing search stats per query (no call to Bing). Bing reports queries per WEEK, so each row sums the weekly buckets inside the window, with impression-weighted position and the number of weeks it appeared. Bing names only some queries: never sum rows for a site total, use canonry_bing_traffic. groupBy=week returns weekly totals instead, for a trend. Page with limit/offset until truncated is false.",
2555
+ description: "Get stored Bing search stats per query (no call to Bing). Bing reports queries per WEEK, so each row sums the weekly buckets inside the window, with impression-weighted position and the number of weeks it appeared. Bing names only some queries: never sum rows for a site total, use canonry_bing_traffic. groupBy=week returns weekly totals instead, for a trend. totals sums every matching query before paging, and comparison sets it against the window before. Page with limit/offset until truncated is false.",
2548
2556
  access: "read",
2549
2557
  tier: "bing",
2550
2558
  inputSchema: bingQueriesInputSchema,
2551
2559
  annotations: readAnnotations(),
2552
2560
  openApiOperations: ["GET /api/v1/projects/{name}/bing/queries"],
2553
- handler: (client, input) => client.bingQueries(input.project, { ...bingWindowQuery(input), query: input.query, groupBy: input.groupBy, limit: input.limit, offset: input.offset })
2561
+ handler: (client, input) => client.bingQueries(input.project, { ...bingWindowQuery(input), window: input.window, query: input.query, match: input.match, groupBy: input.groupBy, limit: input.limit, offset: input.offset })
2554
2562
  }),
2555
2563
  defineTool({
2556
2564
  name: "canonry_bing_pages",
@@ -2561,7 +2569,7 @@ var rawCanonryMcpTools = [
2561
2569
  inputSchema: bingPagesInputSchema,
2562
2570
  annotations: readAnnotations(),
2563
2571
  openApiOperations: ["GET /api/v1/projects/{name}/bing/pages"],
2564
- handler: (client, input) => client.bingPages(input.project, { ...bingWindowQuery(input), page: input.page, groupBy: input.groupBy, limit: input.limit, offset: input.offset })
2572
+ handler: (client, input) => client.bingPages(input.project, { ...bingWindowQuery(input), window: input.window, page: input.page, match: input.match, groupBy: input.groupBy, limit: input.limit, offset: input.offset })
2565
2573
  }),
2566
2574
  defineTool({
2567
2575
  name: "canonry_bing_crawl_stats",
@@ -15,7 +15,7 @@ import {
15
15
  hostMatchesDomain,
16
16
  hostOf,
17
17
  isLocationRedirectStatus
18
- } from "./chunk-Q2SJRZA3.js";
18
+ } from "./chunk-YKLYWVLL.js";
19
19
 
20
20
  // ../integration-traffic/src/agent-trust.ts
21
21
  var AGENT_TRUST_RULES_VERSION = 2;
@@ -5,7 +5,7 @@ import {
5
5
  AppError,
6
6
  parseWindowIn,
7
7
  resolveDateRange
8
- } from "./chunk-Q2SJRZA3.js";
8
+ } from "./chunk-YKLYWVLL.js";
9
9
 
10
10
  // src/cli-access.ts
11
11
  var CLI_ACCESS_BY_ID = Object.freeze({