@mastra/server 1.79.0-alpha.10 → 1.79.0-alpha.12

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 (401) hide show
  1. package/dist/{a2a-CHBSYHxu.js → a2a-BqLB3McP.js} +17 -16
  2. package/dist/a2a-BqLB3McP.js.map +1 -0
  3. package/dist/{a2a-B465DD1u.cjs → a2a-Uood_0DN.cjs} +19 -18
  4. package/dist/a2a-Uood_0DN.cjs.map +1 -0
  5. package/dist/agent-builder-CuBD1tpv.cjs +728 -0
  6. package/dist/agent-builder-CuBD1tpv.cjs.map +1 -0
  7. package/dist/agent-builder-VhM8ADW-.js +627 -0
  8. package/dist/agent-builder-VhM8ADW-.js.map +1 -0
  9. package/dist/{agents-X1E7fW3p.js → agents-BHLTMBff.js} +2 -2
  10. package/dist/{agents-X1E7fW3p.js.map → agents-BHLTMBff.js.map} +1 -1
  11. package/dist/agents-BOWEUKyV.cjs +3127 -0
  12. package/dist/agents-BOWEUKyV.cjs.map +1 -0
  13. package/dist/agents-DRQ3ScbX.js +2828 -0
  14. package/dist/agents-DRQ3ScbX.js.map +1 -0
  15. package/dist/{agents-DoNMSCMt.cjs → agents-T-OIM9IK.cjs} +2 -2
  16. package/dist/{agents-DoNMSCMt.cjs.map → agents-T-OIM9IK.cjs.map} +1 -1
  17. package/dist/{api-schema-manifest-CWRIJP-B.js → api-schema-manifest-CI90M4sX.js} +3 -3
  18. package/dist/{api-schema-manifest-CWRIJP-B.js.map → api-schema-manifest-CI90M4sX.js.map} +1 -1
  19. package/dist/{api-schema-manifest-DUseI2VG.cjs → api-schema-manifest-DIlNfbyw.cjs} +4 -4
  20. package/dist/{api-schema-manifest-DUseI2VG.cjs.map → api-schema-manifest-DIlNfbyw.cjs.map} +1 -1
  21. package/dist/{background-tasks-CabImVak.cjs → background-tasks-B3VAKTJh.cjs} +3 -3
  22. package/dist/{background-tasks-CabImVak.cjs.map → background-tasks-B3VAKTJh.cjs.map} +1 -1
  23. package/dist/{background-tasks-oBaLtnCn.js → background-tasks-Du2zYOPl.js} +2 -2
  24. package/dist/{background-tasks-oBaLtnCn.js.map → background-tasks-Du2zYOPl.js.map} +1 -1
  25. package/dist/{builder-registry-DOkLe8ES.js → builder-registry-DLdu9bWH.js} +3 -3
  26. package/dist/{builder-registry-DOkLe8ES.js.map → builder-registry-DLdu9bWH.js.map} +1 -1
  27. package/dist/{builder-registry-D0frV8lQ.cjs → builder-registry-DaFAaMTf.cjs} +3 -3
  28. package/dist/{builder-registry-D0frV8lQ.cjs.map → builder-registry-DaFAaMTf.cjs.map} +1 -1
  29. package/dist/{channels-CBIopVWd.cjs → channels-BnVRmnzK.cjs} +6 -3
  30. package/dist/{channels-CBIopVWd.cjs.map → channels-BnVRmnzK.cjs.map} +1 -1
  31. package/dist/{channels-BOxgHvzI.js → channels-Db-4pXVZ.js} +6 -3
  32. package/dist/{channels-BOxgHvzI.js.map → channels-Db-4pXVZ.js.map} +1 -1
  33. package/dist/conversations-8BWryNlF.js +165 -0
  34. package/dist/conversations-8BWryNlF.js.map +1 -0
  35. package/dist/conversations-C5MkQBB8.cjs +194 -0
  36. package/dist/conversations-C5MkQBB8.cjs.map +1 -0
  37. package/dist/{conversations-Bj5TLNqF.cjs → conversations-DasqEDCF.cjs} +3 -3
  38. package/dist/{conversations-Bj5TLNqF.cjs.map → conversations-DasqEDCF.cjs.map} +1 -1
  39. package/dist/{dist-9c3PXXpk.cjs → dist-B-bEVWlJ.cjs} +4733 -1251
  40. package/dist/dist-B-bEVWlJ.cjs.map +1 -0
  41. package/dist/dist-B3kC8Yd0.cjs +3 -0
  42. package/dist/{dist-CQ3FSKT-.cjs → dist-B9ery9Zw.cjs} +38 -35
  43. package/dist/{dist-CQ3FSKT-.cjs.map → dist-B9ery9Zw.cjs.map} +1 -1
  44. package/dist/{dist-BxMmGD3n.js → dist-BBOnrL_A.js} +10 -12
  45. package/dist/{dist-BxMmGD3n.js.map → dist-BBOnrL_A.js.map} +1 -1
  46. package/dist/{dist-DOWsEmo6.js → dist-BIrQLUV9.js} +20 -20
  47. package/dist/{dist-DOWsEmo6.js.map → dist-BIrQLUV9.js.map} +1 -1
  48. package/dist/dist-BM9J-PTK.js +1 -0
  49. package/dist/{dist-DC1Pewf5.cjs → dist-Bo3GdQwf.cjs} +21 -21
  50. package/dist/{dist-DC1Pewf5.cjs.map → dist-Bo3GdQwf.cjs.map} +1 -1
  51. package/dist/{dist-BwYL7Ykb.js → dist-CREG82cy.js} +37 -34
  52. package/dist/{dist-BwYL7Ykb.js.map → dist-CREG82cy.js.map} +1 -1
  53. package/dist/{dist-rDRetJVY.cjs → dist-CeTLA-e5.cjs} +2 -3
  54. package/dist/{dist-rDRetJVY.cjs.map → dist-CeTLA-e5.cjs.map} +1 -1
  55. package/dist/{dist-CBRJax5e.js → dist-DLld1qjf.js} +25 -31
  56. package/dist/{dist-CBRJax5e.js.map → dist-DLld1qjf.js.map} +1 -1
  57. package/dist/{dist-B_bet8uz.js → dist-DjkPkAzV.js} +2 -3
  58. package/dist/{dist-B_bet8uz.js.map → dist-DjkPkAzV.js.map} +1 -1
  59. package/dist/{dist-UKEksCGq.cjs → dist-DsrJXwic.cjs} +11 -13
  60. package/dist/{dist-UKEksCGq.cjs.map → dist-DsrJXwic.cjs.map} +1 -1
  61. package/dist/{dist-DGCnbhNe.js → dist-k77XQGUn.js} +4493 -1043
  62. package/dist/dist-k77XQGUn.js.map +1 -0
  63. package/dist/{dist-3FPW9nVj.cjs → dist-lT2rqyY9.cjs} +26 -32
  64. package/dist/{dist-3FPW9nVj.cjs.map → dist-lT2rqyY9.cjs.map} +1 -1
  65. package/dist/docs/SKILL.md +1 -1
  66. package/dist/docs/assets/SOURCE_MAP.json +1 -1
  67. package/dist/{dynamic-workflows-Rr_6ac1y.js → dynamic-workflows-CTUO0SFu.js} +3 -3
  68. package/dist/{dynamic-workflows-Rr_6ac1y.js.map → dynamic-workflows-CTUO0SFu.js.map} +1 -1
  69. package/dist/{dynamic-workflows-DXlkr-jK.cjs → dynamic-workflows-HwPX3mcf.cjs} +3 -3
  70. package/dist/{dynamic-workflows-DXlkr-jK.cjs.map → dynamic-workflows-HwPX3mcf.cjs.map} +1 -1
  71. package/dist/{editor-builder-BclcHxN6.cjs → editor-builder-BDtiWw0f.cjs} +2 -2
  72. package/dist/{editor-builder-BclcHxN6.cjs.map → editor-builder-BDtiWw0f.cjs.map} +1 -1
  73. package/dist/{editor-builder-D16kc1P6.js → editor-builder-ClFlGXoX.js} +4 -4
  74. package/dist/{editor-builder-D16kc1P6.js.map → editor-builder-ClFlGXoX.js.map} +1 -1
  75. package/dist/{editor-builder-s9WqPJgA.js → editor-builder-DnLCfqnY.js} +2 -2
  76. package/dist/{editor-builder-s9WqPJgA.js.map → editor-builder-DnLCfqnY.js.map} +1 -1
  77. package/dist/{editor-builder-DXHiPX1A.cjs → editor-builder-DtpP1FtW.cjs} +5 -5
  78. package/dist/{editor-builder-DXHiPX1A.cjs.map → editor-builder-DtpP1FtW.cjs.map} +1 -1
  79. package/dist/{helpers-ElhPeCSK.cjs → helpers-CAcEhq38.cjs} +21 -17
  80. package/dist/{helpers-ElhPeCSK.cjs.map → helpers-CAcEhq38.cjs.map} +1 -1
  81. package/dist/{helpers-DLhX1fqc.js → helpers-vrqddDd5.js} +21 -17
  82. package/dist/{helpers-DLhX1fqc.js.map → helpers-vrqddDd5.js.map} +1 -1
  83. package/dist/index.cjs +1 -1
  84. package/dist/logs-CiSw7r0s.cjs +119 -0
  85. package/dist/logs-CiSw7r0s.cjs.map +1 -0
  86. package/dist/logs-CxfPk-iL.js +96 -0
  87. package/dist/logs-CxfPk-iL.js.map +1 -0
  88. package/dist/mcp-CWDfSu7w.js +474 -0
  89. package/dist/mcp-CWDfSu7w.js.map +1 -0
  90. package/dist/mcp-CWGJRqkC.cjs +563 -0
  91. package/dist/mcp-CWGJRqkC.cjs.map +1 -0
  92. package/dist/{mcp-DzpwLXEY.js → mcp-Drqt0GqD.js} +79 -4
  93. package/dist/mcp-Drqt0GqD.js.map +1 -0
  94. package/dist/{mcp-ShaKO7gA.cjs → mcp-ziWVk7Ol.cjs} +126 -3
  95. package/dist/mcp-ziWVk7Ol.cjs.map +1 -0
  96. package/dist/memory-BHtTSzvJ.js +1739 -0
  97. package/dist/memory-BHtTSzvJ.js.map +1 -0
  98. package/dist/memory-CwwkVDh1.cjs +1906 -0
  99. package/dist/memory-CwwkVDh1.cjs.map +1 -0
  100. package/dist/observability-BBMCMeT-.cjs +502 -0
  101. package/dist/observability-BBMCMeT-.cjs.map +1 -0
  102. package/dist/observability-ZRgRcvoX.js +431 -0
  103. package/dist/observability-ZRgRcvoX.js.map +1 -0
  104. package/dist/{observability-new-endpoints-BU8JYPfh.js → observability-new-endpoints-fjoZzEtk.js} +10 -9
  105. package/dist/{observability-new-endpoints-BU8JYPfh.js.map → observability-new-endpoints-fjoZzEtk.js.map} +1 -1
  106. package/dist/{observability-new-endpoints-AMp9bnMV.cjs → observability-new-endpoints-tG3-odLa.cjs} +11 -10
  107. package/dist/observability-new-endpoints-tG3-odLa.cjs.map +1 -0
  108. package/dist/plans-CiPgWBhO.cjs +68 -0
  109. package/dist/plans-CiPgWBhO.cjs.map +1 -0
  110. package/dist/plans-DCepEY7n.js +57 -0
  111. package/dist/plans-DCepEY7n.js.map +1 -0
  112. package/dist/{probe-image-size-DBGjhUtJ.cjs → probe-image-size-Alv3gwKl.cjs} +194 -184
  113. package/dist/probe-image-size-Alv3gwKl.cjs.map +1 -0
  114. package/dist/{probe-image-size-Dmoxv93t.js → probe-image-size-BdfbUHxx.js} +158 -148
  115. package/dist/probe-image-size-BdfbUHxx.js.map +1 -0
  116. package/dist/responses-4FwMNxoJ.js +628 -0
  117. package/dist/responses-4FwMNxoJ.js.map +1 -0
  118. package/dist/responses-CCRijwDF.cjs +651 -0
  119. package/dist/responses-CCRijwDF.cjs.map +1 -0
  120. package/dist/{responses-CKNdSRkS.cjs → responses-CfcIc53b.cjs} +2 -2
  121. package/dist/{responses-CKNdSRkS.cjs.map → responses-CfcIc53b.cjs.map} +1 -1
  122. package/dist/{rolldown-runtime-Bd6kNlEP.cjs → rolldown-runtime-BwC_XMyb.cjs} +2 -2
  123. package/dist/{rolldown-runtime-maW3aOIk.js → rolldown-runtime-D3Hj5m0v.js} +2 -2
  124. package/dist/{route-builder-BNZs643f.cjs → route-builder-B2Qhhd7C.cjs} +52 -66
  125. package/dist/route-builder-B2Qhhd7C.cjs.map +1 -0
  126. package/dist/{route-builder-BfQYtclb.js → route-builder-CjkWxv4E.js} +51 -65
  127. package/dist/route-builder-CjkWxv4E.js.map +1 -0
  128. package/dist/{routes-rwufkyUe.js → routes-BC20mdNN.js} +30 -26
  129. package/dist/routes-BC20mdNN.js.map +1 -0
  130. package/dist/{routes-Dl6_kWm7.js → routes-CKfXiwRc.js} +5 -3
  131. package/dist/routes-CKfXiwRc.js.map +1 -0
  132. package/dist/{routes-DPojsNf1.cjs → routes-DGLJyqjD.cjs} +203 -199
  133. package/dist/routes-DGLJyqjD.cjs.map +1 -0
  134. package/dist/{routes-BULZI-PU.cjs → routes-jXksmX9G.cjs} +5 -3
  135. package/dist/routes-jXksmX9G.cjs.map +1 -0
  136. package/dist/{schedules-Bj-giFbc.cjs → schedules-GokZKBYg.cjs} +6 -4
  137. package/dist/schedules-GokZKBYg.cjs.map +1 -0
  138. package/dist/{schedules-BQYgaz66.js → schedules-_3zPKyqm.js} +5 -3
  139. package/dist/schedules-_3zPKyqm.js.map +1 -0
  140. package/dist/{schema-e0VHpMt0-C0452jOk.cjs → schema-CzbEIyhE-20gGIWkz.cjs} +83 -88
  141. package/dist/schema-CzbEIyhE-20gGIWkz.cjs.map +1 -0
  142. package/dist/{schema-e0VHpMt0-CVP5Hnxy.js → schema-CzbEIyhE-BsMcj9Ws.js} +82 -87
  143. package/dist/schema-CzbEIyhE-BsMcj9Ws.js.map +1 -0
  144. package/dist/scores-D9UgETt_.js +288 -0
  145. package/dist/scores-D9UgETt_.js.map +1 -0
  146. package/dist/scores-DRdtS7NT.cjs +329 -0
  147. package/dist/scores-DRdtS7NT.cjs.map +1 -0
  148. package/dist/server/a2a/store.cjs +1 -1
  149. package/dist/server/auth/index.cjs +2 -2
  150. package/dist/server/auth/index.js +1 -1
  151. package/dist/server/browser-stream/index.cjs +9 -11
  152. package/dist/server/browser-stream/index.cjs.map +1 -1
  153. package/dist/server/browser-stream/index.js +8 -10
  154. package/dist/server/browser-stream/index.js.map +1 -1
  155. package/dist/server/handlers/a2a.cjs +2 -2
  156. package/dist/server/handlers/a2a.js +1 -2
  157. package/dist/server/handlers/agent-builder.cjs +18 -648
  158. package/dist/server/handlers/agent-builder.js +1 -627
  159. package/dist/server/handlers/agent-controller.cjs +5 -5
  160. package/dist/server/handlers/agent-controller.cjs.map +1 -1
  161. package/dist/server/handlers/agent-controller.js +11 -9
  162. package/dist/server/handlers/agent-controller.js.map +1 -1
  163. package/dist/server/handlers/agent-versions.cjs +15 -8
  164. package/dist/server/handlers/agent-versions.cjs.map +1 -1
  165. package/dist/server/handlers/agent-versions.js +14 -7
  166. package/dist/server/handlers/agent-versions.js.map +1 -1
  167. package/dist/server/handlers/agents.cjs +51 -2860
  168. package/dist/server/handlers/agents.js +1 -2806
  169. package/dist/server/handlers/auth.cjs +14 -12
  170. package/dist/server/handlers/auth.cjs.map +1 -1
  171. package/dist/server/handlers/auth.js +20 -16
  172. package/dist/server/handlers/auth.js.map +1 -1
  173. package/dist/server/handlers/author-enrichment.cjs +1 -1
  174. package/dist/server/handlers/authorship.cjs +1 -1
  175. package/dist/server/handlers/authorship.cjs.map +1 -1
  176. package/dist/server/handlers/background-tasks.cjs +2 -2
  177. package/dist/server/handlers/background-tasks.js +1 -2
  178. package/dist/server/handlers/builder-registry.cjs +2 -2
  179. package/dist/server/handlers/builder-registry.js +1 -2
  180. package/dist/server/handlers/channels.cjs +2 -2
  181. package/dist/server/handlers/channels.js +1 -2
  182. package/dist/server/handlers/conversations.cjs +6 -171
  183. package/dist/server/handlers/conversations.js +1 -162
  184. package/dist/server/handlers/datasets.cjs +2 -2
  185. package/dist/server/handlers/datasets.cjs.map +1 -1
  186. package/dist/server/handlers/datasets.js +1 -1
  187. package/dist/server/handlers/dynamic-workflows.cjs +2 -2
  188. package/dist/server/handlers/dynamic-workflows.js +1 -2
  189. package/dist/server/handlers/editor-builder.cjs +2 -2
  190. package/dist/server/handlers/editor-builder.js +1 -2
  191. package/dist/server/handlers/error.cjs +18 -13
  192. package/dist/server/handlers/error.cjs.map +1 -1
  193. package/dist/server/handlers/error.js +17 -12
  194. package/dist/server/handlers/error.js.map +1 -1
  195. package/dist/server/handlers/favorites-enrichment.cjs +2 -2
  196. package/dist/server/handlers/favorites-enrichment.js +1 -1
  197. package/dist/server/handlers/gateway-memory-client.cjs +1 -1
  198. package/dist/server/handlers/logs.cjs +5 -104
  199. package/dist/server/handlers/logs.js +1 -96
  200. package/dist/server/handlers/mcp-client-versions.cjs +15 -8
  201. package/dist/server/handlers/mcp-client-versions.cjs.map +1 -1
  202. package/dist/server/handlers/mcp-client-versions.js +14 -7
  203. package/dist/server/handlers/mcp-client-versions.js.map +1 -1
  204. package/dist/server/handlers/mcp.cjs +16 -289
  205. package/dist/server/handlers/mcp.d.ts +219 -0
  206. package/dist/server/handlers/mcp.d.ts.map +1 -1
  207. package/dist/server/handlers/mcp.js +1 -274
  208. package/dist/server/handlers/memory.cjs +29 -1763
  209. package/dist/server/handlers/memory.js +1 -1731
  210. package/dist/server/handlers/observability-list-query-schemas.cjs +1 -1
  211. package/dist/server/handlers/observability-new-endpoints.cjs +2 -2
  212. package/dist/server/handlers/observability-new-endpoints.js +1 -2
  213. package/dist/server/handlers/observability-shared.cjs +2 -2
  214. package/dist/server/handlers/observability-shared.js +1 -1
  215. package/dist/server/handlers/observability-storage-schemas.cjs +1 -1
  216. package/dist/server/handlers/observability.cjs +14 -445
  217. package/dist/server/handlers/observability.js +3 -429
  218. package/dist/server/handlers/plans.cjs +3 -63
  219. package/dist/server/handlers/plans.js +1 -57
  220. package/dist/server/handlers/processor-providers.cjs +2 -2
  221. package/dist/server/handlers/processor-providers.cjs.map +1 -1
  222. package/dist/server/handlers/processor-providers.js +1 -1
  223. package/dist/server/handlers/processors.cjs +13 -15
  224. package/dist/server/handlers/processors.cjs.map +1 -1
  225. package/dist/server/handlers/processors.js +12 -14
  226. package/dist/server/handlers/processors.js.map +1 -1
  227. package/dist/server/handlers/prompt-block-versions.cjs +15 -8
  228. package/dist/server/handlers/prompt-block-versions.cjs.map +1 -1
  229. package/dist/server/handlers/prompt-block-versions.js +14 -7
  230. package/dist/server/handlers/prompt-block-versions.js.map +1 -1
  231. package/dist/server/handlers/responses.adapter.cjs +1 -1
  232. package/dist/server/handlers/responses.adapter.cjs.map +1 -1
  233. package/dist/server/handlers/responses.cjs +5 -632
  234. package/dist/server/handlers/responses.js +1 -624
  235. package/dist/server/handlers/responses.storage.cjs +2 -2
  236. package/dist/server/handlers/schedules-workflows-shim.cjs +1 -1
  237. package/dist/server/handlers/schedules.cjs +2 -2
  238. package/dist/server/handlers/schedules.d.ts +16 -0
  239. package/dist/server/handlers/schedules.d.ts.map +1 -1
  240. package/dist/server/handlers/schedules.js +1 -2
  241. package/dist/server/handlers/scorer-versions.cjs +15 -8
  242. package/dist/server/handlers/scorer-versions.cjs.map +1 -1
  243. package/dist/server/handlers/scorer-versions.js +14 -7
  244. package/dist/server/handlers/scorer-versions.js.map +1 -1
  245. package/dist/server/handlers/scores.cjs +8 -299
  246. package/dist/server/handlers/scores.js +1 -288
  247. package/dist/server/handlers/skills-sh-shared.cjs +1 -1
  248. package/dist/server/handlers/stored-agent-favorites.cjs +4 -4
  249. package/dist/server/handlers/stored-agent-favorites.js +3 -3
  250. package/dist/server/handlers/stored-agents.cjs +19 -13
  251. package/dist/server/handlers/stored-agents.cjs.map +1 -1
  252. package/dist/server/handlers/stored-agents.js +18 -12
  253. package/dist/server/handlers/stored-agents.js.map +1 -1
  254. package/dist/server/handlers/stored-mcp-clients.cjs +8 -6
  255. package/dist/server/handlers/stored-mcp-clients.cjs.map +1 -1
  256. package/dist/server/handlers/stored-mcp-clients.js +7 -5
  257. package/dist/server/handlers/stored-mcp-clients.js.map +1 -1
  258. package/dist/server/handlers/stored-prompt-blocks.cjs +3 -3
  259. package/dist/server/handlers/stored-prompt-blocks.js +2 -2
  260. package/dist/server/handlers/stored-scorers.cjs +3 -3
  261. package/dist/server/handlers/stored-scorers.js +2 -2
  262. package/dist/server/handlers/stored-skill-favorites.cjs +4 -4
  263. package/dist/server/handlers/stored-skill-favorites.js +3 -3
  264. package/dist/server/handlers/stored-skills.cjs +6 -5
  265. package/dist/server/handlers/stored-skills.cjs.map +1 -1
  266. package/dist/server/handlers/stored-skills.js +5 -4
  267. package/dist/server/handlers/stored-skills.js.map +1 -1
  268. package/dist/server/handlers/stored-workspaces.cjs +3 -3
  269. package/dist/server/handlers/stored-workspaces.js +2 -2
  270. package/dist/server/handlers/system.cjs +3 -3
  271. package/dist/server/handlers/system.cjs.map +1 -1
  272. package/dist/server/handlers/system.js +2 -2
  273. package/dist/server/handlers/test-utils.cjs +1 -1
  274. package/dist/server/handlers/tool-providers.cjs +2 -2
  275. package/dist/server/handlers/tool-providers.js +1 -1
  276. package/dist/server/handlers/tool-schema-overrides.cjs +1 -1
  277. package/dist/server/handlers/tools.cjs +7 -267
  278. package/dist/server/handlers/tools.js +1 -257
  279. package/dist/server/handlers/utils.cjs +2 -2
  280. package/dist/server/handlers/utils.js +1 -2
  281. package/dist/server/handlers/validate-agent-instructions.cjs +2 -2
  282. package/dist/server/handlers/validate-agent-instructions.js +1 -1
  283. package/dist/server/handlers/validate-avatar.cjs +2 -2
  284. package/dist/server/handlers/validate-avatar.cjs.map +1 -1
  285. package/dist/server/handlers/validate-avatar.js +1 -1
  286. package/dist/server/handlers/validate-avatar.js.map +1 -1
  287. package/dist/server/handlers/vector.cjs +17 -334
  288. package/dist/server/handlers/vector.js +1 -314
  289. package/dist/server/handlers/version-helpers.cjs +1 -1
  290. package/dist/server/handlers/voice.cjs +9 -35
  291. package/dist/server/handlers/voice.js +1 -23
  292. package/dist/server/handlers/workflow-builder.cjs +2 -2
  293. package/dist/server/handlers/workflow-builder.js +1 -2
  294. package/dist/server/handlers/workflows.cjs +30 -1293
  295. package/dist/server/handlers/workflows.js +1 -1257
  296. package/dist/server/handlers/workspace.cjs +27 -1176
  297. package/dist/server/handlers/workspace.js +1 -1146
  298. package/dist/server/handlers.cjs +33 -33
  299. package/dist/server/handlers.js +17 -17
  300. package/dist/server/schemas/index.cjs +7 -7
  301. package/dist/server/schemas/index.js +4 -4
  302. package/dist/server/schemas/mcp.d.ts +102 -0
  303. package/dist/server/schemas/mcp.d.ts.map +1 -1
  304. package/dist/server/schemas/schedules.d.ts +5 -0
  305. package/dist/server/schemas/schedules.d.ts.map +1 -1
  306. package/dist/server/server-adapter/index.cjs +5 -5
  307. package/dist/server/server-adapter/index.cjs.map +1 -1
  308. package/dist/server/server-adapter/index.js +4 -4
  309. package/dist/server/server-adapter/index.js.map +1 -1
  310. package/dist/server/server-adapter/routes/mcp.d.ts +214 -0
  311. package/dist/server/server-adapter/routes/mcp.d.ts.map +1 -1
  312. package/dist/tools-CmFSfDMn.js +256 -0
  313. package/dist/tools-CmFSfDMn.js.map +1 -0
  314. package/dist/tools-SPJtxG9N.cjs +291 -0
  315. package/dist/tools-SPJtxG9N.cjs.map +1 -0
  316. package/dist/{utils-DCgeTrq2.cjs → utils-CF76qzZR.cjs} +12 -17
  317. package/dist/{utils-DCgeTrq2.cjs.map → utils-CF76qzZR.cjs.map} +1 -1
  318. package/dist/{utils-DCAUeb6M.js → utils-aoLN3Wfi.js} +11 -16
  319. package/dist/{utils-DCAUeb6M.js.map → utils-aoLN3Wfi.js.map} +1 -1
  320. package/dist/{utils-Du-EpvDs.cjs → utils-dDLIDg8O.cjs} +2 -2
  321. package/dist/{utils-Du-EpvDs.cjs.map → utils-dDLIDg8O.cjs.map} +1 -1
  322. package/dist/vector-BKDD1kwc.cjs +409 -0
  323. package/dist/vector-BKDD1kwc.cjs.map +1 -0
  324. package/dist/vector-TWv4t-4g.js +314 -0
  325. package/dist/vector-TWv4t-4g.js.map +1 -0
  326. package/dist/voice-BnGwlZ75.cjs +70 -0
  327. package/dist/voice-BnGwlZ75.cjs.map +1 -0
  328. package/dist/voice-DjG8tBAD.js +23 -0
  329. package/dist/voice-DjG8tBAD.js.map +1 -0
  330. package/dist/{workflow-builder-Brj3IArM.cjs → workflow-builder-C9-8ZOWF.cjs} +5 -5
  331. package/dist/{workflow-builder-Brj3IArM.cjs.map → workflow-builder-C9-8ZOWF.cjs.map} +1 -1
  332. package/dist/{workflow-builder-DOa1Vx6w.js → workflow-builder-CjlLoQvo.js} +10 -8
  333. package/dist/{workflow-builder-DOa1Vx6w.js.map → workflow-builder-CjlLoQvo.js.map} +1 -1
  334. package/dist/workflows-DjqeJcdJ.cjs +1446 -0
  335. package/dist/workflows-DjqeJcdJ.cjs.map +1 -0
  336. package/dist/workflows-bb-otd2o.js +1273 -0
  337. package/dist/workflows-bb-otd2o.js.map +1 -0
  338. package/dist/workspace-B6kzp-bo.js +1154 -0
  339. package/dist/workspace-B6kzp-bo.js.map +1 -0
  340. package/dist/workspace-COKR1SxH.cjs +1309 -0
  341. package/dist/workspace-COKR1SxH.cjs.map +1 -0
  342. package/package.json +4 -4
  343. package/dist/a2a-B465DD1u.cjs.map +0 -1
  344. package/dist/a2a-CHBSYHxu.js.map +0 -1
  345. package/dist/dist-9c3PXXpk.cjs.map +0 -1
  346. package/dist/dist-B5OwHWTo.cjs +0 -2294
  347. package/dist/dist-B5OwHWTo.cjs.map +0 -1
  348. package/dist/dist-DGCnbhNe.js.map +0 -1
  349. package/dist/dist-DcoIg_tp.js +0 -2293
  350. package/dist/dist-DcoIg_tp.js.map +0 -1
  351. package/dist/mcp-DzpwLXEY.js.map +0 -1
  352. package/dist/mcp-ShaKO7gA.cjs.map +0 -1
  353. package/dist/observability-new-endpoints-AMp9bnMV.cjs.map +0 -1
  354. package/dist/probe-image-size-DBGjhUtJ.cjs.map +0 -1
  355. package/dist/probe-image-size-Dmoxv93t.js.map +0 -1
  356. package/dist/route-builder-BNZs643f.cjs.map +0 -1
  357. package/dist/route-builder-BfQYtclb.js.map +0 -1
  358. package/dist/routes-BULZI-PU.cjs.map +0 -1
  359. package/dist/routes-DPojsNf1.cjs.map +0 -1
  360. package/dist/routes-Dl6_kWm7.js.map +0 -1
  361. package/dist/routes-rwufkyUe.js.map +0 -1
  362. package/dist/schedules-BQYgaz66.js.map +0 -1
  363. package/dist/schedules-Bj-giFbc.cjs.map +0 -1
  364. package/dist/schema-Drf2W04o.js +0 -2
  365. package/dist/schema-EQanefYq.cjs +0 -1
  366. package/dist/schema-e0VHpMt0-C0452jOk.cjs.map +0 -1
  367. package/dist/schema-e0VHpMt0-CVP5Hnxy.js.map +0 -1
  368. package/dist/server/handlers/agent-builder.cjs.map +0 -1
  369. package/dist/server/handlers/agent-builder.js.map +0 -1
  370. package/dist/server/handlers/agents.cjs.map +0 -1
  371. package/dist/server/handlers/agents.js.map +0 -1
  372. package/dist/server/handlers/conversations.cjs.map +0 -1
  373. package/dist/server/handlers/conversations.js.map +0 -1
  374. package/dist/server/handlers/logs.cjs.map +0 -1
  375. package/dist/server/handlers/logs.js.map +0 -1
  376. package/dist/server/handlers/mcp.cjs.map +0 -1
  377. package/dist/server/handlers/mcp.js.map +0 -1
  378. package/dist/server/handlers/memory.cjs.map +0 -1
  379. package/dist/server/handlers/memory.js.map +0 -1
  380. package/dist/server/handlers/observability.cjs.map +0 -1
  381. package/dist/server/handlers/observability.js.map +0 -1
  382. package/dist/server/handlers/plans.cjs.map +0 -1
  383. package/dist/server/handlers/plans.js.map +0 -1
  384. package/dist/server/handlers/responses.cjs.map +0 -1
  385. package/dist/server/handlers/responses.js.map +0 -1
  386. package/dist/server/handlers/scores.cjs.map +0 -1
  387. package/dist/server/handlers/scores.js.map +0 -1
  388. package/dist/server/handlers/tools.cjs.map +0 -1
  389. package/dist/server/handlers/tools.js.map +0 -1
  390. package/dist/server/handlers/vector.cjs.map +0 -1
  391. package/dist/server/handlers/vector.js.map +0 -1
  392. package/dist/server/handlers/voice.cjs.map +0 -1
  393. package/dist/server/handlers/voice.js.map +0 -1
  394. package/dist/server/handlers/workflows.cjs.map +0 -1
  395. package/dist/server/handlers/workflows.js.map +0 -1
  396. package/dist/server/handlers/workspace.cjs.map +0 -1
  397. package/dist/server/handlers/workspace.js.map +0 -1
  398. package/dist/sync-Ai_ZDz7U.js +0 -1700
  399. package/dist/sync-Ai_ZDz7U.js.map +0 -1
  400. package/dist/sync-BrO5MtSe.cjs +0 -1729
  401. package/dist/sync-BrO5MtSe.cjs.map +0 -1
@@ -25,6 +25,7 @@ export declare const MCP_ROUTES: readonly [Omit<import("@mastra/core/server").Ap
25
25
  is_latest: boolean;
26
26
  };
27
27
  transports?: ("sse" | "streamable-http")[] | undefined;
28
+ events_capability?: boolean | undefined;
28
29
  }[];
29
30
  total_count: number;
30
31
  next: string | null;
@@ -57,6 +58,7 @@ export declare const MCP_ROUTES: readonly [Omit<import("@mastra/core/server").Ap
57
58
  sse: "sse";
58
59
  "streamable-http": "streamable-http";
59
60
  }>>>;
61
+ events_capability: import("zod").ZodOptional<import("zod").ZodBoolean>;
60
62
  }, import("zod/v4/core").$strip>>;
61
63
  total_count: import("zod").ZodNumber;
62
64
  next: import("zod").ZodNullable<import("zod").ZodString>;
@@ -86,6 +88,7 @@ export declare const MCP_ROUTES: readonly [Omit<import("@mastra/core/server").Ap
86
88
  packages?: unknown[] | undefined;
87
89
  remotes?: unknown[] | undefined;
88
90
  transports?: ("sse" | "streamable-http")[] | undefined;
91
+ events_capability?: boolean | undefined;
89
92
  }>;
90
93
  pathParamSchema?: import("zod").ZodSchema;
91
94
  queryParamSchema?: import("zod").ZodSchema;
@@ -117,6 +120,7 @@ export declare const MCP_ROUTES: readonly [Omit<import("@mastra/core/server").Ap
117
120
  sse: "sse";
118
121
  "streamable-http": "streamable-http";
119
122
  }>>>;
123
+ events_capability: import("zod").ZodOptional<import("zod").ZodBoolean>;
120
124
  }, import("zod/v4/core").$strip>> | undefined;
121
125
  } & {
122
126
  readonly _mastraSchemaRoute: true;
@@ -336,6 +340,216 @@ export declare const MCP_ROUTES: readonly [Omit<import("@mastra/core/server").Ap
336
340
  }, import("zod/v4/core").$strip>> | undefined;
337
341
  } & {
338
342
  readonly _mastraSchemaRoute: true;
343
+ }, Omit<import("@mastra/core/server").ApiRoute, "createHandler" | "handler" | "method" | "openapi" | "path"> & {
344
+ method: "GET";
345
+ path: "/mcp/:serverId/events";
346
+ responseType: "json";
347
+ streamFormat?: 'sse' | 'stream';
348
+ sseFlushOnConnect?: boolean;
349
+ handler(params: {
350
+ serverId: string;
351
+ } & import(".").ServerContext): Promise<{
352
+ events: {
353
+ name: string;
354
+ description?: string | undefined;
355
+ delivery: ("poll" | "push" | "webhook")[];
356
+ inputSchema?: Record<string, unknown> | undefined;
357
+ payloadSchema?: Record<string, unknown> | undefined;
358
+ emittable: boolean;
359
+ }[];
360
+ testEmit: boolean;
361
+ }>;
362
+ pathParamSchema?: import("zod").ZodSchema;
363
+ queryParamSchema?: import("zod").ZodSchema;
364
+ bodySchema?: import("zod").ZodSchema;
365
+ responseSchema?: import("zod").ZodSchema;
366
+ openapi?: import("../openapi-utils").OpenAPIRoute;
367
+ maxBodySize?: number;
368
+ deprecated?: boolean;
369
+ requiresPermission?: import("@mastra/core/auth").MastraFGAPermissionInput | import("@mastra/core/auth").MastraFGAPermissionInput[];
370
+ fga?: import("@mastra/core/auth").FGARouteConfig;
371
+ onValidationError?: import("@mastra/core/server").ValidationErrorHook;
372
+ readonly __schemas?: import(".").RouteSchemas<import("zod").ZodObject<{
373
+ serverId: import("zod").ZodString;
374
+ }, import("zod/v4/core").$strip>, undefined, undefined, import("zod").ZodObject<{
375
+ events: import("zod").ZodArray<import("zod").ZodObject<{
376
+ name: import("zod").ZodString;
377
+ description: import("zod").ZodOptional<import("zod").ZodString>;
378
+ delivery: import("zod").ZodArray<import("zod").ZodEnum<{
379
+ poll: "poll";
380
+ push: "push";
381
+ webhook: "webhook";
382
+ }>>;
383
+ inputSchema: import("zod").ZodOptional<import("zod").ZodRecord<import("zod").ZodString, import("zod").ZodUnknown>>;
384
+ payloadSchema: import("zod").ZodOptional<import("zod").ZodRecord<import("zod").ZodString, import("zod").ZodUnknown>>;
385
+ emittable: import("zod").ZodBoolean;
386
+ }, import("zod/v4/core").$strip>>;
387
+ testEmit: import("zod").ZodBoolean;
388
+ }, import("zod/v4/core").$strip>> | undefined;
389
+ } & {
390
+ readonly _mastraSchemaRoute: true;
391
+ }, Omit<import("@mastra/core/server").ApiRoute, "createHandler" | "handler" | "method" | "openapi" | "path"> & {
392
+ method: "POST";
393
+ path: "/mcp/:serverId/events/:eventName/poll";
394
+ responseType: "json";
395
+ streamFormat?: 'sse' | 'stream';
396
+ sseFlushOnConnect?: boolean;
397
+ handler(params: {
398
+ serverId: string;
399
+ eventName: string;
400
+ } & {
401
+ arguments?: Record<string, unknown> | undefined;
402
+ cursor?: string | null | undefined;
403
+ maxEvents?: number | undefined;
404
+ } & import(".").ServerContext): Promise<{
405
+ events: {
406
+ eventId: string;
407
+ name: string;
408
+ timestamp: string;
409
+ data: Record<string, unknown>;
410
+ cursor?: string | null | undefined;
411
+ _meta?: Record<string, unknown> | undefined;
412
+ }[];
413
+ cursor: string | null;
414
+ hasMore?: boolean | undefined;
415
+ truncated?: boolean | undefined;
416
+ nextPollMs?: number | undefined;
417
+ }>;
418
+ pathParamSchema?: import("zod").ZodSchema;
419
+ queryParamSchema?: import("zod").ZodSchema;
420
+ bodySchema?: import("zod").ZodSchema;
421
+ responseSchema?: import("zod").ZodSchema;
422
+ openapi?: import("../openapi-utils").OpenAPIRoute;
423
+ maxBodySize?: number;
424
+ deprecated?: boolean;
425
+ requiresPermission?: import("@mastra/core/auth").MastraFGAPermissionInput | import("@mastra/core/auth").MastraFGAPermissionInput[];
426
+ fga?: import("@mastra/core/auth").FGARouteConfig;
427
+ onValidationError?: import("@mastra/core/server").ValidationErrorHook;
428
+ readonly __schemas?: import(".").RouteSchemas<import("zod").ZodObject<{
429
+ serverId: import("zod").ZodString;
430
+ eventName: import("zod").ZodString;
431
+ }, import("zod/v4/core").$strip>, undefined, import("zod").ZodObject<{
432
+ arguments: import("zod").ZodOptional<import("zod").ZodRecord<import("zod").ZodString, import("zod").ZodUnknown>>;
433
+ cursor: import("zod").ZodOptional<import("zod").ZodNullable<import("zod").ZodString>>;
434
+ maxEvents: import("zod").ZodOptional<import("zod").ZodNumber>;
435
+ }, import("zod/v4/core").$strip>, import("zod").ZodObject<{
436
+ events: import("zod").ZodArray<import("zod").ZodObject<{
437
+ eventId: import("zod").ZodString;
438
+ name: import("zod").ZodString;
439
+ timestamp: import("zod").ZodString;
440
+ data: import("zod").ZodRecord<import("zod").ZodString, import("zod").ZodUnknown>;
441
+ cursor: import("zod").ZodOptional<import("zod").ZodNullable<import("zod").ZodString>>;
442
+ _meta: import("zod").ZodOptional<import("zod").ZodRecord<import("zod").ZodString, import("zod").ZodUnknown>>;
443
+ }, import("zod/v4/core").$strip>>;
444
+ cursor: import("zod").ZodNullable<import("zod").ZodString>;
445
+ hasMore: import("zod").ZodOptional<import("zod").ZodBoolean>;
446
+ truncated: import("zod").ZodOptional<import("zod").ZodBoolean>;
447
+ nextPollMs: import("zod").ZodOptional<import("zod").ZodNumber>;
448
+ }, import("zod/v4/core").$strip>> | undefined;
449
+ } & {
450
+ readonly _mastraSchemaRoute: true;
451
+ }, Omit<import("@mastra/core/server").ApiRoute, "createHandler" | "handler" | "method" | "openapi" | "path"> & {
452
+ method: "POST";
453
+ path: "/mcp/:serverId/events/:eventName/stream";
454
+ responseType: "stream";
455
+ streamFormat?: 'sse' | 'stream';
456
+ sseFlushOnConnect?: boolean;
457
+ handler(params: {
458
+ serverId: string;
459
+ eventName: string;
460
+ } & {
461
+ arguments?: Record<string, unknown> | undefined;
462
+ cursor?: string | null | undefined;
463
+ } & import(".").ServerContext): Promise<import("./stream-types").MastraStreamReturn>;
464
+ pathParamSchema?: import("zod").ZodSchema;
465
+ queryParamSchema?: import("zod").ZodSchema;
466
+ bodySchema?: import("zod").ZodSchema;
467
+ responseSchema?: import("zod").ZodSchema;
468
+ openapi?: import("../openapi-utils").OpenAPIRoute;
469
+ maxBodySize?: number;
470
+ deprecated?: boolean;
471
+ requiresPermission?: import("@mastra/core/auth").MastraFGAPermissionInput | import("@mastra/core/auth").MastraFGAPermissionInput[];
472
+ fga?: import("@mastra/core/auth").FGARouteConfig;
473
+ onValidationError?: import("@mastra/core/server").ValidationErrorHook;
474
+ readonly __schemas?: import(".").RouteSchemas<import("zod").ZodObject<{
475
+ serverId: import("zod").ZodString;
476
+ eventName: import("zod").ZodString;
477
+ }, import("zod/v4/core").$strip>, undefined, import("zod").ZodObject<{
478
+ arguments: import("zod").ZodOptional<import("zod").ZodRecord<import("zod").ZodString, import("zod").ZodUnknown>>;
479
+ cursor: import("zod").ZodOptional<import("zod").ZodNullable<import("zod").ZodString>>;
480
+ }, import("zod/v4/core").$strip>, import("zod").ZodDiscriminatedUnion<[import("zod").ZodObject<{
481
+ type: import("zod").ZodLiteral<"active">;
482
+ cursor: import("zod").ZodNullable<import("zod").ZodString>;
483
+ truncated: import("zod").ZodBoolean;
484
+ }, import("zod/v4/core").$strip>, import("zod").ZodObject<{
485
+ type: import("zod").ZodLiteral<"event">;
486
+ occurrence: import("zod").ZodObject<{
487
+ eventId: import("zod").ZodString;
488
+ name: import("zod").ZodString;
489
+ timestamp: import("zod").ZodString;
490
+ data: import("zod").ZodRecord<import("zod").ZodString, import("zod").ZodUnknown>;
491
+ cursor: import("zod").ZodOptional<import("zod").ZodNullable<import("zod").ZodString>>;
492
+ _meta: import("zod").ZodOptional<import("zod").ZodRecord<import("zod").ZodString, import("zod").ZodUnknown>>;
493
+ }, import("zod/v4/core").$strip>;
494
+ }, import("zod/v4/core").$strip>, import("zod").ZodObject<{
495
+ type: import("zod").ZodLiteral<"heartbeat">;
496
+ cursor: import("zod").ZodNullable<import("zod").ZodString>;
497
+ }, import("zod/v4/core").$strip>, import("zod").ZodObject<{
498
+ type: import("zod").ZodLiteral<"error">;
499
+ message: import("zod").ZodString;
500
+ }, import("zod/v4/core").$strip>, import("zod").ZodObject<{
501
+ type: import("zod").ZodLiteral<"terminated">;
502
+ }, import("zod/v4/core").$strip>], "type">> | undefined;
503
+ } & {
504
+ readonly _mastraSchemaRoute: true;
505
+ }, Omit<import("@mastra/core/server").ApiRoute, "createHandler" | "handler" | "method" | "openapi" | "path"> & {
506
+ method: "POST";
507
+ path: "/mcp/:serverId/events/:eventName/emit";
508
+ responseType: "json";
509
+ streamFormat?: 'sse' | 'stream';
510
+ sseFlushOnConnect?: boolean;
511
+ handler(params: {
512
+ serverId: string;
513
+ eventName: string;
514
+ } & {
515
+ data: Record<string, unknown>;
516
+ } & import(".").ServerContext): Promise<{
517
+ occurrence: {
518
+ eventId: string;
519
+ name: string;
520
+ timestamp: string;
521
+ data: Record<string, unknown>;
522
+ cursor?: string | null | undefined;
523
+ _meta?: Record<string, unknown> | undefined;
524
+ };
525
+ }>;
526
+ pathParamSchema?: import("zod").ZodSchema;
527
+ queryParamSchema?: import("zod").ZodSchema;
528
+ bodySchema?: import("zod").ZodSchema;
529
+ responseSchema?: import("zod").ZodSchema;
530
+ openapi?: import("../openapi-utils").OpenAPIRoute;
531
+ maxBodySize?: number;
532
+ deprecated?: boolean;
533
+ requiresPermission?: import("@mastra/core/auth").MastraFGAPermissionInput | import("@mastra/core/auth").MastraFGAPermissionInput[];
534
+ fga?: import("@mastra/core/auth").FGARouteConfig;
535
+ onValidationError?: import("@mastra/core/server").ValidationErrorHook;
536
+ readonly __schemas?: import(".").RouteSchemas<import("zod").ZodObject<{
537
+ serverId: import("zod").ZodString;
538
+ eventName: import("zod").ZodString;
539
+ }, import("zod/v4/core").$strip>, undefined, import("zod").ZodObject<{
540
+ data: import("zod").ZodRecord<import("zod").ZodString, import("zod").ZodUnknown>;
541
+ }, import("zod/v4/core").$strip>, import("zod").ZodObject<{
542
+ occurrence: import("zod").ZodObject<{
543
+ eventId: import("zod").ZodString;
544
+ name: import("zod").ZodString;
545
+ timestamp: import("zod").ZodString;
546
+ data: import("zod").ZodRecord<import("zod").ZodString, import("zod").ZodUnknown>;
547
+ cursor: import("zod").ZodOptional<import("zod").ZodNullable<import("zod").ZodString>>;
548
+ _meta: import("zod").ZodOptional<import("zod").ZodRecord<import("zod").ZodString, import("zod").ZodUnknown>>;
549
+ }, import("zod/v4/core").$strip>;
550
+ }, import("zod/v4/core").$strip>> | undefined;
551
+ } & {
552
+ readonly _mastraSchemaRoute: true;
339
553
  }, Omit<import("@mastra/core/server").ApiRoute, "createHandler" | "handler" | "method" | "openapi" | "path"> & {
340
554
  method: "ALL";
341
555
  path: "/mcp/:serverId/mcp";
@@ -1 +1 @@
1
- {"version":3,"file":"mcp.d.ts","sourceRoot":"","sources":["../../../../src/server/server-adapter/routes/mcp.ts"],"names":[],"mappings":"AAaA;;;;;GAKG;AACH,eAAO,MAAM,UAAU;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA0Bb,CAAC"}
1
+ {"version":3,"file":"mcp.d.ts","sourceRoot":"","sources":["../../../../src/server/server-adapter/routes/mcp.ts"],"names":[],"mappings":"AAiBA;;;;;GAKG;AACH,eAAO,MAAM,UAAU;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAkCb,CAAC"}
@@ -0,0 +1,256 @@
1
+ import { r as __exportAll } from "./rolldown-runtime-D3Hj5m0v.js";
2
+ import { t as HTTPException } from "./http-exception-CyfxZB6W.js";
3
+ import { o as optionalRunIdSchema } from "./common-Y30XtCyr.js";
4
+ import { $ as toolIdPathParams, E as listToolsResponseSchema, b as executeToolContextBodySchema, l as agentToolPathParams, q as serializedToolSchema, x as executeToolResponseSchema, y as executeToolBodySchema } from "./agents-BHLTMBff.js";
5
+ import { n as standardSchemaToJSONSchema, r as toStandardSchema } from "./schema-CzbEIyhE-BsMcj9Ws.js";
6
+ import { n as createRoute } from "./route-builder-CjkWxv4E.js";
7
+ import { l as stringify } from "./utils-aoLN3Wfi.js";
8
+ import { handleError } from "./server/handlers/error.js";
9
+ import { g as MastraFGAPermissions, p as validateBody } from "./utils-BBJlS81s.js";
10
+ import { stripInjectedToolOverrideFields } from "./server/handlers/tool-schema-overrides.js";
11
+ import { W as getAgentFromSystem } from "./agents-DRQ3ScbX.js";
12
+ import { isProviderDefinedTool, isVercelTool } from "@mastra/core/tools";
13
+ //#region src/server/handlers/tools.ts
14
+ var tools_exports = /* @__PURE__ */ __exportAll({
15
+ EXECUTE_AGENT_TOOL_ROUTE: () => EXECUTE_AGENT_TOOL_ROUTE,
16
+ EXECUTE_TOOL_ROUTE: () => EXECUTE_TOOL_ROUTE,
17
+ GET_AGENT_TOOL_ROUTE: () => GET_AGENT_TOOL_ROUTE,
18
+ GET_TOOL_BY_ID_ROUTE: () => GET_TOOL_BY_ID_ROUTE,
19
+ LIST_TOOLS_ROUTE: () => LIST_TOOLS_ROUTE
20
+ });
21
+ /**
22
+ * Resolves a schema that may be a lazy function (e.g. AI SDK provider tools).
23
+ * Recursively resolves until a non-function value is returned.
24
+ * Skips functions that are themselves valid schemas (e.g. ArkType types are
25
+ * callable but also implement StandardSchema via ~standard).
26
+ */
27
+ function resolveLazySchema(schema) {
28
+ if (typeof schema === "function" && !("~standard" in schema)) return resolveLazySchema(schema());
29
+ return schema;
30
+ }
31
+ function schemaToJsonSchema(schema) {
32
+ if (!schema) return;
33
+ return standardSchemaToJSONSchema(toStandardSchema(schema), { target: "draft-2020-12" });
34
+ }
35
+ function serializeSchema(schema, options) {
36
+ const jsonSchema = schemaToJsonSchema(resolveLazySchema(schema));
37
+ if (jsonSchema === void 0) return void 0;
38
+ return stringify(options?.stripInjectedOverrides ? stripInjectedToolOverrideFields(jsonSchema) : jsonSchema);
39
+ }
40
+ /**
41
+ * Searches dynamically-resolved agent tools (provided via `toolsResolver` /
42
+ * function-based `tools`) for a tool with the given id. Used as a fallback
43
+ * after the static tool registry (`registeredTools` + `mastra.getToolById`)
44
+ * misses, so global tool routes can resolve tools that only exist on agents.
45
+ *
46
+ * Errors thrown by an individual agent's `listTools()` are logged and
47
+ * skipped so a single broken resolver doesn't take down the whole lookup.
48
+ */
49
+ async function findToolInAgents(mastra, toolId, requestContext) {
50
+ const agents = mastra.listAgents() || {};
51
+ for (const agent of Object.values(agents)) try {
52
+ const agentTools = await agent.listTools({ requestContext });
53
+ const found = Object.values(agentTools || {}).find((t) => t.id === toolId);
54
+ if (found) return found;
55
+ } catch (error) {
56
+ mastra.getLogger?.()?.warn?.("Failed to list tools for agent while resolving tool by id", {
57
+ agentId: agent?.id,
58
+ toolId,
59
+ error: error instanceof Error ? error.message : String(error)
60
+ });
61
+ }
62
+ }
63
+ /**
64
+ * Serializes a tool for API responses, handling both regular tools (with Zod schemas)
65
+ * and provider-defined tools (with AI SDK lazy schemas).
66
+ */
67
+ function serializeTool(tool) {
68
+ if (isProviderDefinedTool(tool)) {
69
+ const resolvedInput = resolveLazySchema(tool.inputSchema);
70
+ const resolvedOutput = resolveLazySchema(tool.outputSchema);
71
+ return {
72
+ ...tool,
73
+ inputSchema: resolvedInput && typeof resolvedInput === "object" && "jsonSchema" in resolvedInput ? stringify(resolvedInput.jsonSchema) : void 0,
74
+ outputSchema: resolvedOutput && typeof resolvedOutput === "object" && "jsonSchema" in resolvedOutput ? stringify(resolvedOutput.jsonSchema) : void 0
75
+ };
76
+ }
77
+ return {
78
+ ...tool,
79
+ inputSchema: serializeSchema(tool.inputSchema, { stripInjectedOverrides: true }),
80
+ outputSchema: serializeSchema(tool.outputSchema),
81
+ requestContextSchema: serializeSchema(tool.requestContextSchema)
82
+ };
83
+ }
84
+ const LIST_TOOLS_ROUTE = createRoute({
85
+ method: "GET",
86
+ path: "/tools",
87
+ responseType: "json",
88
+ responseSchema: listToolsResponseSchema,
89
+ summary: "List all tools",
90
+ description: "Returns a list of all available tools in the system",
91
+ tags: ["Tools"],
92
+ requiresAuth: true,
93
+ handler: async ({ mastra, registeredTools, requestContext }) => {
94
+ try {
95
+ const registered = registeredTools && Object.keys(registeredTools).length > 0 ? registeredTools : {};
96
+ const allTools = {};
97
+ const seenToolIds = /* @__PURE__ */ new Map();
98
+ for (const [key, tool] of Object.entries(registered)) {
99
+ const toolId = typeof tool?.id === "string" ? tool.id : void 0;
100
+ if (toolId !== void 0) seenToolIds.set(toolId, key);
101
+ allTools[key] = tool;
102
+ }
103
+ for (const [key, tool] of Object.entries(mastra.listTools() ?? {})) {
104
+ const toolId = typeof tool?.id === "string" ? tool.id : void 0;
105
+ if (toolId !== void 0 && seenToolIds.has(toolId)) continue;
106
+ if (toolId !== void 0) seenToolIds.set(toolId, key);
107
+ allTools[key] = tool;
108
+ }
109
+ const serializedTools = Object.entries(allTools).reduce((acc, [id, _tool]) => {
110
+ acc[id] = serializeTool(_tool);
111
+ return acc;
112
+ }, {});
113
+ const fgaProvider = mastra.getServer?.()?.fga;
114
+ const user = requestContext?.get("user");
115
+ if (fgaProvider && user) {
116
+ const toolList = Object.entries(serializedTools).map(([id, t]) => ({
117
+ id,
118
+ ...t
119
+ }));
120
+ const accessible = await fgaProvider.filterAccessible(user, toolList, "tool", MastraFGAPermissions.TOOLS_READ);
121
+ const accessibleSet = new Set(accessible.map((t) => t.id));
122
+ for (const id of Object.keys(serializedTools)) if (!accessibleSet.has(id)) delete serializedTools[id];
123
+ }
124
+ return serializedTools;
125
+ } catch (error) {
126
+ return handleError(error, "Error getting tools");
127
+ }
128
+ }
129
+ });
130
+ const GET_TOOL_BY_ID_ROUTE = createRoute({
131
+ method: "GET",
132
+ path: "/tools/:toolId",
133
+ responseType: "json",
134
+ pathParamSchema: toolIdPathParams,
135
+ responseSchema: serializedToolSchema,
136
+ summary: "Get tool by ID",
137
+ description: "Returns details for a specific tool including its schema and configuration",
138
+ tags: ["Tools"],
139
+ requiresAuth: true,
140
+ handler: async ({ mastra, registeredTools, toolId, requestContext }) => {
141
+ try {
142
+ let tool;
143
+ if (registeredTools && Object.keys(registeredTools).length > 0) tool = Object.values(registeredTools).find((t) => t.id === toolId);
144
+ if (!tool) try {
145
+ tool = mastra.getToolById(toolId);
146
+ } catch {}
147
+ if (!tool) tool = await findToolInAgents(mastra, toolId, requestContext);
148
+ if (!tool) throw new HTTPException(404, { message: "Tool not found" });
149
+ return serializeTool(tool);
150
+ } catch (error) {
151
+ return handleError(error, "Error getting tool");
152
+ }
153
+ }
154
+ });
155
+ const EXECUTE_TOOL_ROUTE = createRoute({
156
+ method: "POST",
157
+ path: "/tools/:toolId/execute",
158
+ responseType: "json",
159
+ pathParamSchema: toolIdPathParams,
160
+ queryParamSchema: optionalRunIdSchema,
161
+ bodySchema: executeToolContextBodySchema,
162
+ responseSchema: executeToolResponseSchema,
163
+ summary: "Execute tool",
164
+ description: "Executes a specific tool with the provided input data",
165
+ tags: ["Tools"],
166
+ requiresAuth: true,
167
+ handler: async ({ mastra, runId, toolId, registeredTools, requestContext, ...bodyParams }) => {
168
+ try {
169
+ if (!toolId) throw new HTTPException(400, { message: "Tool ID is required" });
170
+ let tool;
171
+ if (registeredTools && Object.keys(registeredTools).length > 0) tool = Object.values(registeredTools).find((t) => t.id === toolId);
172
+ if (!tool) try {
173
+ tool = mastra.getToolById(toolId);
174
+ } catch {}
175
+ if (!tool) tool = await findToolInAgents(mastra, toolId, requestContext);
176
+ if (!tool) throw new HTTPException(404, { message: "Tool not found" });
177
+ if (!tool?.execute) throw new HTTPException(400, { message: "Tool is not executable" });
178
+ const { data } = bodyParams;
179
+ validateBody({ data });
180
+ let result;
181
+ if (isVercelTool(tool)) result = await tool.execute(data);
182
+ else result = await tool.execute(data, {
183
+ mastra,
184
+ requestContext,
185
+ tracingContext: { currentSpan: void 0 },
186
+ ...runId ? { workflow: {
187
+ runId,
188
+ suspend: async () => {}
189
+ } } : {}
190
+ });
191
+ return result;
192
+ } catch (error) {
193
+ return handleError(error, "Error executing tool");
194
+ }
195
+ }
196
+ });
197
+ const GET_AGENT_TOOL_ROUTE = createRoute({
198
+ method: "GET",
199
+ path: "/agents/:agentId/tools/:toolId",
200
+ responseType: "json",
201
+ pathParamSchema: agentToolPathParams,
202
+ responseSchema: serializedToolSchema,
203
+ summary: "Get agent tool",
204
+ description: "Returns details for a specific tool assigned to the agent",
205
+ tags: ["Agents", "Tools"],
206
+ requiresAuth: true,
207
+ handler: async ({ mastra, agentId, toolId, requestContext }) => {
208
+ try {
209
+ if (!agentId) throw new HTTPException(400, { message: "Agent ID is required" });
210
+ const agentTools = await (await getAgentFromSystem({
211
+ mastra,
212
+ agentId
213
+ })).listTools({ requestContext });
214
+ const tool = Object.values(agentTools || {}).find((tool) => tool.id === toolId);
215
+ if (!tool) throw new HTTPException(404, { message: "Tool not found" });
216
+ return serializeTool(tool);
217
+ } catch (error) {
218
+ return handleError(error, "Error getting agent tool");
219
+ }
220
+ }
221
+ });
222
+ const EXECUTE_AGENT_TOOL_ROUTE = createRoute({
223
+ method: "POST",
224
+ path: "/agents/:agentId/tools/:toolId/execute",
225
+ responseType: "json",
226
+ pathParamSchema: agentToolPathParams,
227
+ bodySchema: executeToolBodySchema,
228
+ responseSchema: executeToolResponseSchema,
229
+ summary: "Execute agent tool",
230
+ description: "Executes a specific tool assigned to the agent with the provided input data",
231
+ tags: ["Agents", "Tools"],
232
+ requiresAuth: true,
233
+ handler: async ({ mastra, agentId, toolId, data, requestContext }) => {
234
+ try {
235
+ if (!agentId) throw new HTTPException(400, { message: "Agent ID is required" });
236
+ const agentTools = await (await getAgentFromSystem({
237
+ mastra,
238
+ agentId
239
+ })).listTools({ requestContext });
240
+ const tool = Object.values(agentTools || {}).find((tool) => tool.id === toolId);
241
+ if (!tool) throw new HTTPException(404, { message: "Tool not found" });
242
+ if (!tool?.execute) throw new HTTPException(400, { message: "Tool is not executable" });
243
+ return await tool.execute(data, {
244
+ mastra,
245
+ requestContext,
246
+ tracingContext: { currentSpan: void 0 }
247
+ });
248
+ } catch (error) {
249
+ return handleError(error, "Error executing agent tool");
250
+ }
251
+ }
252
+ });
253
+ //#endregion
254
+ export { LIST_TOOLS_ROUTE as a, GET_TOOL_BY_ID_ROUTE as i, EXECUTE_TOOL_ROUTE as n, tools_exports as o, GET_AGENT_TOOL_ROUTE as r, EXECUTE_AGENT_TOOL_ROUTE as t };
255
+
256
+ //# sourceMappingURL=tools-CmFSfDMn.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tools-CmFSfDMn.js","names":[],"sources":["../src/server/handlers/tools.ts"],"sourcesContent":["import { isVercelTool, isProviderDefinedTool } from '@mastra/core/tools';\nimport { toStandardSchema, standardSchemaToJSONSchema } from '@mastra/schema-compat/schema';\nimport type { PublicSchema } from '@mastra/schema-compat/schema';\nimport { stringify } from 'superjson';\nimport { MastraFGAPermissions } from '../fga-permissions';\nimport { HTTPException } from '../http-exception';\nimport {\n executeToolContextBodySchema,\n executeToolResponseSchema,\n listToolsResponseSchema,\n serializedToolSchema,\n toolIdPathParams,\n agentToolPathParams,\n executeToolBodySchema,\n} from '../schemas/agents';\nimport { optionalRunIdSchema } from '../schemas/common';\nimport { createRoute } from '../server-adapter/routes/route-builder';\n\nimport { getAgentFromSystem } from './agents';\nimport { handleError } from './error';\nimport { stripInjectedToolOverrideFields } from './tool-schema-overrides';\nimport { validateBody } from './utils';\n\n/**\n * Resolves a schema that may be a lazy function (e.g. AI SDK provider tools).\n * Recursively resolves until a non-function value is returned.\n * Skips functions that are themselves valid schemas (e.g. ArkType types are\n * callable but also implement StandardSchema via ~standard).\n */\nfunction resolveLazySchema(schema: unknown): unknown {\n if (typeof schema === 'function' && !('~standard' in schema)) {\n return resolveLazySchema(schema());\n }\n return schema;\n}\n\nfunction schemaToJsonSchema(schema: PublicSchema<unknown> | undefined) {\n if (!schema) {\n return undefined;\n }\n\n return standardSchemaToJSONSchema(toStandardSchema(schema), { target: 'draft-2020-12' });\n}\n\nfunction serializeSchema(schema: unknown, options?: { stripInjectedOverrides?: boolean }): string | undefined {\n const jsonSchema = schemaToJsonSchema(resolveLazySchema(schema) as PublicSchema<unknown> | undefined);\n if (jsonSchema === undefined) return undefined;\n return stringify(options?.stripInjectedOverrides ? stripInjectedToolOverrideFields(jsonSchema) : jsonSchema);\n}\n\n/**\n * Searches dynamically-resolved agent tools (provided via `toolsResolver` /\n * function-based `tools`) for a tool with the given id. Used as a fallback\n * after the static tool registry (`registeredTools` + `mastra.getToolById`)\n * misses, so global tool routes can resolve tools that only exist on agents.\n *\n * Errors thrown by an individual agent's `listTools()` are logged and\n * skipped so a single broken resolver doesn't take down the whole lookup.\n */\nasync function findToolInAgents(mastra: any, toolId: string, requestContext: any): Promise<any | undefined> {\n const agents = mastra.listAgents() || {};\n for (const agent of Object.values(agents) as any[]) {\n try {\n const agentTools = await agent.listTools({ requestContext });\n const found = Object.values(agentTools || {}).find((t: any) => t.id === toolId);\n if (found) return found;\n } catch (error) {\n mastra.getLogger?.()?.warn?.('Failed to list tools for agent while resolving tool by id', {\n agentId: agent?.id,\n toolId,\n error: error instanceof Error ? error.message : String(error),\n });\n }\n }\n return undefined;\n}\n\n/**\n * Serializes a tool for API responses, handling both regular tools (with Zod schemas)\n * and provider-defined tools (with AI SDK lazy schemas).\n */\nfunction serializeTool(tool: any): any {\n // Provider-defined tools (e.g. google.tools.googleSearch(), openai.tools.webSearch())\n // have lazy inputSchema functions that return AI SDK Schema objects, not Zod schemas.\n // We resolve them and use the jsonSchema property directly.\n if (isProviderDefinedTool(tool)) {\n const resolvedInput = resolveLazySchema(tool.inputSchema);\n const resolvedOutput = resolveLazySchema(tool.outputSchema);\n return {\n ...tool,\n inputSchema:\n resolvedInput && typeof resolvedInput === 'object' && 'jsonSchema' in resolvedInput\n ? stringify(resolvedInput.jsonSchema)\n : undefined,\n outputSchema:\n resolvedOutput && typeof resolvedOutput === 'object' && 'jsonSchema' in resolvedOutput\n ? stringify(resolvedOutput.jsonSchema)\n : undefined,\n };\n }\n\n return {\n ...tool,\n inputSchema: serializeSchema(tool.inputSchema, { stripInjectedOverrides: true }),\n outputSchema: serializeSchema(tool.outputSchema),\n requestContextSchema: serializeSchema(tool.requestContextSchema),\n };\n}\n\n// ============================================================================\n// Route Definitions (new pattern - handlers defined inline with createRoute)\n// ============================================================================\n\nexport const LIST_TOOLS_ROUTE = createRoute({\n method: 'GET',\n path: '/tools',\n responseType: 'json',\n responseSchema: listToolsResponseSchema,\n summary: 'List all tools',\n description: 'Returns a list of all available tools in the system',\n tags: ['Tools'],\n requiresAuth: true,\n handler: async ({ mastra, registeredTools, requestContext }) => {\n try {\n // Merge tools from two sources: mastra.listTools() includes dynamically created tools\n // (e.g. MCP tools, or agent tools registered by their intrinsic id), while registeredTools\n // includes tools discovered by the CLI bundler (keyed by export name).\n //\n // The same tool instance can appear in both maps under different keys (e.g. an agent\n // registers it by `tool.id` while the bundler registers it by export name). Dedupe by\n // `tool.id`, preferring the registeredTools (bundler) key, so each tool appears once.\n const registered = registeredTools && Object.keys(registeredTools).length > 0 ? registeredTools : {};\n\n const allTools: Record<string, any> = {};\n const seenToolIds = new Map<string, string>();\n\n // registeredTools first so their key wins for a given tool.id.\n for (const [key, tool] of Object.entries(registered)) {\n const toolId = typeof (tool as any)?.id === 'string' ? (tool as any).id : undefined;\n if (toolId !== undefined) seenToolIds.set(toolId, key);\n allTools[key] = tool;\n }\n\n for (const [key, tool] of Object.entries(mastra.listTools() ?? {})) {\n const toolId = typeof (tool as any)?.id === 'string' ? (tool as any).id : undefined;\n // Skip if this exact tool.id was already registered (under any key) by registeredTools.\n if (toolId !== undefined && seenToolIds.has(toolId)) continue;\n if (toolId !== undefined) seenToolIds.set(toolId, key);\n allTools[key] = tool;\n }\n\n const serializedTools = Object.entries(allTools).reduce(\n (acc, [id, _tool]) => {\n acc[id] = serializeTool(_tool);\n return acc;\n },\n {} as Record<string, any>,\n );\n\n // Filter tools by FGA if configured\n const fgaProvider = mastra.getServer?.()?.fga;\n const user = requestContext?.get('user');\n if (fgaProvider && user) {\n const toolList = Object.entries(serializedTools).map(([id, t]) => ({ id, ...t }));\n const accessible = await fgaProvider.filterAccessible(user, toolList, 'tool', MastraFGAPermissions.TOOLS_READ);\n const accessibleSet = new Set(accessible.map((t: any) => t.id));\n for (const id of Object.keys(serializedTools)) {\n if (!accessibleSet.has(id)) {\n delete serializedTools[id];\n }\n }\n }\n\n return serializedTools;\n } catch (error) {\n return handleError(error, 'Error getting tools');\n }\n },\n});\n\nexport const GET_TOOL_BY_ID_ROUTE = createRoute({\n method: 'GET',\n path: '/tools/:toolId',\n responseType: 'json',\n pathParamSchema: toolIdPathParams,\n responseSchema: serializedToolSchema,\n summary: 'Get tool by ID',\n description: 'Returns details for a specific tool including its schema and configuration',\n tags: ['Tools'],\n requiresAuth: true,\n handler: async ({ mastra, registeredTools, toolId, requestContext }) => {\n try {\n let tool: any;\n\n // Try explicit registeredTools first, then fallback to mastra\n if (registeredTools && Object.keys(registeredTools).length > 0) {\n tool = Object.values(registeredTools).find((t: any) => t.id === toolId);\n }\n if (!tool) {\n try {\n tool = mastra.getToolById(toolId);\n } catch {\n // tool not found in global registry, continue to agent fallback\n }\n }\n\n // Fallback: search dynamically-resolved agent tools (toolsResolver)\n if (!tool) {\n tool = await findToolInAgents(mastra, toolId, requestContext);\n }\n\n if (!tool) {\n throw new HTTPException(404, { message: 'Tool not found' });\n }\n\n return serializeTool(tool);\n } catch (error) {\n return handleError(error, 'Error getting tool');\n }\n },\n});\n\nexport const EXECUTE_TOOL_ROUTE = createRoute({\n method: 'POST',\n path: '/tools/:toolId/execute',\n responseType: 'json',\n pathParamSchema: toolIdPathParams,\n queryParamSchema: optionalRunIdSchema,\n bodySchema: executeToolContextBodySchema,\n responseSchema: executeToolResponseSchema,\n summary: 'Execute tool',\n description: 'Executes a specific tool with the provided input data',\n tags: ['Tools'],\n requiresAuth: true,\n handler: async ({ mastra, runId, toolId, registeredTools, requestContext, ...bodyParams }) => {\n try {\n if (!toolId) {\n throw new HTTPException(400, { message: 'Tool ID is required' });\n }\n\n let tool: any;\n\n // Try explicit registeredTools first, then fallback to mastra\n if (registeredTools && Object.keys(registeredTools).length > 0) {\n tool = Object.values(registeredTools).find((t: any) => t.id === toolId);\n }\n if (!tool) {\n try {\n tool = mastra.getToolById(toolId);\n } catch {\n // tool not found in global registry, continue to agent fallback\n }\n }\n\n // Fallback: search dynamically-resolved agent tools (toolsResolver)\n if (!tool) {\n tool = await findToolInAgents(mastra, toolId, requestContext);\n }\n\n if (!tool) {\n throw new HTTPException(404, { message: 'Tool not found' });\n }\n\n if (!tool?.execute) {\n throw new HTTPException(400, { message: 'Tool is not executable' });\n }\n\n const { data } = bodyParams;\n\n validateBody({ data });\n\n let result;\n if (isVercelTool(tool)) {\n result = await (tool as any).execute(data);\n } else {\n result = await tool.execute(data!, {\n mastra,\n requestContext,\n // TODO: Pass proper tracing context when server API supports tracing\n tracingContext: { currentSpan: undefined },\n ...(runId\n ? {\n workflow: {\n runId,\n suspend: async () => {},\n },\n }\n : {}),\n });\n }\n\n return result;\n } catch (error) {\n return handleError(error, 'Error executing tool');\n }\n },\n});\n\n// ============================================================================\n// Agent Tool Routes\n// ============================================================================\n\nexport const GET_AGENT_TOOL_ROUTE = createRoute({\n method: 'GET',\n path: '/agents/:agentId/tools/:toolId',\n responseType: 'json',\n pathParamSchema: agentToolPathParams,\n responseSchema: serializedToolSchema,\n summary: 'Get agent tool',\n description: 'Returns details for a specific tool assigned to the agent',\n tags: ['Agents', 'Tools'],\n requiresAuth: true,\n handler: async ({ mastra, agentId, toolId, requestContext }) => {\n try {\n if (!agentId) {\n throw new HTTPException(400, { message: 'Agent ID is required' });\n }\n const agent = await getAgentFromSystem({ mastra, agentId });\n\n const agentTools = await agent.listTools({ requestContext });\n\n const tool = Object.values(agentTools || {}).find((tool: any) => tool.id === toolId) as any;\n\n if (!tool) {\n throw new HTTPException(404, { message: 'Tool not found' });\n }\n\n return serializeTool(tool);\n } catch (error) {\n return handleError(error, 'Error getting agent tool');\n }\n },\n});\n\nexport const EXECUTE_AGENT_TOOL_ROUTE = createRoute({\n method: 'POST',\n path: '/agents/:agentId/tools/:toolId/execute',\n responseType: 'json',\n pathParamSchema: agentToolPathParams,\n bodySchema: executeToolBodySchema,\n responseSchema: executeToolResponseSchema,\n summary: 'Execute agent tool',\n description: 'Executes a specific tool assigned to the agent with the provided input data',\n tags: ['Agents', 'Tools'],\n requiresAuth: true,\n handler: async ({ mastra, agentId, toolId, data, requestContext }) => {\n try {\n if (!agentId) {\n throw new HTTPException(400, { message: 'Agent ID is required' });\n }\n const agent = await getAgentFromSystem({ mastra, agentId });\n\n const agentTools = await agent.listTools({ requestContext });\n\n const tool = Object.values(agentTools || {}).find((tool: any) => tool.id === toolId) as any;\n\n if (!tool) {\n throw new HTTPException(404, { message: 'Tool not found' });\n }\n\n if (!tool?.execute) {\n throw new HTTPException(400, { message: 'Tool is not executable' });\n }\n\n const result = await tool.execute(data, {\n mastra,\n requestContext,\n // TODO: Pass proper tracing context when server API supports tracing\n tracingContext: { currentSpan: undefined },\n });\n\n return result;\n } catch (error) {\n return handleError(error, 'Error executing agent tool');\n }\n },\n});\n"],"mappings":"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"}