@mastra/react 1.7.3-alpha.3 → 1.8.0-alpha.4

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 (510) hide show
  1. package/dist/accumulator-B1MuNX3j.js +1668 -0
  2. package/dist/accumulator-B1MuNX3j.js.map +1 -0
  3. package/dist/accumulator-CsUGDUHk.cjs +1709 -0
  4. package/dist/accumulator-CsUGDUHk.cjs.map +1 -0
  5. package/dist/agent/hooks.d.ts.map +1 -1
  6. package/dist/agent/user-message.d.ts +4 -0
  7. package/dist/agent/user-message.d.ts.map +1 -0
  8. package/dist/chat/index.cjs +3 -0
  9. package/dist/chat/index.d.ts +3 -0
  10. package/dist/chat/index.d.ts.map +1 -0
  11. package/dist/chat/index.js +2 -0
  12. package/dist/feedback-refetch-interval-DLHzQoVV.js +12 -0
  13. package/dist/feedback-refetch-interval-DLHzQoVV.js.map +1 -0
  14. package/dist/feedback-refetch-interval-XD5FVc2k.cjs +17 -0
  15. package/dist/feedback-refetch-interval-XD5FVc2k.cjs.map +1 -0
  16. package/dist/hooks/agents/index.cjs +988 -0
  17. package/dist/hooks/agents/index.cjs.map +1 -0
  18. package/dist/hooks/agents/index.d.ts +19 -0
  19. package/dist/hooks/agents/index.d.ts.map +1 -0
  20. package/dist/hooks/agents/index.js +952 -0
  21. package/dist/hooks/agents/index.js.map +1 -0
  22. package/dist/hooks/agents/is-model-not-allowed.d.ts +15 -0
  23. package/dist/hooks/agents/is-model-not-allowed.d.ts.map +1 -0
  24. package/dist/hooks/agents/use-agent-messages.d.ts +18 -0
  25. package/dist/hooks/agents/use-agent-messages.d.ts.map +1 -0
  26. package/dist/hooks/agents/use-agent-plan.d.ts +14 -0
  27. package/dist/hooks/agents/use-agent-plan.d.ts.map +1 -0
  28. package/dist/hooks/agents/use-agent-skills.d.ts +2021 -0
  29. package/dist/hooks/agents/use-agent-skills.d.ts.map +1 -0
  30. package/dist/hooks/agents/use-agent-versions.d.ts +72 -0
  31. package/dist/hooks/agents/use-agent-versions.d.ts.map +1 -0
  32. package/dist/hooks/agents/use-agent-working-memory.d.ts +11 -0
  33. package/dist/hooks/agents/use-agent-working-memory.d.ts.map +1 -0
  34. package/dist/hooks/agents/use-agent-workspace.d.ts +2022 -0
  35. package/dist/hooks/agents/use-agent-workspace.d.ts.map +1 -0
  36. package/dist/hooks/agents/use-agent.d.ts +12 -0
  37. package/dist/hooks/agents/use-agent.d.ts.map +1 -0
  38. package/dist/hooks/agents/use-agents-model-providers.d.ts +9 -0
  39. package/dist/hooks/agents/use-agents-model-providers.d.ts.map +1 -0
  40. package/dist/hooks/agents/use-agents.d.ts +28 -0
  41. package/dist/hooks/agents/use-agents.d.ts.map +1 -0
  42. package/dist/hooks/agents/use-background-tasks.d.ts +51 -0
  43. package/dist/hooks/agents/use-background-tasks.d.ts.map +1 -0
  44. package/dist/hooks/agents/use-browser-session-probe.d.ts +34 -0
  45. package/dist/hooks/agents/use-browser-session-probe.d.ts.map +1 -0
  46. package/dist/hooks/agents/use-channels.d.ts +34 -0
  47. package/dist/hooks/agents/use-channels.d.ts.map +1 -0
  48. package/dist/hooks/agents/use-close-browser.d.ts +17 -0
  49. package/dist/hooks/agents/use-close-browser.d.ts.map +1 -0
  50. package/dist/hooks/agents/use-execute-agent-tool.d.ts +14 -0
  51. package/dist/hooks/agents/use-execute-agent-tool.d.ts.map +1 -0
  52. package/dist/hooks/agents/use-preview-instructions.d.ts +20 -0
  53. package/dist/hooks/agents/use-preview-instructions.d.ts.map +1 -0
  54. package/dist/hooks/agents/use-stored-agents.d.ts +8023 -0
  55. package/dist/hooks/agents/use-stored-agents.d.ts.map +1 -0
  56. package/dist/hooks/agents/use-stored-skills.d.ts +8 -0
  57. package/dist/hooks/agents/use-stored-skills.d.ts.map +1 -0
  58. package/dist/hooks/auth/fetch-with-refresh.d.ts +28 -0
  59. package/dist/hooks/auth/fetch-with-refresh.d.ts.map +1 -0
  60. package/dist/hooks/auth/get-client-query-key.d.ts +7 -0
  61. package/dist/hooks/auth/get-client-query-key.d.ts.map +1 -0
  62. package/dist/hooks/auth/index.cjs +492 -0
  63. package/dist/hooks/auth/index.cjs.map +1 -0
  64. package/dist/hooks/auth/index.d.ts +11 -0
  65. package/dist/hooks/auth/index.d.ts.map +1 -0
  66. package/dist/hooks/auth/index.js +474 -0
  67. package/dist/hooks/auth/index.js.map +1 -0
  68. package/dist/hooks/auth/sso-login.d.ts +8 -0
  69. package/dist/hooks/auth/sso-login.d.ts.map +1 -0
  70. package/dist/hooks/auth/types.d.ts +107 -0
  71. package/dist/hooks/auth/types.d.ts.map +1 -0
  72. package/dist/hooks/auth/use-auth-actions.d.ts +99 -0
  73. package/dist/hooks/auth/use-auth-actions.d.ts.map +1 -0
  74. package/dist/hooks/auth/use-auth-capabilities.d.ts +43 -0
  75. package/dist/hooks/auth/use-auth-capabilities.d.ts.map +1 -0
  76. package/dist/hooks/auth/use-credentials-login.d.ts +63 -0
  77. package/dist/hooks/auth/use-credentials-login.d.ts.map +1 -0
  78. package/dist/hooks/auth/use-credentials-signup.d.ts +66 -0
  79. package/dist/hooks/auth/use-credentials-signup.d.ts.map +1 -0
  80. package/dist/hooks/auth/use-current-user.d.ts +40 -0
  81. package/dist/hooks/auth/use-current-user.d.ts.map +1 -0
  82. package/dist/hooks/auth/use-permission-patterns.d.ts +24 -0
  83. package/dist/hooks/auth/use-permission-patterns.d.ts.map +1 -0
  84. package/dist/hooks/capabilities/index.cjs +47 -0
  85. package/dist/hooks/capabilities/index.cjs.map +1 -0
  86. package/dist/hooks/capabilities/index.d.ts +4 -0
  87. package/dist/hooks/capabilities/index.d.ts.map +1 -0
  88. package/dist/hooks/capabilities/index.js +44 -0
  89. package/dist/hooks/capabilities/index.js.map +1 -0
  90. package/dist/hooks/capabilities/use-feedback-available.d.ts +9 -0
  91. package/dist/hooks/capabilities/use-feedback-available.d.ts.map +1 -0
  92. package/dist/hooks/capabilities/use-observability-capabilities.d.ts +9 -0
  93. package/dist/hooks/capabilities/use-observability-capabilities.d.ts.map +1 -0
  94. package/dist/hooks/capabilities/use-trace-query-available.d.ts +9 -0
  95. package/dist/hooks/capabilities/use-trace-query-available.d.ts.map +1 -0
  96. package/dist/hooks/configuration/index.cjs +18 -0
  97. package/dist/hooks/configuration/index.cjs.map +1 -0
  98. package/dist/hooks/configuration/index.d.ts +2 -0
  99. package/dist/hooks/configuration/index.d.ts.map +1 -0
  100. package/dist/hooks/configuration/index.js +17 -0
  101. package/dist/hooks/configuration/index.js.map +1 -0
  102. package/dist/hooks/configuration/use-mastra-packages.d.ts +9 -0
  103. package/dist/hooks/configuration/use-mastra-packages.d.ts.map +1 -0
  104. package/dist/hooks/datasets/index.cjs +615 -0
  105. package/dist/hooks/datasets/index.cjs.map +1 -0
  106. package/dist/hooks/datasets/index.d.ts +10 -0
  107. package/dist/hooks/datasets/index.d.ts.map +1 -0
  108. package/dist/hooks/datasets/index.js +600 -0
  109. package/dist/hooks/datasets/index.js.map +1 -0
  110. package/dist/hooks/datasets/use-compare-experiments.d.ts +23 -0
  111. package/dist/hooks/datasets/use-compare-experiments.d.ts.map +1 -0
  112. package/dist/hooks/datasets/use-dataset-experiments.d.ts +49 -0
  113. package/dist/hooks/datasets/use-dataset-experiments.d.ts.map +1 -0
  114. package/dist/hooks/datasets/use-dataset-item-versions.d.ts +31 -0
  115. package/dist/hooks/datasets/use-dataset-item-versions.d.ts.map +1 -0
  116. package/dist/hooks/datasets/use-dataset-items.d.ts +38 -0
  117. package/dist/hooks/datasets/use-dataset-items.d.ts.map +1 -0
  118. package/dist/hooks/datasets/use-dataset-mutations.d.ts +362 -0
  119. package/dist/hooks/datasets/use-dataset-mutations.d.ts.map +1 -0
  120. package/dist/hooks/datasets/use-dataset-versions.d.ts +23 -0
  121. package/dist/hooks/datasets/use-dataset-versions.d.ts.map +1 -0
  122. package/dist/hooks/datasets/use-datasets.d.ts +44 -0
  123. package/dist/hooks/datasets/use-datasets.d.ts.map +1 -0
  124. package/dist/hooks/datasets/use-experiments.d.ts +16 -0
  125. package/dist/hooks/datasets/use-experiments.d.ts.map +1 -0
  126. package/dist/hooks/datasets/use-workflow-schema.d.ts +16 -0
  127. package/dist/hooks/datasets/use-workflow-schema.d.ts.map +1 -0
  128. package/dist/hooks/embedders/index.cjs +19 -0
  129. package/dist/hooks/embedders/index.cjs.map +1 -0
  130. package/dist/hooks/embedders/index.d.ts +2 -0
  131. package/dist/hooks/embedders/index.d.ts.map +1 -0
  132. package/dist/hooks/embedders/index.js +18 -0
  133. package/dist/hooks/embedders/index.js.map +1 -0
  134. package/dist/hooks/embedders/use-embedders.d.ts +17 -0
  135. package/dist/hooks/embedders/use-embedders.d.ts.map +1 -0
  136. package/dist/hooks/experiments/index.cjs +152 -0
  137. package/dist/hooks/experiments/index.cjs.map +1 -0
  138. package/dist/hooks/experiments/index.d.ts +5 -0
  139. package/dist/hooks/experiments/index.d.ts.map +1 -0
  140. package/dist/hooks/experiments/index.js +146 -0
  141. package/dist/hooks/experiments/index.js.map +1 -0
  142. package/dist/hooks/experiments/use-experiment-metrics.d.ts +30 -0
  143. package/dist/hooks/experiments/use-experiment-metrics.d.ts.map +1 -0
  144. package/dist/hooks/experiments/use-experiment-trace.d.ts +13 -0
  145. package/dist/hooks/experiments/use-experiment-trace.d.ts.map +1 -0
  146. package/dist/hooks/experiments/use-experiments-for-dataset-filter.d.ts +22 -0
  147. package/dist/hooks/experiments/use-experiments-for-dataset-filter.d.ts.map +1 -0
  148. package/dist/hooks/experiments/use-infinite-experiments.d.ts +22 -0
  149. package/dist/hooks/experiments/use-infinite-experiments.d.ts.map +1 -0
  150. package/dist/hooks/feedback/feedback-refetch-interval.d.ts +7 -0
  151. package/dist/hooks/feedback/feedback-refetch-interval.d.ts.map +1 -0
  152. package/dist/hooks/feedback/index.cjs +22 -0
  153. package/dist/hooks/feedback/index.cjs.map +1 -0
  154. package/dist/hooks/feedback/index.d.ts +3 -0
  155. package/dist/hooks/feedback/index.d.ts.map +1 -0
  156. package/dist/hooks/feedback/index.js +20 -0
  157. package/dist/hooks/feedback/index.js.map +1 -0
  158. package/dist/hooks/feedback/use-feedback.d.ts +56 -0
  159. package/dist/hooks/feedback/use-feedback.d.ts.map +1 -0
  160. package/dist/hooks/llm/index.cjs +17 -0
  161. package/dist/hooks/llm/index.cjs.map +1 -0
  162. package/dist/hooks/llm/index.d.ts +2 -0
  163. package/dist/hooks/llm/index.d.ts.map +1 -0
  164. package/dist/hooks/llm/index.js +16 -0
  165. package/dist/hooks/llm/index.js.map +1 -0
  166. package/dist/hooks/llm/use-llm-providers.d.ts +7 -0
  167. package/dist/hooks/llm/use-llm-providers.d.ts.map +1 -0
  168. package/dist/hooks/logs/index.cjs +84 -0
  169. package/dist/hooks/logs/index.cjs.map +1 -0
  170. package/dist/hooks/logs/index.d.ts +4 -0
  171. package/dist/hooks/logs/index.d.ts.map +1 -0
  172. package/dist/hooks/logs/index.js +82 -0
  173. package/dist/hooks/logs/index.js.map +1 -0
  174. package/dist/hooks/logs/types.d.ts +36 -0
  175. package/dist/hooks/logs/types.d.ts.map +1 -0
  176. package/dist/hooks/logs/use-logs.d.ts +79 -0
  177. package/dist/hooks/logs/use-logs.d.ts.map +1 -0
  178. package/dist/hooks/mcps/index.cjs +215 -0
  179. package/dist/hooks/mcps/index.cjs.map +1 -0
  180. package/dist/hooks/mcps/index.d.ts +7 -0
  181. package/dist/hooks/mcps/index.d.ts.map +1 -0
  182. package/dist/hooks/mcps/index.js +208 -0
  183. package/dist/hooks/mcps/index.js.map +1 -0
  184. package/dist/hooks/mcps/use-mcp-app-tools.d.ts +21 -0
  185. package/dist/hooks/mcps/use-mcp-app-tools.d.ts.map +1 -0
  186. package/dist/hooks/mcps/use-mcp-server-tool.d.ts +25 -0
  187. package/dist/hooks/mcps/use-mcp-server-tool.d.ts.map +1 -0
  188. package/dist/hooks/mcps/use-mcp-server-tools-by-id.d.ts +13 -0
  189. package/dist/hooks/mcps/use-mcp-server-tools-by-id.d.ts.map +1 -0
  190. package/dist/hooks/mcps/use-mcp-server-tools.d.ts +9 -0
  191. package/dist/hooks/mcps/use-mcp-server-tools.d.ts.map +1 -0
  192. package/dist/hooks/mcps/use-mcp-servers.d.ts +8 -0
  193. package/dist/hooks/mcps/use-mcp-servers.d.ts.map +1 -0
  194. package/dist/hooks/mcps/use-try-connect-mcp.d.ts +15 -0
  195. package/dist/hooks/mcps/use-try-connect-mcp.d.ts.map +1 -0
  196. package/dist/hooks/memory/index.cjs +328 -0
  197. package/dist/hooks/memory/index.cjs.map +1 -0
  198. package/dist/hooks/memory/index.d.ts +5 -0
  199. package/dist/hooks/memory/index.d.ts.map +1 -0
  200. package/dist/hooks/memory/index.js +312 -0
  201. package/dist/hooks/memory/index.js.map +1 -0
  202. package/dist/hooks/memory/use-memory-status.d.ts +12 -0
  203. package/dist/hooks/memory/use-memory-status.d.ts.map +1 -0
  204. package/dist/hooks/memory/use-memory-thread-messages.d.ts +13 -0
  205. package/dist/hooks/memory/use-memory-thread-messages.d.ts.map +1 -0
  206. package/dist/hooks/memory/use-memory.d.ts +159 -0
  207. package/dist/hooks/memory/use-memory.d.ts.map +1 -0
  208. package/dist/hooks/memory/use-observational-memory.d.ts +13 -0
  209. package/dist/hooks/memory/use-observational-memory.d.ts.map +1 -0
  210. package/dist/hooks/metrics/index.cjs +997 -0
  211. package/dist/hooks/metrics/index.cjs.map +1 -0
  212. package/dist/hooks/metrics/index.d.ts +16 -0
  213. package/dist/hooks/metrics/index.d.ts.map +1 -0
  214. package/dist/hooks/metrics/index.js +981 -0
  215. package/dist/hooks/metrics/index.js.map +1 -0
  216. package/dist/hooks/metrics/metrics-interval.d.ts +8 -0
  217. package/dist/hooks/metrics/metrics-interval.d.ts.map +1 -0
  218. package/dist/hooks/metrics/metrics-query-filters.d.ts +62 -0
  219. package/dist/hooks/metrics/metrics-query-filters.d.ts.map +1 -0
  220. package/dist/hooks/metrics/use-active-resources-kpi-metrics.d.ts +12 -0
  221. package/dist/hooks/metrics/use-active-resources-kpi-metrics.d.ts.map +1 -0
  222. package/dist/hooks/metrics/use-active-threads-kpi-metrics.d.ts +12 -0
  223. package/dist/hooks/metrics/use-active-threads-kpi-metrics.d.ts.map +1 -0
  224. package/dist/hooks/metrics/use-agent-runs-kpi-metrics.d.ts +9 -0
  225. package/dist/hooks/metrics/use-agent-runs-kpi-metrics.d.ts.map +1 -0
  226. package/dist/hooks/metrics/use-latency-metrics.d.ts +23 -0
  227. package/dist/hooks/metrics/use-latency-metrics.d.ts.map +1 -0
  228. package/dist/hooks/metrics/use-model-cost-kpi-metrics.d.ts +14 -0
  229. package/dist/hooks/metrics/use-model-cost-kpi-metrics.d.ts.map +1 -0
  230. package/dist/hooks/metrics/use-model-usage-cost-metrics.d.ts +16 -0
  231. package/dist/hooks/metrics/use-model-usage-cost-metrics.d.ts.map +1 -0
  232. package/dist/hooks/metrics/use-scores-metrics.d.ts +24 -0
  233. package/dist/hooks/metrics/use-scores-metrics.d.ts.map +1 -0
  234. package/dist/hooks/metrics/use-token-usage-by-agent-metrics.d.ts +15 -0
  235. package/dist/hooks/metrics/use-token-usage-by-agent-metrics.d.ts.map +1 -0
  236. package/dist/hooks/metrics/use-token-usage-timeseries.d.ts +22 -0
  237. package/dist/hooks/metrics/use-token-usage-timeseries.d.ts.map +1 -0
  238. package/dist/hooks/metrics/use-top-active-threads-metrics.d.ts +21 -0
  239. package/dist/hooks/metrics/use-top-active-threads-metrics.d.ts.map +1 -0
  240. package/dist/hooks/metrics/use-top-resources-by-threads-metrics.d.ts +20 -0
  241. package/dist/hooks/metrics/use-top-resources-by-threads-metrics.d.ts.map +1 -0
  242. package/dist/hooks/metrics/use-total-tokens-kpi-metrics.d.ts +13 -0
  243. package/dist/hooks/metrics/use-total-tokens-kpi-metrics.d.ts.map +1 -0
  244. package/dist/hooks/metrics/use-trace-volume-metrics.d.ts +17 -0
  245. package/dist/hooks/metrics/use-trace-volume-metrics.d.ts.map +1 -0
  246. package/dist/hooks/processors/index.cjs +43 -0
  247. package/dist/hooks/processors/index.cjs.map +1 -0
  248. package/dist/hooks/processors/index.d.ts +2 -0
  249. package/dist/hooks/processors/index.d.ts.map +1 -0
  250. package/dist/hooks/processors/index.js +40 -0
  251. package/dist/hooks/processors/index.js.map +1 -0
  252. package/dist/hooks/processors/use-processors.d.ts +64 -0
  253. package/dist/hooks/processors/use-processors.d.ts.map +1 -0
  254. package/dist/hooks/prompt-blocks/index.cjs +181 -0
  255. package/dist/hooks/prompt-blocks/index.cjs.map +1 -0
  256. package/dist/hooks/prompt-blocks/index.d.ts +3 -0
  257. package/dist/hooks/prompt-blocks/index.d.ts.map +1 -0
  258. package/dist/hooks/prompt-blocks/index.js +172 -0
  259. package/dist/hooks/prompt-blocks/index.js.map +1 -0
  260. package/dist/hooks/prompt-blocks/use-prompt-block-versions.d.ts +59 -0
  261. package/dist/hooks/prompt-blocks/use-prompt-block-versions.d.ts.map +1 -0
  262. package/dist/hooks/prompt-blocks/use-stored-prompt-blocks.d.ts +180 -0
  263. package/dist/hooks/prompt-blocks/use-stored-prompt-blocks.d.ts.map +1 -0
  264. package/dist/hooks/query/index.cjs +34 -0
  265. package/dist/hooks/query/index.cjs.map +1 -0
  266. package/dist/hooks/query/index.d.ts +4 -0
  267. package/dist/hooks/query/index.d.ts.map +1 -0
  268. package/dist/hooks/query/index.js +25 -0
  269. package/dist/hooks/query/index.js.map +1 -0
  270. package/dist/hooks/query/query-client-provider.d.ts +8 -0
  271. package/dist/hooks/query/query-client-provider.d.ts.map +1 -0
  272. package/dist/hooks/query/query-utils.d.ts +48 -0
  273. package/dist/hooks/query/query-utils.d.ts.map +1 -0
  274. package/dist/hooks/review/index.cjs +89 -0
  275. package/dist/hooks/review/index.cjs.map +1 -0
  276. package/dist/hooks/review/index.d.ts +4 -0
  277. package/dist/hooks/review/index.d.ts.map +1 -0
  278. package/dist/hooks/review/index.js +86 -0
  279. package/dist/hooks/review/index.js.map +1 -0
  280. package/dist/hooks/review/types.d.ts +21 -0
  281. package/dist/hooks/review/types.d.ts.map +1 -0
  282. package/dist/hooks/review/use-dataset-review-items.d.ts +19 -0
  283. package/dist/hooks/review/use-dataset-review-items.d.ts.map +1 -0
  284. package/dist/hooks/review/use-review-summary.d.ts +9 -0
  285. package/dist/hooks/review/use-review-summary.d.ts.map +1 -0
  286. package/dist/hooks/schedules/index.cjs +110 -0
  287. package/dist/hooks/schedules/index.cjs.map +1 -0
  288. package/dist/hooks/schedules/index.d.ts +5 -0
  289. package/dist/hooks/schedules/index.d.ts.map +1 -0
  290. package/dist/hooks/schedules/index.js +106 -0
  291. package/dist/hooks/schedules/index.js.map +1 -0
  292. package/dist/hooks/schedules/use-schedule-triggers.d.ts +18 -0
  293. package/dist/hooks/schedules/use-schedule-triggers.d.ts.map +1 -0
  294. package/dist/hooks/schedules/use-schedule.d.ts +11 -0
  295. package/dist/hooks/schedules/use-schedule.d.ts.map +1 -0
  296. package/dist/hooks/schedules/use-schedules.d.ts +7 -0
  297. package/dist/hooks/schedules/use-schedules.d.ts.map +1 -0
  298. package/dist/hooks/schedules/use-toggle-schedule.d.ts +13 -0
  299. package/dist/hooks/schedules/use-toggle-schedule.d.ts.map +1 -0
  300. package/dist/hooks/scores/index.cjs +339 -0
  301. package/dist/hooks/scores/index.cjs.map +1 -0
  302. package/dist/hooks/scores/index.d.ts +6 -0
  303. package/dist/hooks/scores/index.d.ts.map +1 -0
  304. package/dist/hooks/scores/index.js +323 -0
  305. package/dist/hooks/scores/index.js.map +1 -0
  306. package/dist/hooks/scores/use-scorer-versions.d.ts +71 -0
  307. package/dist/hooks/scores/use-scorer-versions.d.ts.map +1 -0
  308. package/dist/hooks/scores/use-scorers.d.ts +34 -0
  309. package/dist/hooks/scores/use-scorers.d.ts.map +1 -0
  310. package/dist/hooks/scores/use-stored-scorers.d.ts +151 -0
  311. package/dist/hooks/scores/use-stored-scorers.d.ts.map +1 -0
  312. package/dist/hooks/scores/use-trace-span-scores.d.ts +20 -0
  313. package/dist/hooks/scores/use-trace-span-scores.d.ts.map +1 -0
  314. package/dist/hooks/scores/use-trigger-scorer.d.ts +17 -0
  315. package/dist/hooks/scores/use-trigger-scorer.d.ts.map +1 -0
  316. package/dist/hooks/shared/cost.d.ts +7 -0
  317. package/dist/hooks/shared/cost.d.ts.map +1 -0
  318. package/dist/hooks/shared/date-format.d.ts +30 -0
  319. package/dist/hooks/shared/date-format.d.ts.map +1 -0
  320. package/dist/hooks/shared/map.d.ts +2 -0
  321. package/dist/hooks/shared/map.d.ts.map +1 -0
  322. package/dist/hooks/shared/query-options.d.ts +19 -0
  323. package/dist/hooks/shared/query-options.d.ts.map +1 -0
  324. package/dist/hooks/shared/use-in-view.d.ts +23 -0
  325. package/dist/hooks/shared/use-in-view.d.ts.map +1 -0
  326. package/dist/hooks/templates/index.cjs +464 -0
  327. package/dist/hooks/templates/index.cjs.map +1 -0
  328. package/dist/hooks/templates/index.d.ts +2 -0
  329. package/dist/hooks/templates/index.d.ts.map +1 -0
  330. package/dist/hooks/templates/index.js +456 -0
  331. package/dist/hooks/templates/index.js.map +1 -0
  332. package/dist/hooks/templates/use-templates.d.ts +139 -0
  333. package/dist/hooks/templates/use-templates.d.ts.map +1 -0
  334. package/dist/hooks/tool-providers/index.cjs +342 -0
  335. package/dist/hooks/tool-providers/index.cjs.map +1 -0
  336. package/dist/hooks/tool-providers/index.d.ts +10 -0
  337. package/dist/hooks/tool-providers/index.d.ts.map +1 -0
  338. package/dist/hooks/tool-providers/index.js +332 -0
  339. package/dist/hooks/tool-providers/index.js.map +1 -0
  340. package/dist/hooks/tool-providers/use-all-connections.d.ts +41 -0
  341. package/dist/hooks/tool-providers/use-all-connections.d.ts.map +1 -0
  342. package/dist/hooks/tool-providers/use-all-provider-tools.d.ts +25 -0
  343. package/dist/hooks/tool-providers/use-all-provider-tools.d.ts.map +1 -0
  344. package/dist/hooks/tool-providers/use-authorize.d.ts +45 -0
  345. package/dist/hooks/tool-providers/use-authorize.d.ts.map +1 -0
  346. package/dist/hooks/tool-providers/use-disconnect-connection.d.ts +24 -0
  347. package/dist/hooks/tool-providers/use-disconnect-connection.d.ts.map +1 -0
  348. package/dist/hooks/tool-providers/use-existing-connections.d.ts +33 -0
  349. package/dist/hooks/tool-providers/use-existing-connections.d.ts.map +1 -0
  350. package/dist/hooks/tool-providers/use-provider-tools.d.ts +17 -0
  351. package/dist/hooks/tool-providers/use-provider-tools.d.ts.map +1 -0
  352. package/dist/hooks/tool-providers/use-tool-providers.d.ts +23 -0
  353. package/dist/hooks/tool-providers/use-tool-providers.d.ts.map +1 -0
  354. package/dist/hooks/tool-providers/use-toolkits.d.ts +13 -0
  355. package/dist/hooks/tool-providers/use-toolkits.d.ts.map +1 -0
  356. package/dist/hooks/tool-providers/use-update-connection.d.ts +24 -0
  357. package/dist/hooks/tool-providers/use-update-connection.d.ts.map +1 -0
  358. package/dist/hooks/tools/index.cjs +49 -0
  359. package/dist/hooks/tools/index.cjs.map +1 -0
  360. package/dist/hooks/tools/index.d.ts +3 -0
  361. package/dist/hooks/tools/index.d.ts.map +1 -0
  362. package/dist/hooks/tools/index.js +46 -0
  363. package/dist/hooks/tools/index.js.map +1 -0
  364. package/dist/hooks/tools/use-all-tools.d.ts +16 -0
  365. package/dist/hooks/tools/use-all-tools.d.ts.map +1 -0
  366. package/dist/hooks/tools/use-execute-tool.d.ts +13 -0
  367. package/dist/hooks/tools/use-execute-tool.d.ts.map +1 -0
  368. package/dist/hooks/traces/discovery-cache.d.ts +12 -0
  369. package/dist/hooks/traces/discovery-cache.d.ts.map +1 -0
  370. package/dist/hooks/traces/index.cjs +1168 -0
  371. package/dist/hooks/traces/index.cjs.map +1 -0
  372. package/dist/hooks/traces/index.d.ts +22 -0
  373. package/dist/hooks/traces/index.d.ts.map +1 -0
  374. package/dist/hooks/traces/index.js +1129 -0
  375. package/dist/hooks/traces/index.js.map +1 -0
  376. package/dist/hooks/traces/types.d.ts +20 -0
  377. package/dist/hooks/traces/types.d.ts.map +1 -0
  378. package/dist/hooks/traces/use-branch.d.ts +18 -0
  379. package/dist/hooks/traces/use-branch.d.ts.map +1 -0
  380. package/dist/hooks/traces/use-create-feedback.d.ts +21 -0
  381. package/dist/hooks/traces/use-create-feedback.d.ts.map +1 -0
  382. package/dist/hooks/traces/use-delete-feedback.d.ts +21 -0
  383. package/dist/hooks/traces/use-delete-feedback.d.ts.map +1 -0
  384. package/dist/hooks/traces/use-entity-names.d.ts +14 -0
  385. package/dist/hooks/traces/use-entity-names.d.ts.map +1 -0
  386. package/dist/hooks/traces/use-environments.d.ts +10 -0
  387. package/dist/hooks/traces/use-environments.d.ts.map +1 -0
  388. package/dist/hooks/traces/use-service-names.d.ts +10 -0
  389. package/dist/hooks/traces/use-service-names.d.ts.map +1 -0
  390. package/dist/hooks/traces/use-span-detail.d.ts +14 -0
  391. package/dist/hooks/traces/use-span-detail.d.ts.map +1 -0
  392. package/dist/hooks/traces/use-span-feedback.d.ts +19 -0
  393. package/dist/hooks/traces/use-span-feedback.d.ts.map +1 -0
  394. package/dist/hooks/traces/use-tags.d.ts +10 -0
  395. package/dist/hooks/traces/use-tags.d.ts.map +1 -0
  396. package/dist/hooks/traces/use-thread-has-other-traces.d.ts +17 -0
  397. package/dist/hooks/traces/use-thread-has-other-traces.d.ts.map +1 -0
  398. package/dist/hooks/traces/use-trace-column-preferences-storage-key.d.ts +6 -0
  399. package/dist/hooks/traces/use-trace-column-preferences-storage-key.d.ts.map +1 -0
  400. package/dist/hooks/traces/use-trace-feedback.d.ts +16 -0
  401. package/dist/hooks/traces/use-trace-feedback.d.ts.map +1 -0
  402. package/dist/hooks/traces/use-trace-light-spans.d.ts +16 -0
  403. package/dist/hooks/traces/use-trace-light-spans.d.ts.map +1 -0
  404. package/dist/hooks/traces/use-trace-metadata-filter-fields.d.ts +36 -0
  405. package/dist/hooks/traces/use-trace-metadata-filter-fields.d.ts.map +1 -0
  406. package/dist/hooks/traces/use-trace-or-branch-spans.d.ts +39 -0
  407. package/dist/hooks/traces/use-trace-or-branch-spans.d.ts.map +1 -0
  408. package/dist/hooks/traces/use-trace-query.d.ts +57 -0
  409. package/dist/hooks/traces/use-trace-query.d.ts.map +1 -0
  410. package/dist/hooks/traces/use-trace-spans.d.ts +46 -0
  411. package/dist/hooks/traces/use-trace-spans.d.ts.map +1 -0
  412. package/dist/hooks/traces/use-trace-usage.d.ts +10 -0
  413. package/dist/hooks/traces/use-trace-usage.d.ts.map +1 -0
  414. package/dist/hooks/traces/use-traces.d.ts +292 -0
  415. package/dist/hooks/traces/use-traces.d.ts.map +1 -0
  416. package/dist/hooks/vectors/index.cjs +19 -0
  417. package/dist/hooks/vectors/index.cjs.map +1 -0
  418. package/dist/hooks/vectors/index.d.ts +2 -0
  419. package/dist/hooks/vectors/index.d.ts.map +1 -0
  420. package/dist/hooks/vectors/index.js +18 -0
  421. package/dist/hooks/vectors/index.js.map +1 -0
  422. package/dist/hooks/vectors/use-vectors.d.ts +14 -0
  423. package/dist/hooks/vectors/use-vectors.d.ts.map +1 -0
  424. package/dist/hooks/voice/index.cjs +87 -0
  425. package/dist/hooks/voice/index.cjs.map +1 -0
  426. package/dist/hooks/voice/index.d.ts +2 -0
  427. package/dist/hooks/voice/index.d.ts.map +1 -0
  428. package/dist/hooks/voice/index.js +86 -0
  429. package/dist/hooks/voice/index.js.map +1 -0
  430. package/dist/hooks/voice/use-read-aloud.d.ts +20 -0
  431. package/dist/hooks/voice/use-read-aloud.d.ts.map +1 -0
  432. package/dist/hooks/workflows/index.cjs +173 -0
  433. package/dist/hooks/workflows/index.cjs.map +1 -0
  434. package/dist/hooks/workflows/index.d.ts +7 -0
  435. package/dist/hooks/workflows/index.d.ts.map +1 -0
  436. package/dist/hooks/workflows/index.js +157 -0
  437. package/dist/hooks/workflows/index.js.map +1 -0
  438. package/dist/hooks/workflows/use-workflow-runs.d.ts +51 -0
  439. package/dist/hooks/workflows/use-workflow-runs.d.ts.map +1 -0
  440. package/dist/hooks/workflows/use-workflow.d.ts +14 -0
  441. package/dist/hooks/workflows/use-workflow.d.ts.map +1 -0
  442. package/dist/hooks/workflows/use-workflows-run-counts.d.ts +25 -0
  443. package/dist/hooks/workflows/use-workflows-run-counts.d.ts.map +1 -0
  444. package/dist/hooks/workflows/use-workflows.d.ts +10 -0
  445. package/dist/hooks/workflows/use-workflows.d.ts.map +1 -0
  446. package/dist/hooks/workspace/client-utils.d.ts +5 -0
  447. package/dist/hooks/workspace/client-utils.d.ts.map +1 -0
  448. package/dist/hooks/workspace/compatibility.d.ts +22 -0
  449. package/dist/hooks/workspace/compatibility.d.ts.map +1 -0
  450. package/dist/hooks/workspace/file-type.d.ts +7 -0
  451. package/dist/hooks/workspace/file-type.d.ts.map +1 -0
  452. package/dist/hooks/workspace/index.cjs +624 -0
  453. package/dist/hooks/workspace/index.cjs.map +1 -0
  454. package/dist/hooks/workspace/index.d.ts +11 -0
  455. package/dist/hooks/workspace/index.d.ts.map +1 -0
  456. package/dist/hooks/workspace/index.js +594 -0
  457. package/dist/hooks/workspace/index.js.map +1 -0
  458. package/dist/hooks/workspace/types.d.ts +199 -0
  459. package/dist/hooks/workspace/types.d.ts.map +1 -0
  460. package/dist/hooks/workspace/use-skills-sh.d.ts +104 -0
  461. package/dist/hooks/workspace/use-skills-sh.d.ts.map +1 -0
  462. package/dist/hooks/workspace/use-stored-workspaces.d.ts +12 -0
  463. package/dist/hooks/workspace/use-stored-workspaces.d.ts.map +1 -0
  464. package/dist/hooks/workspace/use-workspace-directory.d.ts +13 -0
  465. package/dist/hooks/workspace/use-workspace-directory.d.ts.map +1 -0
  466. package/dist/hooks/workspace/use-workspace-file-content.d.ts +15 -0
  467. package/dist/hooks/workspace/use-workspace-file-content.d.ts.map +1 -0
  468. package/dist/hooks/workspace/use-workspace-search.d.ts +20 -0
  469. package/dist/hooks/workspace/use-workspace-search.d.ts.map +1 -0
  470. package/dist/hooks/workspace/use-workspace-skills.d.ts +23 -0
  471. package/dist/hooks/workspace/use-workspace-skills.d.ts.map +1 -0
  472. package/dist/hooks/workspace/use-workspace.d.ts +56 -0
  473. package/dist/hooks/workspace/use-workspace.d.ts.map +1 -0
  474. package/dist/hooks-BFQK_s4g.js +1231 -0
  475. package/dist/hooks-BFQK_s4g.js.map +1 -0
  476. package/dist/hooks-CMjizg6y.cjs +1248 -0
  477. package/dist/hooks-CMjizg6y.cjs.map +1 -0
  478. package/dist/hooks-CjULNHpJ.js +252 -0
  479. package/dist/hooks-CjULNHpJ.js.map +1 -0
  480. package/dist/hooks-DsDYaJ3T.cjs +269 -0
  481. package/dist/hooks-DsDYaJ3T.cjs.map +1 -0
  482. package/dist/index.cjs +21 -3434
  483. package/dist/index.cjs.map +1 -1
  484. package/dist/index.d.ts +1 -0
  485. package/dist/index.d.ts.map +1 -1
  486. package/dist/index.js +6 -3419
  487. package/dist/index.js.map +1 -1
  488. package/dist/lib/mastra-db/fromCoreUserMessage.d.ts +3 -4
  489. package/dist/lib/mastra-db/fromCoreUserMessage.d.ts.map +1 -1
  490. package/dist/map-CDv4fbu4.js +12 -0
  491. package/dist/map-CDv4fbu4.js.map +1 -0
  492. package/dist/map-wjmL1y5O.cjs +17 -0
  493. package/dist/map-wjmL1y5O.cjs.map +1 -0
  494. package/dist/mastra-client-context-Bx_g84YB.js +50 -0
  495. package/dist/mastra-client-context-Bx_g84YB.js.map +1 -0
  496. package/dist/mastra-client-context-DzX3f0RF.cjs +61 -0
  497. package/dist/mastra-client-context-DzX3f0RF.cjs.map +1 -0
  498. package/dist/query-utils-CcrChYgz.cjs +174 -0
  499. package/dist/query-utils-CcrChYgz.cjs.map +1 -0
  500. package/dist/query-utils-D1NgFnWU.js +127 -0
  501. package/dist/query-utils-D1NgFnWU.js.map +1 -0
  502. package/dist/use-in-view-B6eJO9Zi.cjs +37 -0
  503. package/dist/use-in-view-B6eJO9Zi.cjs.map +1 -0
  504. package/dist/use-in-view-C9sYPGRm.js +32 -0
  505. package/dist/use-in-view-C9sYPGRm.js.map +1 -0
  506. package/dist/voice-BOtUdMi8.cjs +281 -0
  507. package/dist/voice-BOtUdMi8.cjs.map +1 -0
  508. package/dist/voice-DgirjEyH.js +264 -0
  509. package/dist/voice-DgirjEyH.js.map +1 -0
  510. package/package.json +32 -3
@@ -0,0 +1,215 @@
1
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
+ const require_mastra_client_context = require("../../mastra-client-context-DzX3f0RF.cjs");
3
+ let _tanstack_react_query = require("@tanstack/react-query");
4
+ //#region src/hooks/mcps/use-mcp-app-tools.ts
5
+ /**
6
+ * Builds a map of tool names → MCP App info for tools across all registered
7
+ * MCP servers that have `_meta.ui.resourceUri` (i.e., tools with interactive
8
+ * MCP App UIs).
9
+ *
10
+ * For each app tool, entries are created under both the original tool name
11
+ * and the namespaced name (`${serverId}_${toolName}`) so that agent tools
12
+ * sourced via `MCPClient.listTools()` (which namespaces) can be resolved.
13
+ */
14
+ function useMcpAppTools({ queryOptions } = {}) {
15
+ const client = require_mastra_client_context.useMastraClient();
16
+ return (0, _tanstack_react_query.useQuery)({
17
+ queryKey: ["mcp-app-tools"],
18
+ queryFn: async () => {
19
+ const map = {};
20
+ const { servers } = await client.getMcpServers();
21
+ if (!servers?.length) return map;
22
+ const results = await Promise.allSettled(servers.map(async (server) => {
23
+ const { tools } = await client.getMcpServerTools(server.id);
24
+ return {
25
+ serverId: server.id,
26
+ tools
27
+ };
28
+ }));
29
+ for (const result of results) {
30
+ if (result.status !== "fulfilled") continue;
31
+ const { serverId, tools } = result.value;
32
+ for (const tool of tools) {
33
+ const resourceUri = tool._meta?.ui?.resourceUri;
34
+ if (resourceUri) {
35
+ const toolId = tool.name;
36
+ const info = {
37
+ serverId,
38
+ toolId,
39
+ toolName: tool.name,
40
+ resourceUri
41
+ };
42
+ map[toolId] = info;
43
+ if (tool.name !== toolId) map[tool.name] = info;
44
+ map[`${serverId}_${tool.name}`] = info;
45
+ }
46
+ }
47
+ }
48
+ return map;
49
+ },
50
+ staleTime: 6e4,
51
+ refetchOnWindowFocus: false,
52
+ ...queryOptions
53
+ });
54
+ }
55
+ //#endregion
56
+ //#region src/hooks/mcps/use-mcp-server-tool.ts
57
+ /**
58
+ * Does not guard on empty ids; pass `queryOptions: { enabled }` to skip the fetch.
59
+ */
60
+ const useMCPServerTool = ({ serverId, toolId, requestContext, queryOptions }) => {
61
+ const client = require_mastra_client_context.useMastraClient();
62
+ return (0, _tanstack_react_query.useQuery)({
63
+ queryKey: [
64
+ "mcp-server-tool",
65
+ serverId,
66
+ toolId
67
+ ],
68
+ queryFn: () => {
69
+ return client.getMcpServerTool(serverId, toolId).details(requestContext);
70
+ },
71
+ ...queryOptions
72
+ });
73
+ };
74
+ const useExecuteMCPTool = ({ serverId, toolId, queryOptions }) => {
75
+ const client = require_mastra_client_context.useMastraClient();
76
+ return (0, _tanstack_react_query.useMutation)({
77
+ mutationFn: ({ data, requestContext }) => {
78
+ return client.getMcpServerTool(serverId, toolId).execute({
79
+ data,
80
+ requestContext
81
+ });
82
+ },
83
+ ...queryOptions
84
+ });
85
+ };
86
+ //#endregion
87
+ //#region src/hooks/mcps/use-mcp-server-tools.ts
88
+ const useMCPServerTools = ({ selectedServer, queryOptions }) => {
89
+ const client = require_mastra_client_context.useMastraClient();
90
+ return (0, _tanstack_react_query.useQuery)({
91
+ queryKey: ["mcpserver-tools", selectedServer?.id],
92
+ queryFn: async () => {
93
+ const fetchedToolsArray = (await client.getMcpServerTools(selectedServer?.id)).tools;
94
+ const transformedTools = {};
95
+ fetchedToolsArray.forEach((sdkToolInfo) => {
96
+ transformedTools[sdkToolInfo.name] = sdkToolInfo;
97
+ });
98
+ return transformedTools;
99
+ },
100
+ retry: false,
101
+ refetchOnWindowFocus: false,
102
+ ...queryOptions
103
+ });
104
+ };
105
+ //#endregion
106
+ //#region src/hooks/mcps/use-mcp-server-tools-by-id.ts
107
+ /**
108
+ * Does not guard on empty ids; pass `queryOptions: { enabled }` to skip the fetch.
109
+ */
110
+ const useMCPServerToolsById = ({ serverId, queryOptions }) => {
111
+ const client = require_mastra_client_context.useMastraClient();
112
+ return (0, _tanstack_react_query.useQuery)({
113
+ queryKey: ["mcpserver-tools", serverId],
114
+ queryFn: async () => {
115
+ const response = await client.getMcpServerTools(serverId);
116
+ return Object.fromEntries(response.tools.map((tool) => [tool.name, tool]));
117
+ },
118
+ retry: false,
119
+ refetchOnWindowFocus: false,
120
+ ...queryOptions
121
+ });
122
+ };
123
+ //#endregion
124
+ //#region src/hooks/mcps/use-mcp-servers.ts
125
+ const useMCPServers = ({ requestContext, queryOptions } = {}) => {
126
+ const client = require_mastra_client_context.useMastraClient();
127
+ return (0, _tanstack_react_query.useQuery)({
128
+ queryKey: ["mcp-servers"],
129
+ queryFn: async () => {
130
+ return (await client.getMcpServers(requestContext)).servers;
131
+ },
132
+ ...queryOptions
133
+ });
134
+ };
135
+ //#endregion
136
+ //#region src/hooks/mcps/use-try-connect-mcp.ts
137
+ async function parseResponse(response) {
138
+ if ((response.headers.get("content-type") ?? "").includes("text/event-stream")) {
139
+ const lines = (await response.text()).split("\n");
140
+ for (const line of lines) if (line.startsWith("data:")) {
141
+ const data = line.slice(5).trim();
142
+ if (data) return JSON.parse(data);
143
+ }
144
+ throw new Error("No data found in SSE response");
145
+ }
146
+ return response.json();
147
+ }
148
+ async function connectAndListTools(url, clientHeaders) {
149
+ const baseHeaders = {
150
+ ...clientHeaders,
151
+ "Content-Type": "application/json",
152
+ Accept: "application/json, text/event-stream"
153
+ };
154
+ const initResponse = await fetch(url, {
155
+ method: "POST",
156
+ headers: baseHeaders,
157
+ credentials: "include",
158
+ body: JSON.stringify({
159
+ jsonrpc: "2.0",
160
+ id: 1,
161
+ method: "initialize",
162
+ params: {
163
+ protocolVersion: "2025-03-26",
164
+ capabilities: {},
165
+ clientInfo: {
166
+ name: "mastra-playground",
167
+ version: "1.0.0"
168
+ }
169
+ }
170
+ })
171
+ });
172
+ if (!initResponse.ok) throw new Error(`Initialize failed: ${initResponse.status} ${initResponse.statusText}`);
173
+ const sessionId = initResponse.headers.get("Mcp-Session-Id");
174
+ await parseResponse(initResponse);
175
+ const sessionHeaders = { ...baseHeaders };
176
+ if (sessionId) sessionHeaders["Mcp-Session-Id"] = sessionId;
177
+ await fetch(url, {
178
+ method: "POST",
179
+ headers: sessionHeaders,
180
+ credentials: "include",
181
+ body: JSON.stringify({
182
+ jsonrpc: "2.0",
183
+ method: "notifications/initialized"
184
+ })
185
+ });
186
+ const toolsResponse = await fetch(url, {
187
+ method: "POST",
188
+ headers: sessionHeaders,
189
+ credentials: "include",
190
+ body: JSON.stringify({
191
+ jsonrpc: "2.0",
192
+ id: 2,
193
+ method: "tools/list"
194
+ })
195
+ });
196
+ if (!toolsResponse.ok) throw new Error(`tools/list failed: ${toolsResponse.status} ${toolsResponse.statusText}`);
197
+ return { tools: (await parseResponse(toolsResponse)).result?.tools ?? [] };
198
+ }
199
+ const useTryConnectMcp = ({ queryOptions } = {}) => {
200
+ const clientHeaders = require_mastra_client_context.useMastraClient().options?.headers ?? {};
201
+ return (0, _tanstack_react_query.useMutation)({
202
+ mutationFn: (url) => connectAndListTools(url, clientHeaders),
203
+ ...queryOptions
204
+ });
205
+ };
206
+ //#endregion
207
+ exports.useExecuteMCPTool = useExecuteMCPTool;
208
+ exports.useMCPServerTool = useMCPServerTool;
209
+ exports.useMCPServerTools = useMCPServerTools;
210
+ exports.useMCPServerToolsById = useMCPServerToolsById;
211
+ exports.useMCPServers = useMCPServers;
212
+ exports.useMcpAppTools = useMcpAppTools;
213
+ exports.useTryConnectMcp = useTryConnectMcp;
214
+
215
+ //# sourceMappingURL=index.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.cjs","names":["useMastraClient","useMastraClient","useMastraClient","useMastraClient","useMastraClient","useMastraClient"],"sources":["../../../src/hooks/mcps/use-mcp-app-tools.ts","../../../src/hooks/mcps/use-mcp-server-tool.ts","../../../src/hooks/mcps/use-mcp-server-tools.ts","../../../src/hooks/mcps/use-mcp-server-tools-by-id.ts","../../../src/hooks/mcps/use-mcp-servers.ts","../../../src/hooks/mcps/use-try-connect-mcp.ts"],"sourcesContent":["import type { UseQueryResult } from '@tanstack/react-query';\nimport { useQuery } from '@tanstack/react-query';\nimport { useMastraClient } from '../../mastra-client-context';\nimport type { MastraQueryOptions } from '../shared/query-options';\n\nexport interface McpAppToolInfo {\n serverId: string;\n toolId: string;\n toolName: string;\n resourceUri: string;\n}\n\n/**\n * Builds a map of tool names → MCP App info for tools across all registered\n * MCP servers that have `_meta.ui.resourceUri` (i.e., tools with interactive\n * MCP App UIs).\n *\n * For each app tool, entries are created under both the original tool name\n * and the namespaced name (`${serverId}_${toolName}`) so that agent tools\n * sourced via `MCPClient.listTools()` (which namespaces) can be resolved.\n */\nexport function useMcpAppTools<TData = Record<string, McpAppToolInfo>>({\n queryOptions,\n}: { queryOptions?: MastraQueryOptions<Record<string, McpAppToolInfo>, TData> } = {}): UseQueryResult<TData, Error> {\n const client = useMastraClient();\n\n return useQuery({\n queryKey: ['mcp-app-tools'],\n queryFn: async () => {\n const map: Record<string, McpAppToolInfo> = {};\n\n const { servers } = await client.getMcpServers();\n if (!servers?.length) return map;\n\n const results = await Promise.allSettled(\n servers.map(async server => {\n const { tools } = await client.getMcpServerTools(server.id);\n return { serverId: server.id, tools };\n }),\n );\n\n for (const result of results) {\n if (result.status !== 'fulfilled') continue;\n const { serverId, tools } = result.value;\n for (const tool of tools) {\n const meta = tool._meta as { ui?: { resourceUri?: string } } | undefined;\n const resourceUri = meta?.ui?.resourceUri;\n if (resourceUri) {\n const toolId = tool.name;\n const info: McpAppToolInfo = { serverId, toolId, toolName: tool.name, resourceUri };\n map[toolId] = info;\n if (tool.name !== toolId) {\n map[tool.name] = info;\n }\n // Also map the namespaced name used by MCPClient.listTools()\n map[`${serverId}_${tool.name}`] = info;\n }\n }\n }\n\n return map;\n },\n staleTime: 60_000,\n refetchOnWindowFocus: false,\n ...queryOptions,\n });\n}\n","import type { MastraClient } from '@mastra/client-js';\nimport type { RequestContext } from '@mastra/core/request-context';\nimport { useMutation, useQuery } from '@tanstack/react-query';\nimport type { UseMutationResult, UseQueryResult } from '@tanstack/react-query';\nimport { useMastraClient } from '../../mastra-client-context';\nimport type { MastraMutationOptions, MastraQueryOptions } from '../shared/query-options';\n\ntype MCPServerToolDetails = Awaited<ReturnType<ReturnType<MastraClient['getMcpServerTool']>['details']>>;\n\n/**\n * Does not guard on empty ids; pass `queryOptions: { enabled }` to skip the fetch.\n */\nexport const useMCPServerTool = <TData = MCPServerToolDetails>({\n serverId,\n toolId,\n requestContext,\n queryOptions,\n}: {\n serverId: string;\n toolId: string;\n requestContext?: Record<string, any>;\n queryOptions?: MastraQueryOptions<MCPServerToolDetails, TData>;\n}): UseQueryResult<TData, Error> => {\n const client = useMastraClient();\n\n return useQuery({\n queryKey: ['mcp-server-tool', serverId, toolId],\n queryFn: () => {\n const instance = client.getMcpServerTool(serverId, toolId);\n return instance.details(requestContext);\n },\n ...queryOptions,\n });\n};\n\nexport type ExecuteMCPToolResponse = Awaited<ReturnType<ReturnType<MastraClient['getMcpServerTool']>['execute']>>;\ntype ExecuteMCPToolVariables = { data: any; requestContext?: Record<string, any> };\n\nexport const useExecuteMCPTool = ({\n serverId,\n toolId,\n queryOptions,\n}: {\n serverId: string;\n toolId: string;\n queryOptions?: MastraMutationOptions<ExecuteMCPToolResponse, ExecuteMCPToolVariables>;\n}): UseMutationResult<ExecuteMCPToolResponse, Error, ExecuteMCPToolVariables> => {\n const client = useMastraClient();\n\n return useMutation({\n mutationFn: ({ data, requestContext }: ExecuteMCPToolVariables) => {\n const instance = client.getMcpServerTool(serverId, toolId);\n return instance.execute({ data, requestContext: requestContext as RequestContext });\n },\n ...queryOptions,\n });\n};\n","import type { McpToolInfo as SdkMcpToolInfo } from '@mastra/client-js';\nimport type { ServerInfo } from '@mastra/core/mcp';\nimport type { UseQueryResult } from '@tanstack/react-query';\nimport { useQuery } from '@tanstack/react-query';\nimport { useMastraClient } from '../../mastra-client-context';\nimport type { MastraQueryOptions } from '../shared/query-options';\n\nexport const useMCPServerTools = <TData = Record<string, SdkMcpToolInfo>>({\n selectedServer,\n queryOptions,\n}: {\n selectedServer: ServerInfo;\n queryOptions?: MastraQueryOptions<Record<string, SdkMcpToolInfo>, TData>;\n}): UseQueryResult<TData, Error> => {\n const client = useMastraClient();\n\n return useQuery({\n queryKey: ['mcpserver-tools', selectedServer?.id],\n queryFn: async () => {\n const response = await client.getMcpServerTools(selectedServer?.id);\n const fetchedToolsArray: SdkMcpToolInfo[] = response.tools;\n const transformedTools: Record<string, SdkMcpToolInfo> = {};\n fetchedToolsArray.forEach((sdkToolInfo: SdkMcpToolInfo) => {\n transformedTools[sdkToolInfo.name] = sdkToolInfo;\n });\n\n return transformedTools;\n },\n retry: false,\n refetchOnWindowFocus: false,\n ...queryOptions,\n });\n};\n","import type { MastraClient } from '@mastra/client-js';\nimport type { UseQueryResult } from '@tanstack/react-query';\nimport { useQuery } from '@tanstack/react-query';\nimport { useMastraClient } from '../../mastra-client-context';\nimport type { MastraQueryOptions } from '../shared/query-options';\n\ntype MCPServerToolsById = Record<string, Awaited<ReturnType<MastraClient['getMcpServerTools']>>['tools'][number]>;\n\n/**\n * Does not guard on empty ids; pass `queryOptions: { enabled }` to skip the fetch.\n */\nexport const useMCPServerToolsById = <TData = MCPServerToolsById>({\n serverId,\n queryOptions,\n}: {\n serverId: string | null;\n queryOptions?: MastraQueryOptions<MCPServerToolsById, TData>;\n}): UseQueryResult<TData, Error> => {\n const client = useMastraClient();\n\n return useQuery({\n queryKey: ['mcpserver-tools', serverId],\n queryFn: async (): Promise<MCPServerToolsById> => {\n const response = await client.getMcpServerTools(serverId!);\n return Object.fromEntries(response.tools.map(tool => [tool.name, tool]));\n },\n retry: false,\n refetchOnWindowFocus: false,\n ...queryOptions,\n });\n};\n","import type { McpServerListResponse } from '@mastra/client-js';\nimport type { UseQueryResult } from '@tanstack/react-query';\nimport { useQuery } from '@tanstack/react-query';\nimport { useMastraClient } from '../../mastra-client-context';\nimport type { MastraQueryOptions } from '../shared/query-options';\n\nexport const useMCPServers = <TData = McpServerListResponse['servers']>({\n requestContext,\n queryOptions,\n}: {\n requestContext?: Record<string, any>;\n queryOptions?: MastraQueryOptions<McpServerListResponse['servers'], TData>;\n} = {}): UseQueryResult<TData, Error> => {\n const client = useMastraClient();\n\n return useQuery({\n queryKey: ['mcp-servers'],\n queryFn: async () => {\n const mcpServers: McpServerListResponse['servers'] = (await client.getMcpServers(requestContext)).servers;\n return mcpServers;\n },\n ...queryOptions,\n });\n};\n","import { useMutation } from '@tanstack/react-query';\nimport { useMastraClient } from '../../mastra-client-context';\nimport type { MastraMutationOptions } from '../shared/query-options';\n\ninterface McpTool {\n name: string;\n description?: string;\n inputSchema?: Record<string, unknown>;\n}\n\nexport interface TryConnectResult {\n tools: McpTool[];\n}\n\nasync function parseResponse(response: Response): Promise<unknown> {\n const contentType = response.headers.get('content-type') ?? '';\n\n if (contentType.includes('text/event-stream')) {\n const text = await response.text();\n const lines = text.split('\\n');\n\n for (const line of lines) {\n if (line.startsWith('data:')) {\n const data = line.slice('data:'.length).trim();\n if (data) {\n return JSON.parse(data);\n }\n }\n }\n\n throw new Error('No data found in SSE response');\n }\n\n return response.json();\n}\n\nasync function connectAndListTools(url: string, clientHeaders?: Record<string, string>): Promise<TryConnectResult> {\n const baseHeaders: Record<string, string> = {\n ...clientHeaders,\n 'Content-Type': 'application/json',\n Accept: 'application/json, text/event-stream',\n };\n\n // Step 1: Initialize\n const initResponse = await fetch(url, {\n method: 'POST',\n headers: baseHeaders,\n credentials: 'include',\n body: JSON.stringify({\n jsonrpc: '2.0',\n id: 1,\n method: 'initialize',\n params: {\n protocolVersion: '2025-03-26',\n capabilities: {},\n clientInfo: { name: 'mastra-playground', version: '1.0.0' },\n },\n }),\n });\n\n if (!initResponse.ok) {\n throw new Error(`Initialize failed: ${initResponse.status} ${initResponse.statusText}`);\n }\n\n const sessionId = initResponse.headers.get('Mcp-Session-Id');\n await parseResponse(initResponse);\n\n const sessionHeaders: Record<string, string> = {\n ...baseHeaders,\n };\n if (sessionId) {\n sessionHeaders['Mcp-Session-Id'] = sessionId;\n }\n\n // Step 2: Send initialized notification\n await fetch(url, {\n method: 'POST',\n headers: sessionHeaders,\n credentials: 'include',\n body: JSON.stringify({\n jsonrpc: '2.0',\n method: 'notifications/initialized',\n }),\n });\n\n // Step 3: List tools\n const toolsResponse = await fetch(url, {\n method: 'POST',\n headers: sessionHeaders,\n credentials: 'include',\n body: JSON.stringify({\n jsonrpc: '2.0',\n id: 2,\n method: 'tools/list',\n }),\n });\n\n if (!toolsResponse.ok) {\n throw new Error(`tools/list failed: ${toolsResponse.status} ${toolsResponse.statusText}`);\n }\n\n const toolsResult = (await parseResponse(toolsResponse)) as { result?: { tools?: McpTool[] } };\n\n return {\n tools: toolsResult.result?.tools ?? [],\n };\n}\n\nexport const useTryConnectMcp = ({\n queryOptions,\n}: { queryOptions?: MastraMutationOptions<TryConnectResult, string> } = {}) => {\n const client = useMastraClient();\n const clientHeaders = (client.options?.headers as Record<string, string>) ?? {};\n\n return useMutation({\n mutationFn: (url: string) => connectAndListTools(url, clientHeaders),\n ...queryOptions,\n });\n};\n\nexport type TryConnectMcpMutation = ReturnType<typeof useTryConnectMcp>;\n"],"mappings":"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"}
@@ -0,0 +1,7 @@
1
+ export * from './use-mcp-app-tools.js';
2
+ export * from './use-mcp-server-tool.js';
3
+ export * from './use-mcp-server-tools.js';
4
+ export * from './use-mcp-server-tools-by-id.js';
5
+ export * from './use-mcp-servers.js';
6
+ export * from './use-try-connect-mcp.js';
7
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/hooks/mcps/index.ts"],"names":[],"mappings":"AAAA,cAAc,qBAAqB,CAAC;AACpC,cAAc,uBAAuB,CAAC;AACtC,cAAc,wBAAwB,CAAC;AACvC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,mBAAmB,CAAC;AAClC,cAAc,uBAAuB,CAAC"}
@@ -0,0 +1,208 @@
1
+ import { n as useMastraClient } from "../../mastra-client-context-Bx_g84YB.js";
2
+ import { useMutation, useQuery } from "@tanstack/react-query";
3
+ //#region src/hooks/mcps/use-mcp-app-tools.ts
4
+ /**
5
+ * Builds a map of tool names → MCP App info for tools across all registered
6
+ * MCP servers that have `_meta.ui.resourceUri` (i.e., tools with interactive
7
+ * MCP App UIs).
8
+ *
9
+ * For each app tool, entries are created under both the original tool name
10
+ * and the namespaced name (`${serverId}_${toolName}`) so that agent tools
11
+ * sourced via `MCPClient.listTools()` (which namespaces) can be resolved.
12
+ */
13
+ function useMcpAppTools({ queryOptions } = {}) {
14
+ const client = useMastraClient();
15
+ return useQuery({
16
+ queryKey: ["mcp-app-tools"],
17
+ queryFn: async () => {
18
+ const map = {};
19
+ const { servers } = await client.getMcpServers();
20
+ if (!servers?.length) return map;
21
+ const results = await Promise.allSettled(servers.map(async (server) => {
22
+ const { tools } = await client.getMcpServerTools(server.id);
23
+ return {
24
+ serverId: server.id,
25
+ tools
26
+ };
27
+ }));
28
+ for (const result of results) {
29
+ if (result.status !== "fulfilled") continue;
30
+ const { serverId, tools } = result.value;
31
+ for (const tool of tools) {
32
+ const resourceUri = tool._meta?.ui?.resourceUri;
33
+ if (resourceUri) {
34
+ const toolId = tool.name;
35
+ const info = {
36
+ serverId,
37
+ toolId,
38
+ toolName: tool.name,
39
+ resourceUri
40
+ };
41
+ map[toolId] = info;
42
+ if (tool.name !== toolId) map[tool.name] = info;
43
+ map[`${serverId}_${tool.name}`] = info;
44
+ }
45
+ }
46
+ }
47
+ return map;
48
+ },
49
+ staleTime: 6e4,
50
+ refetchOnWindowFocus: false,
51
+ ...queryOptions
52
+ });
53
+ }
54
+ //#endregion
55
+ //#region src/hooks/mcps/use-mcp-server-tool.ts
56
+ /**
57
+ * Does not guard on empty ids; pass `queryOptions: { enabled }` to skip the fetch.
58
+ */
59
+ const useMCPServerTool = ({ serverId, toolId, requestContext, queryOptions }) => {
60
+ const client = useMastraClient();
61
+ return useQuery({
62
+ queryKey: [
63
+ "mcp-server-tool",
64
+ serverId,
65
+ toolId
66
+ ],
67
+ queryFn: () => {
68
+ return client.getMcpServerTool(serverId, toolId).details(requestContext);
69
+ },
70
+ ...queryOptions
71
+ });
72
+ };
73
+ const useExecuteMCPTool = ({ serverId, toolId, queryOptions }) => {
74
+ const client = useMastraClient();
75
+ return useMutation({
76
+ mutationFn: ({ data, requestContext }) => {
77
+ return client.getMcpServerTool(serverId, toolId).execute({
78
+ data,
79
+ requestContext
80
+ });
81
+ },
82
+ ...queryOptions
83
+ });
84
+ };
85
+ //#endregion
86
+ //#region src/hooks/mcps/use-mcp-server-tools.ts
87
+ const useMCPServerTools = ({ selectedServer, queryOptions }) => {
88
+ const client = useMastraClient();
89
+ return useQuery({
90
+ queryKey: ["mcpserver-tools", selectedServer?.id],
91
+ queryFn: async () => {
92
+ const fetchedToolsArray = (await client.getMcpServerTools(selectedServer?.id)).tools;
93
+ const transformedTools = {};
94
+ fetchedToolsArray.forEach((sdkToolInfo) => {
95
+ transformedTools[sdkToolInfo.name] = sdkToolInfo;
96
+ });
97
+ return transformedTools;
98
+ },
99
+ retry: false,
100
+ refetchOnWindowFocus: false,
101
+ ...queryOptions
102
+ });
103
+ };
104
+ //#endregion
105
+ //#region src/hooks/mcps/use-mcp-server-tools-by-id.ts
106
+ /**
107
+ * Does not guard on empty ids; pass `queryOptions: { enabled }` to skip the fetch.
108
+ */
109
+ const useMCPServerToolsById = ({ serverId, queryOptions }) => {
110
+ const client = useMastraClient();
111
+ return useQuery({
112
+ queryKey: ["mcpserver-tools", serverId],
113
+ queryFn: async () => {
114
+ const response = await client.getMcpServerTools(serverId);
115
+ return Object.fromEntries(response.tools.map((tool) => [tool.name, tool]));
116
+ },
117
+ retry: false,
118
+ refetchOnWindowFocus: false,
119
+ ...queryOptions
120
+ });
121
+ };
122
+ //#endregion
123
+ //#region src/hooks/mcps/use-mcp-servers.ts
124
+ const useMCPServers = ({ requestContext, queryOptions } = {}) => {
125
+ const client = useMastraClient();
126
+ return useQuery({
127
+ queryKey: ["mcp-servers"],
128
+ queryFn: async () => {
129
+ return (await client.getMcpServers(requestContext)).servers;
130
+ },
131
+ ...queryOptions
132
+ });
133
+ };
134
+ //#endregion
135
+ //#region src/hooks/mcps/use-try-connect-mcp.ts
136
+ async function parseResponse(response) {
137
+ if ((response.headers.get("content-type") ?? "").includes("text/event-stream")) {
138
+ const lines = (await response.text()).split("\n");
139
+ for (const line of lines) if (line.startsWith("data:")) {
140
+ const data = line.slice(5).trim();
141
+ if (data) return JSON.parse(data);
142
+ }
143
+ throw new Error("No data found in SSE response");
144
+ }
145
+ return response.json();
146
+ }
147
+ async function connectAndListTools(url, clientHeaders) {
148
+ const baseHeaders = {
149
+ ...clientHeaders,
150
+ "Content-Type": "application/json",
151
+ Accept: "application/json, text/event-stream"
152
+ };
153
+ const initResponse = await fetch(url, {
154
+ method: "POST",
155
+ headers: baseHeaders,
156
+ credentials: "include",
157
+ body: JSON.stringify({
158
+ jsonrpc: "2.0",
159
+ id: 1,
160
+ method: "initialize",
161
+ params: {
162
+ protocolVersion: "2025-03-26",
163
+ capabilities: {},
164
+ clientInfo: {
165
+ name: "mastra-playground",
166
+ version: "1.0.0"
167
+ }
168
+ }
169
+ })
170
+ });
171
+ if (!initResponse.ok) throw new Error(`Initialize failed: ${initResponse.status} ${initResponse.statusText}`);
172
+ const sessionId = initResponse.headers.get("Mcp-Session-Id");
173
+ await parseResponse(initResponse);
174
+ const sessionHeaders = { ...baseHeaders };
175
+ if (sessionId) sessionHeaders["Mcp-Session-Id"] = sessionId;
176
+ await fetch(url, {
177
+ method: "POST",
178
+ headers: sessionHeaders,
179
+ credentials: "include",
180
+ body: JSON.stringify({
181
+ jsonrpc: "2.0",
182
+ method: "notifications/initialized"
183
+ })
184
+ });
185
+ const toolsResponse = await fetch(url, {
186
+ method: "POST",
187
+ headers: sessionHeaders,
188
+ credentials: "include",
189
+ body: JSON.stringify({
190
+ jsonrpc: "2.0",
191
+ id: 2,
192
+ method: "tools/list"
193
+ })
194
+ });
195
+ if (!toolsResponse.ok) throw new Error(`tools/list failed: ${toolsResponse.status} ${toolsResponse.statusText}`);
196
+ return { tools: (await parseResponse(toolsResponse)).result?.tools ?? [] };
197
+ }
198
+ const useTryConnectMcp = ({ queryOptions } = {}) => {
199
+ const clientHeaders = useMastraClient().options?.headers ?? {};
200
+ return useMutation({
201
+ mutationFn: (url) => connectAndListTools(url, clientHeaders),
202
+ ...queryOptions
203
+ });
204
+ };
205
+ //#endregion
206
+ export { useExecuteMCPTool, useMCPServerTool, useMCPServerTools, useMCPServerToolsById, useMCPServers, useMcpAppTools, useTryConnectMcp };
207
+
208
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","names":[],"sources":["../../../src/hooks/mcps/use-mcp-app-tools.ts","../../../src/hooks/mcps/use-mcp-server-tool.ts","../../../src/hooks/mcps/use-mcp-server-tools.ts","../../../src/hooks/mcps/use-mcp-server-tools-by-id.ts","../../../src/hooks/mcps/use-mcp-servers.ts","../../../src/hooks/mcps/use-try-connect-mcp.ts"],"sourcesContent":["import type { UseQueryResult } from '@tanstack/react-query';\nimport { useQuery } from '@tanstack/react-query';\nimport { useMastraClient } from '../../mastra-client-context';\nimport type { MastraQueryOptions } from '../shared/query-options';\n\nexport interface McpAppToolInfo {\n serverId: string;\n toolId: string;\n toolName: string;\n resourceUri: string;\n}\n\n/**\n * Builds a map of tool names → MCP App info for tools across all registered\n * MCP servers that have `_meta.ui.resourceUri` (i.e., tools with interactive\n * MCP App UIs).\n *\n * For each app tool, entries are created under both the original tool name\n * and the namespaced name (`${serverId}_${toolName}`) so that agent tools\n * sourced via `MCPClient.listTools()` (which namespaces) can be resolved.\n */\nexport function useMcpAppTools<TData = Record<string, McpAppToolInfo>>({\n queryOptions,\n}: { queryOptions?: MastraQueryOptions<Record<string, McpAppToolInfo>, TData> } = {}): UseQueryResult<TData, Error> {\n const client = useMastraClient();\n\n return useQuery({\n queryKey: ['mcp-app-tools'],\n queryFn: async () => {\n const map: Record<string, McpAppToolInfo> = {};\n\n const { servers } = await client.getMcpServers();\n if (!servers?.length) return map;\n\n const results = await Promise.allSettled(\n servers.map(async server => {\n const { tools } = await client.getMcpServerTools(server.id);\n return { serverId: server.id, tools };\n }),\n );\n\n for (const result of results) {\n if (result.status !== 'fulfilled') continue;\n const { serverId, tools } = result.value;\n for (const tool of tools) {\n const meta = tool._meta as { ui?: { resourceUri?: string } } | undefined;\n const resourceUri = meta?.ui?.resourceUri;\n if (resourceUri) {\n const toolId = tool.name;\n const info: McpAppToolInfo = { serverId, toolId, toolName: tool.name, resourceUri };\n map[toolId] = info;\n if (tool.name !== toolId) {\n map[tool.name] = info;\n }\n // Also map the namespaced name used by MCPClient.listTools()\n map[`${serverId}_${tool.name}`] = info;\n }\n }\n }\n\n return map;\n },\n staleTime: 60_000,\n refetchOnWindowFocus: false,\n ...queryOptions,\n });\n}\n","import type { MastraClient } from '@mastra/client-js';\nimport type { RequestContext } from '@mastra/core/request-context';\nimport { useMutation, useQuery } from '@tanstack/react-query';\nimport type { UseMutationResult, UseQueryResult } from '@tanstack/react-query';\nimport { useMastraClient } from '../../mastra-client-context';\nimport type { MastraMutationOptions, MastraQueryOptions } from '../shared/query-options';\n\ntype MCPServerToolDetails = Awaited<ReturnType<ReturnType<MastraClient['getMcpServerTool']>['details']>>;\n\n/**\n * Does not guard on empty ids; pass `queryOptions: { enabled }` to skip the fetch.\n */\nexport const useMCPServerTool = <TData = MCPServerToolDetails>({\n serverId,\n toolId,\n requestContext,\n queryOptions,\n}: {\n serverId: string;\n toolId: string;\n requestContext?: Record<string, any>;\n queryOptions?: MastraQueryOptions<MCPServerToolDetails, TData>;\n}): UseQueryResult<TData, Error> => {\n const client = useMastraClient();\n\n return useQuery({\n queryKey: ['mcp-server-tool', serverId, toolId],\n queryFn: () => {\n const instance = client.getMcpServerTool(serverId, toolId);\n return instance.details(requestContext);\n },\n ...queryOptions,\n });\n};\n\nexport type ExecuteMCPToolResponse = Awaited<ReturnType<ReturnType<MastraClient['getMcpServerTool']>['execute']>>;\ntype ExecuteMCPToolVariables = { data: any; requestContext?: Record<string, any> };\n\nexport const useExecuteMCPTool = ({\n serverId,\n toolId,\n queryOptions,\n}: {\n serverId: string;\n toolId: string;\n queryOptions?: MastraMutationOptions<ExecuteMCPToolResponse, ExecuteMCPToolVariables>;\n}): UseMutationResult<ExecuteMCPToolResponse, Error, ExecuteMCPToolVariables> => {\n const client = useMastraClient();\n\n return useMutation({\n mutationFn: ({ data, requestContext }: ExecuteMCPToolVariables) => {\n const instance = client.getMcpServerTool(serverId, toolId);\n return instance.execute({ data, requestContext: requestContext as RequestContext });\n },\n ...queryOptions,\n });\n};\n","import type { McpToolInfo as SdkMcpToolInfo } from '@mastra/client-js';\nimport type { ServerInfo } from '@mastra/core/mcp';\nimport type { UseQueryResult } from '@tanstack/react-query';\nimport { useQuery } from '@tanstack/react-query';\nimport { useMastraClient } from '../../mastra-client-context';\nimport type { MastraQueryOptions } from '../shared/query-options';\n\nexport const useMCPServerTools = <TData = Record<string, SdkMcpToolInfo>>({\n selectedServer,\n queryOptions,\n}: {\n selectedServer: ServerInfo;\n queryOptions?: MastraQueryOptions<Record<string, SdkMcpToolInfo>, TData>;\n}): UseQueryResult<TData, Error> => {\n const client = useMastraClient();\n\n return useQuery({\n queryKey: ['mcpserver-tools', selectedServer?.id],\n queryFn: async () => {\n const response = await client.getMcpServerTools(selectedServer?.id);\n const fetchedToolsArray: SdkMcpToolInfo[] = response.tools;\n const transformedTools: Record<string, SdkMcpToolInfo> = {};\n fetchedToolsArray.forEach((sdkToolInfo: SdkMcpToolInfo) => {\n transformedTools[sdkToolInfo.name] = sdkToolInfo;\n });\n\n return transformedTools;\n },\n retry: false,\n refetchOnWindowFocus: false,\n ...queryOptions,\n });\n};\n","import type { MastraClient } from '@mastra/client-js';\nimport type { UseQueryResult } from '@tanstack/react-query';\nimport { useQuery } from '@tanstack/react-query';\nimport { useMastraClient } from '../../mastra-client-context';\nimport type { MastraQueryOptions } from '../shared/query-options';\n\ntype MCPServerToolsById = Record<string, Awaited<ReturnType<MastraClient['getMcpServerTools']>>['tools'][number]>;\n\n/**\n * Does not guard on empty ids; pass `queryOptions: { enabled }` to skip the fetch.\n */\nexport const useMCPServerToolsById = <TData = MCPServerToolsById>({\n serverId,\n queryOptions,\n}: {\n serverId: string | null;\n queryOptions?: MastraQueryOptions<MCPServerToolsById, TData>;\n}): UseQueryResult<TData, Error> => {\n const client = useMastraClient();\n\n return useQuery({\n queryKey: ['mcpserver-tools', serverId],\n queryFn: async (): Promise<MCPServerToolsById> => {\n const response = await client.getMcpServerTools(serverId!);\n return Object.fromEntries(response.tools.map(tool => [tool.name, tool]));\n },\n retry: false,\n refetchOnWindowFocus: false,\n ...queryOptions,\n });\n};\n","import type { McpServerListResponse } from '@mastra/client-js';\nimport type { UseQueryResult } from '@tanstack/react-query';\nimport { useQuery } from '@tanstack/react-query';\nimport { useMastraClient } from '../../mastra-client-context';\nimport type { MastraQueryOptions } from '../shared/query-options';\n\nexport const useMCPServers = <TData = McpServerListResponse['servers']>({\n requestContext,\n queryOptions,\n}: {\n requestContext?: Record<string, any>;\n queryOptions?: MastraQueryOptions<McpServerListResponse['servers'], TData>;\n} = {}): UseQueryResult<TData, Error> => {\n const client = useMastraClient();\n\n return useQuery({\n queryKey: ['mcp-servers'],\n queryFn: async () => {\n const mcpServers: McpServerListResponse['servers'] = (await client.getMcpServers(requestContext)).servers;\n return mcpServers;\n },\n ...queryOptions,\n });\n};\n","import { useMutation } from '@tanstack/react-query';\nimport { useMastraClient } from '../../mastra-client-context';\nimport type { MastraMutationOptions } from '../shared/query-options';\n\ninterface McpTool {\n name: string;\n description?: string;\n inputSchema?: Record<string, unknown>;\n}\n\nexport interface TryConnectResult {\n tools: McpTool[];\n}\n\nasync function parseResponse(response: Response): Promise<unknown> {\n const contentType = response.headers.get('content-type') ?? '';\n\n if (contentType.includes('text/event-stream')) {\n const text = await response.text();\n const lines = text.split('\\n');\n\n for (const line of lines) {\n if (line.startsWith('data:')) {\n const data = line.slice('data:'.length).trim();\n if (data) {\n return JSON.parse(data);\n }\n }\n }\n\n throw new Error('No data found in SSE response');\n }\n\n return response.json();\n}\n\nasync function connectAndListTools(url: string, clientHeaders?: Record<string, string>): Promise<TryConnectResult> {\n const baseHeaders: Record<string, string> = {\n ...clientHeaders,\n 'Content-Type': 'application/json',\n Accept: 'application/json, text/event-stream',\n };\n\n // Step 1: Initialize\n const initResponse = await fetch(url, {\n method: 'POST',\n headers: baseHeaders,\n credentials: 'include',\n body: JSON.stringify({\n jsonrpc: '2.0',\n id: 1,\n method: 'initialize',\n params: {\n protocolVersion: '2025-03-26',\n capabilities: {},\n clientInfo: { name: 'mastra-playground', version: '1.0.0' },\n },\n }),\n });\n\n if (!initResponse.ok) {\n throw new Error(`Initialize failed: ${initResponse.status} ${initResponse.statusText}`);\n }\n\n const sessionId = initResponse.headers.get('Mcp-Session-Id');\n await parseResponse(initResponse);\n\n const sessionHeaders: Record<string, string> = {\n ...baseHeaders,\n };\n if (sessionId) {\n sessionHeaders['Mcp-Session-Id'] = sessionId;\n }\n\n // Step 2: Send initialized notification\n await fetch(url, {\n method: 'POST',\n headers: sessionHeaders,\n credentials: 'include',\n body: JSON.stringify({\n jsonrpc: '2.0',\n method: 'notifications/initialized',\n }),\n });\n\n // Step 3: List tools\n const toolsResponse = await fetch(url, {\n method: 'POST',\n headers: sessionHeaders,\n credentials: 'include',\n body: JSON.stringify({\n jsonrpc: '2.0',\n id: 2,\n method: 'tools/list',\n }),\n });\n\n if (!toolsResponse.ok) {\n throw new Error(`tools/list failed: ${toolsResponse.status} ${toolsResponse.statusText}`);\n }\n\n const toolsResult = (await parseResponse(toolsResponse)) as { result?: { tools?: McpTool[] } };\n\n return {\n tools: toolsResult.result?.tools ?? [],\n };\n}\n\nexport const useTryConnectMcp = ({\n queryOptions,\n}: { queryOptions?: MastraMutationOptions<TryConnectResult, string> } = {}) => {\n const client = useMastraClient();\n const clientHeaders = (client.options?.headers as Record<string, string>) ?? {};\n\n return useMutation({\n mutationFn: (url: string) => connectAndListTools(url, clientHeaders),\n ...queryOptions,\n });\n};\n\nexport type TryConnectMcpMutation = ReturnType<typeof useTryConnectMcp>;\n"],"mappings":"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"}
@@ -0,0 +1,21 @@
1
+ import type { UseQueryResult } from '@tanstack/react-query';
2
+ import type { MastraQueryOptions } from '../shared/query-options.js';
3
+ export interface McpAppToolInfo {
4
+ serverId: string;
5
+ toolId: string;
6
+ toolName: string;
7
+ resourceUri: string;
8
+ }
9
+ /**
10
+ * Builds a map of tool names → MCP App info for tools across all registered
11
+ * MCP servers that have `_meta.ui.resourceUri` (i.e., tools with interactive
12
+ * MCP App UIs).
13
+ *
14
+ * For each app tool, entries are created under both the original tool name
15
+ * and the namespaced name (`${serverId}_${toolName}`) so that agent tools
16
+ * sourced via `MCPClient.listTools()` (which namespaces) can be resolved.
17
+ */
18
+ export declare function useMcpAppTools<TData = Record<string, McpAppToolInfo>>({ queryOptions, }?: {
19
+ queryOptions?: MastraQueryOptions<Record<string, McpAppToolInfo>, TData>;
20
+ }): UseQueryResult<TData, Error>;
21
+ //# sourceMappingURL=use-mcp-app-tools.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"use-mcp-app-tools.d.ts","sourceRoot":"","sources":["../../../src/hooks/mcps/use-mcp-app-tools.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAG5D,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAElE,MAAM,WAAW,cAAc;IAC7B,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;CACrB;AAED;;;;;;;;GAQG;AACH,wBAAgB,cAAc,CAAC,KAAK,GAAG,MAAM,CAAC,MAAM,EAAE,cAAc,CAAC,EAAE,EACrE,YAAY,GACb,GAAE;IAAE,YAAY,CAAC,EAAE,kBAAkB,CAAC,MAAM,CAAC,MAAM,EAAE,cAAc,CAAC,EAAE,KAAK,CAAC,CAAA;CAAO,GAAG,cAAc,CAAC,KAAK,EAAE,KAAK,CAAC,CA2ClH"}
@@ -0,0 +1,25 @@
1
+ import type { MastraClient } from '@mastra/client-js';
2
+ import type { UseMutationResult, UseQueryResult } from '@tanstack/react-query';
3
+ import type { MastraMutationOptions, MastraQueryOptions } from '../shared/query-options.js';
4
+ type MCPServerToolDetails = Awaited<ReturnType<ReturnType<MastraClient['getMcpServerTool']>['details']>>;
5
+ /**
6
+ * Does not guard on empty ids; pass `queryOptions: { enabled }` to skip the fetch.
7
+ */
8
+ export declare const useMCPServerTool: <TData = MCPServerToolDetails>({ serverId, toolId, requestContext, queryOptions, }: {
9
+ serverId: string;
10
+ toolId: string;
11
+ requestContext?: Record<string, any>;
12
+ queryOptions?: MastraQueryOptions<MCPServerToolDetails, TData>;
13
+ }) => UseQueryResult<TData, Error>;
14
+ export type ExecuteMCPToolResponse = Awaited<ReturnType<ReturnType<MastraClient['getMcpServerTool']>['execute']>>;
15
+ type ExecuteMCPToolVariables = {
16
+ data: any;
17
+ requestContext?: Record<string, any>;
18
+ };
19
+ export declare const useExecuteMCPTool: ({ serverId, toolId, queryOptions, }: {
20
+ serverId: string;
21
+ toolId: string;
22
+ queryOptions?: MastraMutationOptions<ExecuteMCPToolResponse, ExecuteMCPToolVariables>;
23
+ }) => UseMutationResult<ExecuteMCPToolResponse, Error, ExecuteMCPToolVariables>;
24
+ export {};
25
+ //# sourceMappingURL=use-mcp-server-tool.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"use-mcp-server-tool.d.ts","sourceRoot":"","sources":["../../../src/hooks/mcps/use-mcp-server-tool.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAGtD,OAAO,KAAK,EAAE,iBAAiB,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAE/E,OAAO,KAAK,EAAE,qBAAqB,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAEzF,KAAK,oBAAoB,GAAG,OAAO,CAAC,UAAU,CAAC,UAAU,CAAC,YAAY,CAAC,kBAAkB,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;AAEzG;;GAEG;AACH,eAAO,MAAM,gBAAgB,GAAI,KAAK,GAAG,oBAAoB,uDAK1D;IACD,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,cAAc,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IACrC,YAAY,CAAC,EAAE,kBAAkB,CAAC,oBAAoB,EAAE,KAAK,CAAC,CAAC;CAChE,KAAG,cAAc,CAAC,KAAK,EAAE,KAAK,CAW9B,CAAC;AAEF,MAAM,MAAM,sBAAsB,GAAG,OAAO,CAAC,UAAU,CAAC,UAAU,CAAC,YAAY,CAAC,kBAAkB,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;AAClH,KAAK,uBAAuB,GAAG;IAAE,IAAI,EAAE,GAAG,CAAC;IAAC,cAAc,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;CAAE,CAAC;AAEnF,eAAO,MAAM,iBAAiB,wCAI3B;IACD,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,YAAY,CAAC,EAAE,qBAAqB,CAAC,sBAAsB,EAAE,uBAAuB,CAAC,CAAC;CACvF,KAAG,iBAAiB,CAAC,sBAAsB,EAAE,KAAK,EAAE,uBAAuB,CAU3E,CAAC"}
@@ -0,0 +1,13 @@
1
+ import type { MastraClient } from '@mastra/client-js';
2
+ import type { UseQueryResult } from '@tanstack/react-query';
3
+ import type { MastraQueryOptions } from '../shared/query-options.js';
4
+ type MCPServerToolsById = Record<string, Awaited<ReturnType<MastraClient['getMcpServerTools']>>['tools'][number]>;
5
+ /**
6
+ * Does not guard on empty ids; pass `queryOptions: { enabled }` to skip the fetch.
7
+ */
8
+ export declare const useMCPServerToolsById: <TData = MCPServerToolsById>({ serverId, queryOptions, }: {
9
+ serverId: string | null;
10
+ queryOptions?: MastraQueryOptions<MCPServerToolsById, TData>;
11
+ }) => UseQueryResult<TData, Error>;
12
+ export {};
13
+ //# sourceMappingURL=use-mcp-server-tools-by-id.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"use-mcp-server-tools-by-id.d.ts","sourceRoot":"","sources":["../../../src/hooks/mcps/use-mcp-server-tools-by-id.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACtD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAG5D,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAElE,KAAK,kBAAkB,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,UAAU,CAAC,YAAY,CAAC,mBAAmB,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;AAElH;;GAEG;AACH,eAAO,MAAM,qBAAqB,GAAI,KAAK,GAAG,kBAAkB,+BAG7D;IACD,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,YAAY,CAAC,EAAE,kBAAkB,CAAC,kBAAkB,EAAE,KAAK,CAAC,CAAC;CAC9D,KAAG,cAAc,CAAC,KAAK,EAAE,KAAK,CAa9B,CAAC"}
@@ -0,0 +1,9 @@
1
+ import type { McpToolInfo as SdkMcpToolInfo } from '@mastra/client-js';
2
+ import type { ServerInfo } from '@mastra/core/mcp';
3
+ import type { UseQueryResult } from '@tanstack/react-query';
4
+ import type { MastraQueryOptions } from '../shared/query-options.js';
5
+ export declare const useMCPServerTools: <TData = Record<string, SdkMcpToolInfo>>({ selectedServer, queryOptions, }: {
6
+ selectedServer: ServerInfo;
7
+ queryOptions?: MastraQueryOptions<Record<string, SdkMcpToolInfo>, TData>;
8
+ }) => UseQueryResult<TData, Error>;
9
+ //# sourceMappingURL=use-mcp-server-tools.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"use-mcp-server-tools.d.ts","sourceRoot":"","sources":["../../../src/hooks/mcps/use-mcp-server-tools.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,IAAI,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACvE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AACnD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAG5D,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAElE,eAAO,MAAM,iBAAiB,GAAI,KAAK,GAAG,MAAM,CAAC,MAAM,EAAE,cAAc,CAAC,qCAGrE;IACD,cAAc,EAAE,UAAU,CAAC;IAC3B,YAAY,CAAC,EAAE,kBAAkB,CAAC,MAAM,CAAC,MAAM,EAAE,cAAc,CAAC,EAAE,KAAK,CAAC,CAAC;CAC1E,KAAG,cAAc,CAAC,KAAK,EAAE,KAAK,CAmB9B,CAAC"}
@@ -0,0 +1,8 @@
1
+ import type { McpServerListResponse } from '@mastra/client-js';
2
+ import type { UseQueryResult } from '@tanstack/react-query';
3
+ import type { MastraQueryOptions } from '../shared/query-options.js';
4
+ export declare const useMCPServers: <TData = McpServerListResponse['servers']>({ requestContext, queryOptions, }?: {
5
+ requestContext?: Record<string, any>;
6
+ queryOptions?: MastraQueryOptions<McpServerListResponse['servers'], TData>;
7
+ }) => UseQueryResult<TData, Error>;
8
+ //# sourceMappingURL=use-mcp-servers.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"use-mcp-servers.d.ts","sourceRoot":"","sources":["../../../src/hooks/mcps/use-mcp-servers.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,mBAAmB,CAAC;AAC/D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAG5D,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAElE,eAAO,MAAM,aAAa,GAAI,KAAK,GAAG,qBAAqB,CAAC,SAAS,CAAC,sCAGnE;IACD,cAAc,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IACrC,YAAY,CAAC,EAAE,kBAAkB,CAAC,qBAAqB,CAAC,SAAS,CAAC,EAAE,KAAK,CAAC,CAAC;CAC5E,KAAQ,cAAc,CAAC,KAAK,EAAE,KAAK,CAWnC,CAAC"}
@@ -0,0 +1,15 @@
1
+ import type { MastraMutationOptions } from '../shared/query-options.js';
2
+ interface McpTool {
3
+ name: string;
4
+ description?: string;
5
+ inputSchema?: Record<string, unknown>;
6
+ }
7
+ export interface TryConnectResult {
8
+ tools: McpTool[];
9
+ }
10
+ export declare const useTryConnectMcp: ({ queryOptions, }?: {
11
+ queryOptions?: MastraMutationOptions<TryConnectResult, string>;
12
+ }) => import("@tanstack/react-query").UseMutationResult<TryConnectResult, Error, string, unknown>;
13
+ export type TryConnectMcpMutation = ReturnType<typeof useTryConnectMcp>;
14
+ export {};
15
+ //# sourceMappingURL=use-try-connect-mcp.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"use-try-connect-mcp.d.ts","sourceRoot":"","sources":["../../../src/hooks/mcps/use-try-connect-mcp.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAErE,UAAU,OAAO;IACf,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACvC;AAED,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,OAAO,EAAE,CAAC;CAClB;AAgGD,eAAO,MAAM,gBAAgB,uBAE1B;IAAE,YAAY,CAAC,EAAE,qBAAqB,CAAC,gBAAgB,EAAE,MAAM,CAAC,CAAA;CAAE,gGAQpE,CAAC;AAEF,MAAM,MAAM,qBAAqB,GAAG,UAAU,CAAC,OAAO,gBAAgB,CAAC,CAAC"}