@canonry/canonry 7.72.2 → 7.73.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 (131) hide show
  1. package/assets/assets/{AgentSetupPage-D39M9CRK.js → AgentSetupPage-D7YVdPWO.js} +1 -1
  2. package/assets/assets/{AuditHistoryPanel-BS-iFyHX.js → AuditHistoryPanel-yrgfS5B_.js} +1 -1
  3. package/assets/assets/{BacklinksPage-BW2bEGF4.js → BacklinksPage-DJM6z03g.js} +1 -1
  4. package/assets/assets/{HistoryPage-Dh6o2iVd.js → HistoryPage-CNvAVJ1S.js} +1 -1
  5. package/assets/assets/{MeasurementPropertyPage-DL9cbtVz.js → MeasurementPropertyPage-BVVYhOxR.js} +1 -1
  6. package/assets/assets/{ProjectPage-DXh97uDN.js → ProjectPage-CPRD8kR9.js} +1 -1
  7. package/assets/assets/{RunsPage-BM4ETLsm.js → RunsPage-Ck33dcjz.js} +1 -1
  8. package/assets/assets/{SettingsPage-DpJTB2-Q.js → SettingsPage-CS_t4Dai.js} +1 -1
  9. package/assets/assets/{SiteHealthSection-CmlMQ17V.js → SiteHealthSection-BurKnHpn.js} +2 -2
  10. package/assets/assets/ToneBadge-Df8oiKsQ.js +60 -0
  11. package/assets/assets/{TrafficPage-ClH3Dxnm.js → TrafficPage-DAiY698E.js} +1 -1
  12. package/assets/assets/{TrafficSourceDetailPage-DE-NyNGz.js → TrafficSourceDetailPage-clJSX2rr.js} +1 -1
  13. package/assets/assets/{account-context-BwV6ox8O.js → account-context-DDEhuoP2.js} +1 -1
  14. package/assets/assets/{card-DhkoBNyY.js → card-DbR-lBY3.js} +1 -1
  15. package/assets/assets/{extract-error-message-dNDtiSBo.js → extract-error-message-7_Vm2DQF.js} +1 -1
  16. package/assets/assets/{format-helpers-Bt4tx-f3.js → format-helpers-vtahpXTQ.js} +1 -1
  17. package/assets/assets/{index-MbApCekj.js → index-BIhCeXvc.js} +4 -4
  18. package/assets/assets/{query-client-D-zMw63p.js → query-client-TlFXYJ9o.js} +1 -1
  19. package/assets/assets/{react-query-EdiRRB2q.js → react-query-C5Mv8xfD.js} +1 -1
  20. package/assets/assets/{react-sigma_core.esm.min-Bidr1Gxk.js → react-sigma_core.esm.min-DmggJ7YC.js} +1 -1
  21. package/assets/assets/{service-BUi8JgGI.js → service-CLFURPuM.js} +1 -1
  22. package/assets/index.html +7 -7
  23. package/dist/{ads-FFUUMS4J.js → ads-TX5622SS.js} +3 -3
  24. package/dist/{agent-LCD2VG7C.js → agent-AIOQL66U.js} +7 -7
  25. package/dist/{agent-ask-OBHTCYFR.js → agent-ask-A6GIJTBX.js} +3 -3
  26. package/dist/{agent-conversations-VMZ4NFIX.js → agent-conversations-LHWLKOPQ.js} +3 -3
  27. package/dist/{agent-memory-UPFJFNWC.js → agent-memory-F54BPEYN.js} +3 -3
  28. package/dist/{agent-providers-4GOWLBZK.js → agent-providers-L74KZOSG.js} +3 -3
  29. package/dist/{agent-transcript-RGXIVZUP.js → agent-transcript-IH65H755.js} +3 -3
  30. package/dist/{analytics-FBK4XV5P.js → analytics-YWCY2KSY.js} +3 -3
  31. package/dist/{apply-Y2DVE3YB.js → apply-BLUUYG2N.js} +3 -3
  32. package/dist/{backfill-NE55YL6X.js → backfill-6WO5CH6Z.js} +9 -9
  33. package/dist/{backlinks-YWHFC7DZ.js → backlinks-NC7AUGTK.js} +3 -3
  34. package/dist/{bing-7BP3DWPK.js → bing-WQUEYHVC.js} +3 -3
  35. package/dist/{bootstrap-Z7QSKVPL.js → bootstrap-AXZV4BBC.js} +10 -10
  36. package/dist/{cdp-OL6RENO3.js → cdp-DUG5PMUD.js} +7 -7
  37. package/dist/{chunk-J523Y7X2.js → chunk-2Y6MSB4J.js} +1 -1
  38. package/dist/{chunk-G7SGQUW4.js → chunk-3ANSG6YT.js} +345 -337
  39. package/dist/{chunk-GA2EHZTI.js → chunk-3WPTMLQI.js} +22 -6
  40. package/dist/{chunk-QDN3FL2A.js → chunk-3YIKSZHN.js} +2 -1
  41. package/dist/{chunk-H4HNXCDF.js → chunk-4B6DE7BB.js} +2 -2
  42. package/dist/{chunk-UWBJWKDQ.js → chunk-4JMTDLFV.js} +2 -2
  43. package/dist/{chunk-IY4AJ6DN.js → chunk-5PA7SJ2M.js} +5 -5
  44. package/dist/{chunk-JO73L677.js → chunk-6ATKY252.js} +2 -2
  45. package/dist/{chunk-XR6ZVMYK.js → chunk-6W5AR4IW.js} +1 -1
  46. package/dist/{chunk-IZMT4WLZ.js → chunk-6YW24AUN.js} +2 -2
  47. package/dist/{chunk-HZSE3WSG.js → chunk-AZQNJX3T.js} +2 -2
  48. package/dist/{chunk-CF6BUJRK.js → chunk-B6R223HQ.js} +8 -8
  49. package/dist/{chunk-6MYHGP46.js → chunk-DLVGMRM5.js} +1 -1
  50. package/dist/{chunk-P3UGNR2Y.js → chunk-ETVM3T7K.js} +5 -5
  51. package/dist/{chunk-IV6VZ63E.js → chunk-F5D4GPZQ.js} +18 -14
  52. package/dist/{chunk-NZLK3KHQ.js → chunk-GNBATQS3.js} +6 -6
  53. package/dist/{chunk-TEDY3MHN.js → chunk-GUFKUPKZ.js} +3 -3
  54. package/dist/{chunk-BADJCT6U.js → chunk-GWDMWKM6.js} +1 -1
  55. package/dist/{chunk-PPM6Z7CM.js → chunk-HEL6DKDN.js} +1 -1
  56. package/dist/{chunk-QKDKVPMR.js → chunk-HGMTGC34.js} +4 -4
  57. package/dist/{chunk-UZKNS5PL.js → chunk-HIGBV77K.js} +254 -92
  58. package/dist/{chunk-NZZWJCKS.js → chunk-HJHFW455.js} +3 -3
  59. package/dist/{chunk-JE5QURTR.js → chunk-HKV4UWG5.js} +1 -1
  60. package/dist/{chunk-DRGCVTYH.js → chunk-JPM3VC6A.js} +1 -1
  61. package/dist/{chunk-TOX6HAQJ.js → chunk-JQNVNB63.js} +3 -3
  62. package/dist/{chunk-3AG3LPZX.js → chunk-MRSNLKSM.js} +1 -1
  63. package/dist/{chunk-O7WOCTBD.js → chunk-PAIYFNNY.js} +71 -3
  64. package/dist/{chunk-MJYO6UK2.js → chunk-PRSQ4R47.js} +2 -2
  65. package/dist/{chunk-JEBY6MS6.js → chunk-QS6RIP37.js} +1 -1
  66. package/dist/{chunk-4LTL5RNY.js → chunk-S77W2XSI.js} +4 -4
  67. package/dist/{chunk-YXAKL5HM.js → chunk-SF5JLMLG.js} +6791 -6777
  68. package/dist/{chunk-Q25JQANW.js → chunk-T5PWWDMJ.js} +17 -2
  69. package/dist/{chunk-ATT3ZCSS.js → chunk-WH2M2MQF.js} +38 -16
  70. package/dist/{chunk-7KOAP47B.js → chunk-WLWOGBLJ.js} +363 -248
  71. package/dist/{chunk-BZZDFIY2.js → chunk-XDQJOZKJ.js} +1 -1
  72. package/dist/{citations-RVSC67GE.js → citations-FUZ6DGP5.js} +3 -3
  73. package/dist/{cli-catalog-NEZE5QU5.js → cli-catalog-BXHG544D.js} +3 -3
  74. package/dist/{cli-commands-ARJWPTFW.js → cli-commands-GMOR67F5.js} +7 -7
  75. package/dist/cli.js +13 -13
  76. package/dist/{competitor-BX3M3OYS.js → competitor-QDCH7PLT.js} +3 -3
  77. package/dist/{content-PKJMVMHJ.js → content-JX2CPIPR.js} +3 -3
  78. package/dist/{dashboard-SVHZBVM6.js → dashboard-OOWMLMKV.js} +6 -6
  79. package/dist/{demo-GLV22DPY.js → demo-GKSMSKOY.js} +1 -1
  80. package/dist/{demo-server-GPM4C4Q2.js → demo-server-UQO4XKHN.js} +12 -12
  81. package/dist/{discover-JDP44ZHX.js → discover-YQSVQRUV.js} +3 -3
  82. package/dist/{discover-eval-6ORCVYYR.js → discover-eval-FN5RL6QI.js} +3 -3
  83. package/dist/{doctor-TVZRMBSS.js → doctor-YHJLAEJJ.js} +3 -3
  84. package/dist/{evidence-FNIAFBBG.js → evidence-KUPZMBIK.js} +3 -3
  85. package/dist/{export-cmd-HQNF2SSD.js → export-cmd-YSEPTUUF.js} +3 -3
  86. package/dist/{ga-PIO5OXMK.js → ga-WNS7Q7TF.js} +3 -3
  87. package/dist/{gbp-3R5FME43.js → gbp-5NYFK4TW.js} +3 -3
  88. package/dist/{google-BYZREX2O.js → google-T4CF4WCI.js} +4 -4
  89. package/dist/{google-marketing-SPQ2GW6X.js → google-marketing-IXPMUBXZ.js} +1 -1
  90. package/dist/{health-cmd-HH5RYMSV.js → health-cmd-2W37CF6J.js} +3 -3
  91. package/dist/{history-Q35NLLMJ.js → history-PA3O6ZHX.js} +3 -3
  92. package/dist/index.d.ts +188 -11
  93. package/dist/index.js +25 -25
  94. package/dist/{init-Q33HEJJN.js → init-I3P7FINF.js} +12 -11
  95. package/dist/{insights-SH73B4PD.js → insights-O5PUVHTW.js} +3 -3
  96. package/dist/intelligence-service-EJQQNO65.js +16 -0
  97. package/dist/{journeys-SIV7HPW7.js → journeys-GU34O3HE.js} +3 -3
  98. package/dist/{keys-O656YWSW.js → keys-RXBFRNUS.js} +3 -3
  99. package/dist/{keyword-FZ2N4EW7.js → keyword-MASR36DK.js} +3 -3
  100. package/dist/{logs-2NPN7HBI.js → logs-OTA7MV4P.js} +3 -3
  101. package/dist/mcp-ZQYN2NET.js +19 -0
  102. package/dist/mcp.js +20 -14
  103. package/dist/{measurement-plan-JQKVSJRL.js → measurement-plan-ZGVO36TN.js} +5 -5
  104. package/dist/{notify-VTAYBHC6.js → notify-KS5CR3S2.js} +3 -3
  105. package/dist/{organic-evidence-HPXXEPOW.js → organic-evidence-CTH52AC5.js} +3 -3
  106. package/dist/{overview-FSBNDYZJ.js → overview-IRCIDE5H.js} +4 -4
  107. package/dist/{project-MAPPXURS.js → project-H5XPI5CT.js} +3 -3
  108. package/dist/{query-R6DLPIPJ.js → query-2R6EZG5T.js} +3 -3
  109. package/dist/{research-FXKOEUQB.js → research-OA3UQAV3.js} +3 -3
  110. package/dist/{results-export-X2PUM63S.js → results-export-XUXU3WMX.js} +3 -3
  111. package/dist/{run-6ENTG4IO.js → run-7IIOB6AS.js} +4 -4
  112. package/dist/{schedule-DMMVRT7P.js → schedule-DUTPZB5C.js} +3 -3
  113. package/dist/{search-FHI6APT7.js → search-TWUJD7KH.js} +3 -3
  114. package/dist/{serve-SJTQQQQE.js → serve-BYHHULUU.js} +26 -26
  115. package/dist/{session-VHCKM3AI.js → session-M5XSTGPI.js} +13 -13
  116. package/dist/{settings-FMB4QED4.js → settings-GQXU5M3H.js} +3 -3
  117. package/dist/{skills-HBIMHSOI.js → skills-F6AXQHTO.js} +2 -2
  118. package/dist/{snapshot-RBA2EL7R.js → snapshot-QFKUO4QK.js} +3 -3
  119. package/dist/{src-BXXGJOQB.js → src-52USCS7O.js} +4 -2
  120. package/dist/{status-ATFDFAVG.js → status-42LPR7YH.js} +4 -4
  121. package/dist/{technical-aeo-JWQTGCTB.js → technical-aeo-SUILL4MY.js} +3 -3
  122. package/dist/{telemetry-6QFGJL2I.js → telemetry-RITB7YZH.js} +4 -4
  123. package/dist/{tools-4VRHKUBE.js → tools-DGWJOLNS.js} +11 -11
  124. package/dist/{traffic-5R7M4CK5.js → traffic-3YC3HUNT.js} +5 -5
  125. package/dist/{users-24TIUYJY.js → users-BST5DQ5R.js} +3 -3
  126. package/dist/{visibility-stats-YLQPPBJJ.js → visibility-stats-NCNP4AL2.js} +3 -3
  127. package/dist/{wordpress-7VDPHMUZ.js → wordpress-4HQDLQVE.js} +3 -3
  128. package/package.json +10 -6
  129. package/assets/assets/ToneBadge-CmvL5mFG.js +0 -60
  130. package/dist/intelligence-service-LVRH4RJG.js +0 -16
  131. package/dist/mcp-RHQY3DV6.js +0 -14
package/dist/index.d.ts CHANGED
@@ -8209,6 +8209,25 @@ declare const apiKeys: drizzle_orm_sqlite_core.SQLiteTableWithColumns<{
8209
8209
  }, {}, {
8210
8210
  length: number | undefined;
8211
8211
  }>;
8212
+ delegatedOAuthGrantId: drizzle_orm_sqlite_core.SQLiteColumn<{
8213
+ name: "delegated_oauth_grant_id";
8214
+ tableName: "api_keys";
8215
+ dataType: "string";
8216
+ columnType: "SQLiteText";
8217
+ data: string;
8218
+ driverParam: string;
8219
+ notNull: false;
8220
+ hasDefault: false;
8221
+ isPrimaryKey: false;
8222
+ isAutoincrement: false;
8223
+ hasRuntimeDefault: false;
8224
+ enumValues: [string, ...string[]];
8225
+ baseColumn: never;
8226
+ identity: undefined;
8227
+ generated: undefined;
8228
+ }, {}, {
8229
+ length: number | undefined;
8230
+ }>;
8212
8231
  createdAt: drizzle_orm_sqlite_core.SQLiteColumn<{
8213
8232
  name: "created_at";
8214
8233
  tableName: "api_keys";
@@ -8642,12 +8661,8 @@ declare const dashboardSessions: drizzle_orm_sqlite_core.SQLiteTableWithColumns<
8642
8661
  /**
8643
8662
  * OAuth 2.1 clients registered against this instance.
8644
8663
  *
8645
- * Pre-registered only. Dynamic Client Registration (RFC 7591) is deprecated in
8646
- * the current MCP revision and retained there only for backwards compatibility,
8647
- * and the hosts that matter do not need it: Gemini Enterprise has no DCR path
8648
- * at all and wants a client id and secret typed into a form, and ChatGPT keeps
8649
- * predefined clients working. So an operator registers a client explicitly and
8650
- * nothing on the network can mint one.
8664
+ * Operator registrations and public Dynamic Client Registration both require
8665
+ * explicit user consent and S256 PKCE before they can receive tokens.
8651
8666
  */
8652
8667
  declare const oauthClients: drizzle_orm_sqlite_core.SQLiteTableWithColumns<{
8653
8668
  name: "oauth_clients";
@@ -8790,6 +8805,147 @@ declare const oauthClients: drizzle_orm_sqlite_core.SQLiteTableWithColumns<{
8790
8805
  };
8791
8806
  dialect: "sqlite";
8792
8807
  }>;
8808
+ /** One authorization and every token rotation descended from it. */
8809
+ declare const oauthGrants: drizzle_orm_sqlite_core.SQLiteTableWithColumns<{
8810
+ name: "oauth_grants";
8811
+ schema: undefined;
8812
+ columns: {
8813
+ id: drizzle_orm_sqlite_core.SQLiteColumn<{
8814
+ name: "id";
8815
+ tableName: "oauth_grants";
8816
+ dataType: "string";
8817
+ columnType: "SQLiteText";
8818
+ data: string;
8819
+ driverParam: string;
8820
+ notNull: true;
8821
+ hasDefault: false;
8822
+ isPrimaryKey: true;
8823
+ isAutoincrement: false;
8824
+ hasRuntimeDefault: false;
8825
+ enumValues: [string, ...string[]];
8826
+ baseColumn: never;
8827
+ identity: undefined;
8828
+ generated: undefined;
8829
+ }, {}, {
8830
+ length: number | undefined;
8831
+ }>;
8832
+ clientId: drizzle_orm_sqlite_core.SQLiteColumn<{
8833
+ name: "client_id";
8834
+ tableName: "oauth_grants";
8835
+ dataType: "string";
8836
+ columnType: "SQLiteText";
8837
+ data: string;
8838
+ driverParam: string;
8839
+ notNull: true;
8840
+ hasDefault: false;
8841
+ isPrimaryKey: false;
8842
+ isAutoincrement: false;
8843
+ hasRuntimeDefault: false;
8844
+ enumValues: [string, ...string[]];
8845
+ baseColumn: never;
8846
+ identity: undefined;
8847
+ generated: undefined;
8848
+ }, {}, {
8849
+ length: number | undefined;
8850
+ }>;
8851
+ userId: drizzle_orm_sqlite_core.SQLiteColumn<{
8852
+ name: "user_id";
8853
+ tableName: "oauth_grants";
8854
+ dataType: "string";
8855
+ columnType: "SQLiteText";
8856
+ data: string;
8857
+ driverParam: string;
8858
+ notNull: true;
8859
+ hasDefault: false;
8860
+ isPrimaryKey: false;
8861
+ isAutoincrement: false;
8862
+ hasRuntimeDefault: false;
8863
+ enumValues: [string, ...string[]];
8864
+ baseColumn: never;
8865
+ identity: undefined;
8866
+ generated: undefined;
8867
+ }, {}, {
8868
+ length: number | undefined;
8869
+ }>;
8870
+ resource: drizzle_orm_sqlite_core.SQLiteColumn<{
8871
+ name: "resource";
8872
+ tableName: "oauth_grants";
8873
+ dataType: "string";
8874
+ columnType: "SQLiteText";
8875
+ data: string;
8876
+ driverParam: string;
8877
+ notNull: false;
8878
+ hasDefault: false;
8879
+ isPrimaryKey: false;
8880
+ isAutoincrement: false;
8881
+ hasRuntimeDefault: false;
8882
+ enumValues: [string, ...string[]];
8883
+ baseColumn: never;
8884
+ identity: undefined;
8885
+ generated: undefined;
8886
+ }, {}, {
8887
+ length: number | undefined;
8888
+ }>;
8889
+ scope: drizzle_orm_sqlite_core.SQLiteColumn<{
8890
+ name: "scope";
8891
+ tableName: "oauth_grants";
8892
+ dataType: "string";
8893
+ columnType: "SQLiteText";
8894
+ data: string;
8895
+ driverParam: string;
8896
+ notNull: false;
8897
+ hasDefault: false;
8898
+ isPrimaryKey: false;
8899
+ isAutoincrement: false;
8900
+ hasRuntimeDefault: false;
8901
+ enumValues: [string, ...string[]];
8902
+ baseColumn: never;
8903
+ identity: undefined;
8904
+ generated: undefined;
8905
+ }, {}, {
8906
+ length: number | undefined;
8907
+ }>;
8908
+ createdAt: drizzle_orm_sqlite_core.SQLiteColumn<{
8909
+ name: "created_at";
8910
+ tableName: "oauth_grants";
8911
+ dataType: "string";
8912
+ columnType: "SQLiteText";
8913
+ data: string;
8914
+ driverParam: string;
8915
+ notNull: true;
8916
+ hasDefault: false;
8917
+ isPrimaryKey: false;
8918
+ isAutoincrement: false;
8919
+ hasRuntimeDefault: false;
8920
+ enumValues: [string, ...string[]];
8921
+ baseColumn: never;
8922
+ identity: undefined;
8923
+ generated: undefined;
8924
+ }, {}, {
8925
+ length: number | undefined;
8926
+ }>;
8927
+ revokedAt: drizzle_orm_sqlite_core.SQLiteColumn<{
8928
+ name: "revoked_at";
8929
+ tableName: "oauth_grants";
8930
+ dataType: "string";
8931
+ columnType: "SQLiteText";
8932
+ data: string;
8933
+ driverParam: string;
8934
+ notNull: false;
8935
+ hasDefault: false;
8936
+ isPrimaryKey: false;
8937
+ isAutoincrement: false;
8938
+ hasRuntimeDefault: false;
8939
+ enumValues: [string, ...string[]];
8940
+ baseColumn: never;
8941
+ identity: undefined;
8942
+ generated: undefined;
8943
+ }, {}, {
8944
+ length: number | undefined;
8945
+ }>;
8946
+ };
8947
+ dialect: "sqlite";
8948
+ }>;
8793
8949
  /**
8794
8950
  * In-flight authorization codes. Single use, short lived, and bound to the
8795
8951
  * PKCE challenge plus the resource the client asked for.
@@ -9020,6 +9176,25 @@ declare const oauthTokens: drizzle_orm_sqlite_core.SQLiteTableWithColumns<{
9020
9176
  length: number | undefined;
9021
9177
  $type: "refresh" | "access";
9022
9178
  }>;
9179
+ grantId: drizzle_orm_sqlite_core.SQLiteColumn<{
9180
+ name: "grant_id";
9181
+ tableName: "oauth_tokens";
9182
+ dataType: "string";
9183
+ columnType: "SQLiteText";
9184
+ data: string;
9185
+ driverParam: string;
9186
+ notNull: false;
9187
+ hasDefault: false;
9188
+ isPrimaryKey: false;
9189
+ isAutoincrement: false;
9190
+ hasRuntimeDefault: false;
9191
+ enumValues: [string, ...string[]];
9192
+ baseColumn: never;
9193
+ identity: undefined;
9194
+ generated: undefined;
9195
+ }, {}, {
9196
+ length: number | undefined;
9197
+ }>;
9023
9198
  clientId: drizzle_orm_sqlite_core.SQLiteColumn<{
9024
9199
  name: "client_id";
9025
9200
  tableName: "oauth_tokens";
@@ -12060,7 +12235,7 @@ declare const siteAuditSnapshots: drizzle_orm_sqlite_core.SQLiteTableWithColumns
12060
12235
  weight: number;
12061
12236
  sharePct: number | null;
12062
12237
  avgScore: number;
12063
- status: "fail" | "partial" | "pass";
12238
+ status: "partial" | "fail" | "pass";
12064
12239
  pagesPassing: number;
12065
12240
  pagesPartial: number;
12066
12241
  pagesFailing: number;
@@ -12082,7 +12257,7 @@ declare const siteAuditSnapshots: drizzle_orm_sqlite_core.SQLiteTableWithColumns
12082
12257
  weight: number;
12083
12258
  sharePct: number | null;
12084
12259
  avgScore: number;
12085
- status: "fail" | "partial" | "pass";
12260
+ status: "partial" | "fail" | "pass";
12086
12261
  pagesPassing: number;
12087
12262
  pagesPartial: number;
12088
12263
  pagesFailing: number;
@@ -30989,7 +31164,7 @@ declare const adsOperationSteps: drizzle_orm_sqlite_core.SQLiteTableWithColumns<
30989
31164
  tableName: "ads_operation_steps";
30990
31165
  dataType: "string";
30991
31166
  columnType: "SQLiteText";
30992
- data: "unknown" | "active" | "failed" | "pending" | "executing" | "rollback_executing" | "rolled_back" | "rollback_failed";
31167
+ data: "unknown" | "failed" | "active" | "pending" | "executing" | "rollback_executing" | "rolled_back" | "rollback_failed";
30993
31168
  driverParam: string;
30994
31169
  notNull: true;
30995
31170
  hasDefault: false;
@@ -31002,7 +31177,7 @@ declare const adsOperationSteps: drizzle_orm_sqlite_core.SQLiteTableWithColumns<
31002
31177
  generated: undefined;
31003
31178
  }, {}, {
31004
31179
  length: number | undefined;
31005
- $type: "unknown" | "active" | "failed" | "pending" | "executing" | "rollback_executing" | "rolled_back" | "rollback_failed";
31180
+ $type: "unknown" | "failed" | "active" | "pending" | "executing" | "rollback_executing" | "rolled_back" | "rollback_failed";
31006
31181
  }>;
31007
31182
  providerUpdatedAt: drizzle_orm_sqlite_core.SQLiteColumn<{
31008
31183
  name: "provider_updated_at";
@@ -37026,6 +37201,7 @@ declare const schema_migrationsTable: typeof migrationsTable;
37026
37201
  declare const schema_notifications: typeof notifications;
37027
37202
  declare const schema_oauthAuthorizationCodes: typeof oauthAuthorizationCodes;
37028
37203
  declare const schema_oauthClients: typeof oauthClients;
37204
+ declare const schema_oauthGrants: typeof oauthGrants;
37029
37205
  declare const schema_oauthTokens: typeof oauthTokens;
37030
37206
  declare const schema_projects: typeof projects;
37031
37207
  declare const schema_providerBatchRequests: typeof providerBatchRequests;
@@ -37169,6 +37345,7 @@ declare namespace schema {
37169
37345
  schema_notifications as notifications,
37170
37346
  schema_oauthAuthorizationCodes as oauthAuthorizationCodes,
37171
37347
  schema_oauthClients as oauthClients,
37348
+ schema_oauthGrants as oauthGrants,
37172
37349
  schema_oauthTokens as oauthTokens,
37173
37350
  schema_projects as projects,
37174
37351
  schema_providerBatchRequests as providerBatchRequests,
@@ -37260,8 +37437,8 @@ type ClassificationConfig = z.infer<typeof classificationConfigSchema>;
37260
37437
  declare const seoInstallConfigSchema: z.ZodObject<{
37261
37438
  enabled: z.ZodBoolean;
37262
37439
  fundingMode: z.ZodEnum<{
37263
- "self-hosted": "self-hosted";
37264
37440
  hosted: "hosted";
37441
+ "self-hosted": "self-hosted";
37265
37442
  }>;
37266
37443
  policy: z.ZodObject<{
37267
37444
  maxRunCostMicros: z.ZodNumber;
package/dist/index.js CHANGED
@@ -3,39 +3,39 @@ import {
3
3
  createGoogleMarketingCredentialStore,
4
4
  createGoogleMarketingRuntime,
5
5
  createServer
6
- } from "./chunk-UZKNS5PL.js";
7
- import "./chunk-XR6ZVMYK.js";
8
- import "./chunk-NZLK3KHQ.js";
9
- import "./chunk-P3UGNR2Y.js";
6
+ } from "./chunk-HIGBV77K.js";
7
+ import "./chunk-6W5AR4IW.js";
8
+ import "./chunk-GNBATQS3.js";
9
+ import "./chunk-ETVM3T7K.js";
10
10
  import "./chunk-ELCLGWUT.js";
11
11
  import "./chunk-XEBKF4N5.js";
12
- import "./chunk-BZZDFIY2.js";
13
- import "./chunk-JO73L677.js";
14
- import "./chunk-4LTL5RNY.js";
12
+ import "./chunk-XDQJOZKJ.js";
13
+ import "./chunk-6ATKY252.js";
14
+ import "./chunk-S77W2XSI.js";
15
15
  import "./chunk-TSENU4GG.js";
16
- import "./chunk-6MYHGP46.js";
17
- import "./chunk-MJYO6UK2.js";
18
- import "./chunk-IV6VZ63E.js";
16
+ import "./chunk-DLVGMRM5.js";
17
+ import "./chunk-PRSQ4R47.js";
18
+ import "./chunk-F5D4GPZQ.js";
19
19
  import "./chunk-NDTU7FGL.js";
20
- import "./chunk-ATT3ZCSS.js";
20
+ import "./chunk-WH2M2MQF.js";
21
21
  import {
22
22
  loadConfig
23
- } from "./chunk-JE5QURTR.js";
24
- import "./chunk-PPM6Z7CM.js";
25
- import "./chunk-IZMT4WLZ.js";
26
- import "./chunk-GA2EHZTI.js";
27
- import "./chunk-J523Y7X2.js";
28
- import "./chunk-3AG3LPZX.js";
23
+ } from "./chunk-HKV4UWG5.js";
24
+ import "./chunk-HEL6DKDN.js";
25
+ import "./chunk-6YW24AUN.js";
26
+ import "./chunk-3WPTMLQI.js";
27
+ import "./chunk-2Y6MSB4J.js";
28
+ import "./chunk-MRSNLKSM.js";
29
29
  import "./chunk-AOJU5LKX.js";
30
30
  import "./chunk-HGMYEDAQ.js";
31
- import "./chunk-IY4AJ6DN.js";
32
- import "./chunk-HZSE3WSG.js";
33
- import "./chunk-DRGCVTYH.js";
34
- import "./chunk-7KOAP47B.js";
35
- import "./chunk-JEBY6MS6.js";
36
- import "./chunk-BADJCT6U.js";
37
- import "./chunk-O7WOCTBD.js";
38
- import "./chunk-YXAKL5HM.js";
31
+ import "./chunk-5PA7SJ2M.js";
32
+ import "./chunk-AZQNJX3T.js";
33
+ import "./chunk-JPM3VC6A.js";
34
+ import "./chunk-WLWOGBLJ.js";
35
+ import "./chunk-QS6RIP37.js";
36
+ import "./chunk-GWDMWKM6.js";
37
+ import "./chunk-PAIYFNNY.js";
38
+ import "./chunk-SF5JLMLG.js";
39
39
  import "./chunk-MLKGABMK.js";
40
40
  export {
41
41
  GoogleMarketingRuntimeError,
@@ -1,16 +1,16 @@
1
1
  import {
2
2
  installMcp
3
- } from "./chunk-Q25JQANW.js";
3
+ } from "./chunk-T5PWWDMJ.js";
4
4
  import {
5
5
  trackCliConnection
6
- } from "./chunk-H4HNXCDF.js";
6
+ } from "./chunk-4B6DE7BB.js";
7
7
  import {
8
8
  buildSetupState,
9
9
  queueServeHandoff
10
- } from "./chunk-QKDKVPMR.js";
10
+ } from "./chunk-HGMTGC34.js";
11
11
  import "./chunk-VJWDBFSL.js";
12
- import "./chunk-4LTL5RNY.js";
13
- import "./chunk-6MYHGP46.js";
12
+ import "./chunk-S77W2XSI.js";
13
+ import "./chunk-DLVGMRM5.js";
14
14
  import {
15
15
  cliRuntimeContext,
16
16
  installAttribution,
@@ -18,7 +18,8 @@ import {
18
18
  recordInstallRef,
19
19
  showFirstRunNotice,
20
20
  trackEvent
21
- } from "./chunk-MJYO6UK2.js";
21
+ } from "./chunk-PRSQ4R47.js";
22
+ import "./chunk-WH2M2MQF.js";
22
23
  import {
23
24
  configExists,
24
25
  getBootstrapEnv,
@@ -26,24 +27,24 @@ import {
26
27
  getConfigPath,
27
28
  saveConfig,
28
29
  withBootstrapProviderDefaults
29
- } from "./chunk-JE5QURTR.js";
30
+ } from "./chunk-HKV4UWG5.js";
30
31
  import {
31
32
  installSkills
32
- } from "./chunk-PPM6Z7CM.js";
33
+ } from "./chunk-HEL6DKDN.js";
33
34
  import "./chunk-AOJU5LKX.js";
34
35
  import {
35
36
  CliError,
36
37
  isMachineFormat
37
38
  } from "./chunk-HGMYEDAQ.js";
38
- import "./chunk-BADJCT6U.js";
39
+ import "./chunk-GWDMWKM6.js";
39
40
  import {
40
41
  apiKeys,
41
42
  createClient,
42
43
  migrate
43
- } from "./chunk-O7WOCTBD.js";
44
+ } from "./chunk-PAIYFNNY.js";
44
45
  import {
45
46
  describeError
46
- } from "./chunk-YXAKL5HM.js";
47
+ } from "./chunk-SF5JLMLG.js";
47
48
  import "./chunk-MLKGABMK.js";
48
49
 
49
50
  // src/commands/init.ts
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  createApiClient
3
- } from "./chunk-ATT3ZCSS.js";
4
- import "./chunk-JE5QURTR.js";
3
+ } from "./chunk-WH2M2MQF.js";
4
+ import "./chunk-HKV4UWG5.js";
5
5
  import {
6
6
  emitJsonl
7
7
  } from "./chunk-Z7IUAJOF.js";
@@ -9,7 +9,7 @@ import "./chunk-AOJU5LKX.js";
9
9
  import {
10
10
  isMachineFormat
11
11
  } from "./chunk-HGMYEDAQ.js";
12
- import "./chunk-YXAKL5HM.js";
12
+ import "./chunk-SF5JLMLG.js";
13
13
  import "./chunk-MLKGABMK.js";
14
14
 
15
15
  // src/commands/insights.ts
@@ -0,0 +1,16 @@
1
+ import {
2
+ HISTORY_WINDOW_RUNS,
3
+ IntelligenceService
4
+ } from "./chunk-5PA7SJ2M.js";
5
+ import "./chunk-AZQNJX3T.js";
6
+ import "./chunk-JPM3VC6A.js";
7
+ import "./chunk-WLWOGBLJ.js";
8
+ import "./chunk-QS6RIP37.js";
9
+ import "./chunk-GWDMWKM6.js";
10
+ import "./chunk-PAIYFNNY.js";
11
+ import "./chunk-SF5JLMLG.js";
12
+ import "./chunk-MLKGABMK.js";
13
+ export {
14
+ HISTORY_WINDOW_RUNS,
15
+ IntelligenceService
16
+ };
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  createApiClient
3
- } from "./chunk-ATT3ZCSS.js";
4
- import "./chunk-JE5QURTR.js";
3
+ } from "./chunk-WH2M2MQF.js";
4
+ import "./chunk-HKV4UWG5.js";
5
5
  import {
6
6
  emitJsonl
7
7
  } from "./chunk-Z7IUAJOF.js";
@@ -17,7 +17,7 @@ import {
17
17
  journeyDetailQuerySchema,
18
18
  journeySummaryQuerySchema,
19
19
  journeysQuerySchema
20
- } from "./chunk-YXAKL5HM.js";
20
+ } from "./chunk-SF5JLMLG.js";
21
21
  import "./chunk-MLKGABMK.js";
22
22
 
23
23
  // src/commands/journeys.ts
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  createApiClient
3
- } from "./chunk-ATT3ZCSS.js";
4
- import "./chunk-JE5QURTR.js";
3
+ } from "./chunk-WH2M2MQF.js";
4
+ import "./chunk-HKV4UWG5.js";
5
5
  import {
6
6
  emitJsonl
7
7
  } from "./chunk-Z7IUAJOF.js";
@@ -13,7 +13,7 @@ import {
13
13
  import {
14
14
  READ_ONLY_SCOPE,
15
15
  formatIsoDate
16
- } from "./chunk-YXAKL5HM.js";
16
+ } from "./chunk-SF5JLMLG.js";
17
17
  import "./chunk-MLKGABMK.js";
18
18
 
19
19
  // src/commands/keys.ts
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  createApiClient
3
- } from "./chunk-ATT3ZCSS.js";
4
- import "./chunk-JE5QURTR.js";
3
+ } from "./chunk-WH2M2MQF.js";
4
+ import "./chunk-HKV4UWG5.js";
5
5
  import {
6
6
  emitJsonl
7
7
  } from "./chunk-Z7IUAJOF.js";
@@ -10,7 +10,7 @@ import {
10
10
  CliError,
11
11
  isMachineFormat
12
12
  } from "./chunk-HGMYEDAQ.js";
13
- import "./chunk-YXAKL5HM.js";
13
+ import "./chunk-SF5JLMLG.js";
14
14
  import "./chunk-MLKGABMK.js";
15
15
 
16
16
  // src/commands/keyword.ts
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  createApiClient
3
- } from "./chunk-ATT3ZCSS.js";
4
- import "./chunk-JE5QURTR.js";
3
+ } from "./chunk-WH2M2MQF.js";
4
+ import "./chunk-HKV4UWG5.js";
5
5
  import "./chunk-AOJU5LKX.js";
6
6
  import {
7
7
  isMachineFormat,
@@ -9,7 +9,7 @@ import {
9
9
  } from "./chunk-HGMYEDAQ.js";
10
10
  import {
11
11
  logQuerySchema
12
- } from "./chunk-YXAKL5HM.js";
12
+ } from "./chunk-SF5JLMLG.js";
13
13
  import "./chunk-MLKGABMK.js";
14
14
 
15
15
  // src/commands/logs.ts
@@ -0,0 +1,19 @@
1
+ import {
2
+ installMcp,
3
+ printMcpConfig,
4
+ renderClientSnippet,
5
+ showMcpProfile
6
+ } from "./chunk-T5PWWDMJ.js";
7
+ import "./chunk-VJWDBFSL.js";
8
+ import "./chunk-WH2M2MQF.js";
9
+ import "./chunk-HKV4UWG5.js";
10
+ import "./chunk-AOJU5LKX.js";
11
+ import "./chunk-HGMYEDAQ.js";
12
+ import "./chunk-SF5JLMLG.js";
13
+ import "./chunk-MLKGABMK.js";
14
+ export {
15
+ installMcp,
16
+ printMcpConfig,
17
+ renderClientSnippet,
18
+ showMcpProfile
19
+ };
package/dist/mcp.js CHANGED
@@ -1,29 +1,30 @@
1
1
  import {
2
2
  autoSyncSkills
3
- } from "./chunk-TOX6HAQJ.js";
3
+ } from "./chunk-JQNVNB63.js";
4
4
  import {
5
5
  createCanonryMcpServer
6
- } from "./chunk-IV6VZ63E.js";
6
+ } from "./chunk-F5D4GPZQ.js";
7
7
  import "./chunk-NDTU7FGL.js";
8
8
  import {
9
9
  createApiClient
10
- } from "./chunk-ATT3ZCSS.js";
11
- import "./chunk-JE5QURTR.js";
12
- import "./chunk-PPM6Z7CM.js";
13
- import "./chunk-GA2EHZTI.js";
14
- import "./chunk-J523Y7X2.js";
15
- import "./chunk-3AG3LPZX.js";
10
+ } from "./chunk-WH2M2MQF.js";
11
+ import "./chunk-HKV4UWG5.js";
12
+ import "./chunk-HEL6DKDN.js";
13
+ import "./chunk-3WPTMLQI.js";
14
+ import "./chunk-2Y6MSB4J.js";
15
+ import "./chunk-MRSNLKSM.js";
16
16
  import "./chunk-AOJU5LKX.js";
17
17
  import "./chunk-HGMYEDAQ.js";
18
18
  import {
19
+ describeError,
19
20
  isReadOnlyKey,
20
21
  updateCheckEnvOptOut
21
- } from "./chunk-YXAKL5HM.js";
22
+ } from "./chunk-SF5JLMLG.js";
22
23
  import "./chunk-MLKGABMK.js";
23
24
 
24
25
  // src/mcp/cli.ts
25
26
  import { randomUUID } from "crypto";
26
- import { StdioServerTransport } from "@modelcontextprotocol/sdk/server/stdio.js";
27
+ import { serveStdio } from "@modelcontextprotocol/server/stdio";
27
28
 
28
29
  // src/mcp/update-notice.ts
29
30
  function createUpdateNoticeSource(client, opts = {}) {
@@ -93,17 +94,22 @@ async function main(argv = process.argv.slice(2)) {
93
94
  if (options.scope !== "stored-only") void autoSyncSkills();
94
95
  const client = createApiClient({ clientName: "canonry-mcp", surface: "mcp-stdio", actorSession: randomUUID() });
95
96
  const updateNotice = options.scope === "stored-only" ? { refresh: async () => void 0, get: () => null } : createUpdateNoticeSource(client);
96
- const [authorization] = await Promise.all([
97
+ const [authorization, connectionProfile] = await Promise.all([
97
98
  resolveEffectiveAuthorization(client, options.scope),
99
+ // Probe the public read: unbound keys and unconfigured hosts have no profile.
100
+ client.getMcpProfile().then(() => true, () => false),
98
101
  updateNotice.refresh()
99
102
  ]);
100
- const server = createCanonryMcpServer({
103
+ serveStdio(() => createCanonryMcpServer({
101
104
  ...authorization,
105
+ connectionProfile,
102
106
  eager: options.eager,
103
107
  clientFactory: () => client,
104
108
  updateAvailable: updateNotice.get
105
- });
106
- await server.connect(new StdioServerTransport());
109
+ }), { onerror: (error) => {
110
+ process.stderr.write(`canonry-mcp: ${describeError(error)}
111
+ `);
112
+ } });
107
113
  }
108
114
  async function resolveEffectiveScope(client, flagScope) {
109
115
  return (await resolveEffectiveAuthorization(client, flagScope)).scope;
@@ -14,14 +14,14 @@ import {
14
14
  showMeasurementProperty,
15
15
  showMeasurementPropertyEvidence,
16
16
  showMeasurementReport
17
- } from "./chunk-TEDY3MHN.js";
18
- import "./chunk-ATT3ZCSS.js";
19
- import "./chunk-JE5QURTR.js";
17
+ } from "./chunk-GUFKUPKZ.js";
18
+ import "./chunk-WH2M2MQF.js";
19
+ import "./chunk-HKV4UWG5.js";
20
20
  import "./chunk-Z7IUAJOF.js";
21
- import "./chunk-3AG3LPZX.js";
21
+ import "./chunk-MRSNLKSM.js";
22
22
  import "./chunk-AOJU5LKX.js";
23
23
  import "./chunk-HGMYEDAQ.js";
24
- import "./chunk-YXAKL5HM.js";
24
+ import "./chunk-SF5JLMLG.js";
25
25
  import "./chunk-MLKGABMK.js";
26
26
  export {
27
27
  ADVANCED_MEASUREMENT_OPERATIONS,
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  createApiClient
3
- } from "./chunk-ATT3ZCSS.js";
4
- import "./chunk-JE5QURTR.js";
3
+ } from "./chunk-WH2M2MQF.js";
4
+ import "./chunk-HKV4UWG5.js";
5
5
  import {
6
6
  emitJsonl
7
7
  } from "./chunk-Z7IUAJOF.js";
@@ -12,7 +12,7 @@ import {
12
12
  } from "./chunk-HGMYEDAQ.js";
13
13
  import {
14
14
  notificationEventSchema
15
- } from "./chunk-YXAKL5HM.js";
15
+ } from "./chunk-SF5JLMLG.js";
16
16
  import "./chunk-MLKGABMK.js";
17
17
 
18
18
  // src/commands/notify.ts
@@ -1,12 +1,12 @@
1
1
  import {
2
2
  createApiClient
3
- } from "./chunk-ATT3ZCSS.js";
4
- import "./chunk-JE5QURTR.js";
3
+ } from "./chunk-WH2M2MQF.js";
4
+ import "./chunk-HKV4UWG5.js";
5
5
  import "./chunk-AOJU5LKX.js";
6
6
  import {
7
7
  isMachineFormat
8
8
  } from "./chunk-HGMYEDAQ.js";
9
- import "./chunk-YXAKL5HM.js";
9
+ import "./chunk-SF5JLMLG.js";
10
10
  import "./chunk-MLKGABMK.js";
11
11
 
12
12
  // src/commands/organic-evidence.ts