@s2-dev/streamstore 0.14.0 → 0.15.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 (368) hide show
  1. package/README.md +9 -0
  2. package/bin/mcp-server.js +921 -170
  3. package/bin/mcp-server.js.map +50 -31
  4. package/dist/commonjs/funcs/accessTokensIssueAccessToken.js +2 -0
  5. package/dist/commonjs/funcs/accessTokensIssueAccessToken.js.map +1 -1
  6. package/dist/commonjs/funcs/accessTokensListAccessTokens.js +2 -0
  7. package/dist/commonjs/funcs/accessTokensListAccessTokens.js.map +1 -1
  8. package/dist/commonjs/funcs/accessTokensRevokeAccessToken.js +2 -0
  9. package/dist/commonjs/funcs/accessTokensRevokeAccessToken.js.map +1 -1
  10. package/dist/commonjs/funcs/basinsCreateBasin.js +2 -0
  11. package/dist/commonjs/funcs/basinsCreateBasin.js.map +1 -1
  12. package/dist/commonjs/funcs/basinsCreateOrReconfigureBasin.js +2 -0
  13. package/dist/commonjs/funcs/basinsCreateOrReconfigureBasin.js.map +1 -1
  14. package/dist/commonjs/funcs/basinsDeleteBasin.js +2 -0
  15. package/dist/commonjs/funcs/basinsDeleteBasin.js.map +1 -1
  16. package/dist/commonjs/funcs/basinsGetBasinConfig.js +2 -0
  17. package/dist/commonjs/funcs/basinsGetBasinConfig.js.map +1 -1
  18. package/dist/commonjs/funcs/basinsListBasins.js +2 -0
  19. package/dist/commonjs/funcs/basinsListBasins.js.map +1 -1
  20. package/dist/commonjs/funcs/basinsReconfigureBasin.js +2 -0
  21. package/dist/commonjs/funcs/basinsReconfigureBasin.js.map +1 -1
  22. package/dist/commonjs/funcs/metricsAccountMetrics.d.ts +15 -0
  23. package/dist/commonjs/funcs/metricsAccountMetrics.d.ts.map +1 -0
  24. package/dist/commonjs/funcs/metricsAccountMetrics.js +122 -0
  25. package/dist/commonjs/funcs/metricsAccountMetrics.js.map +1 -0
  26. package/dist/commonjs/funcs/metricsBasinMetrics.d.ts +15 -0
  27. package/dist/commonjs/funcs/metricsBasinMetrics.d.ts.map +1 -0
  28. package/dist/commonjs/funcs/metricsBasinMetrics.js +128 -0
  29. package/dist/commonjs/funcs/metricsBasinMetrics.js.map +1 -0
  30. package/dist/commonjs/funcs/metricsStreamMetrics.d.ts +15 -0
  31. package/dist/commonjs/funcs/metricsStreamMetrics.d.ts.map +1 -0
  32. package/dist/commonjs/funcs/metricsStreamMetrics.js +125 -0
  33. package/dist/commonjs/funcs/metricsStreamMetrics.js.map +1 -0
  34. package/dist/commonjs/funcs/recordsAppend.js +2 -0
  35. package/dist/commonjs/funcs/recordsAppend.js.map +1 -1
  36. package/dist/commonjs/funcs/recordsCheckTail.js +2 -0
  37. package/dist/commonjs/funcs/recordsCheckTail.js.map +1 -1
  38. package/dist/commonjs/funcs/recordsRead.js +2 -0
  39. package/dist/commonjs/funcs/recordsRead.js.map +1 -1
  40. package/dist/commonjs/funcs/streamsCreateOrReconfigureStream.js +2 -0
  41. package/dist/commonjs/funcs/streamsCreateOrReconfigureStream.js.map +1 -1
  42. package/dist/commonjs/funcs/streamsCreateStream.js +2 -0
  43. package/dist/commonjs/funcs/streamsCreateStream.js.map +1 -1
  44. package/dist/commonjs/funcs/streamsDeleteStream.js +2 -0
  45. package/dist/commonjs/funcs/streamsDeleteStream.js.map +1 -1
  46. package/dist/commonjs/funcs/streamsGetStreamConfig.js +2 -0
  47. package/dist/commonjs/funcs/streamsGetStreamConfig.js.map +1 -1
  48. package/dist/commonjs/funcs/streamsListStreams.js +2 -0
  49. package/dist/commonjs/funcs/streamsListStreams.js.map +1 -1
  50. package/dist/commonjs/funcs/streamsReconfigureStream.js +2 -0
  51. package/dist/commonjs/funcs/streamsReconfigureStream.js.map +1 -1
  52. package/dist/commonjs/hooks/types.d.ts +2 -0
  53. package/dist/commonjs/hooks/types.d.ts.map +1 -1
  54. package/dist/commonjs/index.d.ts +2 -0
  55. package/dist/commonjs/index.d.ts.map +1 -1
  56. package/dist/commonjs/index.js +3 -1
  57. package/dist/commonjs/index.js.map +1 -1
  58. package/dist/commonjs/lib/config.d.ts +7 -3
  59. package/dist/commonjs/lib/config.d.ts.map +1 -1
  60. package/dist/commonjs/lib/config.js +3 -3
  61. package/dist/commonjs/lib/config.js.map +1 -1
  62. package/dist/commonjs/lib/sdks.d.ts +1 -0
  63. package/dist/commonjs/lib/sdks.d.ts.map +1 -1
  64. package/dist/commonjs/lib/sdks.js +3 -3
  65. package/dist/commonjs/lib/sdks.js.map +1 -1
  66. package/dist/commonjs/mcp-server/mcp-server.js +1 -1
  67. package/dist/commonjs/mcp-server/server.d.ts.map +1 -1
  68. package/dist/commonjs/mcp-server/server.js +7 -1
  69. package/dist/commonjs/mcp-server/server.js.map +1 -1
  70. package/dist/commonjs/mcp-server/tools/metricsAccountMetrics.d.ts +8 -0
  71. package/dist/commonjs/mcp-server/tools/metricsAccountMetrics.d.ts.map +1 -0
  72. package/dist/commonjs/mcp-server/tools/metricsAccountMetrics.js +63 -0
  73. package/dist/commonjs/mcp-server/tools/metricsAccountMetrics.js.map +1 -0
  74. package/dist/commonjs/mcp-server/tools/metricsBasinMetrics.d.ts +8 -0
  75. package/dist/commonjs/mcp-server/tools/metricsBasinMetrics.d.ts.map +1 -0
  76. package/dist/commonjs/mcp-server/tools/metricsBasinMetrics.js +63 -0
  77. package/dist/commonjs/mcp-server/tools/metricsBasinMetrics.js.map +1 -0
  78. package/dist/commonjs/mcp-server/tools/metricsStreamMetrics.d.ts +8 -0
  79. package/dist/commonjs/mcp-server/tools/metricsStreamMetrics.d.ts.map +1 -0
  80. package/dist/commonjs/mcp-server/tools/metricsStreamMetrics.js +63 -0
  81. package/dist/commonjs/mcp-server/tools/metricsStreamMetrics.js.map +1 -0
  82. package/dist/commonjs/models/components/accountmetricset.d.ts +28 -0
  83. package/dist/commonjs/models/components/accountmetricset.d.ts.map +1 -0
  84. package/dist/commonjs/models/components/accountmetricset.js +60 -0
  85. package/dist/commonjs/models/components/accountmetricset.js.map +1 -0
  86. package/dist/commonjs/models/components/accumulation.d.ts +72 -0
  87. package/dist/commonjs/models/components/accumulation.d.ts.map +1 -0
  88. package/dist/commonjs/models/components/accumulation.js +110 -0
  89. package/dist/commonjs/models/components/accumulation.js.map +1 -0
  90. package/dist/commonjs/models/components/basinmetricset.d.ts +40 -0
  91. package/dist/commonjs/models/components/basinmetricset.d.ts.map +1 -0
  92. package/dist/commonjs/models/components/basinmetricset.js +64 -0
  93. package/dist/commonjs/models/components/basinmetricset.js.map +1 -0
  94. package/dist/commonjs/models/components/gauge.d.ts +68 -0
  95. package/dist/commonjs/models/components/gauge.d.ts.map +1 -0
  96. package/dist/commonjs/models/components/gauge.js +98 -0
  97. package/dist/commonjs/models/components/gauge.js.map +1 -0
  98. package/dist/commonjs/models/components/index.d.ts +10 -0
  99. package/dist/commonjs/models/components/index.d.ts.map +1 -1
  100. package/dist/commonjs/models/components/index.js +10 -0
  101. package/dist/commonjs/models/components/index.js.map +1 -1
  102. package/dist/commonjs/models/components/label.d.ts +37 -0
  103. package/dist/commonjs/models/components/label.d.ts.map +1 -0
  104. package/dist/commonjs/models/components/label.js +72 -0
  105. package/dist/commonjs/models/components/label.js.map +1 -0
  106. package/dist/commonjs/models/components/metric.d.ts +144 -0
  107. package/dist/commonjs/models/components/metric.d.ts.map +1 -0
  108. package/dist/commonjs/models/components/metric.js +192 -0
  109. package/dist/commonjs/models/components/metric.js.map +1 -0
  110. package/dist/commonjs/models/components/metricsetresponse.d.ts +33 -0
  111. package/dist/commonjs/models/components/metricsetresponse.d.ts.map +1 -0
  112. package/dist/commonjs/models/components/metricsetresponse.js +70 -0
  113. package/dist/commonjs/models/components/metricsetresponse.js.map +1 -0
  114. package/dist/commonjs/models/components/metricunit.d.ts +28 -0
  115. package/dist/commonjs/models/components/metricunit.d.ts.map +1 -0
  116. package/dist/commonjs/models/components/metricunit.js +61 -0
  117. package/dist/commonjs/models/components/metricunit.js.map +1 -0
  118. package/dist/commonjs/models/components/operation.d.ts +9 -0
  119. package/dist/commonjs/models/components/operation.d.ts.map +1 -1
  120. package/dist/commonjs/models/components/operation.js +3 -0
  121. package/dist/commonjs/models/components/operation.js.map +1 -1
  122. package/dist/commonjs/models/components/readevent.d.ts +67 -17
  123. package/dist/commonjs/models/components/readevent.d.ts.map +1 -1
  124. package/dist/commonjs/models/components/readevent.js +86 -25
  125. package/dist/commonjs/models/components/readevent.js.map +1 -1
  126. package/dist/commonjs/models/components/scalar.d.ts +40 -0
  127. package/dist/commonjs/models/components/scalar.d.ts.map +1 -0
  128. package/dist/commonjs/models/components/scalar.js +75 -0
  129. package/dist/commonjs/models/components/scalar.js.map +1 -0
  130. package/dist/commonjs/models/components/timeseriesinterval.d.ts +31 -0
  131. package/dist/commonjs/models/components/timeseriesinterval.d.ts.map +1 -0
  132. package/dist/commonjs/models/components/timeseriesinterval.js +61 -0
  133. package/dist/commonjs/models/components/timeseriesinterval.js.map +1 -0
  134. package/dist/commonjs/models/errors/appendconditionfailed.d.ts +4 -4
  135. package/dist/commonjs/models/errors/appendconditionfailed.js +1 -1
  136. package/dist/commonjs/models/operations/accountmetrics.d.ts +48 -0
  137. package/dist/commonjs/models/operations/accountmetrics.d.ts.map +1 -0
  138. package/dist/commonjs/models/operations/accountmetrics.js +76 -0
  139. package/dist/commonjs/models/operations/accountmetrics.js.map +1 -0
  140. package/dist/commonjs/models/operations/basinmetrics.d.ts +53 -0
  141. package/dist/commonjs/models/operations/basinmetrics.d.ts.map +1 -0
  142. package/dist/commonjs/models/operations/basinmetrics.js +78 -0
  143. package/dist/commonjs/models/operations/basinmetrics.js.map +1 -0
  144. package/dist/commonjs/models/operations/index.d.ts +3 -0
  145. package/dist/commonjs/models/operations/index.d.ts.map +1 -1
  146. package/dist/commonjs/models/operations/index.js +3 -0
  147. package/dist/commonjs/models/operations/index.js.map +1 -1
  148. package/dist/commonjs/models/operations/streammetrics.d.ts +37 -0
  149. package/dist/commonjs/models/operations/streammetrics.d.ts.map +1 -0
  150. package/dist/commonjs/models/operations/streammetrics.js +71 -0
  151. package/dist/commonjs/models/operations/streammetrics.js.map +1 -0
  152. package/dist/commonjs/sdk/metrics.d.ts +18 -0
  153. package/dist/commonjs/sdk/metrics.d.ts.map +1 -0
  154. package/dist/commonjs/sdk/metrics.js +33 -0
  155. package/dist/commonjs/sdk/metrics.js.map +1 -0
  156. package/dist/commonjs/sdk/sdk.d.ts +3 -0
  157. package/dist/commonjs/sdk/sdk.d.ts.map +1 -1
  158. package/dist/commonjs/sdk/sdk.js +4 -0
  159. package/dist/commonjs/sdk/sdk.js.map +1 -1
  160. package/dist/esm/funcs/accessTokensIssueAccessToken.js +2 -0
  161. package/dist/esm/funcs/accessTokensIssueAccessToken.js.map +1 -1
  162. package/dist/esm/funcs/accessTokensListAccessTokens.js +2 -0
  163. package/dist/esm/funcs/accessTokensListAccessTokens.js.map +1 -1
  164. package/dist/esm/funcs/accessTokensRevokeAccessToken.js +2 -0
  165. package/dist/esm/funcs/accessTokensRevokeAccessToken.js.map +1 -1
  166. package/dist/esm/funcs/basinsCreateBasin.js +2 -0
  167. package/dist/esm/funcs/basinsCreateBasin.js.map +1 -1
  168. package/dist/esm/funcs/basinsCreateOrReconfigureBasin.js +2 -0
  169. package/dist/esm/funcs/basinsCreateOrReconfigureBasin.js.map +1 -1
  170. package/dist/esm/funcs/basinsDeleteBasin.js +2 -0
  171. package/dist/esm/funcs/basinsDeleteBasin.js.map +1 -1
  172. package/dist/esm/funcs/basinsGetBasinConfig.js +2 -0
  173. package/dist/esm/funcs/basinsGetBasinConfig.js.map +1 -1
  174. package/dist/esm/funcs/basinsListBasins.js +2 -0
  175. package/dist/esm/funcs/basinsListBasins.js.map +1 -1
  176. package/dist/esm/funcs/basinsReconfigureBasin.js +2 -0
  177. package/dist/esm/funcs/basinsReconfigureBasin.js.map +1 -1
  178. package/dist/esm/funcs/metricsAccountMetrics.d.ts +15 -0
  179. package/dist/esm/funcs/metricsAccountMetrics.d.ts.map +1 -0
  180. package/dist/esm/funcs/metricsAccountMetrics.js +86 -0
  181. package/dist/esm/funcs/metricsAccountMetrics.js.map +1 -0
  182. package/dist/esm/funcs/metricsBasinMetrics.d.ts +15 -0
  183. package/dist/esm/funcs/metricsBasinMetrics.d.ts.map +1 -0
  184. package/dist/esm/funcs/metricsBasinMetrics.js +92 -0
  185. package/dist/esm/funcs/metricsBasinMetrics.js.map +1 -0
  186. package/dist/esm/funcs/metricsStreamMetrics.d.ts +15 -0
  187. package/dist/esm/funcs/metricsStreamMetrics.d.ts.map +1 -0
  188. package/dist/esm/funcs/metricsStreamMetrics.js +89 -0
  189. package/dist/esm/funcs/metricsStreamMetrics.js.map +1 -0
  190. package/dist/esm/funcs/recordsAppend.js +2 -0
  191. package/dist/esm/funcs/recordsAppend.js.map +1 -1
  192. package/dist/esm/funcs/recordsCheckTail.js +2 -0
  193. package/dist/esm/funcs/recordsCheckTail.js.map +1 -1
  194. package/dist/esm/funcs/recordsRead.js +2 -0
  195. package/dist/esm/funcs/recordsRead.js.map +1 -1
  196. package/dist/esm/funcs/streamsCreateOrReconfigureStream.js +2 -0
  197. package/dist/esm/funcs/streamsCreateOrReconfigureStream.js.map +1 -1
  198. package/dist/esm/funcs/streamsCreateStream.js +2 -0
  199. package/dist/esm/funcs/streamsCreateStream.js.map +1 -1
  200. package/dist/esm/funcs/streamsDeleteStream.js +2 -0
  201. package/dist/esm/funcs/streamsDeleteStream.js.map +1 -1
  202. package/dist/esm/funcs/streamsGetStreamConfig.js +2 -0
  203. package/dist/esm/funcs/streamsGetStreamConfig.js.map +1 -1
  204. package/dist/esm/funcs/streamsListStreams.js +2 -0
  205. package/dist/esm/funcs/streamsListStreams.js.map +1 -1
  206. package/dist/esm/funcs/streamsReconfigureStream.js +2 -0
  207. package/dist/esm/funcs/streamsReconfigureStream.js.map +1 -1
  208. package/dist/esm/hooks/types.d.ts +2 -0
  209. package/dist/esm/hooks/types.d.ts.map +1 -1
  210. package/dist/esm/index.d.ts +2 -0
  211. package/dist/esm/index.d.ts.map +1 -1
  212. package/dist/esm/index.js +1 -0
  213. package/dist/esm/index.js.map +1 -1
  214. package/dist/esm/lib/config.d.ts +7 -3
  215. package/dist/esm/lib/config.d.ts.map +1 -1
  216. package/dist/esm/lib/config.js +3 -3
  217. package/dist/esm/lib/config.js.map +1 -1
  218. package/dist/esm/lib/sdks.d.ts +1 -0
  219. package/dist/esm/lib/sdks.d.ts.map +1 -1
  220. package/dist/esm/lib/sdks.js +3 -3
  221. package/dist/esm/lib/sdks.js.map +1 -1
  222. package/dist/esm/mcp-server/mcp-server.js +1 -1
  223. package/dist/esm/mcp-server/server.d.ts.map +1 -1
  224. package/dist/esm/mcp-server/server.js +7 -1
  225. package/dist/esm/mcp-server/server.js.map +1 -1
  226. package/dist/esm/mcp-server/tools/metricsAccountMetrics.d.ts +8 -0
  227. package/dist/esm/mcp-server/tools/metricsAccountMetrics.d.ts.map +1 -0
  228. package/dist/esm/mcp-server/tools/metricsAccountMetrics.js +27 -0
  229. package/dist/esm/mcp-server/tools/metricsAccountMetrics.js.map +1 -0
  230. package/dist/esm/mcp-server/tools/metricsBasinMetrics.d.ts +8 -0
  231. package/dist/esm/mcp-server/tools/metricsBasinMetrics.d.ts.map +1 -0
  232. package/dist/esm/mcp-server/tools/metricsBasinMetrics.js +27 -0
  233. package/dist/esm/mcp-server/tools/metricsBasinMetrics.js.map +1 -0
  234. package/dist/esm/mcp-server/tools/metricsStreamMetrics.d.ts +8 -0
  235. package/dist/esm/mcp-server/tools/metricsStreamMetrics.d.ts.map +1 -0
  236. package/dist/esm/mcp-server/tools/metricsStreamMetrics.js +27 -0
  237. package/dist/esm/mcp-server/tools/metricsStreamMetrics.js.map +1 -0
  238. package/dist/esm/models/components/accountmetricset.d.ts +28 -0
  239. package/dist/esm/models/components/accountmetricset.d.ts.map +1 -0
  240. package/dist/esm/models/components/accountmetricset.js +24 -0
  241. package/dist/esm/models/components/accountmetricset.js.map +1 -0
  242. package/dist/esm/models/components/accumulation.d.ts +72 -0
  243. package/dist/esm/models/components/accumulation.d.ts.map +1 -0
  244. package/dist/esm/models/components/accumulation.js +70 -0
  245. package/dist/esm/models/components/accumulation.js.map +1 -0
  246. package/dist/esm/models/components/basinmetricset.d.ts +40 -0
  247. package/dist/esm/models/components/basinmetricset.d.ts.map +1 -0
  248. package/dist/esm/models/components/basinmetricset.js +28 -0
  249. package/dist/esm/models/components/basinmetricset.js.map +1 -0
  250. package/dist/esm/models/components/gauge.d.ts +68 -0
  251. package/dist/esm/models/components/gauge.d.ts.map +1 -0
  252. package/dist/esm/models/components/gauge.js +58 -0
  253. package/dist/esm/models/components/gauge.js.map +1 -0
  254. package/dist/esm/models/components/index.d.ts +10 -0
  255. package/dist/esm/models/components/index.d.ts.map +1 -1
  256. package/dist/esm/models/components/index.js +10 -0
  257. package/dist/esm/models/components/index.js.map +1 -1
  258. package/dist/esm/models/components/label.d.ts +37 -0
  259. package/dist/esm/models/components/label.d.ts.map +1 -0
  260. package/dist/esm/models/components/label.js +34 -0
  261. package/dist/esm/models/components/label.js.map +1 -0
  262. package/dist/esm/models/components/metric.d.ts +144 -0
  263. package/dist/esm/models/components/metric.d.ts.map +1 -0
  264. package/dist/esm/models/components/metric.js +146 -0
  265. package/dist/esm/models/components/metric.js.map +1 -0
  266. package/dist/esm/models/components/metricsetresponse.d.ts +33 -0
  267. package/dist/esm/models/components/metricsetresponse.d.ts.map +1 -0
  268. package/dist/esm/models/components/metricsetresponse.js +32 -0
  269. package/dist/esm/models/components/metricsetresponse.js.map +1 -0
  270. package/dist/esm/models/components/metricunit.d.ts +28 -0
  271. package/dist/esm/models/components/metricunit.d.ts.map +1 -0
  272. package/dist/esm/models/components/metricunit.js +25 -0
  273. package/dist/esm/models/components/metricunit.js.map +1 -0
  274. package/dist/esm/models/components/operation.d.ts +9 -0
  275. package/dist/esm/models/components/operation.d.ts.map +1 -1
  276. package/dist/esm/models/components/operation.js +3 -0
  277. package/dist/esm/models/components/operation.js.map +1 -1
  278. package/dist/esm/models/components/readevent.d.ts +67 -17
  279. package/dist/esm/models/components/readevent.d.ts.map +1 -1
  280. package/dist/esm/models/components/readevent.js +83 -24
  281. package/dist/esm/models/components/readevent.js.map +1 -1
  282. package/dist/esm/models/components/scalar.d.ts +40 -0
  283. package/dist/esm/models/components/scalar.d.ts.map +1 -0
  284. package/dist/esm/models/components/scalar.js +37 -0
  285. package/dist/esm/models/components/scalar.js.map +1 -0
  286. package/dist/esm/models/components/timeseriesinterval.d.ts +31 -0
  287. package/dist/esm/models/components/timeseriesinterval.d.ts.map +1 -0
  288. package/dist/esm/models/components/timeseriesinterval.js +25 -0
  289. package/dist/esm/models/components/timeseriesinterval.js.map +1 -0
  290. package/dist/esm/models/errors/appendconditionfailed.d.ts +4 -4
  291. package/dist/esm/models/errors/appendconditionfailed.js +1 -1
  292. package/dist/esm/models/operations/accountmetrics.d.ts +48 -0
  293. package/dist/esm/models/operations/accountmetrics.d.ts.map +1 -0
  294. package/dist/esm/models/operations/accountmetrics.js +38 -0
  295. package/dist/esm/models/operations/accountmetrics.js.map +1 -0
  296. package/dist/esm/models/operations/basinmetrics.d.ts +53 -0
  297. package/dist/esm/models/operations/basinmetrics.d.ts.map +1 -0
  298. package/dist/esm/models/operations/basinmetrics.js +40 -0
  299. package/dist/esm/models/operations/basinmetrics.js.map +1 -0
  300. package/dist/esm/models/operations/index.d.ts +3 -0
  301. package/dist/esm/models/operations/index.d.ts.map +1 -1
  302. package/dist/esm/models/operations/index.js +3 -0
  303. package/dist/esm/models/operations/index.js.map +1 -1
  304. package/dist/esm/models/operations/streammetrics.d.ts +37 -0
  305. package/dist/esm/models/operations/streammetrics.d.ts.map +1 -0
  306. package/dist/esm/models/operations/streammetrics.js +33 -0
  307. package/dist/esm/models/operations/streammetrics.js.map +1 -0
  308. package/dist/esm/sdk/metrics.d.ts +18 -0
  309. package/dist/esm/sdk/metrics.d.ts.map +1 -0
  310. package/dist/esm/sdk/metrics.js +29 -0
  311. package/dist/esm/sdk/metrics.js.map +1 -0
  312. package/dist/esm/sdk/sdk.d.ts +3 -0
  313. package/dist/esm/sdk/sdk.d.ts.map +1 -1
  314. package/dist/esm/sdk/sdk.js +4 -0
  315. package/dist/esm/sdk/sdk.js.map +1 -1
  316. package/docs/sdks/metrics/README.md +247 -0
  317. package/jsr.json +1 -1
  318. package/package.json +1 -1
  319. package/src/funcs/accessTokensIssueAccessToken.ts +2 -0
  320. package/src/funcs/accessTokensListAccessTokens.ts +2 -0
  321. package/src/funcs/accessTokensRevokeAccessToken.ts +2 -0
  322. package/src/funcs/basinsCreateBasin.ts +2 -0
  323. package/src/funcs/basinsCreateOrReconfigureBasin.ts +2 -0
  324. package/src/funcs/basinsDeleteBasin.ts +2 -0
  325. package/src/funcs/basinsGetBasinConfig.ts +2 -0
  326. package/src/funcs/basinsListBasins.ts +2 -0
  327. package/src/funcs/basinsReconfigureBasin.ts +2 -0
  328. package/src/funcs/metricsAccountMetrics.ts +170 -0
  329. package/src/funcs/metricsBasinMetrics.ts +177 -0
  330. package/src/funcs/metricsStreamMetrics.ts +173 -0
  331. package/src/funcs/recordsAppend.ts +2 -0
  332. package/src/funcs/recordsCheckTail.ts +2 -0
  333. package/src/funcs/recordsRead.ts +2 -0
  334. package/src/funcs/streamsCreateOrReconfigureStream.ts +2 -0
  335. package/src/funcs/streamsCreateStream.ts +2 -0
  336. package/src/funcs/streamsDeleteStream.ts +2 -0
  337. package/src/funcs/streamsGetStreamConfig.ts +2 -0
  338. package/src/funcs/streamsListStreams.ts +2 -0
  339. package/src/funcs/streamsReconfigureStream.ts +2 -0
  340. package/src/hooks/types.ts +2 -0
  341. package/src/index.ts +2 -0
  342. package/src/lib/config.ts +7 -3
  343. package/src/lib/sdks.ts +10 -4
  344. package/src/mcp-server/mcp-server.ts +1 -1
  345. package/src/mcp-server/server.ts +7 -1
  346. package/src/mcp-server/tools/metricsAccountMetrics.ts +36 -0
  347. package/src/mcp-server/tools/metricsBasinMetrics.ts +36 -0
  348. package/src/mcp-server/tools/metricsStreamMetrics.ts +36 -0
  349. package/src/models/components/accountmetricset.ts +33 -0
  350. package/src/models/components/accumulation.ts +150 -0
  351. package/src/models/components/basinmetricset.ts +37 -0
  352. package/src/models/components/gauge.ts +131 -0
  353. package/src/models/components/index.ts +10 -0
  354. package/src/models/components/label.ts +69 -0
  355. package/src/models/components/metric.ts +302 -0
  356. package/src/models/components/metricsetresponse.ts +75 -0
  357. package/src/models/components/metricunit.ts +31 -0
  358. package/src/models/components/operation.ts +3 -0
  359. package/src/models/components/readevent.ts +135 -32
  360. package/src/models/components/scalar.ts +78 -0
  361. package/src/models/components/timeseriesinterval.ts +34 -0
  362. package/src/models/errors/appendconditionfailed.ts +4 -4
  363. package/src/models/operations/accountmetrics.ts +91 -0
  364. package/src/models/operations/basinmetrics.ts +98 -0
  365. package/src/models/operations/index.ts +3 -0
  366. package/src/models/operations/streammetrics.ts +76 -0
  367. package/src/sdk/metrics.ts +55 -0
  368. package/src/sdk/sdk.ts +6 -0
@@ -0,0 +1,177 @@
1
+ /*
2
+ * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
3
+ */
4
+
5
+ import { S2Core } from "../core.js";
6
+ import { encodeFormQuery, encodeSimple } from "../lib/encodings.js";
7
+ import * as M from "../lib/matchers.js";
8
+ import { compactMap } from "../lib/primitives.js";
9
+ import { safeParse } from "../lib/schemas.js";
10
+ import { RequestOptions } from "../lib/sdks.js";
11
+ import { extractSecurity, resolveGlobalSecurity } from "../lib/security.js";
12
+ import { pathToFunc } from "../lib/url.js";
13
+ import * as components from "../models/components/index.js";
14
+ import { APIError } from "../models/errors/apierror.js";
15
+ import {
16
+ ConnectionError,
17
+ InvalidRequestError,
18
+ RequestAbortedError,
19
+ RequestTimeoutError,
20
+ UnexpectedClientError,
21
+ } from "../models/errors/httpclienterrors.js";
22
+ import * as errors from "../models/errors/index.js";
23
+ import { SDKValidationError } from "../models/errors/sdkvalidationerror.js";
24
+ import * as operations from "../models/operations/index.js";
25
+ import { APICall, APIPromise } from "../types/async.js";
26
+ import { Result } from "../types/fp.js";
27
+
28
+ /**
29
+ * Get metrics for a basin.
30
+ */
31
+ export function metricsBasinMetrics(
32
+ client: S2Core,
33
+ request: operations.BasinMetricsRequest,
34
+ options?: RequestOptions,
35
+ ): APIPromise<
36
+ Result<
37
+ components.MetricSetResponse,
38
+ | errors.ErrorResponse
39
+ | APIError
40
+ | SDKValidationError
41
+ | UnexpectedClientError
42
+ | InvalidRequestError
43
+ | RequestAbortedError
44
+ | RequestTimeoutError
45
+ | ConnectionError
46
+ >
47
+ > {
48
+ return new APIPromise($do(
49
+ client,
50
+ request,
51
+ options,
52
+ ));
53
+ }
54
+
55
+ async function $do(
56
+ client: S2Core,
57
+ request: operations.BasinMetricsRequest,
58
+ options?: RequestOptions,
59
+ ): Promise<
60
+ [
61
+ Result<
62
+ components.MetricSetResponse,
63
+ | errors.ErrorResponse
64
+ | APIError
65
+ | SDKValidationError
66
+ | UnexpectedClientError
67
+ | InvalidRequestError
68
+ | RequestAbortedError
69
+ | RequestTimeoutError
70
+ | ConnectionError
71
+ >,
72
+ APICall,
73
+ ]
74
+ > {
75
+ const parsed = safeParse(
76
+ request,
77
+ (value) => operations.BasinMetricsRequest$outboundSchema.parse(value),
78
+ "Input validation failed",
79
+ );
80
+ if (!parsed.ok) {
81
+ return [parsed, { status: "invalid" }];
82
+ }
83
+ const payload = parsed.value;
84
+ const body = null;
85
+
86
+ const pathParams = {
87
+ basin: encodeSimple("basin", payload.basin, {
88
+ explode: false,
89
+ charEncoding: "percent",
90
+ }),
91
+ };
92
+
93
+ const path = pathToFunc("/metrics/{basin}")(pathParams);
94
+
95
+ const query = encodeFormQuery({
96
+ "end": payload.end,
97
+ "interval": payload.interval,
98
+ "set": payload.set,
99
+ "start": payload.start,
100
+ });
101
+
102
+ const headers = new Headers(compactMap({
103
+ Accept: "application/json",
104
+ }));
105
+
106
+ const secConfig = await extractSecurity(client._options.accessToken);
107
+ const securityInput = secConfig == null ? {} : { accessToken: secConfig };
108
+ const requestSecurity = resolveGlobalSecurity(securityInput);
109
+
110
+ const context = {
111
+ options: client._options,
112
+ baseURL: options?.serverURL ?? client._baseURL ?? "",
113
+ operationID: "basin_metrics",
114
+ oAuth2Scopes: [],
115
+
116
+ resolvedSecurity: requestSecurity,
117
+
118
+ securitySource: client._options.accessToken,
119
+ retryConfig: options?.retries
120
+ || client._options.retryConfig
121
+ || { strategy: "none" },
122
+ retryCodes: options?.retryCodes || ["429", "500", "502", "503", "504"],
123
+ };
124
+
125
+ const requestRes = client._createRequest(context, {
126
+ security: requestSecurity,
127
+ method: "GET",
128
+ baseURL: options?.serverURL,
129
+ path: path,
130
+ headers: headers,
131
+ query: query,
132
+ body: body,
133
+ userAgent: client._options.userAgent,
134
+ timeoutMs: options?.timeoutMs || client._options.timeoutMs || -1,
135
+ }, options);
136
+ if (!requestRes.ok) {
137
+ return [requestRes, { status: "invalid" }];
138
+ }
139
+ const req = requestRes.value;
140
+
141
+ const doResult = await client._do(req, {
142
+ context,
143
+ errorCodes: ["400", "403", "4XX", "5XX"],
144
+ retryConfig: context.retryConfig,
145
+ retryCodes: context.retryCodes,
146
+ });
147
+ if (!doResult.ok) {
148
+ return [doResult, { status: "request-error", request: req }];
149
+ }
150
+ const response = doResult.value;
151
+
152
+ const responseFields = {
153
+ HttpMeta: { Response: response, Request: req },
154
+ };
155
+
156
+ const [result] = await M.match<
157
+ components.MetricSetResponse,
158
+ | errors.ErrorResponse
159
+ | APIError
160
+ | SDKValidationError
161
+ | UnexpectedClientError
162
+ | InvalidRequestError
163
+ | RequestAbortedError
164
+ | RequestTimeoutError
165
+ | ConnectionError
166
+ >(
167
+ M.json(200, components.MetricSetResponse$inboundSchema),
168
+ M.jsonErr([400, 403], errors.ErrorResponse$inboundSchema),
169
+ M.fail("4XX"),
170
+ M.fail("5XX"),
171
+ )(response, { extraFields: responseFields });
172
+ if (!result.ok) {
173
+ return [result, { status: "complete", request: req, response }];
174
+ }
175
+
176
+ return [result, { status: "complete", request: req, response }];
177
+ }
@@ -0,0 +1,173 @@
1
+ /*
2
+ * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
3
+ */
4
+
5
+ import { S2Core } from "../core.js";
6
+ import { encodeSimple } from "../lib/encodings.js";
7
+ import * as M from "../lib/matchers.js";
8
+ import { compactMap } from "../lib/primitives.js";
9
+ import { safeParse } from "../lib/schemas.js";
10
+ import { RequestOptions } from "../lib/sdks.js";
11
+ import { extractSecurity, resolveGlobalSecurity } from "../lib/security.js";
12
+ import { pathToFunc } from "../lib/url.js";
13
+ import * as components from "../models/components/index.js";
14
+ import { APIError } from "../models/errors/apierror.js";
15
+ import {
16
+ ConnectionError,
17
+ InvalidRequestError,
18
+ RequestAbortedError,
19
+ RequestTimeoutError,
20
+ UnexpectedClientError,
21
+ } from "../models/errors/httpclienterrors.js";
22
+ import * as errors from "../models/errors/index.js";
23
+ import { SDKValidationError } from "../models/errors/sdkvalidationerror.js";
24
+ import * as operations from "../models/operations/index.js";
25
+ import { APICall, APIPromise } from "../types/async.js";
26
+ import { Result } from "../types/fp.js";
27
+
28
+ /**
29
+ * Get metrics for a stream.
30
+ */
31
+ export function metricsStreamMetrics(
32
+ client: S2Core,
33
+ request: operations.StreamMetricsRequest,
34
+ options?: RequestOptions,
35
+ ): APIPromise<
36
+ Result<
37
+ components.MetricSetResponse,
38
+ | errors.ErrorResponse
39
+ | APIError
40
+ | SDKValidationError
41
+ | UnexpectedClientError
42
+ | InvalidRequestError
43
+ | RequestAbortedError
44
+ | RequestTimeoutError
45
+ | ConnectionError
46
+ >
47
+ > {
48
+ return new APIPromise($do(
49
+ client,
50
+ request,
51
+ options,
52
+ ));
53
+ }
54
+
55
+ async function $do(
56
+ client: S2Core,
57
+ request: operations.StreamMetricsRequest,
58
+ options?: RequestOptions,
59
+ ): Promise<
60
+ [
61
+ Result<
62
+ components.MetricSetResponse,
63
+ | errors.ErrorResponse
64
+ | APIError
65
+ | SDKValidationError
66
+ | UnexpectedClientError
67
+ | InvalidRequestError
68
+ | RequestAbortedError
69
+ | RequestTimeoutError
70
+ | ConnectionError
71
+ >,
72
+ APICall,
73
+ ]
74
+ > {
75
+ const parsed = safeParse(
76
+ request,
77
+ (value) => operations.StreamMetricsRequest$outboundSchema.parse(value),
78
+ "Input validation failed",
79
+ );
80
+ if (!parsed.ok) {
81
+ return [parsed, { status: "invalid" }];
82
+ }
83
+ const payload = parsed.value;
84
+ const body = null;
85
+
86
+ const pathParams = {
87
+ basin: encodeSimple("basin", payload.basin, {
88
+ explode: false,
89
+ charEncoding: "percent",
90
+ }),
91
+ stream: encodeSimple("stream", payload.stream, {
92
+ explode: false,
93
+ charEncoding: "percent",
94
+ }),
95
+ };
96
+
97
+ const path = pathToFunc("/metrics/{basin}/{stream}")(pathParams);
98
+
99
+ const headers = new Headers(compactMap({
100
+ Accept: "application/json",
101
+ }));
102
+
103
+ const secConfig = await extractSecurity(client._options.accessToken);
104
+ const securityInput = secConfig == null ? {} : { accessToken: secConfig };
105
+ const requestSecurity = resolveGlobalSecurity(securityInput);
106
+
107
+ const context = {
108
+ options: client._options,
109
+ baseURL: options?.serverURL ?? client._baseURL ?? "",
110
+ operationID: "stream_metrics",
111
+ oAuth2Scopes: [],
112
+
113
+ resolvedSecurity: requestSecurity,
114
+
115
+ securitySource: client._options.accessToken,
116
+ retryConfig: options?.retries
117
+ || client._options.retryConfig
118
+ || { strategy: "none" },
119
+ retryCodes: options?.retryCodes || ["429", "500", "502", "503", "504"],
120
+ };
121
+
122
+ const requestRes = client._createRequest(context, {
123
+ security: requestSecurity,
124
+ method: "GET",
125
+ baseURL: options?.serverURL,
126
+ path: path,
127
+ headers: headers,
128
+ body: body,
129
+ userAgent: client._options.userAgent,
130
+ timeoutMs: options?.timeoutMs || client._options.timeoutMs || -1,
131
+ }, options);
132
+ if (!requestRes.ok) {
133
+ return [requestRes, { status: "invalid" }];
134
+ }
135
+ const req = requestRes.value;
136
+
137
+ const doResult = await client._do(req, {
138
+ context,
139
+ errorCodes: ["400", "403", "4XX", "5XX"],
140
+ retryConfig: context.retryConfig,
141
+ retryCodes: context.retryCodes,
142
+ });
143
+ if (!doResult.ok) {
144
+ return [doResult, { status: "request-error", request: req }];
145
+ }
146
+ const response = doResult.value;
147
+
148
+ const responseFields = {
149
+ HttpMeta: { Response: response, Request: req },
150
+ };
151
+
152
+ const [result] = await M.match<
153
+ components.MetricSetResponse,
154
+ | errors.ErrorResponse
155
+ | APIError
156
+ | SDKValidationError
157
+ | UnexpectedClientError
158
+ | InvalidRequestError
159
+ | RequestAbortedError
160
+ | RequestTimeoutError
161
+ | ConnectionError
162
+ >(
163
+ M.json(200, components.MetricSetResponse$inboundSchema),
164
+ M.jsonErr([400, 403], errors.ErrorResponse$inboundSchema),
165
+ M.fail("4XX"),
166
+ M.fail("5XX"),
167
+ )(response, { extraFields: responseFields });
168
+ if (!result.ok) {
169
+ return [result, { status: "complete", request: req, response }];
170
+ }
171
+
172
+ return [result, { status: "complete", request: req, response }];
173
+ }
@@ -123,6 +123,7 @@ async function $do(
123
123
  const requestSecurity = resolveGlobalSecurity(securityInput);
124
124
 
125
125
  const context = {
126
+ options: client._options,
126
127
  baseURL: baseURL ?? "",
127
128
  operationID: "append",
128
129
  oAuth2Scopes: [],
@@ -143,6 +144,7 @@ async function $do(
143
144
  path: path,
144
145
  headers: headers,
145
146
  body: body,
147
+ userAgent: client._options.userAgent,
146
148
  timeoutMs: options?.timeoutMs || client._options.timeoutMs || -1,
147
149
  }, options);
148
150
  if (!requestRes.ok) {
@@ -116,6 +116,7 @@ async function $do(
116
116
  const requestSecurity = resolveGlobalSecurity(securityInput);
117
117
 
118
118
  const context = {
119
+ options: client._options,
119
120
  baseURL: baseURL ?? "",
120
121
  operationID: "check_tail",
121
122
  oAuth2Scopes: [],
@@ -136,6 +137,7 @@ async function $do(
136
137
  path: path,
137
138
  headers: headers,
138
139
  body: body,
140
+ userAgent: client._options.userAgent,
139
141
  timeoutMs: options?.timeoutMs || client._options.timeoutMs || -1,
140
142
  }, options);
141
143
  if (!requestRes.ok) {
@@ -135,6 +135,7 @@ async function $do(
135
135
  const requestSecurity = resolveGlobalSecurity(securityInput);
136
136
 
137
137
  const context = {
138
+ options: client._options,
138
139
  baseURL: baseURL ?? "",
139
140
  operationID: "read",
140
141
  oAuth2Scopes: [],
@@ -156,6 +157,7 @@ async function $do(
156
157
  headers: headers,
157
158
  query: query,
158
159
  body: body,
160
+ userAgent: client._options.userAgent,
159
161
  timeoutMs: options?.timeoutMs || client._options.timeoutMs || -1,
160
162
  }, options);
161
163
  if (!requestRes.ok) {
@@ -120,6 +120,7 @@ async function $do(
120
120
  const requestSecurity = resolveGlobalSecurity(securityInput);
121
121
 
122
122
  const context = {
123
+ options: client._options,
123
124
  baseURL: baseURL ?? "",
124
125
  operationID: "create_or_reconfigure_stream",
125
126
  oAuth2Scopes: [],
@@ -140,6 +141,7 @@ async function $do(
140
141
  path: path,
141
142
  headers: headers,
142
143
  body: body,
144
+ userAgent: client._options.userAgent,
143
145
  timeoutMs: options?.timeoutMs || client._options.timeoutMs || -1,
144
146
  }, options);
145
147
  if (!requestRes.ok) {
@@ -107,6 +107,7 @@ async function $do(
107
107
  const requestSecurity = resolveGlobalSecurity(securityInput);
108
108
 
109
109
  const context = {
110
+ options: client._options,
110
111
  baseURL: baseURL ?? "",
111
112
  operationID: "create_stream",
112
113
  oAuth2Scopes: [],
@@ -127,6 +128,7 @@ async function $do(
127
128
  path: path,
128
129
  headers: headers,
129
130
  body: body,
131
+ userAgent: client._options.userAgent,
130
132
  timeoutMs: options?.timeoutMs || client._options.timeoutMs || -1,
131
133
  }, options);
132
134
  if (!requestRes.ok) {
@@ -111,6 +111,7 @@ async function $do(
111
111
  const requestSecurity = resolveGlobalSecurity(securityInput);
112
112
 
113
113
  const context = {
114
+ options: client._options,
114
115
  baseURL: baseURL ?? "",
115
116
  operationID: "delete_stream",
116
117
  oAuth2Scopes: [],
@@ -131,6 +132,7 @@ async function $do(
131
132
  path: path,
132
133
  headers: headers,
133
134
  body: body,
135
+ userAgent: client._options.userAgent,
134
136
  timeoutMs: options?.timeoutMs || client._options.timeoutMs || -1,
135
137
  }, options);
136
138
  if (!requestRes.ok) {
@@ -111,6 +111,7 @@ async function $do(
111
111
  const requestSecurity = resolveGlobalSecurity(securityInput);
112
112
 
113
113
  const context = {
114
+ options: client._options,
114
115
  baseURL: baseURL ?? "",
115
116
  operationID: "get_stream_config",
116
117
  oAuth2Scopes: [],
@@ -131,6 +132,7 @@ async function $do(
131
132
  path: path,
132
133
  headers: headers,
133
134
  body: body,
135
+ userAgent: client._options.userAgent,
134
136
  timeoutMs: options?.timeoutMs || client._options.timeoutMs || -1,
135
137
  }, options);
136
138
  if (!requestRes.ok) {
@@ -122,6 +122,7 @@ async function $do(
122
122
  const requestSecurity = resolveGlobalSecurity(securityInput);
123
123
 
124
124
  const context = {
125
+ options: client._options,
125
126
  baseURL: baseURL ?? "",
126
127
  operationID: "list_streams",
127
128
  oAuth2Scopes: [],
@@ -143,6 +144,7 @@ async function $do(
143
144
  headers: headers,
144
145
  query: query,
145
146
  body: body,
147
+ userAgent: client._options.userAgent,
146
148
  timeoutMs: options?.timeoutMs || client._options.timeoutMs || -1,
147
149
  }, options);
148
150
  if (!requestRes.ok) {
@@ -114,6 +114,7 @@ async function $do(
114
114
  const requestSecurity = resolveGlobalSecurity(securityInput);
115
115
 
116
116
  const context = {
117
+ options: client._options,
117
118
  baseURL: baseURL ?? "",
118
119
  operationID: "reconfigure_stream",
119
120
  oAuth2Scopes: [],
@@ -134,6 +135,7 @@ async function $do(
134
135
  path: path,
135
136
  headers: headers,
136
137
  body: body,
138
+ userAgent: client._options.userAgent,
137
139
  timeoutMs: options?.timeoutMs || client._options.timeoutMs || -1,
138
140
  }, options);
139
141
  if (!requestRes.ok) {
@@ -2,6 +2,7 @@
2
2
  * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
3
3
  */
4
4
 
5
+ import { SDKOptions } from "../lib/config.js";
5
6
  import { HTTPClient, RequestInput } from "../lib/http.js";
6
7
  import { RetryConfig } from "../lib/retries.js";
7
8
  import { SecurityState } from "../lib/security.js";
@@ -13,6 +14,7 @@ export type HookContext = {
13
14
  securitySource?: any | (() => Promise<any>);
14
15
  retryConfig: RetryConfig;
15
16
  resolvedSecurity: SecurityState | null;
17
+ options: SDKOptions;
16
18
  };
17
19
 
18
20
  export type Awaitable<T> = T | Promise<T>;
package/src/index.ts CHANGED
@@ -4,6 +4,8 @@
4
4
 
5
5
  export * from "./lib/config.js";
6
6
  export * as files from "./lib/files.js";
7
+ export { HTTPClient } from "./lib/http.js";
8
+ export type { Fetcher, HTTPClientOptions } from "./lib/http.js";
7
9
  export * from "./sdk/sdk.js";
8
10
 
9
11
  export * from "./index.extras.js";
package/src/lib/config.ts CHANGED
@@ -26,6 +26,10 @@ export type SDKOptions = {
26
26
  * Allows overriding the default server URL used by the SDK
27
27
  */
28
28
  serverURL?: string | undefined;
29
+ /**
30
+ * Allows overriding the default user agent used by the SDK
31
+ */
32
+ userAgent?: string | undefined;
29
33
  /**
30
34
  * Allows overriding the default retry config used by the SDK
31
35
  */
@@ -54,8 +58,8 @@ export function serverURLFromOptions(options: SDKOptions): URL | null {
54
58
  export const SDK_METADATA = {
55
59
  language: "typescript",
56
60
  openapiDocVersion: "1.0.0",
57
- sdkVersion: "0.14.0",
58
- genVersion: "2.610.0",
61
+ sdkVersion: "0.15.0",
62
+ genVersion: "2.618.0",
59
63
  userAgent:
60
- "speakeasy-sdk/typescript 0.14.0 2.610.0 1.0.0 @s2-dev/streamstore",
64
+ "speakeasy-sdk/typescript 0.15.0 2.618.0 1.0.0 @s2-dev/streamstore",
61
65
  } as const;
package/src/lib/sdks.ts CHANGED
@@ -65,6 +65,7 @@ type RequestConfig = {
65
65
  headers?: HeadersInit;
66
66
  security?: SecurityState | null;
67
67
  uaHeader?: string;
68
+ userAgent?: string | undefined;
68
69
  timeoutMs?: number;
69
70
  };
70
71
 
@@ -96,19 +97,21 @@ export class ClientSDK {
96
97
  } else {
97
98
  this.#hooks = new SDKHooks();
98
99
  }
99
- this._options = { ...options, hooks: this.#hooks };
100
-
101
100
  const url = serverURLFromOptions(options);
102
101
  if (url) {
103
102
  url.pathname = url.pathname.replace(/\/+$/, "") + "/";
104
103
  }
104
+
105
105
  const { baseURL, client } = this.#hooks.sdkInit({
106
106
  baseURL: url,
107
107
  client: options.httpClient || new HTTPClient(),
108
108
  });
109
109
  this._baseURL = baseURL;
110
110
  this.#httpClient = client;
111
- this.#logger = options.debugLogger;
111
+
112
+ this._options = { ...options, hooks: this.#hooks };
113
+
114
+ this.#logger = this._options.debugLogger;
112
115
  if (!this.#logger && env().S2_DEBUG) {
113
116
  this.#logger = console;
114
117
  }
@@ -184,7 +187,10 @@ export class ClientSDK {
184
187
  // Only set user agent header in non-browser-like environments since CORS
185
188
  // policy disallows setting it in browsers e.g. Chrome throws an error.
186
189
  if (!isBrowserLike) {
187
- headers.set(conf.uaHeader ?? "user-agent", SDK_METADATA.userAgent);
190
+ headers.set(
191
+ conf.uaHeader ?? "user-agent",
192
+ conf.userAgent ?? SDK_METADATA.userAgent,
193
+ );
188
194
  }
189
195
 
190
196
  const fetchOptions: Omit<RequestInit, "method" | "body"> = {
@@ -19,7 +19,7 @@ const routes = buildRouteMap({
19
19
  export const app = buildApplication(routes, {
20
20
  name: "mcp",
21
21
  versionInfo: {
22
- currentVersion: "0.14.0",
22
+ currentVersion: "0.15.0",
23
23
  },
24
24
  });
25
25
 
@@ -22,6 +22,9 @@ import { tool$basinsDeleteBasin } from "./tools/basinsDeleteBasin.js";
22
22
  import { tool$basinsGetBasinConfig } from "./tools/basinsGetBasinConfig.js";
23
23
  import { tool$basinsListBasins } from "./tools/basinsListBasins.js";
24
24
  import { tool$basinsReconfigureBasin } from "./tools/basinsReconfigureBasin.js";
25
+ import { tool$metricsAccountMetrics } from "./tools/metricsAccountMetrics.js";
26
+ import { tool$metricsBasinMetrics } from "./tools/metricsBasinMetrics.js";
27
+ import { tool$metricsStreamMetrics } from "./tools/metricsStreamMetrics.js";
25
28
  import { tool$recordsAppend } from "./tools/recordsAppend.js";
26
29
  import { tool$recordsCheckTail } from "./tools/recordsCheckTail.js";
27
30
  import { tool$recordsRead } from "./tools/recordsRead.js";
@@ -42,7 +45,7 @@ export function createMCPServer(deps: {
42
45
  }) {
43
46
  const server = new McpServer({
44
47
  name: "S2",
45
- version: "0.14.0",
48
+ version: "0.15.0",
46
49
  });
47
50
 
48
51
  const client = new S2Core({
@@ -81,6 +84,9 @@ export function createMCPServer(deps: {
81
84
  tool(tool$basinsCreateOrReconfigureBasin);
82
85
  tool(tool$basinsDeleteBasin);
83
86
  tool(tool$basinsReconfigureBasin);
87
+ tool(tool$metricsAccountMetrics);
88
+ tool(tool$metricsBasinMetrics);
89
+ tool(tool$metricsStreamMetrics);
84
90
  tool(tool$streamsListStreams);
85
91
  tool(tool$streamsCreateStream);
86
92
  tool(tool$streamsGetStreamConfig);
@@ -0,0 +1,36 @@
1
+ /*
2
+ * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
3
+ */
4
+
5
+ import { metricsAccountMetrics } from "../../funcs/metricsAccountMetrics.js";
6
+ import * as operations from "../../models/operations/index.js";
7
+ import { formatResult, ToolDefinition } from "../tools.js";
8
+
9
+ const args = {
10
+ request: operations.AccountMetricsRequest$inboundSchema,
11
+ };
12
+
13
+ export const tool$metricsAccountMetrics: ToolDefinition<typeof args> = {
14
+ name: "metrics-account-metrics",
15
+ description: `Get account level metrics.`,
16
+ scopes: ["read", "read", "read"],
17
+ args,
18
+ tool: async (client, args, ctx) => {
19
+ const [result, apiCall] = await metricsAccountMetrics(
20
+ client,
21
+ args.request,
22
+ { fetchOptions: { signal: ctx.signal } },
23
+ ).$inspect();
24
+
25
+ if (!result.ok) {
26
+ return {
27
+ content: [{ type: "text", text: result.error.message }],
28
+ isError: true,
29
+ };
30
+ }
31
+
32
+ const value = result.value;
33
+
34
+ return formatResult(value, apiCall);
35
+ },
36
+ };