@mastra/server 1.13.0 → 1.13.1

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 (207) hide show
  1. package/CHANGELOG.md +9 -0
  2. package/dist/{chunk-D64GTBXM.js → chunk-374OVGJA.js} +4 -4
  3. package/dist/{chunk-D64GTBXM.js.map → chunk-374OVGJA.js.map} +1 -1
  4. package/dist/{chunk-YEGGGHMD.js → chunk-44647BIB.js} +3 -3
  5. package/dist/{chunk-YEGGGHMD.js.map → chunk-44647BIB.js.map} +1 -1
  6. package/dist/{chunk-STHQS3QR.cjs → chunk-4EICDPHC.cjs} +42 -42
  7. package/dist/{chunk-STHQS3QR.cjs.map → chunk-4EICDPHC.cjs.map} +1 -1
  8. package/dist/{chunk-CMGZD5UE.cjs → chunk-4LBQND5M.cjs} +11 -11
  9. package/dist/{chunk-CMGZD5UE.cjs.map → chunk-4LBQND5M.cjs.map} +1 -1
  10. package/dist/{chunk-6P7P7Y5U.cjs → chunk-4QX6ZNKX.cjs} +12 -17
  11. package/dist/chunk-4QX6ZNKX.cjs.map +1 -0
  12. package/dist/{chunk-TKBRQY5C.cjs → chunk-65NDEEZ4.cjs} +10 -10
  13. package/dist/{chunk-TKBRQY5C.cjs.map → chunk-65NDEEZ4.cjs.map} +1 -1
  14. package/dist/{chunk-4V5MHFM6.js → chunk-66OMEUI3.js} +6 -6
  15. package/dist/chunk-66OMEUI3.js.map +1 -0
  16. package/dist/{chunk-6M6OX2GI.js → chunk-6BG6HMRQ.js} +4 -4
  17. package/dist/{chunk-6M6OX2GI.js.map → chunk-6BG6HMRQ.js.map} +1 -1
  18. package/dist/{chunk-QGDZ4IB6.js → chunk-7AKW6TJ5.js} +4 -4
  19. package/dist/{chunk-QGDZ4IB6.js.map → chunk-7AKW6TJ5.js.map} +1 -1
  20. package/dist/{chunk-QQGEBRIG.cjs → chunk-7IDWCHWJ.cjs} +4 -4
  21. package/dist/{chunk-QQGEBRIG.cjs.map → chunk-7IDWCHWJ.cjs.map} +1 -1
  22. package/dist/{chunk-2GOCJDE2.js → chunk-7NA4OHCN.js} +4 -4
  23. package/dist/{chunk-2GOCJDE2.js.map → chunk-7NA4OHCN.js.map} +1 -1
  24. package/dist/{chunk-HERQV6YY.cjs → chunk-7UYCRF6V.cjs} +10 -10
  25. package/dist/{chunk-HERQV6YY.cjs.map → chunk-7UYCRF6V.cjs.map} +1 -1
  26. package/dist/{chunk-X2UK65IJ.js → chunk-AE7HSMHU.js} +4 -4
  27. package/dist/{chunk-X2UK65IJ.js.map → chunk-AE7HSMHU.js.map} +1 -1
  28. package/dist/{chunk-YVN3HW3L.js → chunk-B3GTJJUR.js} +3 -3
  29. package/dist/{chunk-YVN3HW3L.js.map → chunk-B3GTJJUR.js.map} +1 -1
  30. package/dist/{chunk-OLKVMPNB.js → chunk-BEMXYFXO.js} +12 -17
  31. package/dist/chunk-BEMXYFXO.js.map +1 -0
  32. package/dist/{chunk-UOJM27PI.js → chunk-CZAPCZJQ.js} +3 -3
  33. package/dist/{chunk-UOJM27PI.js.map → chunk-CZAPCZJQ.js.map} +1 -1
  34. package/dist/{chunk-LNIERC4T.cjs → chunk-DKXHFVP5.cjs} +11 -11
  35. package/dist/{chunk-LNIERC4T.cjs.map → chunk-DKXHFVP5.cjs.map} +1 -1
  36. package/dist/{chunk-7RVXUWRC.js → chunk-DRYSGNJH.js} +3 -3
  37. package/dist/{chunk-7RVXUWRC.js.map → chunk-DRYSGNJH.js.map} +1 -1
  38. package/dist/{chunk-QOLNS6MT.cjs → chunk-E3IZXSS5.cjs} +30 -30
  39. package/dist/{chunk-QOLNS6MT.cjs.map → chunk-E3IZXSS5.cjs.map} +1 -1
  40. package/dist/{chunk-LIPXZWEY.js → chunk-EAC2YVRT.js} +5 -5
  41. package/dist/{chunk-LIPXZWEY.js.map → chunk-EAC2YVRT.js.map} +1 -1
  42. package/dist/{chunk-DMAGP2MP.cjs → chunk-EBNBLMPH.cjs} +10 -10
  43. package/dist/{chunk-DMAGP2MP.cjs.map → chunk-EBNBLMPH.cjs.map} +1 -1
  44. package/dist/{chunk-HOAPZDJV.cjs → chunk-ELH5FOOF.cjs} +24 -24
  45. package/dist/{chunk-HOAPZDJV.cjs.map → chunk-ELH5FOOF.cjs.map} +1 -1
  46. package/dist/{chunk-LTJHINYX.cjs → chunk-EOW62QFL.cjs} +10 -10
  47. package/dist/{chunk-LTJHINYX.cjs.map → chunk-EOW62QFL.cjs.map} +1 -1
  48. package/dist/{chunk-RKKIUW52.js → chunk-EPXN7SS7.js} +4 -4
  49. package/dist/{chunk-RKKIUW52.js.map → chunk-EPXN7SS7.js.map} +1 -1
  50. package/dist/{chunk-LOA2QO6H.cjs → chunk-EU4WZ6EN.cjs} +3 -3
  51. package/dist/chunk-EU4WZ6EN.cjs.map +1 -0
  52. package/dist/{chunk-A37KSL6V.js → chunk-FXEFZ4I7.js} +3 -3
  53. package/dist/{chunk-A37KSL6V.js.map → chunk-FXEFZ4I7.js.map} +1 -1
  54. package/dist/{chunk-VDG7SNSS.js → chunk-FYO3ZHLO.js} +3 -3
  55. package/dist/chunk-FYO3ZHLO.js.map +1 -0
  56. package/dist/{chunk-GU5KJAMA.cjs → chunk-HDPHYYPQ.cjs} +6 -6
  57. package/dist/{chunk-GU5KJAMA.cjs.map → chunk-HDPHYYPQ.cjs.map} +1 -1
  58. package/dist/{chunk-DK4A344H.cjs → chunk-IBEDJJH7.cjs} +10 -10
  59. package/dist/{chunk-DK4A344H.cjs.map → chunk-IBEDJJH7.cjs.map} +1 -1
  60. package/dist/{chunk-ALE53JHX.cjs → chunk-JQQXFGB6.cjs} +13 -13
  61. package/dist/{chunk-ALE53JHX.cjs.map → chunk-JQQXFGB6.cjs.map} +1 -1
  62. package/dist/{chunk-2E5ZB7FH.js → chunk-JT4NM27B.js} +3 -3
  63. package/dist/{chunk-2E5ZB7FH.js.map → chunk-JT4NM27B.js.map} +1 -1
  64. package/dist/{chunk-F4HPG2WH.cjs → chunk-K57KYKGV.cjs} +12 -12
  65. package/dist/{chunk-F4HPG2WH.cjs.map → chunk-K57KYKGV.cjs.map} +1 -1
  66. package/dist/{chunk-NSB6AGO3.cjs → chunk-KH2EURUA.cjs} +11 -11
  67. package/dist/{chunk-NSB6AGO3.cjs.map → chunk-KH2EURUA.cjs.map} +1 -1
  68. package/dist/{chunk-R3SMI5BC.js → chunk-KY2T2LGF.js} +3 -3
  69. package/dist/{chunk-R3SMI5BC.js.map → chunk-KY2T2LGF.js.map} +1 -1
  70. package/dist/{chunk-KF2QGKT3.js → chunk-KZTWMA6Y.js} +3 -3
  71. package/dist/{chunk-KF2QGKT3.js.map → chunk-KZTWMA6Y.js.map} +1 -1
  72. package/dist/{chunk-6T2DK2GP.cjs → chunk-LTW7QJJM.cjs} +7 -7
  73. package/dist/{chunk-6T2DK2GP.cjs.map → chunk-LTW7QJJM.cjs.map} +1 -1
  74. package/dist/{chunk-LKBYAMJS.cjs → chunk-LVUSXHFQ.cjs} +17 -17
  75. package/dist/{chunk-LKBYAMJS.cjs.map → chunk-LVUSXHFQ.cjs.map} +1 -1
  76. package/dist/{chunk-GESVIYWC.js → chunk-M43DX6WL.js} +5 -5
  77. package/dist/{chunk-GESVIYWC.js.map → chunk-M43DX6WL.js.map} +1 -1
  78. package/dist/{chunk-WAWVGCSA.js → chunk-M4VTLTPP.js} +3 -3
  79. package/dist/{chunk-WAWVGCSA.js.map → chunk-M4VTLTPP.js.map} +1 -1
  80. package/dist/{chunk-W34IV6DV.cjs → chunk-MMRTVCGM.cjs} +10 -10
  81. package/dist/{chunk-W34IV6DV.cjs.map → chunk-MMRTVCGM.cjs.map} +1 -1
  82. package/dist/{chunk-TSMZEPL3.cjs → chunk-MZQDB2YR.cjs} +11 -11
  83. package/dist/{chunk-TSMZEPL3.cjs.map → chunk-MZQDB2YR.cjs.map} +1 -1
  84. package/dist/{chunk-HWOBV3IH.js → chunk-NTVI27EW.js} +4 -4
  85. package/dist/{chunk-HWOBV3IH.js.map → chunk-NTVI27EW.js.map} +1 -1
  86. package/dist/{chunk-R2DKW2EK.cjs → chunk-NWDYTJCD.cjs} +11 -11
  87. package/dist/{chunk-R2DKW2EK.cjs.map → chunk-NWDYTJCD.cjs.map} +1 -1
  88. package/dist/{chunk-PGABFIYY.js → chunk-OBYIKFB5.js} +3 -3
  89. package/dist/{chunk-PGABFIYY.js.map → chunk-OBYIKFB5.js.map} +1 -1
  90. package/dist/{chunk-DWDLH2Q5.js → chunk-OL7YD5ES.js} +3 -3
  91. package/dist/{chunk-DWDLH2Q5.js.map → chunk-OL7YD5ES.js.map} +1 -1
  92. package/dist/{chunk-C3U5LR4X.cjs → chunk-OW5EFEFM.cjs} +10 -10
  93. package/dist/{chunk-C3U5LR4X.cjs.map → chunk-OW5EFEFM.cjs.map} +1 -1
  94. package/dist/{chunk-P445W4ET.cjs → chunk-P7VWCVYX.cjs} +23 -23
  95. package/dist/{chunk-P445W4ET.cjs.map → chunk-P7VWCVYX.cjs.map} +1 -1
  96. package/dist/{chunk-JWCTCYDF.cjs → chunk-PEFF5WEO.cjs} +6 -6
  97. package/dist/{chunk-JWCTCYDF.cjs.map → chunk-PEFF5WEO.cjs.map} +1 -1
  98. package/dist/{chunk-BBMSARPV.js → chunk-QD7IBNGB.js} +3 -3
  99. package/dist/{chunk-BBMSARPV.js.map → chunk-QD7IBNGB.js.map} +1 -1
  100. package/dist/{chunk-EFX5WYRT.cjs → chunk-QNVZOAHV.cjs} +6 -6
  101. package/dist/{chunk-EFX5WYRT.cjs.map → chunk-QNVZOAHV.cjs.map} +1 -1
  102. package/dist/{chunk-PEG4SKER.cjs → chunk-RL7CDVOD.cjs} +14 -14
  103. package/dist/{chunk-PEG4SKER.cjs.map → chunk-RL7CDVOD.cjs.map} +1 -1
  104. package/dist/{chunk-JGK2MALT.cjs → chunk-SJDL4IBP.cjs} +5 -5
  105. package/dist/{chunk-JGK2MALT.cjs.map → chunk-SJDL4IBP.cjs.map} +1 -1
  106. package/dist/{chunk-ONORVWSC.js → chunk-SN5WY6KR.js} +3 -3
  107. package/dist/{chunk-ONORVWSC.js.map → chunk-SN5WY6KR.js.map} +1 -1
  108. package/dist/{chunk-2OBRONRW.js → chunk-SNL4DVGD.js} +3 -3
  109. package/dist/{chunk-2OBRONRW.js.map → chunk-SNL4DVGD.js.map} +1 -1
  110. package/dist/{chunk-NOT4JSQJ.js → chunk-TBLUAAKQ.js} +4 -4
  111. package/dist/{chunk-NOT4JSQJ.js.map → chunk-TBLUAAKQ.js.map} +1 -1
  112. package/dist/{chunk-FBIKXU4U.cjs → chunk-TSKCUSXO.cjs} +10 -10
  113. package/dist/{chunk-FBIKXU4U.cjs.map → chunk-TSKCUSXO.cjs.map} +1 -1
  114. package/dist/{chunk-SI3B7F4U.cjs → chunk-TXIKPJ36.cjs} +10 -10
  115. package/dist/{chunk-SI3B7F4U.cjs.map → chunk-TXIKPJ36.cjs.map} +1 -1
  116. package/dist/{chunk-Q7KDJZGD.js → chunk-U4J62523.js} +5 -5
  117. package/dist/{chunk-Q7KDJZGD.js.map → chunk-U4J62523.js.map} +1 -1
  118. package/dist/{chunk-6LFZL6QU.cjs → chunk-U6EAQWH7.cjs} +102 -102
  119. package/dist/chunk-U6EAQWH7.cjs.map +1 -0
  120. package/dist/{chunk-JK3GI25F.js → chunk-VNTOJ7A6.js} +4 -4
  121. package/dist/{chunk-JK3GI25F.js.map → chunk-VNTOJ7A6.js.map} +1 -1
  122. package/dist/{chunk-Z2QBLWUE.cjs → chunk-WCXD574R.cjs} +83 -83
  123. package/dist/{chunk-Z2QBLWUE.cjs.map → chunk-WCXD574R.cjs.map} +1 -1
  124. package/dist/{chunk-ZMQY23MO.js → chunk-WGQT66CP.js} +3 -3
  125. package/dist/{chunk-ZMQY23MO.js.map → chunk-WGQT66CP.js.map} +1 -1
  126. package/dist/{chunk-WXS6DNFY.js → chunk-WGVBEWQN.js} +3 -3
  127. package/dist/{chunk-WXS6DNFY.js.map → chunk-WGVBEWQN.js.map} +1 -1
  128. package/dist/{chunk-URPQ6FHZ.js → chunk-XQO6WDMB.js} +4 -4
  129. package/dist/{chunk-URPQ6FHZ.js.map → chunk-XQO6WDMB.js.map} +1 -1
  130. package/dist/docs/SKILL.md +1 -1
  131. package/dist/docs/assets/SOURCE_MAP.json +1 -1
  132. package/dist/server/handlers/a2a.cjs +9 -9
  133. package/dist/server/handlers/a2a.js +1 -1
  134. package/dist/server/handlers/agent-builder.cjs +16 -16
  135. package/dist/server/handlers/agent-builder.js +1 -1
  136. package/dist/server/handlers/agent-versions.cjs +8 -8
  137. package/dist/server/handlers/agent-versions.js +1 -1
  138. package/dist/server/handlers/agents.cjs +33 -33
  139. package/dist/server/handlers/agents.js +1 -1
  140. package/dist/server/handlers/auth.cjs +10 -10
  141. package/dist/server/handlers/auth.js +1 -1
  142. package/dist/server/handlers/datasets.cjs +21 -21
  143. package/dist/server/handlers/datasets.js +1 -1
  144. package/dist/server/handlers/logs.cjs +4 -4
  145. package/dist/server/handlers/logs.js +1 -1
  146. package/dist/server/handlers/mcp-client-versions.cjs +8 -8
  147. package/dist/server/handlers/mcp-client-versions.js +1 -1
  148. package/dist/server/handlers/mcp.cjs +9 -9
  149. package/dist/server/handlers/mcp.js +1 -1
  150. package/dist/server/handlers/memory.cjs +27 -27
  151. package/dist/server/handlers/memory.d.ts +3 -3
  152. package/dist/server/handlers/memory.d.ts.map +1 -1
  153. package/dist/server/handlers/memory.js +1 -1
  154. package/dist/server/handlers/observability.cjs +5 -5
  155. package/dist/server/handlers/observability.js +1 -1
  156. package/dist/server/handlers/processor-providers.cjs +3 -3
  157. package/dist/server/handlers/processor-providers.js +1 -1
  158. package/dist/server/handlers/processors.cjs +4 -4
  159. package/dist/server/handlers/processors.js +1 -1
  160. package/dist/server/handlers/prompt-block-versions.cjs +8 -8
  161. package/dist/server/handlers/prompt-block-versions.js +1 -1
  162. package/dist/server/handlers/scorer-versions.cjs +8 -8
  163. package/dist/server/handlers/scorer-versions.js +1 -1
  164. package/dist/server/handlers/scores.cjs +7 -7
  165. package/dist/server/handlers/scores.js +1 -1
  166. package/dist/server/handlers/stored-agents.cjs +7 -7
  167. package/dist/server/handlers/stored-agents.js +1 -1
  168. package/dist/server/handlers/stored-mcp-clients.cjs +6 -6
  169. package/dist/server/handlers/stored-mcp-clients.js +1 -1
  170. package/dist/server/handlers/stored-prompt-blocks.cjs +6 -6
  171. package/dist/server/handlers/stored-prompt-blocks.js +1 -1
  172. package/dist/server/handlers/stored-scorers.cjs +6 -6
  173. package/dist/server/handlers/stored-scorers.js +1 -1
  174. package/dist/server/handlers/stored-skills.cjs +7 -7
  175. package/dist/server/handlers/stored-skills.js +1 -1
  176. package/dist/server/handlers/stored-workspaces.cjs +6 -6
  177. package/dist/server/handlers/stored-workspaces.js +1 -1
  178. package/dist/server/handlers/system.cjs +2 -2
  179. package/dist/server/handlers/system.js +1 -1
  180. package/dist/server/handlers/tool-providers.cjs +5 -5
  181. package/dist/server/handlers/tool-providers.js +1 -1
  182. package/dist/server/handlers/tools.cjs +6 -6
  183. package/dist/server/handlers/tools.js +1 -1
  184. package/dist/server/handlers/vector.cjs +16 -16
  185. package/dist/server/handlers/vector.js +1 -1
  186. package/dist/server/handlers/voice.cjs +8 -8
  187. package/dist/server/handlers/voice.js +1 -1
  188. package/dist/server/handlers/workflows.cjs +24 -24
  189. package/dist/server/handlers/workflows.js +1 -1
  190. package/dist/server/handlers/workspace.cjs +26 -26
  191. package/dist/server/handlers/workspace.js +1 -1
  192. package/dist/server/handlers.cjs +26 -26
  193. package/dist/server/handlers.js +13 -13
  194. package/dist/server/schemas/index.cjs +44 -44
  195. package/dist/server/schemas/index.js +1 -1
  196. package/dist/server/schemas/memory.d.ts +2 -2
  197. package/dist/server/schemas/memory.d.ts.map +1 -1
  198. package/dist/server/server-adapter/index.cjs +263 -263
  199. package/dist/server/server-adapter/index.js +33 -33
  200. package/dist/server/server-adapter/routes/memory.d.ts +3 -3
  201. package/package.json +8 -8
  202. package/dist/chunk-4V5MHFM6.js.map +0 -1
  203. package/dist/chunk-6LFZL6QU.cjs.map +0 -1
  204. package/dist/chunk-6P7P7Y5U.cjs.map +0 -1
  205. package/dist/chunk-LOA2QO6H.cjs.map +0 -1
  206. package/dist/chunk-OLKVMPNB.js.map +0 -1
  207. package/dist/chunk-VDG7SNSS.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../node_modules/.pnpm/superjson@2.2.6/node_modules/superjson/src/double-indexed-kv.ts","../../../node_modules/.pnpm/superjson@2.2.6/node_modules/superjson/src/registry.ts","../../../node_modules/.pnpm/superjson@2.2.6/node_modules/superjson/src/class-registry.ts","../../../node_modules/.pnpm/superjson@2.2.6/node_modules/superjson/src/util.ts","../../../node_modules/.pnpm/superjson@2.2.6/node_modules/superjson/src/custom-transformer-registry.ts","../../../node_modules/.pnpm/superjson@2.2.6/node_modules/superjson/src/is.ts","../../../node_modules/.pnpm/superjson@2.2.6/node_modules/superjson/src/pathstringifier.ts","../../../node_modules/.pnpm/superjson@2.2.6/node_modules/superjson/src/transformer.ts","../../../node_modules/.pnpm/superjson@2.2.6/node_modules/superjson/src/accessDeep.ts","../../../node_modules/.pnpm/superjson@2.2.6/node_modules/superjson/src/plainer.ts","../../../node_modules/.pnpm/is-what@5.5.0/node_modules/is-what/dist/getType.js","../../../node_modules/.pnpm/is-what@5.5.0/node_modules/is-what/dist/isArray.js","../../../node_modules/.pnpm/is-what@5.5.0/node_modules/is-what/dist/isPlainObject.js","../../../node_modules/.pnpm/copy-anything@4.0.5/node_modules/copy-anything/dist/index.js","../../../node_modules/.pnpm/superjson@2.2.6/node_modules/superjson/src/index.ts","../src/server/utils.ts"],"names":["walker","path","transformed","result","getType","isArray","isPlainObject"],"mappings":"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","file":"chunk-2E5ZB7FH.js","sourcesContent":[null,null,null,null,null,null,null,null,null,null,"/** Returns the object type of the given payload */\nexport function getType(payload) {\n return Object.prototype.toString.call(payload).slice(8, -1);\n}\n","import { getType } from './getType.js';\n/** Returns whether the payload is an array */\nexport function isArray(payload) {\n return getType(payload) === 'Array';\n}\n","import { getType } from './getType.js';\n/**\n * Returns whether the payload is a plain JavaScript object (excluding special classes or objects\n * with other prototypes)\n */\nexport function isPlainObject(payload) {\n if (getType(payload) !== 'Object')\n return false;\n const prototype = Object.getPrototypeOf(payload);\n return !!prototype && prototype.constructor === Object && prototype === Object.prototype;\n}\n","import { isArray, isPlainObject } from 'is-what';\nfunction assignProp(carry, key, newVal, originalObject, includeNonenumerable) {\n const propType = {}.propertyIsEnumerable.call(originalObject, key)\n ? 'enumerable'\n : 'nonenumerable';\n if (propType === 'enumerable')\n carry[key] = newVal;\n if (includeNonenumerable && propType === 'nonenumerable') {\n Object.defineProperty(carry, key, {\n value: newVal,\n enumerable: false,\n writable: true,\n configurable: true,\n });\n }\n}\n/**\n * Copy (clone) an object and all its props recursively to get rid of any prop referenced of the\n * original object. Arrays are also cloned, however objects inside arrays are still linked.\n *\n * @param target Target can be anything\n * @param [options={}] See type {@link Options} for more details.\n *\n * - `{ props: ['key1'] }` will only copy the `key1` property. When using this you will need to cast\n * the return type manually (in order to keep the TS implementation in here simple I didn't\n * built a complex auto resolved type for those few cases people want to use this option)\n * - `{ nonenumerable: true }` will copy all non-enumerable properties. Default is `{}`\n *\n * @returns The target with replaced values\n */\nexport function copy(target, options = {}) {\n if (isArray(target)) {\n return target.map((item) => copy(item, options));\n }\n if (!isPlainObject(target)) {\n return target;\n }\n const props = Object.getOwnPropertyNames(target);\n const symbols = Object.getOwnPropertySymbols(target);\n return [...props, ...symbols].reduce((carry, key) => {\n // Skip __proto__ properties to prevent prototype pollution\n if (key === '__proto__')\n return carry;\n if (isArray(options.props) && !options.props.includes(key)) {\n return carry;\n }\n const val = target[key];\n const newVal = copy(val, options);\n assignProp(carry, key, newVal, target, options.nonenumerable);\n return carry;\n }, {});\n}\n",null,"import type { Mastra } from '@mastra/core';\nimport type { SystemMessage } from '@mastra/core/llm';\nimport type { StepWithComponent, Workflow, WorkflowInfo } from '@mastra/core/workflows';\nimport { toStandardSchema, standardSchemaToJSONSchema } from '@mastra/schema-compat/schema';\nimport type { PublicSchema } from '@mastra/schema-compat/schema';\n\nimport { stringify } from 'superjson';\n\n/**\n * Convert any PublicSchema to a JSON Schema.\n * Uses toStandardSchema to handle all schema types (Zod v3/v4, AI SDK Schema, JSON Schema).\n */\nfunction schemaToJsonSchema(schema: PublicSchema<unknown> | undefined) {\n if (!schema) return undefined;\n\n // Convert any PublicSchema to StandardSchemaWithJSON, then extract JSON Schema\n const standardSchema = toStandardSchema(schema);\n return standardSchemaToJSONSchema(standardSchema);\n}\n\n/**\n * Normalizes a route path to ensure consistent formatting.\n * - Removes leading/trailing whitespace\n * - Validates no path traversal (..), query strings (?), or fragments (#)\n * - Collapses multiple consecutive slashes\n * - Removes trailing slashes\n * - Ensures leading slash (unless empty)\n *\n * @param path - The route path to normalize\n * @returns The normalized path (empty string for root paths)\n * @throws Error if path contains invalid characters\n */\nexport function normalizeRoutePath(path: string): string {\n let normalized = path.trim();\n if (normalized.includes('..') || normalized.includes('?') || normalized.includes('#')) {\n throw new Error(`Invalid route path: \"${path}\". Path cannot contain '..', '?', or '#'`);\n }\n normalized = normalized.replace(/\\/+/g, '/');\n if (normalized === '/' || normalized === '') {\n return '';\n }\n if (normalized.endsWith('/')) {\n normalized = normalized.slice(0, -1);\n }\n if (!normalized.startsWith('/')) {\n normalized = `/${normalized}`;\n }\n return normalized;\n}\n\n/**\n * Check if a schema looks like a processor step schema.\n * Processor step schemas are discriminated unions on 'phase' with specific values.\n */\nfunction looksLikeProcessorStepSchema(schema: PublicSchema<unknown> | undefined): boolean {\n if (!schema) return false;\n\n try {\n const jsonSchema = standardSchemaToJSONSchema(toStandardSchema(schema)) as Record<string, unknown> | undefined;\n if (!jsonSchema) return false;\n\n // Check for discriminated union pattern: anyOf/oneOf with phase discriminator\n const variants = (jsonSchema.anyOf || jsonSchema.oneOf) as Array<Record<string, unknown>> | undefined;\n if (!variants || !Array.isArray(variants)) return false;\n\n // Check if all variants have a 'phase' property with processor phase values\n const processorPhases = new Set(['input', 'inputStep', 'outputStream', 'outputResult', 'outputStep']);\n\n for (const variant of variants) {\n const properties = variant.properties as Record<string, unknown> | undefined;\n if (!properties?.phase) return false;\n\n const phaseSchema = properties.phase as Record<string, unknown>;\n const phaseConst = phaseSchema?.const as string | undefined;\n const phaseEnum = Array.isArray(phaseSchema?.enum) ? (phaseSchema.enum as string[]) : [];\n const phaseValues = phaseConst ? [phaseConst] : phaseEnum;\n\n if (!phaseValues.length || phaseValues.some(phase => !processorPhases.has(phase))) {\n return false;\n }\n }\n\n return variants.length > 0;\n } catch {\n return false;\n }\n}\n\nfunction getSteps(steps: Record<string, StepWithComponent>, path?: string) {\n return Object.entries(steps).reduce<any>((acc, [key, step]) => {\n const fullKey = path ? `${path}.${key}` : key;\n acc[fullKey] = {\n id: step.id,\n description: step.description,\n inputSchema: step.inputSchema ? stringify(schemaToJsonSchema(step.inputSchema)) : undefined,\n outputSchema: step.outputSchema ? stringify(schemaToJsonSchema(step.outputSchema)) : undefined,\n resumeSchema: step.resumeSchema ? stringify(schemaToJsonSchema(step.resumeSchema)) : undefined,\n suspendSchema: step.suspendSchema ? stringify(schemaToJsonSchema(step.suspendSchema)) : undefined,\n stateSchema: step.stateSchema ? stringify(schemaToJsonSchema(step.stateSchema)) : undefined,\n isWorkflow: step.component === 'WORKFLOW',\n component: step.component,\n metadata: step.metadata,\n };\n\n if (step.component === 'WORKFLOW' && step.steps) {\n const nestedSteps = getSteps(step.steps, fullKey) || {};\n acc = { ...acc, ...nestedSteps };\n }\n\n return acc;\n }, {});\n}\n\nexport function getWorkflowInfo(workflow: Workflow, partial: boolean = false): WorkflowInfo {\n if (partial) {\n // Return minimal info in partial mode\n return {\n name: workflow.name,\n description: workflow.description,\n stepCount: Object.keys(workflow.steps).length,\n stepGraph: workflow.serializedStepGraph,\n options: workflow.options,\n steps: {},\n allSteps: {},\n inputSchema: undefined,\n outputSchema: undefined,\n stateSchema: undefined,\n } as WorkflowInfo;\n }\n\n return {\n name: workflow.name,\n description: workflow.description,\n steps: Object.entries(workflow.steps).reduce<any>((acc, [key, step]) => {\n acc[key] = {\n id: step.id,\n description: step.description,\n inputSchema: step.inputSchema ? stringify(schemaToJsonSchema(step.inputSchema)) : undefined,\n outputSchema: step.outputSchema ? stringify(schemaToJsonSchema(step.outputSchema)) : undefined,\n resumeSchema: step.resumeSchema ? stringify(schemaToJsonSchema(step.resumeSchema)) : undefined,\n suspendSchema: step.suspendSchema ? stringify(schemaToJsonSchema(step.suspendSchema)) : undefined,\n stateSchema: step.stateSchema ? stringify(schemaToJsonSchema(step.stateSchema)) : undefined,\n requestContextSchema: step.requestContextSchema\n ? stringify(schemaToJsonSchema(step.requestContextSchema))\n : undefined,\n component: step.component,\n metadata: step.metadata,\n };\n return acc;\n }, {}),\n allSteps: getSteps(workflow.steps) || {},\n stepGraph: workflow.serializedStepGraph,\n inputSchema: workflow.inputSchema ? stringify(schemaToJsonSchema(workflow.inputSchema)) : undefined,\n outputSchema: workflow.outputSchema ? stringify(schemaToJsonSchema(workflow.outputSchema)) : undefined,\n stateSchema: workflow.stateSchema ? stringify(schemaToJsonSchema(workflow.stateSchema)) : undefined,\n requestContextSchema: workflow.requestContextSchema\n ? stringify(schemaToJsonSchema(workflow.requestContextSchema))\n : undefined,\n options: workflow.options,\n isProcessorWorkflow: workflow.type === 'processor' || looksLikeProcessorStepSchema(workflow.inputSchema),\n };\n}\n\n/**\n * Workflow Registry for temporarily registering additional workflows\n * that are not part of the user's Mastra instance (e.g., internal template workflows)\n */\nexport class WorkflowRegistry {\n private static additionalWorkflows: Record<string, Workflow> = {};\n\n /**\n * Register a workflow temporarily\n */\n static registerTemporaryWorkflow(id: string, workflow: Workflow): void {\n this.additionalWorkflows[id] = workflow;\n }\n\n /**\n * Register all workflows from map\n */\n static registerTemporaryWorkflows(\n workflows: Record<string, Workflow>,\n mastra?: Mastra<any, any, any, any, any, any, any, any, any>,\n ): void {\n for (const [id, workflow] of Object.entries(workflows)) {\n // Register Mastra instance with the workflow if provided\n if (mastra) {\n workflow.__registerMastra(mastra);\n workflow.__registerPrimitives({\n logger: mastra.getLogger(),\n storage: mastra.getStorage(),\n agents: mastra.listAgents(),\n tts: mastra.getTTS(),\n vectors: mastra.listVectors(),\n });\n }\n this.additionalWorkflows[id] = workflow;\n }\n }\n\n /**\n * Get a workflow by ID from the registry (returns undefined if not found)\n */\n static getWorkflow(workflowId: string): Workflow | undefined {\n return this.additionalWorkflows[workflowId];\n }\n\n /**\n * Get all workflows from the registry\n */\n static getAllWorkflows(): Record<string, Workflow> {\n return { ...this.additionalWorkflows };\n }\n\n /**\n * Clean up a temporary workflow\n */\n static cleanupTemporaryWorkflow(workflowId: string): void {\n delete this.additionalWorkflows[workflowId];\n }\n /**\n * Clean up all registered workflows\n */\n static cleanup(): void {\n // Clear all workflows (since we register all agent-builder workflows each time)\n this.additionalWorkflows = {};\n }\n\n /**\n * Check if a workflow ID is a valid agent-builder workflow\n */\n static isAgentBuilderWorkflow(workflowId: string): boolean {\n return workflowId in this.additionalWorkflows;\n }\n\n /**\n * Get all registered temporary workflow IDs (for debugging)\n */\n static getRegisteredWorkflowIds(): string[] {\n return Object.keys(this.additionalWorkflows);\n }\n}\n\n/**\n * Converts a string to a URL-friendly slug.\n * Lowercases, replaces non-alphanumeric characters with hyphens,\n * collapses consecutive hyphens, and trims leading/trailing hyphens.\n */\nexport function toSlug(input: string): string {\n return input\n .toLowerCase()\n .replace(/[^a-z0-9]+/g, '-')\n .replace(/^-+|-+$/g, '');\n}\n\nexport function convertInstructionsToString(message: SystemMessage): string {\n if (!message) {\n return '';\n }\n\n if (typeof message === 'string') {\n return message;\n }\n\n if (Array.isArray(message)) {\n return message\n .map(m => {\n if (typeof m === 'string') {\n return m;\n }\n // Safely extract content from message objects\n return typeof m.content === 'string' ? m.content : '';\n })\n .filter(content => content) // Remove empty strings\n .join('\\n');\n }\n\n // Handle single message object - safely extract content\n return typeof message.content === 'string' ? message.content : '';\n}\n"]}
1
+ {"version":3,"sources":["../../../node_modules/.pnpm/superjson@2.2.6/node_modules/superjson/src/double-indexed-kv.ts","../../../node_modules/.pnpm/superjson@2.2.6/node_modules/superjson/src/registry.ts","../../../node_modules/.pnpm/superjson@2.2.6/node_modules/superjson/src/class-registry.ts","../../../node_modules/.pnpm/superjson@2.2.6/node_modules/superjson/src/util.ts","../../../node_modules/.pnpm/superjson@2.2.6/node_modules/superjson/src/custom-transformer-registry.ts","../../../node_modules/.pnpm/superjson@2.2.6/node_modules/superjson/src/is.ts","../../../node_modules/.pnpm/superjson@2.2.6/node_modules/superjson/src/pathstringifier.ts","../../../node_modules/.pnpm/superjson@2.2.6/node_modules/superjson/src/transformer.ts","../../../node_modules/.pnpm/superjson@2.2.6/node_modules/superjson/src/accessDeep.ts","../../../node_modules/.pnpm/superjson@2.2.6/node_modules/superjson/src/plainer.ts","../../../node_modules/.pnpm/is-what@5.5.0/node_modules/is-what/dist/getType.js","../../../node_modules/.pnpm/is-what@5.5.0/node_modules/is-what/dist/isArray.js","../../../node_modules/.pnpm/is-what@5.5.0/node_modules/is-what/dist/isPlainObject.js","../../../node_modules/.pnpm/copy-anything@4.0.5/node_modules/copy-anything/dist/index.js","../../../node_modules/.pnpm/superjson@2.2.6/node_modules/superjson/src/index.ts","../src/server/utils.ts"],"names":["walker","path","transformed","result","getType","isArray","isPlainObject"],"mappings":"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","file":"chunk-JT4NM27B.js","sourcesContent":[null,null,null,null,null,null,null,null,null,null,"/** Returns the object type of the given payload */\nexport function getType(payload) {\n return Object.prototype.toString.call(payload).slice(8, -1);\n}\n","import { getType } from './getType.js';\n/** Returns whether the payload is an array */\nexport function isArray(payload) {\n return getType(payload) === 'Array';\n}\n","import { getType } from './getType.js';\n/**\n * Returns whether the payload is a plain JavaScript object (excluding special classes or objects\n * with other prototypes)\n */\nexport function isPlainObject(payload) {\n if (getType(payload) !== 'Object')\n return false;\n const prototype = Object.getPrototypeOf(payload);\n return !!prototype && prototype.constructor === Object && prototype === Object.prototype;\n}\n","import { isArray, isPlainObject } from 'is-what';\nfunction assignProp(carry, key, newVal, originalObject, includeNonenumerable) {\n const propType = {}.propertyIsEnumerable.call(originalObject, key)\n ? 'enumerable'\n : 'nonenumerable';\n if (propType === 'enumerable')\n carry[key] = newVal;\n if (includeNonenumerable && propType === 'nonenumerable') {\n Object.defineProperty(carry, key, {\n value: newVal,\n enumerable: false,\n writable: true,\n configurable: true,\n });\n }\n}\n/**\n * Copy (clone) an object and all its props recursively to get rid of any prop referenced of the\n * original object. Arrays are also cloned, however objects inside arrays are still linked.\n *\n * @param target Target can be anything\n * @param [options={}] See type {@link Options} for more details.\n *\n * - `{ props: ['key1'] }` will only copy the `key1` property. When using this you will need to cast\n * the return type manually (in order to keep the TS implementation in here simple I didn't\n * built a complex auto resolved type for those few cases people want to use this option)\n * - `{ nonenumerable: true }` will copy all non-enumerable properties. Default is `{}`\n *\n * @returns The target with replaced values\n */\nexport function copy(target, options = {}) {\n if (isArray(target)) {\n return target.map((item) => copy(item, options));\n }\n if (!isPlainObject(target)) {\n return target;\n }\n const props = Object.getOwnPropertyNames(target);\n const symbols = Object.getOwnPropertySymbols(target);\n return [...props, ...symbols].reduce((carry, key) => {\n // Skip __proto__ properties to prevent prototype pollution\n if (key === '__proto__')\n return carry;\n if (isArray(options.props) && !options.props.includes(key)) {\n return carry;\n }\n const val = target[key];\n const newVal = copy(val, options);\n assignProp(carry, key, newVal, target, options.nonenumerable);\n return carry;\n }, {});\n}\n",null,"import type { Mastra } from '@mastra/core';\nimport type { SystemMessage } from '@mastra/core/llm';\nimport type { StepWithComponent, Workflow, WorkflowInfo } from '@mastra/core/workflows';\nimport { toStandardSchema, standardSchemaToJSONSchema } from '@mastra/schema-compat/schema';\nimport type { PublicSchema } from '@mastra/schema-compat/schema';\n\nimport { stringify } from 'superjson';\n\n/**\n * Convert any PublicSchema to a JSON Schema.\n * Uses toStandardSchema to handle all schema types (Zod v3/v4, AI SDK Schema, JSON Schema).\n */\nfunction schemaToJsonSchema(schema: PublicSchema<unknown> | undefined) {\n if (!schema) return undefined;\n\n // Convert any PublicSchema to StandardSchemaWithJSON, then extract JSON Schema\n const standardSchema = toStandardSchema(schema);\n return standardSchemaToJSONSchema(standardSchema);\n}\n\n/**\n * Normalizes a route path to ensure consistent formatting.\n * - Removes leading/trailing whitespace\n * - Validates no path traversal (..), query strings (?), or fragments (#)\n * - Collapses multiple consecutive slashes\n * - Removes trailing slashes\n * - Ensures leading slash (unless empty)\n *\n * @param path - The route path to normalize\n * @returns The normalized path (empty string for root paths)\n * @throws Error if path contains invalid characters\n */\nexport function normalizeRoutePath(path: string): string {\n let normalized = path.trim();\n if (normalized.includes('..') || normalized.includes('?') || normalized.includes('#')) {\n throw new Error(`Invalid route path: \"${path}\". Path cannot contain '..', '?', or '#'`);\n }\n normalized = normalized.replace(/\\/+/g, '/');\n if (normalized === '/' || normalized === '') {\n return '';\n }\n if (normalized.endsWith('/')) {\n normalized = normalized.slice(0, -1);\n }\n if (!normalized.startsWith('/')) {\n normalized = `/${normalized}`;\n }\n return normalized;\n}\n\n/**\n * Check if a schema looks like a processor step schema.\n * Processor step schemas are discriminated unions on 'phase' with specific values.\n */\nfunction looksLikeProcessorStepSchema(schema: PublicSchema<unknown> | undefined): boolean {\n if (!schema) return false;\n\n try {\n const jsonSchema = standardSchemaToJSONSchema(toStandardSchema(schema)) as Record<string, unknown> | undefined;\n if (!jsonSchema) return false;\n\n // Check for discriminated union pattern: anyOf/oneOf with phase discriminator\n const variants = (jsonSchema.anyOf || jsonSchema.oneOf) as Array<Record<string, unknown>> | undefined;\n if (!variants || !Array.isArray(variants)) return false;\n\n // Check if all variants have a 'phase' property with processor phase values\n const processorPhases = new Set(['input', 'inputStep', 'outputStream', 'outputResult', 'outputStep']);\n\n for (const variant of variants) {\n const properties = variant.properties as Record<string, unknown> | undefined;\n if (!properties?.phase) return false;\n\n const phaseSchema = properties.phase as Record<string, unknown>;\n const phaseConst = phaseSchema?.const as string | undefined;\n const phaseEnum = Array.isArray(phaseSchema?.enum) ? (phaseSchema.enum as string[]) : [];\n const phaseValues = phaseConst ? [phaseConst] : phaseEnum;\n\n if (!phaseValues.length || phaseValues.some(phase => !processorPhases.has(phase))) {\n return false;\n }\n }\n\n return variants.length > 0;\n } catch {\n return false;\n }\n}\n\nfunction getSteps(steps: Record<string, StepWithComponent>, path?: string) {\n return Object.entries(steps).reduce<any>((acc, [key, step]) => {\n const fullKey = path ? `${path}.${key}` : key;\n acc[fullKey] = {\n id: step.id,\n description: step.description,\n inputSchema: step.inputSchema ? stringify(schemaToJsonSchema(step.inputSchema)) : undefined,\n outputSchema: step.outputSchema ? stringify(schemaToJsonSchema(step.outputSchema)) : undefined,\n resumeSchema: step.resumeSchema ? stringify(schemaToJsonSchema(step.resumeSchema)) : undefined,\n suspendSchema: step.suspendSchema ? stringify(schemaToJsonSchema(step.suspendSchema)) : undefined,\n stateSchema: step.stateSchema ? stringify(schemaToJsonSchema(step.stateSchema)) : undefined,\n isWorkflow: step.component === 'WORKFLOW',\n component: step.component,\n metadata: step.metadata,\n };\n\n if (step.component === 'WORKFLOW' && step.steps) {\n const nestedSteps = getSteps(step.steps, fullKey) || {};\n acc = { ...acc, ...nestedSteps };\n }\n\n return acc;\n }, {});\n}\n\nexport function getWorkflowInfo(workflow: Workflow, partial: boolean = false): WorkflowInfo {\n if (partial) {\n // Return minimal info in partial mode\n return {\n name: workflow.name,\n description: workflow.description,\n stepCount: Object.keys(workflow.steps).length,\n stepGraph: workflow.serializedStepGraph,\n options: workflow.options,\n steps: {},\n allSteps: {},\n inputSchema: undefined,\n outputSchema: undefined,\n stateSchema: undefined,\n } as WorkflowInfo;\n }\n\n return {\n name: workflow.name,\n description: workflow.description,\n steps: Object.entries(workflow.steps).reduce<any>((acc, [key, step]) => {\n acc[key] = {\n id: step.id,\n description: step.description,\n inputSchema: step.inputSchema ? stringify(schemaToJsonSchema(step.inputSchema)) : undefined,\n outputSchema: step.outputSchema ? stringify(schemaToJsonSchema(step.outputSchema)) : undefined,\n resumeSchema: step.resumeSchema ? stringify(schemaToJsonSchema(step.resumeSchema)) : undefined,\n suspendSchema: step.suspendSchema ? stringify(schemaToJsonSchema(step.suspendSchema)) : undefined,\n stateSchema: step.stateSchema ? stringify(schemaToJsonSchema(step.stateSchema)) : undefined,\n requestContextSchema: step.requestContextSchema\n ? stringify(schemaToJsonSchema(step.requestContextSchema))\n : undefined,\n component: step.component,\n metadata: step.metadata,\n };\n return acc;\n }, {}),\n allSteps: getSteps(workflow.steps) || {},\n stepGraph: workflow.serializedStepGraph,\n inputSchema: workflow.inputSchema ? stringify(schemaToJsonSchema(workflow.inputSchema)) : undefined,\n outputSchema: workflow.outputSchema ? stringify(schemaToJsonSchema(workflow.outputSchema)) : undefined,\n stateSchema: workflow.stateSchema ? stringify(schemaToJsonSchema(workflow.stateSchema)) : undefined,\n requestContextSchema: workflow.requestContextSchema\n ? stringify(schemaToJsonSchema(workflow.requestContextSchema))\n : undefined,\n options: workflow.options,\n isProcessorWorkflow: workflow.type === 'processor' || looksLikeProcessorStepSchema(workflow.inputSchema),\n };\n}\n\n/**\n * Workflow Registry for temporarily registering additional workflows\n * that are not part of the user's Mastra instance (e.g., internal template workflows)\n */\nexport class WorkflowRegistry {\n private static additionalWorkflows: Record<string, Workflow> = {};\n\n /**\n * Register a workflow temporarily\n */\n static registerTemporaryWorkflow(id: string, workflow: Workflow): void {\n this.additionalWorkflows[id] = workflow;\n }\n\n /**\n * Register all workflows from map\n */\n static registerTemporaryWorkflows(\n workflows: Record<string, Workflow>,\n mastra?: Mastra<any, any, any, any, any, any, any, any, any>,\n ): void {\n for (const [id, workflow] of Object.entries(workflows)) {\n // Register Mastra instance with the workflow if provided\n if (mastra) {\n workflow.__registerMastra(mastra);\n workflow.__registerPrimitives({\n logger: mastra.getLogger(),\n storage: mastra.getStorage(),\n agents: mastra.listAgents(),\n tts: mastra.getTTS(),\n vectors: mastra.listVectors(),\n });\n }\n this.additionalWorkflows[id] = workflow;\n }\n }\n\n /**\n * Get a workflow by ID from the registry (returns undefined if not found)\n */\n static getWorkflow(workflowId: string): Workflow | undefined {\n return this.additionalWorkflows[workflowId];\n }\n\n /**\n * Get all workflows from the registry\n */\n static getAllWorkflows(): Record<string, Workflow> {\n return { ...this.additionalWorkflows };\n }\n\n /**\n * Clean up a temporary workflow\n */\n static cleanupTemporaryWorkflow(workflowId: string): void {\n delete this.additionalWorkflows[workflowId];\n }\n /**\n * Clean up all registered workflows\n */\n static cleanup(): void {\n // Clear all workflows (since we register all agent-builder workflows each time)\n this.additionalWorkflows = {};\n }\n\n /**\n * Check if a workflow ID is a valid agent-builder workflow\n */\n static isAgentBuilderWorkflow(workflowId: string): boolean {\n return workflowId in this.additionalWorkflows;\n }\n\n /**\n * Get all registered temporary workflow IDs (for debugging)\n */\n static getRegisteredWorkflowIds(): string[] {\n return Object.keys(this.additionalWorkflows);\n }\n}\n\n/**\n * Converts a string to a URL-friendly slug.\n * Lowercases, replaces non-alphanumeric characters with hyphens,\n * collapses consecutive hyphens, and trims leading/trailing hyphens.\n */\nexport function toSlug(input: string): string {\n return input\n .toLowerCase()\n .replace(/[^a-z0-9]+/g, '-')\n .replace(/^-+|-+$/g, '');\n}\n\nexport function convertInstructionsToString(message: SystemMessage): string {\n if (!message) {\n return '';\n }\n\n if (typeof message === 'string') {\n return message;\n }\n\n if (Array.isArray(message)) {\n return message\n .map(m => {\n if (typeof m === 'string') {\n return m;\n }\n // Safely extract content from message objects\n return typeof m.content === 'string' ? m.content : '';\n })\n .filter(content => content) // Remove empty strings\n .join('\\n');\n }\n\n // Handle single message object - safely extract content\n return typeof message.content === 'string' ? message.content : '';\n}\n"]}
@@ -1,9 +1,9 @@
1
1
  'use strict';
2
2
 
3
3
  var chunkKXXILK3T_cjs = require('./chunk-KXXILK3T.cjs');
4
- var chunkSTHQS3QR_cjs = require('./chunk-STHQS3QR.cjs');
5
- var chunkEFX5WYRT_cjs = require('./chunk-EFX5WYRT.cjs');
6
- var chunk6P7P7Y5U_cjs = require('./chunk-6P7P7Y5U.cjs');
4
+ var chunk4EICDPHC_cjs = require('./chunk-4EICDPHC.cjs');
5
+ var chunkQNVZOAHV_cjs = require('./chunk-QNVZOAHV.cjs');
6
+ var chunk4QX6ZNKX_cjs = require('./chunk-4QX6ZNKX.cjs');
7
7
  var chunkO7I5CWRX_cjs = require('./chunk-O7I5CWRX.cjs');
8
8
  var a2a = require('@mastra/core/a2a');
9
9
  var zod = require('zod');
@@ -216,11 +216,11 @@ async function getAgentCardByIdHandler({
216
216
  version = "1.0",
217
217
  requestContext
218
218
  }) {
219
- const agent = await chunkSTHQS3QR_cjs.getAgentFromSystem({ mastra, agentId });
219
+ const agent = await chunk4EICDPHC_cjs.getAgentFromSystem({ mastra, agentId });
220
220
  const [instructions, tools] = await Promise.all([agent.getInstructions({ requestContext }), agent.listTools({ requestContext })]);
221
221
  const agentCard = {
222
222
  name: agent.id || agentId,
223
- description: chunkEFX5WYRT_cjs.convertInstructionsToString(instructions),
223
+ description: chunkQNVZOAHV_cjs.convertInstructionsToString(instructions),
224
224
  url: executionUrl,
225
225
  provider,
226
226
  version,
@@ -429,7 +429,7 @@ async function getAgentExecutionHandler({
429
429
  taskStore,
430
430
  logger
431
431
  }) {
432
- const agent = await chunkSTHQS3QR_cjs.getAgentFromSystem({ mastra, agentId });
432
+ const agent = await chunk4EICDPHC_cjs.getAgentFromSystem({ mastra, agentId });
433
433
  let taskId;
434
434
  try {
435
435
  taskId = "id" in params ? params.id : params.message?.taskId || "No task ID provided";
@@ -483,7 +483,7 @@ async function getAgentExecutionHandler({
483
483
  return normalizeError(error, requestId, taskId, logger);
484
484
  }
485
485
  }
486
- var GET_AGENT_CARD_ROUTE = chunk6P7P7Y5U_cjs.createRoute({
486
+ var GET_AGENT_CARD_ROUTE = chunk4QX6ZNKX_cjs.createRoute({
487
487
  method: "GET",
488
488
  path: "/.well-known/:agentId/agent-card.json",
489
489
  responseType: "json",
@@ -500,11 +500,11 @@ var GET_AGENT_CARD_ROUTE = chunk6P7P7Y5U_cjs.createRoute({
500
500
  url: "https://mastra.ai"
501
501
  };
502
502
  const version = "1.0";
503
- const agent = await chunkSTHQS3QR_cjs.getAgentFromSystem({ mastra, agentId });
503
+ const agent = await chunk4EICDPHC_cjs.getAgentFromSystem({ mastra, agentId });
504
504
  const [instructions, tools] = await Promise.all([agent.getInstructions({ requestContext }), agent.listTools({ requestContext })]);
505
505
  const agentCard = {
506
506
  name: agent.id || agentId,
507
- description: chunkEFX5WYRT_cjs.convertInstructionsToString(instructions),
507
+ description: chunkQNVZOAHV_cjs.convertInstructionsToString(instructions),
508
508
  url: executionUrl,
509
509
  provider,
510
510
  version,
@@ -525,7 +525,7 @@ var GET_AGENT_CARD_ROUTE = chunk6P7P7Y5U_cjs.createRoute({
525
525
  return agentCard;
526
526
  }
527
527
  });
528
- var AGENT_EXECUTION_ROUTE = chunk6P7P7Y5U_cjs.createRoute({
528
+ var AGENT_EXECUTION_ROUTE = chunk4QX6ZNKX_cjs.createRoute({
529
529
  method: "POST",
530
530
  path: "/a2a/:agentId",
531
531
  responseType: "json",
@@ -559,5 +559,5 @@ exports.handleMessageSend = handleMessageSend;
559
559
  exports.handleMessageStream = handleMessageStream;
560
560
  exports.handleTaskCancel = handleTaskCancel;
561
561
  exports.handleTaskGet = handleTaskGet;
562
- //# sourceMappingURL=chunk-F4HPG2WH.cjs.map
563
- //# sourceMappingURL=chunk-F4HPG2WH.cjs.map
562
+ //# sourceMappingURL=chunk-K57KYKGV.cjs.map
563
+ //# sourceMappingURL=chunk-K57KYKGV.cjs.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/server/handlers/a2a.ts","../src/server/a2a/protocol.ts","../src/server/a2a/tasks.ts"],"names":["__export","MastraA2AError","z","getAgentFromSystem","convertInstructionsToString","result","createRoute","a2aAgentIdPathParams","agentCardResponseSchema","agentExecutionBodySchema","agentExecutionResponseSchema"],"mappings":"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","file":"chunk-F4HPG2WH.cjs","sourcesContent":["import { MastraA2AError } from '@mastra/core/a2a';\nimport type {\n MessageSendParams,\n TaskQueryParams,\n TaskIdParams,\n AgentCard,\n TaskStatus,\n TaskState,\n} from '@mastra/core/a2a';\nimport type { Agent } from '@mastra/core/agent';\nimport type { IMastraLogger } from '@mastra/core/logger';\nimport type { RequestContext } from '@mastra/core/request-context';\nimport { z } from 'zod';\nimport { convertToCoreMessage, normalizeError, createSuccessResponse, createErrorResponse } from '../a2a/protocol';\nimport type { InMemoryTaskStore } from '../a2a/store';\nimport { applyUpdateToTask, createTaskContext, loadOrCreateTask } from '../a2a/tasks';\nimport {\n a2aAgentIdPathParams,\n agentExecutionBodySchema,\n agentCardResponseSchema,\n agentExecutionResponseSchema,\n} from '../schemas/a2a';\nimport { createRoute } from '../server-adapter/routes/route-builder';\nimport type { Context } from '../types';\nimport { convertInstructionsToString } from '../utils';\nimport { getAgentFromSystem } from './agents';\n\nconst messageSendParamsSchema = z.object({\n message: z.object({\n role: z.enum(['user', 'agent']),\n parts: z.array(\n z.object({\n kind: z.enum(['text']),\n text: z.string(),\n }),\n ),\n kind: z.literal('message'),\n messageId: z.string(),\n contextId: z.string().optional(),\n taskId: z.string().optional(),\n referenceTaskIds: z.array(z.string()).optional(),\n extensions: z.array(z.string()).optional(),\n metadata: z.record(z.string(), z.any()).optional(),\n }),\n});\n\nexport async function getAgentCardByIdHandler({\n mastra,\n agentId,\n executionUrl = `/a2a/${agentId}`,\n provider = {\n organization: 'Mastra',\n url: 'https://mastra.ai',\n },\n version = '1.0',\n requestContext,\n}: Context & {\n requestContext: RequestContext;\n agentId: keyof ReturnType<typeof mastra.listAgents>;\n executionUrl?: string;\n version?: string;\n provider?: {\n organization: string;\n url: string;\n };\n}): Promise<AgentCard> {\n const agent = await getAgentFromSystem({ mastra, agentId: agentId as string });\n\n const [instructions, tools]: [\n Awaited<ReturnType<typeof agent.getInstructions>>,\n Awaited<ReturnType<typeof agent.listTools>>,\n ] = await Promise.all([agent.getInstructions({ requestContext }), agent.listTools({ requestContext })]);\n\n // Extract agent information to create the AgentCard\n const agentCard: AgentCard = {\n name: agent.id || (agentId as string),\n description: convertInstructionsToString(instructions),\n url: executionUrl,\n provider,\n version,\n capabilities: {\n streaming: true, // All agents support streaming\n pushNotifications: false,\n stateTransitionHistory: false,\n },\n defaultInputModes: ['text'],\n defaultOutputModes: ['text'],\n // Convert agent tools to skills format for A2A protocol\n skills: Object.entries(tools).map(([toolId, tool]) => ({\n id: toolId,\n name: toolId,\n description: tool.description || `Tool: ${toolId}`,\n // Optional fields\n tags: ['tool'],\n })),\n };\n\n return agentCard;\n}\n\nfunction validateMessageSendParams(params: MessageSendParams) {\n try {\n messageSendParamsSchema.parse(params);\n } catch (error) {\n if (error instanceof z.ZodError) {\n throw MastraA2AError.invalidParams((error as z.ZodError).issues[0]!.message);\n }\n\n throw error;\n }\n}\n\nexport async function handleMessageSend({\n requestId,\n params,\n taskStore,\n agent,\n agentId,\n logger,\n requestContext,\n}: {\n requestId: string;\n params: MessageSendParams;\n taskStore: InMemoryTaskStore;\n agent: Agent;\n agentId: string;\n logger?: IMastraLogger;\n requestContext: RequestContext;\n}) {\n validateMessageSendParams(params);\n\n const { message, metadata } = params;\n const { contextId } = message;\n const taskId = message.taskId || crypto.randomUUID();\n\n // Load or create task\n let currentData = await loadOrCreateTask({\n taskId,\n taskStore,\n agentId,\n message,\n contextId,\n metadata,\n });\n\n // Use the new TaskContext definition, passing history\n const context = createTaskContext({\n task: currentData,\n userMessage: message,\n history: currentData.history || [],\n activeCancellations: taskStore.activeCancellations,\n });\n\n try {\n // Pass contextId as threadId for memory persistence across A2A conversations\n // Allow user to pass resourceId via metadata, fall back to agentId\n const resourceId = (metadata?.resourceId as string) ?? (message.metadata?.resourceId as string) ?? agentId;\n const result = await agent.generate([convertToCoreMessage(message)], {\n runId: taskId,\n requestContext,\n ...(contextId ? { threadId: contextId, resourceId } : {}),\n });\n\n currentData = applyUpdateToTask(currentData, {\n state: 'completed',\n message: {\n messageId: crypto.randomUUID(),\n role: 'agent',\n parts: [\n {\n kind: 'text',\n text: result.text,\n },\n ],\n kind: 'message',\n },\n });\n\n // Store execution details in task metadata\n currentData.metadata = {\n ...currentData.metadata,\n execution: {\n toolCalls: result.toolCalls,\n toolResults: result.toolResults,\n usage: result.usage,\n finishReason: result.finishReason,\n },\n };\n\n await taskStore.save({ agentId, data: currentData });\n context.task = currentData;\n } catch (handlerError) {\n // If handler throws, apply 'failed' status, save, and rethrow\n const failureStatusUpdate: Omit<TaskStatus, 'timestamp'> = {\n state: 'failed',\n message: {\n messageId: crypto.randomUUID(),\n role: 'agent',\n parts: [\n {\n kind: 'text',\n text: `Handler failed: ${handlerError instanceof Error ? handlerError.message : String(handlerError)}`,\n },\n ],\n kind: 'message',\n },\n };\n currentData = applyUpdateToTask(currentData, failureStatusUpdate);\n\n try {\n await taskStore.save({ agentId, data: currentData });\n } catch (saveError) {\n // @ts-expect-error saveError is an unknown error\n logger?.error(`Failed to save task ${currentData.id} after handler error:`, saveError?.message);\n }\n\n return normalizeError(handlerError, requestId, currentData.id, logger); // Rethrow original error\n }\n\n // The loop finished, send the final task state\n return createSuccessResponse(requestId, currentData);\n}\n\nexport async function handleTaskGet({\n requestId,\n taskStore,\n agentId,\n taskId,\n}: {\n requestId: string;\n taskStore: InMemoryTaskStore;\n agentId: string;\n taskId: string;\n}) {\n const task = await taskStore.load({ agentId, taskId });\n\n if (!task) {\n throw MastraA2AError.taskNotFound(taskId);\n }\n\n return createSuccessResponse(requestId, task);\n}\n\nexport async function* handleMessageStream({\n requestId,\n params,\n taskStore,\n agent,\n agentId,\n logger,\n requestContext,\n}: {\n requestId: string;\n params: MessageSendParams;\n taskStore: InMemoryTaskStore;\n agent: Agent;\n agentId: string;\n logger?: IMastraLogger;\n requestContext: RequestContext;\n}) {\n yield createSuccessResponse(requestId, {\n state: 'working',\n message: {\n messageId: crypto.randomUUID(),\n kind: 'message',\n role: 'agent',\n parts: [{ kind: 'text', text: 'Generating response...' }],\n },\n });\n\n let result;\n try {\n result = await handleMessageSend({\n requestId,\n params,\n taskStore,\n agent,\n agentId,\n requestContext,\n logger,\n });\n } catch (err) {\n if (!(err instanceof MastraA2AError)) {\n throw err;\n }\n\n result = createErrorResponse(requestId, err.toJSONRPCError());\n }\n\n yield result;\n}\n\nexport async function handleTaskCancel({\n requestId,\n taskStore,\n agentId,\n taskId,\n logger,\n}: {\n requestId: string;\n taskStore: InMemoryTaskStore;\n agentId: string;\n taskId: string;\n logger?: IMastraLogger;\n}) {\n // Load task and history\n let data = await taskStore.load({\n agentId,\n taskId,\n });\n\n if (!data) {\n throw MastraA2AError.taskNotFound(taskId);\n }\n\n // Check if cancelable (not already in a final state)\n const finalStates: TaskState[] = ['completed', 'failed', 'canceled'];\n\n if (finalStates.includes(data.status.state)) {\n logger?.info(`Task ${taskId} already in final state ${data.status.state}, cannot cancel.`);\n return createSuccessResponse(requestId, data);\n }\n\n // Signal cancellation\n taskStore.activeCancellations.add(taskId);\n\n // Apply 'canceled' state update\n const cancelUpdate: Omit<TaskStatus, 'timestamp'> = {\n state: 'canceled',\n message: {\n role: 'agent',\n parts: [{ kind: 'text', text: 'Task cancelled by request.' }],\n kind: 'message',\n messageId: crypto.randomUUID(),\n },\n };\n\n data = applyUpdateToTask(data, cancelUpdate);\n\n // Save the updated state\n await taskStore.save({ agentId, data });\n\n // Remove from active cancellations *after* saving\n taskStore.activeCancellations.delete(taskId);\n\n // Return the updated task object\n return createSuccessResponse(requestId, data);\n}\n\nexport async function getAgentExecutionHandler({\n requestId,\n mastra,\n agentId,\n requestContext,\n method,\n params,\n taskStore,\n logger,\n}: Context & {\n requestId: string;\n requestContext: RequestContext;\n agentId: string;\n method: 'message/send' | 'message/stream' | 'tasks/get' | 'tasks/cancel';\n params: MessageSendParams | TaskQueryParams | TaskIdParams;\n taskStore: InMemoryTaskStore;\n logger?: IMastraLogger;\n}): Promise<any> {\n const agent = await getAgentFromSystem({ mastra, agentId });\n\n let taskId: string | undefined; // For error context\n\n try {\n // Attempt to get task ID early for error context. Cast params to any to access id.\n // Proper validation happens within specific handlers.\n taskId = 'id' in params ? params.id : params.message?.taskId || 'No task ID provided';\n\n // 2. Route based on method\n switch (method) {\n case 'message/send': {\n const result = await handleMessageSend({\n requestId,\n params: params as MessageSendParams,\n taskStore,\n agent,\n agentId,\n requestContext,\n });\n return result;\n }\n case 'message/stream':\n const result = await handleMessageStream({\n requestId,\n taskStore,\n params: params as MessageSendParams,\n agent,\n agentId,\n requestContext,\n });\n return result;\n\n case 'tasks/get': {\n const result = await handleTaskGet({\n requestId,\n taskStore,\n agentId,\n taskId,\n });\n\n return result;\n }\n case 'tasks/cancel': {\n const result = await handleTaskCancel({\n requestId,\n taskStore,\n agentId,\n taskId,\n });\n\n return result;\n }\n default:\n throw MastraA2AError.methodNotFound(method);\n }\n } catch (error) {\n if (error instanceof MastraA2AError && taskId && !error.taskId) {\n error.taskId = taskId; // Add task ID context if missing\n }\n\n return normalizeError(error, requestId, taskId, logger);\n }\n}\n\n// ============================================================================\n// Route Definitions (new pattern - handlers defined inline with createRoute)\n// ============================================================================\n\nexport const GET_AGENT_CARD_ROUTE = createRoute({\n method: 'GET',\n path: '/.well-known/:agentId/agent-card.json',\n responseType: 'json',\n pathParamSchema: a2aAgentIdPathParams,\n responseSchema: agentCardResponseSchema,\n summary: 'Get agent card',\n description: 'Returns the agent card information for A2A protocol discovery',\n tags: ['Agent-to-Agent'],\n requiresAuth: true,\n handler: async ({ mastra, agentId, requestContext }) => {\n const executionUrl = `/a2a/${agentId}`;\n const provider = {\n organization: 'Mastra',\n url: 'https://mastra.ai',\n };\n const version = '1.0';\n\n const agent = await getAgentFromSystem({ mastra, agentId: agentId as string });\n\n const [instructions, tools]: [\n Awaited<ReturnType<typeof agent.getInstructions>>,\n Awaited<ReturnType<typeof agent.listTools>>,\n ] = await Promise.all([agent.getInstructions({ requestContext }), agent.listTools({ requestContext })]);\n\n const agentCard: AgentCard = {\n name: agent.id || (agentId as string),\n description: convertInstructionsToString(instructions),\n url: executionUrl,\n provider,\n version,\n capabilities: {\n streaming: true,\n pushNotifications: false,\n stateTransitionHistory: false,\n },\n defaultInputModes: ['text'],\n defaultOutputModes: ['text'],\n skills: Object.entries(tools).map(([toolId, tool]) => ({\n id: toolId,\n name: toolId,\n description: tool.description || `Tool: ${toolId}`,\n tags: ['tool'],\n })),\n };\n\n return agentCard;\n },\n});\n\nexport const AGENT_EXECUTION_ROUTE = createRoute({\n method: 'POST',\n path: '/a2a/:agentId',\n responseType: 'json',\n pathParamSchema: a2aAgentIdPathParams,\n bodySchema: agentExecutionBodySchema,\n responseSchema: agentExecutionResponseSchema,\n summary: 'Execute agent',\n description: 'Executes an agent action via JSON-RPC 2.0 over A2A protocol',\n tags: ['Agent-to-Agent'],\n requiresAuth: true,\n handler: async ({ mastra, agentId, requestContext, taskStore, ...bodyParams }) => {\n const { id: requestId, method, params } = bodyParams;\n\n return await getAgentExecutionHandler({\n requestId: String(requestId),\n mastra,\n agentId: agentId as string,\n requestContext,\n method,\n params,\n taskStore: taskStore!,\n });\n },\n});\n","import { MastraA2AError } from '@mastra/core/a2a';\n\nimport type { JSONRPCError, JSONRPCResponse, Message, Part } from '@mastra/core/a2a';\nimport type { CoreMessage } from '@mastra/core/llm';\nimport type { IMastraLogger } from '@mastra/core/logger';\n\nexport function normalizeError(\n error: any,\n reqId: number | string | null,\n taskId?: string,\n logger?: IMastraLogger,\n): JSONRPCResponse<null, unknown> {\n let a2aError: MastraA2AError;\n if (error instanceof MastraA2AError) {\n a2aError = error;\n } else if (error instanceof Error) {\n // Generic JS error\n a2aError = MastraA2AError.internalError(error.message, { stack: error.stack });\n } else {\n // Unknown error type\n a2aError = MastraA2AError.internalError('An unknown error occurred.', error);\n }\n\n // Ensure Task ID context is present if possible\n if (taskId && !a2aError.taskId) {\n a2aError.taskId = taskId;\n }\n\n logger?.error(`Error processing request (Task: ${a2aError.taskId ?? 'N/A'}, ReqID: ${reqId ?? 'N/A'}):`, a2aError);\n\n return createErrorResponse(reqId, a2aError.toJSONRPCError());\n}\n\nexport function createErrorResponse(\n id: number | string | null,\n error: JSONRPCError<unknown>,\n): JSONRPCResponse<null, unknown> {\n // For errors, ID should be the same as request ID, or null if that couldn't be determined\n return {\n jsonrpc: '2.0',\n id: id, // Can be null if request ID was invalid/missing\n error: error,\n };\n}\n\nexport function createSuccessResponse<T>(id: number | string | null, result: T): JSONRPCResponse<T> {\n if (!id) {\n // This shouldn't happen for methods that expect a response, but safeguard\n throw MastraA2AError.internalError('Cannot create success response for null ID.');\n }\n\n return {\n jsonrpc: '2.0',\n id: id,\n result: result,\n };\n}\n\nexport function convertToCoreMessage(message: Message): CoreMessage {\n return {\n role: message.role === 'user' ? 'user' : 'assistant',\n content: message.parts.map(msg => convertToCoreMessagePart(msg)),\n };\n}\n\nfunction convertToCoreMessagePart(part: Part) {\n switch (part.kind) {\n case 'text':\n return {\n type: 'text',\n text: part.text,\n } as const;\n case 'file':\n return {\n type: 'file',\n data: 'uri' in part.file ? new URL(part.file.uri) : part.file.bytes,\n mimeType: part.file.mimeType!,\n } as const;\n case 'data':\n throw new Error('Data parts are not supported in core messages');\n }\n}\n","import type {\n Message,\n Task,\n TaskState,\n TaskStatus,\n TaskContext,\n TaskArtifactUpdateEvent,\n Artifact,\n} from '@mastra/core/a2a';\nimport type { IMastraLogger } from '@mastra/core/logger';\nimport type { InMemoryTaskStore } from './store';\n\nfunction isTaskStatusUpdate(update: TaskStatus | TaskArtifactUpdateEvent): update is Omit<TaskStatus, 'timestamp'> {\n return 'state' in update && !('parts' in update);\n}\n\nfunction isArtifactUpdate(update: TaskStatus | TaskArtifactUpdateEvent): update is TaskArtifactUpdateEvent {\n return 'kind' in update && update.kind === 'artifact-update';\n}\n\nexport function applyUpdateToTask(\n current: Task,\n update: Omit<TaskStatus, 'timestamp'> | TaskArtifactUpdateEvent,\n): Task {\n let newTask = structuredClone(current);\n\n if (isTaskStatusUpdate(update)) {\n // Merge status update\n newTask.status = {\n ...newTask.status, // Keep existing properties if not overwritten\n ...update, // Apply updates\n timestamp: new Date().toISOString(),\n };\n } else if (isArtifactUpdate(update)) {\n // Handle artifact update\n if (!newTask.artifacts) {\n newTask.artifacts = [];\n } else {\n // Ensure we're working with a copy of the artifacts array\n newTask.artifacts = [...newTask.artifacts];\n }\n\n const artifact = update.artifact;\n const existingIndex = newTask.artifacts.findIndex(a => a.name === artifact.name);\n const existingArtifact = newTask.artifacts[existingIndex];\n\n if (existingArtifact) {\n if (update.append) {\n // Create a deep copy for modification to avoid mutating original\n const appendedArtifact = JSON.parse(JSON.stringify(existingArtifact)) as Artifact;\n appendedArtifact.parts.push(...artifact.parts);\n if (artifact.metadata) {\n appendedArtifact.metadata = {\n ...(appendedArtifact.metadata || {}),\n ...artifact.metadata,\n };\n }\n if (artifact.description) appendedArtifact.description = artifact.description;\n newTask.artifacts[existingIndex] = appendedArtifact; // Replace with appended version\n } else {\n // Overwrite artifact at index (with a copy of the update)\n newTask.artifacts[existingIndex] = { ...artifact };\n }\n } else {\n newTask.artifacts.push({ ...artifact });\n }\n }\n\n return newTask;\n}\n\nexport async function loadOrCreateTask({\n agentId,\n taskId,\n taskStore,\n message,\n contextId,\n metadata,\n logger,\n}: {\n agentId: string;\n taskId: string;\n taskStore: InMemoryTaskStore;\n message: Message;\n contextId?: string;\n metadata?: Record<string, unknown>;\n logger?: IMastraLogger;\n}): Promise<Task> {\n const data = await taskStore.load({ agentId, taskId });\n\n // Create new task if none exists\n if (!data) {\n const initialTask: Task = {\n id: taskId,\n contextId: contextId || crypto.randomUUID(),\n status: {\n state: 'submitted',\n timestamp: new Date().toISOString(),\n message: undefined,\n },\n artifacts: [],\n history: [message],\n metadata: metadata,\n kind: 'task',\n };\n\n logger?.info(`[Task ${taskId}] Created new task.`);\n await taskStore.save({ agentId, data: initialTask });\n\n return initialTask;\n }\n\n // Handle existing task\n logger?.info(`[Task ${taskId}] Loaded existing task.`);\n\n // Add message to history and prepare updated data\n let updatedData = data;\n updatedData.history = [...(data.history || []), message];\n\n // Handle state transitions\n const { status } = data;\n const finalStates: TaskState[] = ['completed', 'failed', 'canceled'];\n\n if (finalStates.includes(status.state)) {\n logger?.warn(`[Task ${taskId}] Received message for task in final state ${status.state}. Restarting.`);\n updatedData = applyUpdateToTask(updatedData, {\n state: 'submitted',\n message: undefined,\n });\n } else if (status.state === 'input-required') {\n logger?.info(`[Task ${taskId}] Changing state from 'input-required' to 'working'.`);\n updatedData = applyUpdateToTask(updatedData, { state: 'working' });\n } else if (status.state === 'working') {\n logger?.warn(`[Task ${taskId}] Received message while already 'working'. Proceeding.`);\n }\n\n await taskStore.save({ agentId, data: updatedData });\n\n return updatedData;\n}\n\nexport function createTaskContext({\n task,\n userMessage,\n history,\n activeCancellations,\n}: {\n task: Task;\n userMessage: Message;\n history: Message[];\n activeCancellations: Set<string>;\n}): TaskContext {\n return {\n task: structuredClone(task),\n userMessage,\n history: structuredClone(history),\n isCancelled: () => activeCancellations.has(task.id),\n };\n}\n"]}
1
+ {"version":3,"sources":["../src/server/handlers/a2a.ts","../src/server/a2a/protocol.ts","../src/server/a2a/tasks.ts"],"names":["__export","MastraA2AError","z","getAgentFromSystem","convertInstructionsToString","result","createRoute","a2aAgentIdPathParams","agentCardResponseSchema","agentExecutionBodySchema","agentExecutionResponseSchema"],"mappings":"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","file":"chunk-K57KYKGV.cjs","sourcesContent":["import { MastraA2AError } from '@mastra/core/a2a';\nimport type {\n MessageSendParams,\n TaskQueryParams,\n TaskIdParams,\n AgentCard,\n TaskStatus,\n TaskState,\n} from '@mastra/core/a2a';\nimport type { Agent } from '@mastra/core/agent';\nimport type { IMastraLogger } from '@mastra/core/logger';\nimport type { RequestContext } from '@mastra/core/request-context';\nimport { z } from 'zod';\nimport { convertToCoreMessage, normalizeError, createSuccessResponse, createErrorResponse } from '../a2a/protocol';\nimport type { InMemoryTaskStore } from '../a2a/store';\nimport { applyUpdateToTask, createTaskContext, loadOrCreateTask } from '../a2a/tasks';\nimport {\n a2aAgentIdPathParams,\n agentExecutionBodySchema,\n agentCardResponseSchema,\n agentExecutionResponseSchema,\n} from '../schemas/a2a';\nimport { createRoute } from '../server-adapter/routes/route-builder';\nimport type { Context } from '../types';\nimport { convertInstructionsToString } from '../utils';\nimport { getAgentFromSystem } from './agents';\n\nconst messageSendParamsSchema = z.object({\n message: z.object({\n role: z.enum(['user', 'agent']),\n parts: z.array(\n z.object({\n kind: z.enum(['text']),\n text: z.string(),\n }),\n ),\n kind: z.literal('message'),\n messageId: z.string(),\n contextId: z.string().optional(),\n taskId: z.string().optional(),\n referenceTaskIds: z.array(z.string()).optional(),\n extensions: z.array(z.string()).optional(),\n metadata: z.record(z.string(), z.any()).optional(),\n }),\n});\n\nexport async function getAgentCardByIdHandler({\n mastra,\n agentId,\n executionUrl = `/a2a/${agentId}`,\n provider = {\n organization: 'Mastra',\n url: 'https://mastra.ai',\n },\n version = '1.0',\n requestContext,\n}: Context & {\n requestContext: RequestContext;\n agentId: keyof ReturnType<typeof mastra.listAgents>;\n executionUrl?: string;\n version?: string;\n provider?: {\n organization: string;\n url: string;\n };\n}): Promise<AgentCard> {\n const agent = await getAgentFromSystem({ mastra, agentId: agentId as string });\n\n const [instructions, tools]: [\n Awaited<ReturnType<typeof agent.getInstructions>>,\n Awaited<ReturnType<typeof agent.listTools>>,\n ] = await Promise.all([agent.getInstructions({ requestContext }), agent.listTools({ requestContext })]);\n\n // Extract agent information to create the AgentCard\n const agentCard: AgentCard = {\n name: agent.id || (agentId as string),\n description: convertInstructionsToString(instructions),\n url: executionUrl,\n provider,\n version,\n capabilities: {\n streaming: true, // All agents support streaming\n pushNotifications: false,\n stateTransitionHistory: false,\n },\n defaultInputModes: ['text'],\n defaultOutputModes: ['text'],\n // Convert agent tools to skills format for A2A protocol\n skills: Object.entries(tools).map(([toolId, tool]) => ({\n id: toolId,\n name: toolId,\n description: tool.description || `Tool: ${toolId}`,\n // Optional fields\n tags: ['tool'],\n })),\n };\n\n return agentCard;\n}\n\nfunction validateMessageSendParams(params: MessageSendParams) {\n try {\n messageSendParamsSchema.parse(params);\n } catch (error) {\n if (error instanceof z.ZodError) {\n throw MastraA2AError.invalidParams((error as z.ZodError).issues[0]!.message);\n }\n\n throw error;\n }\n}\n\nexport async function handleMessageSend({\n requestId,\n params,\n taskStore,\n agent,\n agentId,\n logger,\n requestContext,\n}: {\n requestId: string;\n params: MessageSendParams;\n taskStore: InMemoryTaskStore;\n agent: Agent;\n agentId: string;\n logger?: IMastraLogger;\n requestContext: RequestContext;\n}) {\n validateMessageSendParams(params);\n\n const { message, metadata } = params;\n const { contextId } = message;\n const taskId = message.taskId || crypto.randomUUID();\n\n // Load or create task\n let currentData = await loadOrCreateTask({\n taskId,\n taskStore,\n agentId,\n message,\n contextId,\n metadata,\n });\n\n // Use the new TaskContext definition, passing history\n const context = createTaskContext({\n task: currentData,\n userMessage: message,\n history: currentData.history || [],\n activeCancellations: taskStore.activeCancellations,\n });\n\n try {\n // Pass contextId as threadId for memory persistence across A2A conversations\n // Allow user to pass resourceId via metadata, fall back to agentId\n const resourceId = (metadata?.resourceId as string) ?? (message.metadata?.resourceId as string) ?? agentId;\n const result = await agent.generate([convertToCoreMessage(message)], {\n runId: taskId,\n requestContext,\n ...(contextId ? { threadId: contextId, resourceId } : {}),\n });\n\n currentData = applyUpdateToTask(currentData, {\n state: 'completed',\n message: {\n messageId: crypto.randomUUID(),\n role: 'agent',\n parts: [\n {\n kind: 'text',\n text: result.text,\n },\n ],\n kind: 'message',\n },\n });\n\n // Store execution details in task metadata\n currentData.metadata = {\n ...currentData.metadata,\n execution: {\n toolCalls: result.toolCalls,\n toolResults: result.toolResults,\n usage: result.usage,\n finishReason: result.finishReason,\n },\n };\n\n await taskStore.save({ agentId, data: currentData });\n context.task = currentData;\n } catch (handlerError) {\n // If handler throws, apply 'failed' status, save, and rethrow\n const failureStatusUpdate: Omit<TaskStatus, 'timestamp'> = {\n state: 'failed',\n message: {\n messageId: crypto.randomUUID(),\n role: 'agent',\n parts: [\n {\n kind: 'text',\n text: `Handler failed: ${handlerError instanceof Error ? handlerError.message : String(handlerError)}`,\n },\n ],\n kind: 'message',\n },\n };\n currentData = applyUpdateToTask(currentData, failureStatusUpdate);\n\n try {\n await taskStore.save({ agentId, data: currentData });\n } catch (saveError) {\n // @ts-expect-error saveError is an unknown error\n logger?.error(`Failed to save task ${currentData.id} after handler error:`, saveError?.message);\n }\n\n return normalizeError(handlerError, requestId, currentData.id, logger); // Rethrow original error\n }\n\n // The loop finished, send the final task state\n return createSuccessResponse(requestId, currentData);\n}\n\nexport async function handleTaskGet({\n requestId,\n taskStore,\n agentId,\n taskId,\n}: {\n requestId: string;\n taskStore: InMemoryTaskStore;\n agentId: string;\n taskId: string;\n}) {\n const task = await taskStore.load({ agentId, taskId });\n\n if (!task) {\n throw MastraA2AError.taskNotFound(taskId);\n }\n\n return createSuccessResponse(requestId, task);\n}\n\nexport async function* handleMessageStream({\n requestId,\n params,\n taskStore,\n agent,\n agentId,\n logger,\n requestContext,\n}: {\n requestId: string;\n params: MessageSendParams;\n taskStore: InMemoryTaskStore;\n agent: Agent;\n agentId: string;\n logger?: IMastraLogger;\n requestContext: RequestContext;\n}) {\n yield createSuccessResponse(requestId, {\n state: 'working',\n message: {\n messageId: crypto.randomUUID(),\n kind: 'message',\n role: 'agent',\n parts: [{ kind: 'text', text: 'Generating response...' }],\n },\n });\n\n let result;\n try {\n result = await handleMessageSend({\n requestId,\n params,\n taskStore,\n agent,\n agentId,\n requestContext,\n logger,\n });\n } catch (err) {\n if (!(err instanceof MastraA2AError)) {\n throw err;\n }\n\n result = createErrorResponse(requestId, err.toJSONRPCError());\n }\n\n yield result;\n}\n\nexport async function handleTaskCancel({\n requestId,\n taskStore,\n agentId,\n taskId,\n logger,\n}: {\n requestId: string;\n taskStore: InMemoryTaskStore;\n agentId: string;\n taskId: string;\n logger?: IMastraLogger;\n}) {\n // Load task and history\n let data = await taskStore.load({\n agentId,\n taskId,\n });\n\n if (!data) {\n throw MastraA2AError.taskNotFound(taskId);\n }\n\n // Check if cancelable (not already in a final state)\n const finalStates: TaskState[] = ['completed', 'failed', 'canceled'];\n\n if (finalStates.includes(data.status.state)) {\n logger?.info(`Task ${taskId} already in final state ${data.status.state}, cannot cancel.`);\n return createSuccessResponse(requestId, data);\n }\n\n // Signal cancellation\n taskStore.activeCancellations.add(taskId);\n\n // Apply 'canceled' state update\n const cancelUpdate: Omit<TaskStatus, 'timestamp'> = {\n state: 'canceled',\n message: {\n role: 'agent',\n parts: [{ kind: 'text', text: 'Task cancelled by request.' }],\n kind: 'message',\n messageId: crypto.randomUUID(),\n },\n };\n\n data = applyUpdateToTask(data, cancelUpdate);\n\n // Save the updated state\n await taskStore.save({ agentId, data });\n\n // Remove from active cancellations *after* saving\n taskStore.activeCancellations.delete(taskId);\n\n // Return the updated task object\n return createSuccessResponse(requestId, data);\n}\n\nexport async function getAgentExecutionHandler({\n requestId,\n mastra,\n agentId,\n requestContext,\n method,\n params,\n taskStore,\n logger,\n}: Context & {\n requestId: string;\n requestContext: RequestContext;\n agentId: string;\n method: 'message/send' | 'message/stream' | 'tasks/get' | 'tasks/cancel';\n params: MessageSendParams | TaskQueryParams | TaskIdParams;\n taskStore: InMemoryTaskStore;\n logger?: IMastraLogger;\n}): Promise<any> {\n const agent = await getAgentFromSystem({ mastra, agentId });\n\n let taskId: string | undefined; // For error context\n\n try {\n // Attempt to get task ID early for error context. Cast params to any to access id.\n // Proper validation happens within specific handlers.\n taskId = 'id' in params ? params.id : params.message?.taskId || 'No task ID provided';\n\n // 2. Route based on method\n switch (method) {\n case 'message/send': {\n const result = await handleMessageSend({\n requestId,\n params: params as MessageSendParams,\n taskStore,\n agent,\n agentId,\n requestContext,\n });\n return result;\n }\n case 'message/stream':\n const result = await handleMessageStream({\n requestId,\n taskStore,\n params: params as MessageSendParams,\n agent,\n agentId,\n requestContext,\n });\n return result;\n\n case 'tasks/get': {\n const result = await handleTaskGet({\n requestId,\n taskStore,\n agentId,\n taskId,\n });\n\n return result;\n }\n case 'tasks/cancel': {\n const result = await handleTaskCancel({\n requestId,\n taskStore,\n agentId,\n taskId,\n });\n\n return result;\n }\n default:\n throw MastraA2AError.methodNotFound(method);\n }\n } catch (error) {\n if (error instanceof MastraA2AError && taskId && !error.taskId) {\n error.taskId = taskId; // Add task ID context if missing\n }\n\n return normalizeError(error, requestId, taskId, logger);\n }\n}\n\n// ============================================================================\n// Route Definitions (new pattern - handlers defined inline with createRoute)\n// ============================================================================\n\nexport const GET_AGENT_CARD_ROUTE = createRoute({\n method: 'GET',\n path: '/.well-known/:agentId/agent-card.json',\n responseType: 'json',\n pathParamSchema: a2aAgentIdPathParams,\n responseSchema: agentCardResponseSchema,\n summary: 'Get agent card',\n description: 'Returns the agent card information for A2A protocol discovery',\n tags: ['Agent-to-Agent'],\n requiresAuth: true,\n handler: async ({ mastra, agentId, requestContext }) => {\n const executionUrl = `/a2a/${agentId}`;\n const provider = {\n organization: 'Mastra',\n url: 'https://mastra.ai',\n };\n const version = '1.0';\n\n const agent = await getAgentFromSystem({ mastra, agentId: agentId as string });\n\n const [instructions, tools]: [\n Awaited<ReturnType<typeof agent.getInstructions>>,\n Awaited<ReturnType<typeof agent.listTools>>,\n ] = await Promise.all([agent.getInstructions({ requestContext }), agent.listTools({ requestContext })]);\n\n const agentCard: AgentCard = {\n name: agent.id || (agentId as string),\n description: convertInstructionsToString(instructions),\n url: executionUrl,\n provider,\n version,\n capabilities: {\n streaming: true,\n pushNotifications: false,\n stateTransitionHistory: false,\n },\n defaultInputModes: ['text'],\n defaultOutputModes: ['text'],\n skills: Object.entries(tools).map(([toolId, tool]) => ({\n id: toolId,\n name: toolId,\n description: tool.description || `Tool: ${toolId}`,\n tags: ['tool'],\n })),\n };\n\n return agentCard;\n },\n});\n\nexport const AGENT_EXECUTION_ROUTE = createRoute({\n method: 'POST',\n path: '/a2a/:agentId',\n responseType: 'json',\n pathParamSchema: a2aAgentIdPathParams,\n bodySchema: agentExecutionBodySchema,\n responseSchema: agentExecutionResponseSchema,\n summary: 'Execute agent',\n description: 'Executes an agent action via JSON-RPC 2.0 over A2A protocol',\n tags: ['Agent-to-Agent'],\n requiresAuth: true,\n handler: async ({ mastra, agentId, requestContext, taskStore, ...bodyParams }) => {\n const { id: requestId, method, params } = bodyParams;\n\n return await getAgentExecutionHandler({\n requestId: String(requestId),\n mastra,\n agentId: agentId as string,\n requestContext,\n method,\n params,\n taskStore: taskStore!,\n });\n },\n});\n","import { MastraA2AError } from '@mastra/core/a2a';\n\nimport type { JSONRPCError, JSONRPCResponse, Message, Part } from '@mastra/core/a2a';\nimport type { CoreMessage } from '@mastra/core/llm';\nimport type { IMastraLogger } from '@mastra/core/logger';\n\nexport function normalizeError(\n error: any,\n reqId: number | string | null,\n taskId?: string,\n logger?: IMastraLogger,\n): JSONRPCResponse<null, unknown> {\n let a2aError: MastraA2AError;\n if (error instanceof MastraA2AError) {\n a2aError = error;\n } else if (error instanceof Error) {\n // Generic JS error\n a2aError = MastraA2AError.internalError(error.message, { stack: error.stack });\n } else {\n // Unknown error type\n a2aError = MastraA2AError.internalError('An unknown error occurred.', error);\n }\n\n // Ensure Task ID context is present if possible\n if (taskId && !a2aError.taskId) {\n a2aError.taskId = taskId;\n }\n\n logger?.error(`Error processing request (Task: ${a2aError.taskId ?? 'N/A'}, ReqID: ${reqId ?? 'N/A'}):`, a2aError);\n\n return createErrorResponse(reqId, a2aError.toJSONRPCError());\n}\n\nexport function createErrorResponse(\n id: number | string | null,\n error: JSONRPCError<unknown>,\n): JSONRPCResponse<null, unknown> {\n // For errors, ID should be the same as request ID, or null if that couldn't be determined\n return {\n jsonrpc: '2.0',\n id: id, // Can be null if request ID was invalid/missing\n error: error,\n };\n}\n\nexport function createSuccessResponse<T>(id: number | string | null, result: T): JSONRPCResponse<T> {\n if (!id) {\n // This shouldn't happen for methods that expect a response, but safeguard\n throw MastraA2AError.internalError('Cannot create success response for null ID.');\n }\n\n return {\n jsonrpc: '2.0',\n id: id,\n result: result,\n };\n}\n\nexport function convertToCoreMessage(message: Message): CoreMessage {\n return {\n role: message.role === 'user' ? 'user' : 'assistant',\n content: message.parts.map(msg => convertToCoreMessagePart(msg)),\n };\n}\n\nfunction convertToCoreMessagePart(part: Part) {\n switch (part.kind) {\n case 'text':\n return {\n type: 'text',\n text: part.text,\n } as const;\n case 'file':\n return {\n type: 'file',\n data: 'uri' in part.file ? new URL(part.file.uri) : part.file.bytes,\n mimeType: part.file.mimeType!,\n } as const;\n case 'data':\n throw new Error('Data parts are not supported in core messages');\n }\n}\n","import type {\n Message,\n Task,\n TaskState,\n TaskStatus,\n TaskContext,\n TaskArtifactUpdateEvent,\n Artifact,\n} from '@mastra/core/a2a';\nimport type { IMastraLogger } from '@mastra/core/logger';\nimport type { InMemoryTaskStore } from './store';\n\nfunction isTaskStatusUpdate(update: TaskStatus | TaskArtifactUpdateEvent): update is Omit<TaskStatus, 'timestamp'> {\n return 'state' in update && !('parts' in update);\n}\n\nfunction isArtifactUpdate(update: TaskStatus | TaskArtifactUpdateEvent): update is TaskArtifactUpdateEvent {\n return 'kind' in update && update.kind === 'artifact-update';\n}\n\nexport function applyUpdateToTask(\n current: Task,\n update: Omit<TaskStatus, 'timestamp'> | TaskArtifactUpdateEvent,\n): Task {\n let newTask = structuredClone(current);\n\n if (isTaskStatusUpdate(update)) {\n // Merge status update\n newTask.status = {\n ...newTask.status, // Keep existing properties if not overwritten\n ...update, // Apply updates\n timestamp: new Date().toISOString(),\n };\n } else if (isArtifactUpdate(update)) {\n // Handle artifact update\n if (!newTask.artifacts) {\n newTask.artifacts = [];\n } else {\n // Ensure we're working with a copy of the artifacts array\n newTask.artifacts = [...newTask.artifacts];\n }\n\n const artifact = update.artifact;\n const existingIndex = newTask.artifacts.findIndex(a => a.name === artifact.name);\n const existingArtifact = newTask.artifacts[existingIndex];\n\n if (existingArtifact) {\n if (update.append) {\n // Create a deep copy for modification to avoid mutating original\n const appendedArtifact = JSON.parse(JSON.stringify(existingArtifact)) as Artifact;\n appendedArtifact.parts.push(...artifact.parts);\n if (artifact.metadata) {\n appendedArtifact.metadata = {\n ...(appendedArtifact.metadata || {}),\n ...artifact.metadata,\n };\n }\n if (artifact.description) appendedArtifact.description = artifact.description;\n newTask.artifacts[existingIndex] = appendedArtifact; // Replace with appended version\n } else {\n // Overwrite artifact at index (with a copy of the update)\n newTask.artifacts[existingIndex] = { ...artifact };\n }\n } else {\n newTask.artifacts.push({ ...artifact });\n }\n }\n\n return newTask;\n}\n\nexport async function loadOrCreateTask({\n agentId,\n taskId,\n taskStore,\n message,\n contextId,\n metadata,\n logger,\n}: {\n agentId: string;\n taskId: string;\n taskStore: InMemoryTaskStore;\n message: Message;\n contextId?: string;\n metadata?: Record<string, unknown>;\n logger?: IMastraLogger;\n}): Promise<Task> {\n const data = await taskStore.load({ agentId, taskId });\n\n // Create new task if none exists\n if (!data) {\n const initialTask: Task = {\n id: taskId,\n contextId: contextId || crypto.randomUUID(),\n status: {\n state: 'submitted',\n timestamp: new Date().toISOString(),\n message: undefined,\n },\n artifacts: [],\n history: [message],\n metadata: metadata,\n kind: 'task',\n };\n\n logger?.info(`[Task ${taskId}] Created new task.`);\n await taskStore.save({ agentId, data: initialTask });\n\n return initialTask;\n }\n\n // Handle existing task\n logger?.info(`[Task ${taskId}] Loaded existing task.`);\n\n // Add message to history and prepare updated data\n let updatedData = data;\n updatedData.history = [...(data.history || []), message];\n\n // Handle state transitions\n const { status } = data;\n const finalStates: TaskState[] = ['completed', 'failed', 'canceled'];\n\n if (finalStates.includes(status.state)) {\n logger?.warn(`[Task ${taskId}] Received message for task in final state ${status.state}. Restarting.`);\n updatedData = applyUpdateToTask(updatedData, {\n state: 'submitted',\n message: undefined,\n });\n } else if (status.state === 'input-required') {\n logger?.info(`[Task ${taskId}] Changing state from 'input-required' to 'working'.`);\n updatedData = applyUpdateToTask(updatedData, { state: 'working' });\n } else if (status.state === 'working') {\n logger?.warn(`[Task ${taskId}] Received message while already 'working'. Proceeding.`);\n }\n\n await taskStore.save({ agentId, data: updatedData });\n\n return updatedData;\n}\n\nexport function createTaskContext({\n task,\n userMessage,\n history,\n activeCancellations,\n}: {\n task: Task;\n userMessage: Message;\n history: Message[];\n activeCancellations: Set<string>;\n}): TaskContext {\n return {\n task: structuredClone(task),\n userMessage,\n history: structuredClone(history),\n isCancelled: () => activeCancellations.has(task.id),\n };\n}\n"]}
@@ -1,7 +1,7 @@
1
1
  'use strict';
2
2
 
3
3
  var chunkQTBCX6KF_cjs = require('./chunk-QTBCX6KF.cjs');
4
- var chunk6P7P7Y5U_cjs = require('./chunk-6P7P7Y5U.cjs');
4
+ var chunk4QX6ZNKX_cjs = require('./chunk-4QX6ZNKX.cjs');
5
5
  var chunk64ITUOXI_cjs = require('./chunk-64ITUOXI.cjs');
6
6
  var chunkO7I5CWRX_cjs = require('./chunk-O7I5CWRX.cjs');
7
7
 
@@ -17,7 +17,7 @@ chunkO7I5CWRX_cjs.__export(mcp_exports, {
17
17
  MCP_SSE_MESSAGES_ROUTE: () => MCP_SSE_MESSAGES_ROUTE,
18
18
  MCP_SSE_TRANSPORT_ROUTE: () => MCP_SSE_TRANSPORT_ROUTE
19
19
  });
20
- var LIST_MCP_SERVERS_ROUTE = chunk6P7P7Y5U_cjs.createRoute({
20
+ var LIST_MCP_SERVERS_ROUTE = chunk4QX6ZNKX_cjs.createRoute({
21
21
  method: "GET",
22
22
  path: "/mcp/v0/servers",
23
23
  responseType: "json",
@@ -74,7 +74,7 @@ var LIST_MCP_SERVERS_ROUTE = chunk6P7P7Y5U_cjs.createRoute({
74
74
  };
75
75
  }
76
76
  });
77
- var GET_MCP_SERVER_DETAIL_ROUTE = chunk6P7P7Y5U_cjs.createRoute({
77
+ var GET_MCP_SERVER_DETAIL_ROUTE = chunk4QX6ZNKX_cjs.createRoute({
78
78
  method: "GET",
79
79
  path: "/mcp/v0/servers/:id",
80
80
  responseType: "json",
@@ -102,7 +102,7 @@ var GET_MCP_SERVER_DETAIL_ROUTE = chunk6P7P7Y5U_cjs.createRoute({
102
102
  return serverDetail;
103
103
  }
104
104
  });
105
- var LIST_MCP_SERVER_TOOLS_ROUTE = chunk6P7P7Y5U_cjs.createRoute({
105
+ var LIST_MCP_SERVER_TOOLS_ROUTE = chunk4QX6ZNKX_cjs.createRoute({
106
106
  method: "GET",
107
107
  path: "/mcp/:serverId/tools",
108
108
  responseType: "json",
@@ -126,7 +126,7 @@ var LIST_MCP_SERVER_TOOLS_ROUTE = chunk6P7P7Y5U_cjs.createRoute({
126
126
  return server.getToolListInfo();
127
127
  }
128
128
  });
129
- var GET_MCP_SERVER_TOOL_DETAIL_ROUTE = chunk6P7P7Y5U_cjs.createRoute({
129
+ var GET_MCP_SERVER_TOOL_DETAIL_ROUTE = chunk4QX6ZNKX_cjs.createRoute({
130
130
  method: "GET",
131
131
  path: "/mcp/:serverId/tools/:toolId",
132
132
  responseType: "json",
@@ -154,7 +154,7 @@ var GET_MCP_SERVER_TOOL_DETAIL_ROUTE = chunk6P7P7Y5U_cjs.createRoute({
154
154
  return toolInfo;
155
155
  }
156
156
  });
157
- var EXECUTE_MCP_SERVER_TOOL_ROUTE = chunk6P7P7Y5U_cjs.createRoute({
157
+ var EXECUTE_MCP_SERVER_TOOL_ROUTE = chunk4QX6ZNKX_cjs.createRoute({
158
158
  method: "POST",
159
159
  path: "/mcp/:serverId/tools/:toolId/execute",
160
160
  responseType: "json",
@@ -185,7 +185,7 @@ var EXECUTE_MCP_SERVER_TOOL_ROUTE = chunk6P7P7Y5U_cjs.createRoute({
185
185
  return { result };
186
186
  }
187
187
  });
188
- var MCP_HTTP_TRANSPORT_ROUTE = chunk6P7P7Y5U_cjs.createRoute({
188
+ var MCP_HTTP_TRANSPORT_ROUTE = chunk4QX6ZNKX_cjs.createRoute({
189
189
  method: "ALL",
190
190
  path: "/mcp/:serverId/mcp",
191
191
  responseType: "mcp-http",
@@ -208,7 +208,7 @@ var MCP_HTTP_TRANSPORT_ROUTE = chunk6P7P7Y5U_cjs.createRoute({
208
208
  };
209
209
  }
210
210
  });
211
- var MCP_SSE_TRANSPORT_ROUTE = chunk6P7P7Y5U_cjs.createRoute({
211
+ var MCP_SSE_TRANSPORT_ROUTE = chunk4QX6ZNKX_cjs.createRoute({
212
212
  method: "ALL",
213
213
  path: "/mcp/:serverId/sse",
214
214
  responseType: "mcp-sse",
@@ -232,7 +232,7 @@ var MCP_SSE_TRANSPORT_ROUTE = chunk6P7P7Y5U_cjs.createRoute({
232
232
  };
233
233
  }
234
234
  });
235
- var MCP_SSE_MESSAGES_ROUTE = chunk6P7P7Y5U_cjs.createRoute({
235
+ var MCP_SSE_MESSAGES_ROUTE = chunk4QX6ZNKX_cjs.createRoute({
236
236
  method: "POST",
237
237
  path: "/mcp/:serverId/messages",
238
238
  responseType: "mcp-sse",
@@ -253,5 +253,5 @@ exports.MCP_HTTP_TRANSPORT_ROUTE = MCP_HTTP_TRANSPORT_ROUTE;
253
253
  exports.MCP_SSE_MESSAGES_ROUTE = MCP_SSE_MESSAGES_ROUTE;
254
254
  exports.MCP_SSE_TRANSPORT_ROUTE = MCP_SSE_TRANSPORT_ROUTE;
255
255
  exports.mcp_exports = mcp_exports;
256
- //# sourceMappingURL=chunk-NSB6AGO3.cjs.map
257
- //# sourceMappingURL=chunk-NSB6AGO3.cjs.map
256
+ //# sourceMappingURL=chunk-KH2EURUA.cjs.map
257
+ //# sourceMappingURL=chunk-KH2EURUA.cjs.map