@mastra/server 1.68.0 → 1.69.0-alpha.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 (179) hide show
  1. package/dist/{a2a-Cr-pxMJm.cjs → a2a-CwxSk6H0.cjs} +3 -3
  2. package/dist/{a2a-Cr-pxMJm.cjs.map → a2a-CwxSk6H0.cjs.map} +1 -1
  3. package/dist/{a2a-D2AP2MGB.js → a2a-DQOqoU_q.js} +3 -3
  4. package/dist/{a2a-D2AP2MGB.js.map → a2a-DQOqoU_q.js.map} +1 -1
  5. package/dist/{api-schema-manifest-hEcC_Jev.cjs → api-schema-manifest-DVtaKu5u.cjs} +3 -3
  6. package/dist/{api-schema-manifest-hEcC_Jev.cjs.map → api-schema-manifest-DVtaKu5u.cjs.map} +1 -1
  7. package/dist/{api-schema-manifest-DRBrp4e0.js → api-schema-manifest-DpV6M73y.js} +3 -3
  8. package/dist/{api-schema-manifest-DRBrp4e0.js.map → api-schema-manifest-DpV6M73y.js.map} +1 -1
  9. package/dist/{background-tasks-NjqWJcUw.cjs → background-tasks-B_SDfdq2.cjs} +2 -2
  10. package/dist/{background-tasks-NjqWJcUw.cjs.map → background-tasks-B_SDfdq2.cjs.map} +1 -1
  11. package/dist/{background-tasks-D7X7M0TU.js → background-tasks-C6i8kBSg.js} +2 -2
  12. package/dist/{background-tasks-D7X7M0TU.js.map → background-tasks-C6i8kBSg.js.map} +1 -1
  13. package/dist/{builder-registry-CZW_Z4DV.js → builder-registry-D1nqm8Ck.js} +3 -3
  14. package/dist/{builder-registry-CZW_Z4DV.js.map → builder-registry-D1nqm8Ck.js.map} +1 -1
  15. package/dist/{builder-registry-BtwztV7s.cjs → builder-registry-eWIWmOJ3.cjs} +3 -3
  16. package/dist/{builder-registry-BtwztV7s.cjs.map → builder-registry-eWIWmOJ3.cjs.map} +1 -1
  17. package/dist/{channels-pCkdvG0z.cjs → channels-DMw4LEA-.cjs} +2 -2
  18. package/dist/{channels-pCkdvG0z.cjs.map → channels-DMw4LEA-.cjs.map} +1 -1
  19. package/dist/{channels-uSO1ySnT.js → channels-xqChW6Vw.js} +2 -2
  20. package/dist/{channels-uSO1ySnT.js.map → channels-xqChW6Vw.js.map} +1 -1
  21. package/dist/{dist-dfcZRhcQ.js → dist-BVvr8tvj.js} +4 -4
  22. package/dist/{dist-dfcZRhcQ.js.map → dist-BVvr8tvj.js.map} +1 -1
  23. package/dist/{dist-CF1rK7oZ.cjs → dist-tgT9jZAV.cjs} +8 -8
  24. package/dist/{dist-CF1rK7oZ.cjs.map → dist-tgT9jZAV.cjs.map} +1 -1
  25. package/dist/docs/SKILL.md +1 -1
  26. package/dist/docs/assets/SOURCE_MAP.json +1 -1
  27. package/dist/{dynamic-workflows-CVrxi8y7.js → dynamic-workflows-BJfoQMo8.js} +2 -2
  28. package/dist/{dynamic-workflows-CVrxi8y7.js.map → dynamic-workflows-BJfoQMo8.js.map} +1 -1
  29. package/dist/{dynamic-workflows-BiX72mRA.cjs → dynamic-workflows-BL3eD0zL.cjs} +2 -2
  30. package/dist/{dynamic-workflows-BiX72mRA.cjs.map → dynamic-workflows-BL3eD0zL.cjs.map} +1 -1
  31. package/dist/{editor-builder-D85orYra.cjs → editor-builder-B1jzYRWY.cjs} +2 -2
  32. package/dist/{editor-builder-D85orYra.cjs.map → editor-builder-B1jzYRWY.cjs.map} +1 -1
  33. package/dist/{editor-builder-D287Qf1k.js → editor-builder-iBlY00VY.js} +2 -2
  34. package/dist/{editor-builder-D287Qf1k.js.map → editor-builder-iBlY00VY.js.map} +1 -1
  35. package/dist/{mcp-ea7f_n2D.js → mcp-5Wu0HG2-.js} +10 -3
  36. package/dist/mcp-5Wu0HG2-.js.map +1 -0
  37. package/dist/{mcp-CdZzch5c.cjs → mcp-CcW5pL3W.cjs} +10 -3
  38. package/dist/mcp-CcW5pL3W.cjs.map +1 -0
  39. package/dist/{observability-new-endpoints-CWfdrnzJ.js → observability-new-endpoints-19InA3-9.js} +2 -2
  40. package/dist/{observability-new-endpoints-CWfdrnzJ.js.map → observability-new-endpoints-19InA3-9.js.map} +1 -1
  41. package/dist/{observability-new-endpoints-CDrOjmJw.cjs → observability-new-endpoints-D-KKQfp0.cjs} +2 -2
  42. package/dist/{observability-new-endpoints-CDrOjmJw.cjs.map → observability-new-endpoints-D-KKQfp0.cjs.map} +1 -1
  43. package/dist/{route-builder-CbCx1upL.cjs → route-builder-2yrD15TL.cjs} +4 -4
  44. package/dist/{route-builder-CbCx1upL.cjs.map → route-builder-2yrD15TL.cjs.map} +1 -1
  45. package/dist/{route-builder-DDOjv0sM.js → route-builder-lBil8Cvo.js} +2 -2
  46. package/dist/{route-builder-DDOjv0sM.js.map → route-builder-lBil8Cvo.js.map} +1 -1
  47. package/dist/{routes-C_j75KdR.cjs → routes-Du6HIzep.cjs} +11 -11
  48. package/dist/{routes-C_j75KdR.cjs.map → routes-Du6HIzep.cjs.map} +1 -1
  49. package/dist/{routes-DOL9nlPr.js → routes-Q94Qpwsn.js} +11 -11
  50. package/dist/{routes-DOL9nlPr.js.map → routes-Q94Qpwsn.js.map} +1 -1
  51. package/dist/{schedules-Cy6FhkZX.js → schedules-Cv3CVT2a.js} +2 -2
  52. package/dist/{schedules-Cy6FhkZX.js.map → schedules-Cv3CVT2a.js.map} +1 -1
  53. package/dist/{schedules-ByXP9Fgm.cjs → schedules-DTYwAXI_.cjs} +2 -2
  54. package/dist/{schedules-ByXP9Fgm.cjs.map → schedules-DTYwAXI_.cjs.map} +1 -1
  55. package/dist/schema-BVcoNfni.cjs +1 -0
  56. package/dist/schema-Xxr5X5Je.js +2 -0
  57. package/dist/{schema-BwlBcZRB-BLwYP0BY.cjs → schema-e0VHpMt0-BS9KHnuT.cjs} +8 -9
  58. package/dist/schema-e0VHpMt0-BS9KHnuT.cjs.map +1 -0
  59. package/dist/{schema-BwlBcZRB-DUSSQ9TD.js → schema-e0VHpMt0-CvPvLS06.js} +8 -9
  60. package/dist/schema-e0VHpMt0-CvPvLS06.js.map +1 -0
  61. package/dist/server/handlers/a2a.cjs +1 -1
  62. package/dist/server/handlers/a2a.js +1 -1
  63. package/dist/server/handlers/agent-builder.cjs +3 -3
  64. package/dist/server/handlers/agent-builder.js +3 -3
  65. package/dist/server/handlers/agent-controller.cjs +1 -1
  66. package/dist/server/handlers/agent-controller.js +1 -1
  67. package/dist/server/handlers/agent-versions.cjs +2 -2
  68. package/dist/server/handlers/agent-versions.js +2 -2
  69. package/dist/server/handlers/agents.cjs +5 -5
  70. package/dist/server/handlers/agents.js +4 -4
  71. package/dist/server/handlers/auth.cjs +1 -1
  72. package/dist/server/handlers/auth.js +1 -1
  73. package/dist/server/handlers/background-tasks.cjs +1 -1
  74. package/dist/server/handlers/background-tasks.js +1 -1
  75. package/dist/server/handlers/builder-registry.cjs +1 -1
  76. package/dist/server/handlers/builder-registry.js +1 -1
  77. package/dist/server/handlers/channels.cjs +1 -1
  78. package/dist/server/handlers/channels.js +1 -1
  79. package/dist/server/handlers/conversations.cjs +1 -1
  80. package/dist/server/handlers/conversations.js +1 -1
  81. package/dist/server/handlers/datasets.cjs +1 -1
  82. package/dist/server/handlers/datasets.js +1 -1
  83. package/dist/server/handlers/dynamic-workflows.cjs +1 -1
  84. package/dist/server/handlers/dynamic-workflows.js +1 -1
  85. package/dist/server/handlers/editor-builder.cjs +1 -1
  86. package/dist/server/handlers/editor-builder.js +1 -1
  87. package/dist/server/handlers/favorites-enrichment.cjs +1 -1
  88. package/dist/server/handlers/favorites-enrichment.js +1 -1
  89. package/dist/server/handlers/logs.cjs +1 -1
  90. package/dist/server/handlers/logs.js +1 -1
  91. package/dist/server/handlers/mcp-client-versions.cjs +2 -2
  92. package/dist/server/handlers/mcp-client-versions.js +2 -2
  93. package/dist/server/handlers/mcp.cjs +13 -4
  94. package/dist/server/handlers/mcp.cjs.map +1 -1
  95. package/dist/server/handlers/mcp.d.ts +20 -1
  96. package/dist/server/handlers/mcp.d.ts.map +1 -1
  97. package/dist/server/handlers/mcp.js +13 -4
  98. package/dist/server/handlers/mcp.js.map +1 -1
  99. package/dist/server/handlers/memory.cjs +1 -1
  100. package/dist/server/handlers/memory.js +1 -1
  101. package/dist/server/handlers/observability-new-endpoints.cjs +1 -1
  102. package/dist/server/handlers/observability-new-endpoints.js +1 -1
  103. package/dist/server/handlers/observability-shared.cjs +1 -1
  104. package/dist/server/handlers/observability-shared.js +1 -1
  105. package/dist/server/handlers/observability.cjs +2 -2
  106. package/dist/server/handlers/observability.js +2 -2
  107. package/dist/server/handlers/plans.cjs +1 -1
  108. package/dist/server/handlers/plans.js +1 -1
  109. package/dist/server/handlers/processor-providers.cjs +1 -1
  110. package/dist/server/handlers/processor-providers.js +1 -1
  111. package/dist/server/handlers/processors.cjs +1 -1
  112. package/dist/server/handlers/processors.js +1 -1
  113. package/dist/server/handlers/prompt-block-versions.cjs +2 -2
  114. package/dist/server/handlers/prompt-block-versions.js +2 -2
  115. package/dist/server/handlers/responses.cjs +1 -1
  116. package/dist/server/handlers/responses.js +1 -1
  117. package/dist/server/handlers/schedules.cjs +1 -1
  118. package/dist/server/handlers/schedules.js +1 -1
  119. package/dist/server/handlers/scorer-versions.cjs +2 -2
  120. package/dist/server/handlers/scorer-versions.js +2 -2
  121. package/dist/server/handlers/scores.cjs +1 -1
  122. package/dist/server/handlers/scores.js +1 -1
  123. package/dist/server/handlers/stored-agent-favorites.cjs +3 -3
  124. package/dist/server/handlers/stored-agent-favorites.js +3 -3
  125. package/dist/server/handlers/stored-agents.cjs +3 -3
  126. package/dist/server/handlers/stored-agents.js +3 -3
  127. package/dist/server/handlers/stored-mcp-clients.cjs +2 -2
  128. package/dist/server/handlers/stored-mcp-clients.js +2 -2
  129. package/dist/server/handlers/stored-prompt-blocks.cjs +2 -2
  130. package/dist/server/handlers/stored-prompt-blocks.js +2 -2
  131. package/dist/server/handlers/stored-scorers.cjs +2 -2
  132. package/dist/server/handlers/stored-scorers.js +2 -2
  133. package/dist/server/handlers/stored-skill-favorites.cjs +3 -3
  134. package/dist/server/handlers/stored-skill-favorites.js +3 -3
  135. package/dist/server/handlers/stored-skills.cjs +3 -3
  136. package/dist/server/handlers/stored-skills.js +3 -3
  137. package/dist/server/handlers/stored-workspaces.cjs +2 -2
  138. package/dist/server/handlers/stored-workspaces.js +2 -2
  139. package/dist/server/handlers/system.cjs +2 -2
  140. package/dist/server/handlers/system.js +2 -2
  141. package/dist/server/handlers/tool-providers.cjs +1 -1
  142. package/dist/server/handlers/tool-providers.js +1 -1
  143. package/dist/server/handlers/tools.cjs +5 -5
  144. package/dist/server/handlers/tools.js +4 -4
  145. package/dist/server/handlers/validate-agent-instructions.cjs +1 -1
  146. package/dist/server/handlers/validate-agent-instructions.js +1 -1
  147. package/dist/server/handlers/vector.cjs +1 -1
  148. package/dist/server/handlers/vector.js +1 -1
  149. package/dist/server/handlers/workflow-builder.cjs +1 -1
  150. package/dist/server/handlers/workflow-builder.js +1 -1
  151. package/dist/server/handlers/workflows.cjs +2 -2
  152. package/dist/server/handlers/workflows.js +2 -2
  153. package/dist/server/handlers/workspace.cjs +1 -1
  154. package/dist/server/handlers/workspace.js +1 -1
  155. package/dist/server/handlers.cjs +2 -2
  156. package/dist/server/handlers.js +2 -2
  157. package/dist/server/schemas/index.cjs +1 -1
  158. package/dist/server/schemas/index.js +1 -1
  159. package/dist/server/schemas/mcp.d.ts +20 -0
  160. package/dist/server/schemas/mcp.d.ts.map +1 -1
  161. package/dist/server/server-adapter/index.cjs +3 -3
  162. package/dist/server/server-adapter/index.js +3 -3
  163. package/dist/server/server-adapter/routes/mcp.d.ts +14 -0
  164. package/dist/server/server-adapter/routes/mcp.d.ts.map +1 -1
  165. package/dist/{utils-mRt04Bqa.js → utils-BJm0ZYnM.js} +3 -3
  166. package/dist/{utils-mRt04Bqa.js.map → utils-BJm0ZYnM.js.map} +1 -1
  167. package/dist/{utils-DbHFc3hG.cjs → utils-DFQixxkO.cjs} +5 -5
  168. package/dist/{utils-DbHFc3hG.cjs.map → utils-DFQixxkO.cjs.map} +1 -1
  169. package/dist/{workflow-builder-ZEU0Rafo.cjs → workflow-builder-4WU1vR6p.cjs} +2 -2
  170. package/dist/{workflow-builder-ZEU0Rafo.cjs.map → workflow-builder-4WU1vR6p.cjs.map} +1 -1
  171. package/dist/{workflow-builder-fkwRyZUG.js → workflow-builder-Dr150tCt.js} +2 -2
  172. package/dist/{workflow-builder-fkwRyZUG.js.map → workflow-builder-Dr150tCt.js.map} +1 -1
  173. package/package.json +6 -6
  174. package/dist/mcp-CdZzch5c.cjs.map +0 -1
  175. package/dist/mcp-ea7f_n2D.js.map +0 -1
  176. package/dist/schema-BwlBcZRB-BLwYP0BY.cjs.map +0 -1
  177. package/dist/schema-BwlBcZRB-DUSSQ9TD.js.map +0 -1
  178. package/dist/schema-DM4T8wfR.cjs +0 -1
  179. package/dist/schema-Fa9iirVJ.js +0 -2
@@ -1,6 +1,6 @@
1
1
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
2
  require("../../rolldown-runtime-Bd6kNlEP.cjs");
3
- const require_a2a = require("../../a2a-Cr-pxMJm.cjs");
3
+ const require_a2a = require("../../a2a-CwxSk6H0.cjs");
4
4
  exports.AGENT_EXECUTION_ROUTE = require_a2a.AGENT_EXECUTION_ROUTE;
5
5
  exports.GET_AGENT_CARD_ROUTE = require_a2a.GET_AGENT_CARD_ROUTE;
6
6
  exports.getAgentCardByIdHandler = require_a2a.getAgentCardByIdHandler;
@@ -1,2 +1,2 @@
1
- import { a as getAgentExecutionHandler, c as handleListTaskPushNotificationConfig, d as handleSetTaskPushNotificationConfig, f as handleTaskCancel, g as resolveA2AProtocolVersion, h as handleTaskResubscribe, i as getAgentCardByIdHandler, l as handleMessageSend, m as handleTaskList, n as GET_AGENT_CARD_ROUTE, o as handleDeleteTaskPushNotificationConfig, p as handleTaskGet, s as handleGetTaskPushNotificationConfig, t as AGENT_EXECUTION_ROUTE, u as handleMessageStream } from "../../a2a-D2AP2MGB.js";
1
+ import { a as getAgentExecutionHandler, c as handleListTaskPushNotificationConfig, d as handleSetTaskPushNotificationConfig, f as handleTaskCancel, g as resolveA2AProtocolVersion, h as handleTaskResubscribe, i as getAgentCardByIdHandler, l as handleMessageSend, m as handleTaskList, n as GET_AGENT_CARD_ROUTE, o as handleDeleteTaskPushNotificationConfig, p as handleTaskGet, s as handleGetTaskPushNotificationConfig, t as AGENT_EXECUTION_ROUTE, u as handleMessageStream } from "../../a2a-DQOqoU_q.js";
2
2
  export { AGENT_EXECUTION_ROUTE, GET_AGENT_CARD_ROUTE, getAgentCardByIdHandler, getAgentExecutionHandler, handleDeleteTaskPushNotificationConfig, handleGetTaskPushNotificationConfig, handleListTaskPushNotificationConfig, handleMessageSend, handleMessageStream, handleSetTaskPushNotificationConfig, handleTaskCancel, handleTaskGet, handleTaskList, handleTaskResubscribe, resolveA2AProtocolVersion };
@@ -5,8 +5,8 @@ const require_common = require("../../common-BPjna_b6.cjs");
5
5
  const require_workflows = require("../../workflows-CvYeyvIc.cjs");
6
6
  const require_agent_builder = require("../../agent-builder-k72O4OB9.cjs");
7
7
  const require_agents = require("../../agents-BN8QmLxk.cjs");
8
- const require_route_builder = require("../../route-builder-CbCx1upL.cjs");
9
- const require_utils = require("../../utils-DbHFc3hG.cjs");
8
+ const require_route_builder = require("../../route-builder-2yrD15TL.cjs");
9
+ const require_utils = require("../../utils-DFQixxkO.cjs");
10
10
  const require_server_handlers_error = require("./error.cjs");
11
11
  const require_server_handlers_workflows = require("./workflows.cjs");
12
12
  //#region src/server/handlers/agent-builder.ts
@@ -30,7 +30,7 @@ var agent_builder_exports = /* @__PURE__ */ require_rolldown_runtime.__exportAll
30
30
  });
31
31
  let agentBuilderWorkflowsPromise;
32
32
  async function loadAgentBuilderWorkflows() {
33
- agentBuilderWorkflowsPromise ??= Promise.resolve().then(() => require("../../dist-CF1rK7oZ.cjs")).then((mod) => mod.agentBuilderWorkflows);
33
+ agentBuilderWorkflowsPromise ??= Promise.resolve().then(() => require("../../dist-tgT9jZAV.cjs")).then((mod) => mod.agentBuilderWorkflows);
34
34
  return agentBuilderWorkflowsPromise;
35
35
  }
36
36
  async function registerAgentBuilderWorkflows(mastra) {
@@ -4,8 +4,8 @@ import { o as optionalRunIdSchema, u as runIdSchema } from "../../common-C7NBaaQ
4
4
  import { b as workflowRunResultSchema, g as workflowInfoSchema, i as listWorkflowsResponseSchema, m as workflowExecutionResultSchema, n as createWorkflowRunResponseSchema, p as workflowControlResponseSchema, r as listWorkflowRunsQuerySchema, x as workflowRunsResponseSchema, y as workflowRunResultQuerySchema } from "../../workflows-Z8FHqT4y.js";
5
5
  import { a as streamAgentBuilderBodySchema, i as startAsyncAgentBuilderBodySchema, n as actionRunPathParams, o as streamLegacyAgentBuilderBodySchema, r as resumeAgentBuilderBodySchema, t as actionIdPathParams } from "../../agent-builder-k5ALpndR.js";
6
6
  import { K as streamResponseSchema } from "../../agents-DCYUhwHn.js";
7
- import { n as createRoute } from "../../route-builder-DDOjv0sM.js";
8
- import { t as WorkflowRegistry } from "../../utils-mRt04Bqa.js";
7
+ import { n as createRoute } from "../../route-builder-lBil8Cvo.js";
8
+ import { t as WorkflowRegistry } from "../../utils-BJm0ZYnM.js";
9
9
  import { handleError } from "./error.js";
10
10
  import { CANCEL_WORKFLOW_RUN_ROUTE, CREATE_WORKFLOW_RUN_ROUTE, GET_WORKFLOW_BY_ID_ROUTE, GET_WORKFLOW_RUN_BY_ID_ROUTE, LIST_WORKFLOWS_ROUTE, LIST_WORKFLOW_RUNS_ROUTE, OBSERVE_STREAM_LEGACY_WORKFLOW_ROUTE, OBSERVE_STREAM_WORKFLOW_ROUTE, RESUME_ASYNC_WORKFLOW_ROUTE, RESUME_NO_WAIT_WORKFLOW_ROUTE, RESUME_STREAM_WORKFLOW_ROUTE, RESUME_WORKFLOW_ROUTE, START_ASYNC_WORKFLOW_ROUTE, START_WORKFLOW_RUN_ROUTE, STREAM_LEGACY_WORKFLOW_ROUTE, STREAM_WORKFLOW_ROUTE } from "./workflows.js";
11
11
  //#region src/server/handlers/agent-builder.ts
@@ -29,7 +29,7 @@ var agent_builder_exports = /* @__PURE__ */ __exportAll({
29
29
  });
30
30
  let agentBuilderWorkflowsPromise;
31
31
  async function loadAgentBuilderWorkflows() {
32
- agentBuilderWorkflowsPromise ??= import("../../dist-dfcZRhcQ.js").then((mod) => mod.agentBuilderWorkflows);
32
+ agentBuilderWorkflowsPromise ??= import("../../dist-BVvr8tvj.js").then((mod) => mod.agentBuilderWorkflows);
33
33
  return agentBuilderWorkflowsPromise;
34
34
  }
35
35
  async function registerAgentBuilderWorkflows(mastra) {
@@ -1,7 +1,7 @@
1
1
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
2
  require("../../rolldown-runtime-Bd6kNlEP.cjs");
3
3
  const require_http_exception = require("../../http-exception-CKDHupKw.cjs");
4
- const require_route_builder = require("../../route-builder-CbCx1upL.cjs");
4
+ const require_route_builder = require("../../route-builder-2yrD15TL.cjs");
5
5
  const require_server_handlers_error = require("./error.cjs");
6
6
  const require_utils = require("../../utils-aIu3gkhJ.cjs");
7
7
  const require_memory = require("../../memory-D2TG_RVj.cjs");
@@ -1,5 +1,5 @@
1
1
  import { t as HTTPException } from "../../http-exception-CyfxZB6W.js";
2
- import { n as createRoute } from "../../route-builder-DDOjv0sM.js";
2
+ import { n as createRoute } from "../../route-builder-lBil8Cvo.js";
3
3
  import { handleError } from "./error.js";
4
4
  import { t as enforceThreadAccess } from "../../utils-KsERfbhc.js";
5
5
  import { E as includeSchema, F as messageOrderBySchema, h as filterSchema } from "../../memory-CZT-ptes.js";
@@ -1,8 +1,8 @@
1
1
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
2
  require("../../rolldown-runtime-Bd6kNlEP.cjs");
3
3
  const require_http_exception = require("../../http-exception-CKDHupKw.cjs");
4
- const require_route_builder = require("../../route-builder-CbCx1upL.cjs");
5
- const require_utils = require("../../utils-DbHFc3hG.cjs");
4
+ const require_route_builder = require("../../route-builder-2yrD15TL.cjs");
5
+ const require_utils = require("../../utils-DFQixxkO.cjs");
6
6
  const require_server_handlers_error = require("./error.cjs");
7
7
  const require_version_common = require("../../version-common-CxQdBbPm.cjs");
8
8
  const require_agent_versions = require("../../agent-versions-D2QdSbFn.cjs");
@@ -1,6 +1,6 @@
1
1
  import { t as HTTPException } from "../../http-exception-CyfxZB6W.js";
2
- import { n as createRoute } from "../../route-builder-DDOjv0sM.js";
3
- import { i as getStoredResourceScope, n as assertStoredResourceScope } from "../../utils-mRt04Bqa.js";
2
+ import { n as createRoute } from "../../route-builder-lBil8Cvo.js";
3
+ import { i as getStoredResourceScope, n as assertStoredResourceScope } from "../../utils-BJm0ZYnM.js";
4
4
  import { handleError } from "./error.js";
5
5
  import { a as createVersionBodySchema, n as compareVersionsQuerySchema, o as deleteVersionResponseSchema, s as listVersionsQuerySchema, t as activateVersionResponseSchema } from "../../version-common-cEBltPQN.js";
6
6
  import { a as getVersionResponseSchema, c as versionIdPathParams, i as createVersionResponseSchema, o as listVersionsResponseSchema, r as compareVersionsResponseSchema, s as restoreVersionResponseSchema, t as agentVersionPathParams } from "../../agent-versions-CiV6tT74.js";
@@ -2,10 +2,10 @@ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
2
  const require_rolldown_runtime = require("../../rolldown-runtime-Bd6kNlEP.cjs");
3
3
  const require_http_exception = require("../../http-exception-CKDHupKw.cjs");
4
4
  const require_agents = require("../../agents-BN8QmLxk.cjs");
5
- const require_schema_BwlBcZRB = require("../../schema-BwlBcZRB-BLwYP0BY.cjs");
6
- const require_route_builder = require("../../route-builder-CbCx1upL.cjs");
7
- require("../../schema-DM4T8wfR.cjs");
8
- const require_utils = require("../../utils-DbHFc3hG.cjs");
5
+ const require_schema_e0VHpMt0 = require("../../schema-e0VHpMt0-BS9KHnuT.cjs");
6
+ const require_route_builder = require("../../route-builder-2yrD15TL.cjs");
7
+ require("../../schema-BVcoNfni.cjs");
8
+ const require_utils = require("../../utils-DFQixxkO.cjs");
9
9
  const require_constants = require("../../constants-4IJp_uzj.cjs");
10
10
  const require_server_handlers_error = require("./error.cjs");
11
11
  const require_utils$1 = require("../../utils-aIu3gkhJ.cjs");
@@ -194,7 +194,7 @@ function resolveLazySchema(schema) {
194
194
  }
195
195
  function schemaToJsonSchema(schema) {
196
196
  if (!schema) return;
197
- return require_schema_BwlBcZRB.standardSchemaToJSONSchema(require_schema_BwlBcZRB.toStandardSchema(schema), { target: "draft-2020-12" });
197
+ return require_schema_e0VHpMt0.standardSchemaToJSONSchema(require_schema_e0VHpMt0.toStandardSchema(schema), { target: "draft-2020-12" });
198
198
  }
199
199
  async function getSerializedAgentTools(tools, partial = false) {
200
200
  return Object.entries(tools || {}).reduce((acc, [key, tool]) => {
@@ -1,10 +1,10 @@
1
1
  import { r as __exportAll } from "../../rolldown-runtime-maW3aOIk.js";
2
2
  import { t as HTTPException } from "../../http-exception-CyfxZB6W.js";
3
3
  import { A as providersResponseSchema, C as listSuspendedRunsResponseSchema, D as observeAgentBodySchema, E as modelManagementResponseSchema, F as resumeStreamUntilIdleBodySchema, I as sendAgentMessageBodySchema, J as subscribeAgentThreadBodySchema, K as streamResponseSchema, L as sendAgentSignalBodySchema, M as recoverBodySchema, N as reorderAgentModelListBodySchema, O as observeAgentResponseSchema, P as resumeStreamBodySchema, Q as updateAgentModelInModelListBodySchema, R as sendToolApprovalBodySchema, S as listSuspendedRunsQuerySchema, T as modelConfigIdPathParams, V as serializedAgentSchema, Y as toolCallResponseSchema, Z as updateAgentModelBodySchema, a as agentIdPathParams, b as generateResponseSchema, c as agentSkillPathParams, d as approveNetworkToolCallBodySchema, f as approveToolCallBodySchema, g as enhanceInstructionsResponseSchema, h as enhanceInstructionsBodySchema, i as agentExecutionLegacyBodySchema, j as queueAgentMessageBodySchema, m as declineToolCallBodySchema, n as abortAgentThreadResponseSchema, p as declineNetworkToolCallBodySchema, q as streamUntilIdleBodySchema, r as agentExecutionBodySchema, t as abortAgentThreadBodySchema, u as agentVersionQuerySchema, x as listAgentsResponseSchema, z as sendToolApprovalResponseSchema } from "../../agents-DCYUhwHn.js";
4
- import { n as standardSchemaToJSONSchema, r as toStandardSchema } from "../../schema-BwlBcZRB-DUSSQ9TD.js";
5
- import { n as createRoute } from "../../route-builder-DDOjv0sM.js";
6
- import "../../schema-Fa9iirVJ.js";
7
- import { c as toSlug, l as stringify } from "../../utils-mRt04Bqa.js";
4
+ import { n as standardSchemaToJSONSchema, r as toStandardSchema } from "../../schema-e0VHpMt0-CvPvLS06.js";
5
+ import { n as createRoute } from "../../route-builder-lBil8Cvo.js";
6
+ import "../../schema-Xxr5X5Je.js";
7
+ import { c as toSlug, l as stringify } from "../../utils-BJm0ZYnM.js";
8
8
  import { f as WORKSPACE_TOOLS, h as resolveToolConfig, i as MASTRA_IS_STUDIO_KEY, o as MASTRA_RESOURCE_ID_KEY } from "../../constants-0jFCWoex.js";
9
9
  import { handleError } from "./error.js";
10
10
  import { a as mergeBodyRequestContext, c as requireEffectiveResourceId, d as validateRunOwnership, f as validateThreadOwnership, i as getEffectiveThreadId, l as sanitizeBody, p as MastraFGAPermissions, r as getEffectiveResourceId, t as enforceThreadAccess, u as validateBody } from "../../utils-KsERfbhc.js";
@@ -1,7 +1,7 @@
1
1
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
2
  require("../../rolldown-runtime-Bd6kNlEP.cjs");
3
3
  const require_http_exception = require("../../http-exception-CKDHupKw.cjs");
4
- const require_route_builder = require("../../route-builder-CbCx1upL.cjs");
4
+ const require_route_builder = require("../../route-builder-2yrD15TL.cjs");
5
5
  const require_constants = require("../../constants-4IJp_uzj.cjs");
6
6
  const require_server_handlers_error = require("./error.cjs");
7
7
  const require_helpers = require("../../helpers-8jl_xtug.cjs");
@@ -1,5 +1,5 @@
1
1
  import { t as HTTPException } from "../../http-exception-CyfxZB6W.js";
2
- import { n as createRoute, t as createPublicRoute } from "../../route-builder-DDOjv0sM.js";
2
+ import { n as createRoute, t as createPublicRoute } from "../../route-builder-lBil8Cvo.js";
3
3
  import { a as MASTRA_PUBLIC_HOST_HEADER, m as isStudioClientTypeHeader } from "../../constants-0jFCWoex.js";
4
4
  import { handleError } from "./error.js";
5
5
  import { p as supportsSessionRefresh } from "../../helpers-610L0lwQ.js";
@@ -1,6 +1,6 @@
1
1
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
2
  require("../../rolldown-runtime-Bd6kNlEP.cjs");
3
- const require_background_tasks = require("../../background-tasks-NjqWJcUw.cjs");
3
+ const require_background_tasks = require("../../background-tasks-B_SDfdq2.cjs");
4
4
  exports.BACKGROUND_TASK_STREAM_ROUTE = require_background_tasks.BACKGROUND_TASK_STREAM_ROUTE;
5
5
  exports.GET_BACKGROUND_TASK_ROUTE = require_background_tasks.GET_BACKGROUND_TASK_ROUTE;
6
6
  exports.LIST_BACKGROUND_TASKS_ROUTE = require_background_tasks.LIST_BACKGROUND_TASKS_ROUTE;
@@ -1,2 +1,2 @@
1
- import { n as GET_BACKGROUND_TASK_ROUTE, r as LIST_BACKGROUND_TASKS_ROUTE, t as BACKGROUND_TASK_STREAM_ROUTE } from "../../background-tasks-D7X7M0TU.js";
1
+ import { n as GET_BACKGROUND_TASK_ROUTE, r as LIST_BACKGROUND_TASKS_ROUTE, t as BACKGROUND_TASK_STREAM_ROUTE } from "../../background-tasks-C6i8kBSg.js";
2
2
  export { BACKGROUND_TASK_STREAM_ROUTE, GET_BACKGROUND_TASK_ROUTE, LIST_BACKGROUND_TASKS_ROUTE };
@@ -1,6 +1,6 @@
1
1
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
2
  require("../../rolldown-runtime-Bd6kNlEP.cjs");
3
- const require_builder_registry = require("../../builder-registry-BtwztV7s.cjs");
3
+ const require_builder_registry = require("../../builder-registry-eWIWmOJ3.cjs");
4
4
  exports.BUILDER_REGISTRY_INSTALL_ROUTE = require_builder_registry.BUILDER_REGISTRY_INSTALL_ROUTE;
5
5
  exports.BUILDER_REGISTRY_POPULAR_ROUTE = require_builder_registry.BUILDER_REGISTRY_POPULAR_ROUTE;
6
6
  exports.BUILDER_REGISTRY_PREVIEW_ROUTE = require_builder_registry.BUILDER_REGISTRY_PREVIEW_ROUTE;
@@ -1,2 +1,2 @@
1
- import { a as LIST_BUILDER_REGISTRIES_ROUTE, i as BUILDER_REGISTRY_SEARCH_ROUTE, n as BUILDER_REGISTRY_POPULAR_ROUTE, r as BUILDER_REGISTRY_PREVIEW_ROUTE, t as BUILDER_REGISTRY_INSTALL_ROUTE } from "../../builder-registry-CZW_Z4DV.js";
1
+ import { a as LIST_BUILDER_REGISTRIES_ROUTE, i as BUILDER_REGISTRY_SEARCH_ROUTE, n as BUILDER_REGISTRY_POPULAR_ROUTE, r as BUILDER_REGISTRY_PREVIEW_ROUTE, t as BUILDER_REGISTRY_INSTALL_ROUTE } from "../../builder-registry-D1nqm8Ck.js";
2
2
  export { BUILDER_REGISTRY_INSTALL_ROUTE, BUILDER_REGISTRY_POPULAR_ROUTE, BUILDER_REGISTRY_PREVIEW_ROUTE, BUILDER_REGISTRY_SEARCH_ROUTE, LIST_BUILDER_REGISTRIES_ROUTE };
@@ -1,6 +1,6 @@
1
1
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
2
  require("../../rolldown-runtime-Bd6kNlEP.cjs");
3
- const require_channels = require("../../channels-pCkdvG0z.cjs");
3
+ const require_channels = require("../../channels-DMw4LEA-.cjs");
4
4
  exports.CONNECT_CHANNEL_ROUTE = require_channels.CONNECT_CHANNEL_ROUTE;
5
5
  exports.DISCONNECT_CHANNEL_ROUTE = require_channels.DISCONNECT_CHANNEL_ROUTE;
6
6
  exports.LIST_CHANNEL_INSTALLATIONS_ROUTE = require_channels.LIST_CHANNEL_INSTALLATIONS_ROUTE;
@@ -1,2 +1,2 @@
1
- import { i as LIST_CHANNEL_PLATFORMS_ROUTE, n as DISCONNECT_CHANNEL_ROUTE, r as LIST_CHANNEL_INSTALLATIONS_ROUTE, t as CONNECT_CHANNEL_ROUTE } from "../../channels-uSO1ySnT.js";
1
+ import { i as LIST_CHANNEL_PLATFORMS_ROUTE, n as DISCONNECT_CHANNEL_ROUTE, r as LIST_CHANNEL_INSTALLATIONS_ROUTE, t as CONNECT_CHANNEL_ROUTE } from "../../channels-xqChW6Vw.js";
2
2
  export { CONNECT_CHANNEL_ROUTE, DISCONNECT_CHANNEL_ROUTE, LIST_CHANNEL_INSTALLATIONS_ROUTE, LIST_CHANNEL_PLATFORMS_ROUTE };
@@ -1,7 +1,7 @@
1
1
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
2
  const require_rolldown_runtime = require("../../rolldown-runtime-Bd6kNlEP.cjs");
3
3
  const require_http_exception = require("../../http-exception-CKDHupKw.cjs");
4
- const require_route_builder = require("../../route-builder-CbCx1upL.cjs");
4
+ const require_route_builder = require("../../route-builder-2yrD15TL.cjs");
5
5
  const require_server_handlers_error = require("./error.cjs");
6
6
  const require_utils = require("../../utils-aIu3gkhJ.cjs");
7
7
  const require_server_handlers_agents = require("./agents.cjs");
@@ -1,6 +1,6 @@
1
1
  import { r as __exportAll } from "../../rolldown-runtime-maW3aOIk.js";
2
2
  import { t as HTTPException } from "../../http-exception-CyfxZB6W.js";
3
- import { n as createRoute } from "../../route-builder-DDOjv0sM.js";
3
+ import { n as createRoute } from "../../route-builder-lBil8Cvo.js";
4
4
  import { handleError } from "./error.js";
5
5
  import { p as MastraFGAPermissions, r as getEffectiveResourceId } from "../../utils-KsERfbhc.js";
6
6
  import { getAgentFromSystem } from "./agents.js";
@@ -2,7 +2,7 @@ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
2
  require("../../rolldown-runtime-Bd6kNlEP.cjs");
3
3
  const require_http_exception = require("../../http-exception-CKDHupKw.cjs");
4
4
  const require_common = require("../../common-BPjna_b6.cjs");
5
- const require_route_builder = require("../../route-builder-CbCx1upL.cjs");
5
+ const require_route_builder = require("../../route-builder-2yrD15TL.cjs");
6
6
  const require_constants = require("../../constants-4IJp_uzj.cjs");
7
7
  const require_server_handlers_error = require("./error.cjs");
8
8
  const require_datasets = require("../../datasets-DNNuDeQ2.cjs");
@@ -1,6 +1,6 @@
1
1
  import { t as HTTPException } from "../../http-exception-CyfxZB6W.js";
2
2
  import { f as successResponseSchema } from "../../common-C7NBaaQu.js";
3
- import { n as createRoute } from "../../route-builder-DDOjv0sM.js";
3
+ import { n as createRoute } from "../../route-builder-lBil8Cvo.js";
4
4
  import { p as isReservedRequestContextKey } from "../../constants-0jFCWoex.js";
5
5
  import { handleError } from "./error.js";
6
6
  import { A as listDatasetsQuerySchema, B as reviewSummaryResponseSchema, E as generateItemsResponseSchema, F as listExperimentsResponseSchema, G as tenancyQuerySchema, H as runExperimentItemResponseSchema, I as listItemVersionsResponseSchema, J as updateExperimentBodySchema, K as triggerExperimentBodySchema, L as listItemsQuerySchema, M as listExperimentResultsQuerySchema, N as listExperimentResultsResponseSchema, P as listExperimentsQuerySchema, R as listItemsResponseSchema, S as experimentResultResponseSchema, T as generateItemsBodySchema, V as runExperimentItemBodySchema, W as submitExperimentResultBodySchema, X as updateItemBodySchema, Y as updateExperimentResultBodySchema, _ as datasetResponseSchema, a as batchInsertItemsResponseSchema, b as experimentResponseSchema, c as compareExperimentsBodySchema, d as datasetAndExperimentIdPathParams, f as datasetAndItemIdPathParams, g as datasetItemVersionPathParams, h as datasetItemResponseSchema, i as batchInsertItemsBodySchema, j as listDatasetsResponseSchema, k as listDatasetVersionsResponseSchema, l as comparisonResponseSchema, m as datasetIdPathParams, n as batchDeleteItemsBodySchema, o as clusterFailuresBodySchema, p as datasetExperimentAndItemIdPathParams, q as updateDatasetBodySchema, r as batchDeleteItemsResponseSchema, s as clusterFailuresResponseSchema, t as addItemBodySchema, u as createDatasetBodySchema, w as experimentSummaryResponseSchema, x as experimentResultIdPathParams, y as experimentIdPathParams, z as paginationQuerySchema } from "../../datasets-L8o0f3nY.js";
@@ -1,6 +1,6 @@
1
1
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
2
  require("../../rolldown-runtime-Bd6kNlEP.cjs");
3
- const require_dynamic_workflows = require("../../dynamic-workflows-BiX72mRA.cjs");
3
+ const require_dynamic_workflows = require("../../dynamic-workflows-BL3eD0zL.cjs");
4
4
  exports.DELETE_DYNAMIC_WORKFLOW_ROUTE = require_dynamic_workflows.DELETE_DYNAMIC_WORKFLOW_ROUTE;
5
5
  exports.GET_DYNAMIC_WORKFLOW_ROUTE = require_dynamic_workflows.GET_DYNAMIC_WORKFLOW_ROUTE;
6
6
  exports.LIST_DYNAMIC_WORKFLOWS_ROUTE = require_dynamic_workflows.LIST_DYNAMIC_WORKFLOWS_ROUTE;
@@ -1,2 +1,2 @@
1
- import { i as UPSERT_DYNAMIC_WORKFLOW_ROUTE, n as GET_DYNAMIC_WORKFLOW_ROUTE, r as LIST_DYNAMIC_WORKFLOWS_ROUTE, t as DELETE_DYNAMIC_WORKFLOW_ROUTE } from "../../dynamic-workflows-CVrxi8y7.js";
1
+ import { i as UPSERT_DYNAMIC_WORKFLOW_ROUTE, n as GET_DYNAMIC_WORKFLOW_ROUTE, r as LIST_DYNAMIC_WORKFLOWS_ROUTE, t as DELETE_DYNAMIC_WORKFLOW_ROUTE } from "../../dynamic-workflows-BJfoQMo8.js";
2
2
  export { DELETE_DYNAMIC_WORKFLOW_ROUTE, GET_DYNAMIC_WORKFLOW_ROUTE, LIST_DYNAMIC_WORKFLOWS_ROUTE, UPSERT_DYNAMIC_WORKFLOW_ROUTE };
@@ -1,6 +1,6 @@
1
1
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
2
  require("../../rolldown-runtime-Bd6kNlEP.cjs");
3
- const require_editor_builder = require("../../editor-builder-D85orYra.cjs");
3
+ const require_editor_builder = require("../../editor-builder-B1jzYRWY.cjs");
4
4
  exports.GET_EDITOR_BUILDER_AVAILABLE_MODELS_ROUTE = require_editor_builder.GET_EDITOR_BUILDER_AVAILABLE_MODELS_ROUTE;
5
5
  exports.GET_EDITOR_BUILDER_SETTINGS_ROUTE = require_editor_builder.GET_EDITOR_BUILDER_SETTINGS_ROUTE;
6
6
  exports.GET_INFRASTRUCTURE_STATUS_ROUTE = require_editor_builder.GET_INFRASTRUCTURE_STATUS_ROUTE;
@@ -1,2 +1,2 @@
1
- import { a as requireBuilderFeature, i as isBuilderFeatureEnabled, n as GET_EDITOR_BUILDER_SETTINGS_ROUTE, r as GET_INFRASTRUCTURE_STATUS_ROUTE, t as GET_EDITOR_BUILDER_AVAILABLE_MODELS_ROUTE } from "../../editor-builder-D287Qf1k.js";
1
+ import { a as requireBuilderFeature, i as isBuilderFeatureEnabled, n as GET_EDITOR_BUILDER_SETTINGS_ROUTE, r as GET_INFRASTRUCTURE_STATUS_ROUTE, t as GET_EDITOR_BUILDER_AVAILABLE_MODELS_ROUTE } from "../../editor-builder-iBlY00VY.js";
2
2
  export { GET_EDITOR_BUILDER_AVAILABLE_MODELS_ROUTE, GET_EDITOR_BUILDER_SETTINGS_ROUTE, GET_INFRASTRUCTURE_STATUS_ROUTE, isBuilderFeatureEnabled, requireBuilderFeature };
@@ -1,7 +1,7 @@
1
1
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
2
  require("../../rolldown-runtime-Bd6kNlEP.cjs");
3
3
  const require_server_handlers_authorship = require("./authorship.cjs");
4
- const require_editor_builder = require("../../editor-builder-D85orYra.cjs");
4
+ const require_editor_builder = require("../../editor-builder-B1jzYRWY.cjs");
5
5
  //#region src/server/handlers/favorites-enrichment.ts
6
6
  /**
7
7
  * Resolve the EE feature flag plus the caller's favorited set for a list of
@@ -1,5 +1,5 @@
1
1
  import { getCallerAuthorId } from "./authorship.js";
2
- import { i as isBuilderFeatureEnabled } from "../../editor-builder-D287Qf1k.js";
2
+ import { i as isBuilderFeatureEnabled } from "../../editor-builder-iBlY00VY.js";
3
3
  //#region src/server/handlers/favorites-enrichment.ts
4
4
  /**
5
5
  * Resolve the EE feature flag plus the caller's favorited set for a list of
@@ -1,7 +1,7 @@
1
1
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
2
  const require_rolldown_runtime = require("../../rolldown-runtime-Bd6kNlEP.cjs");
3
3
  const require_common = require("../../common-BPjna_b6.cjs");
4
- const require_route_builder = require("../../route-builder-CbCx1upL.cjs");
4
+ const require_route_builder = require("../../route-builder-2yrD15TL.cjs");
5
5
  const require_server_handlers_error = require("./error.cjs");
6
6
  const require_utils = require("../../utils-aIu3gkhJ.cjs");
7
7
  const require_logs = require("../../logs-LBot9fsG.cjs");
@@ -1,6 +1,6 @@
1
1
  import { r as __exportAll } from "../../rolldown-runtime-maW3aOIk.js";
2
2
  import { u as runIdSchema } from "../../common-C7NBaaQu.js";
3
- import { n as createRoute } from "../../route-builder-DDOjv0sM.js";
3
+ import { n as createRoute } from "../../route-builder-lBil8Cvo.js";
4
4
  import { handleError } from "./error.js";
5
5
  import { o as parseFilters, u as validateBody } from "../../utils-KsERfbhc.js";
6
6
  import { n as listLogsQuerySchema, r as listLogsResponseSchema, t as listLogTransportsResponseSchema } from "../../logs-Cbz2Nxm2.js";
@@ -1,8 +1,8 @@
1
1
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
2
  require("../../rolldown-runtime-Bd6kNlEP.cjs");
3
3
  const require_http_exception = require("../../http-exception-CKDHupKw.cjs");
4
- const require_route_builder = require("../../route-builder-CbCx1upL.cjs");
5
- const require_utils = require("../../utils-DbHFc3hG.cjs");
4
+ const require_route_builder = require("../../route-builder-2yrD15TL.cjs");
5
+ const require_utils = require("../../utils-DFQixxkO.cjs");
6
6
  const require_server_handlers_error = require("./error.cjs");
7
7
  const require_server_handlers_version_helpers = require("./version-helpers.cjs");
8
8
  const require_mcp_client_versions = require("../../mcp-client-versions-DoGlpOEW.cjs");
@@ -1,6 +1,6 @@
1
1
  import { t as HTTPException } from "../../http-exception-CyfxZB6W.js";
2
- import { n as createRoute } from "../../route-builder-DDOjv0sM.js";
3
- import { i as getStoredResourceScope, n as assertStoredResourceScope } from "../../utils-mRt04Bqa.js";
2
+ import { n as createRoute } from "../../route-builder-lBil8Cvo.js";
3
+ import { i as getStoredResourceScope, n as assertStoredResourceScope } from "../../utils-BJm0ZYnM.js";
4
4
  import { handleError } from "./error.js";
5
5
  import { MCP_CLIENT_SNAPSHOT_CONFIG_FIELDS, calculateChangedFields, computeVersionDiffs, createVersionWithRetry, enforceRetentionLimit, extractConfigFromVersion } from "./version-helpers.js";
6
6
  import { a as createMCPClientVersionResponseSchema, c as listMCPClientVersionsQuerySchema, d as mcpClientVersionPathParams, i as createMCPClientVersionBodySchema, l as listMCPClientVersionsResponseSchema, n as compareMCPClientVersionsQuerySchema, o as deleteMCPClientVersionResponseSchema, p as restoreMCPClientVersionResponseSchema, r as compareMCPClientVersionsResponseSchema, s as getMCPClientVersionResponseSchema, t as activateMCPClientVersionResponseSchema, u as mcpClientVersionIdPathParams } from "../../mcp-client-versions-Dpk4z-zx.js";
@@ -1,8 +1,8 @@
1
1
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
2
  const require_rolldown_runtime = require("../../rolldown-runtime-Bd6kNlEP.cjs");
3
3
  const require_http_exception = require("../../http-exception-CKDHupKw.cjs");
4
- const require_route_builder = require("../../route-builder-CbCx1upL.cjs");
5
- const require_mcp = require("../../mcp-CdZzch5c.cjs");
4
+ const require_route_builder = require("../../route-builder-2yrD15TL.cjs");
5
+ const require_mcp = require("../../mcp-CcW5pL3W.cjs");
6
6
  let _mastra_core_error = require("@mastra/core/error");
7
7
  //#region src/server/handlers/mcp.ts
8
8
  var mcp_exports = /* @__PURE__ */ require_rolldown_runtime.__exportAll({
@@ -24,6 +24,9 @@ var mcp_exports = /* @__PURE__ */ require_rolldown_runtime.__exportAll({
24
24
  function hasSSETransport(server) {
25
25
  return server.mcpVersion !== 2;
26
26
  }
27
+ function transportsOf(server) {
28
+ return hasSSETransport(server) ? ["streamable-http", "sse"] : ["streamable-http"];
29
+ }
27
30
  const LIST_MCP_SERVERS_ROUTE = require_route_builder.createRoute({
28
31
  method: "GET",
29
32
  path: "/mcp/v0/servers",
@@ -61,7 +64,10 @@ const LIST_MCP_SERVERS_ROUTE = require_route_builder.createRoute({
61
64
  }
62
65
  }
63
66
  return {
64
- servers: paginatedServers.map((server) => server.getServerInfo()),
67
+ servers: paginatedServers.map((server) => ({
68
+ ...server.getServerInfo(),
69
+ transports: transportsOf(server)
70
+ })),
65
71
  total_count: totalCount,
66
72
  next: nextUrl
67
73
  };
@@ -82,7 +88,10 @@ const GET_MCP_SERVER_DETAIL_ROUTE = require_route_builder.createRoute({
82
88
  if (!mastra || typeof mastra.getMCPServerById !== "function") throw new require_http_exception.HTTPException(500, { message: "Mastra instance or getMCPServerById method not available" });
83
89
  const server = mastra.getMCPServerById(id);
84
90
  if (!server) throw new require_http_exception.HTTPException(404, { message: `MCP server with ID '${id}' not found` });
85
- const serverDetail = server.getServerDetail();
91
+ const serverDetail = {
92
+ ...server.getServerDetail(),
93
+ transports: transportsOf(server)
94
+ };
86
95
  if (version && serverDetail.version_detail.version !== version) throw new require_http_exception.HTTPException(404, { message: `MCP server with ID '${id}' found, but not version '${version}'. Available version: ${serverDetail.version_detail.version}` });
87
96
  return serverDetail;
88
97
  }
@@ -1 +1 @@
1
- {"version":3,"file":"mcp.cjs","names":["createRoute","listMcpServersQuerySchema","listMcpServersResponseSchema","HTTPException","mcpServerDetailPathParams","getMcpServerDetailQuerySchema","serverDetailSchema","mcpServerIdPathParams","listMcpServerToolsResponseSchema","mcpServerToolPathParams","mcpToolInfoSchema","executeToolBodySchema","executeToolResponseSchema","MastraError","mcpServerResourcePathParams","listResourcesResponseSchema","readResourceBodySchema","readResourceResponseSchema"],"sources":["../../../src/server/handlers/mcp.ts"],"sourcesContent":["import { MastraError } from '@mastra/core/error';\nimport type {\n MCPServerBase as MastraMCPServerImplementation,\n MCPToolExecutionResultV2,\n ServerInfo,\n} from '@mastra/core/mcp';\nimport { HTTPException } from '../http-exception';\nimport {\n mcpServerDetailPathParams,\n mcpServerToolPathParams,\n executeToolBodySchema,\n listMcpServersQuerySchema,\n getMcpServerDetailQuerySchema,\n listMcpServersResponseSchema,\n serverDetailSchema,\n mcpServerIdPathParams,\n listMcpServerToolsResponseSchema,\n mcpToolInfoSchema,\n executeToolResponseSchema,\n mcpServerResourcePathParams,\n readResourceBodySchema,\n readResourceResponseSchema,\n listResourcesResponseSchema,\n} from '../schemas/mcp';\nimport type { ServerContext } from '../server-adapter';\nimport type { SetMcpRequestAuth } from '../server-adapter/mcp-auth';\nimport { createRoute } from '../server-adapter/routes/route-builder';\n\n// ============================================================================\n// Route Definitions (createRoute pattern for server adapters)\n// ============================================================================\n\n/**\n * Only `@mastra/mcp` 1.x servers implement the standalone HTTP+SSE transport; on a\n * 2026-07-28 server the inherited `startSSE`/`startHonoSSE` throw.\n */\nfunction hasSSETransport(server: MastraMCPServerImplementation): boolean {\n return server.mcpVersion !== 2;\n}\n\nexport const LIST_MCP_SERVERS_ROUTE = createRoute({\n method: 'GET',\n path: '/mcp/v0/servers',\n responseType: 'json',\n queryParamSchema: listMcpServersQuerySchema,\n responseSchema: listMcpServersResponseSchema,\n summary: 'List MCP servers',\n description: 'Returns a list of registered MCP servers with pagination support',\n tags: ['MCP'],\n requiresAuth: true,\n handler: async ({\n mastra,\n routePrefix,\n page,\n perPage,\n limit,\n offset,\n }: ServerContext & { page?: number; perPage?: number; limit?: number; offset?: number }) => {\n if (!mastra || typeof mastra.listMCPServers !== 'function') {\n throw new HTTPException(500, { message: 'Mastra instance or listMCPServers method not available' });\n }\n\n const servers = mastra.listMCPServers();\n\n if (!servers) {\n return { servers: [], total_count: 0, next: null };\n }\n\n const serverList = Object.values(servers);\n const totalCount = serverList.length;\n\n // Support both page/perPage and limit/offset for backwards compatibility\n // Detect which format user is using - prefer page/perPage if both provided\n const useLegacyFormat =\n (limit !== undefined || offset !== undefined) && page === undefined && perPage === undefined;\n\n // If perPage provided, use it; otherwise fall back to limit\n const finalPerPage = perPage ?? limit;\n // If page provided, use it; otherwise convert from offset\n let finalPage = page;\n if (finalPage === undefined && offset !== undefined && finalPerPage !== undefined && finalPerPage > 0) {\n finalPage = Math.floor(offset / finalPerPage);\n }\n\n // Calculate offset from page/perPage\n const actualOffset = finalPage !== undefined && finalPerPage !== undefined ? finalPage * finalPerPage : 0;\n\n // Apply pagination\n let paginatedServers = serverList;\n let nextUrl: string | null = null;\n\n if (finalPerPage !== undefined) {\n paginatedServers = serverList.slice(actualOffset, actualOffset + finalPerPage);\n\n // Calculate next URL if there are more results\n if (actualOffset + finalPerPage < totalCount) {\n const nextPage = (finalPage ?? 0) + 1;\n // Return next URL in same format as request (legacy limit/offset or page/perPage)\n const prefix = routePrefix ?? '';\n if (useLegacyFormat) {\n const nextOffset = actualOffset + finalPerPage;\n nextUrl = `${prefix}/mcp/v0/servers?limit=${finalPerPage}&offset=${nextOffset}`;\n } else {\n nextUrl = `${prefix}/mcp/v0/servers?perPage=${finalPerPage}&page=${nextPage}`;\n }\n }\n }\n\n // Get server info for each server\n const serverInfoList: ServerInfo[] = paginatedServers.map(server => server.getServerInfo());\n\n return {\n servers: serverInfoList,\n total_count: totalCount,\n next: nextUrl,\n };\n },\n});\n\nexport const GET_MCP_SERVER_DETAIL_ROUTE = createRoute({\n method: 'GET',\n path: '/mcp/v0/servers/:id',\n responseType: 'json',\n pathParamSchema: mcpServerDetailPathParams,\n queryParamSchema: getMcpServerDetailQuerySchema,\n responseSchema: serverDetailSchema,\n summary: 'Get MCP server details',\n description: 'Returns detailed information about a specific MCP server',\n tags: ['MCP'],\n requiresAuth: true,\n handler: async ({ mastra, id, version }: ServerContext & { id: string; version?: string }) => {\n if (!mastra || typeof mastra.getMCPServerById !== 'function') {\n throw new HTTPException(500, { message: 'Mastra instance or getMCPServerById method not available' });\n }\n\n const server = mastra.getMCPServerById(id);\n\n if (!server) {\n throw new HTTPException(404, { message: `MCP server with ID '${id}' not found` });\n }\n\n const serverDetail = server.getServerDetail();\n\n // If a specific version was requested, check if it matches\n if (version && serverDetail.version_detail.version !== version) {\n throw new HTTPException(404, {\n message: `MCP server with ID '${id}' found, but not version '${version}'. Available version: ${serverDetail.version_detail.version}`,\n });\n }\n\n return serverDetail;\n },\n});\n\nexport const LIST_MCP_SERVER_TOOLS_ROUTE = createRoute({\n method: 'GET',\n path: '/mcp/:serverId/tools',\n responseType: 'json',\n pathParamSchema: mcpServerIdPathParams,\n responseSchema: listMcpServerToolsResponseSchema,\n summary: 'List MCP server tools',\n description: 'Returns a list of tools available on the specified MCP server',\n tags: ['MCP'],\n requiresAuth: true,\n handler: async ({ mastra, serverId, requestContext }: ServerContext & { serverId: string }) => {\n if (!mastra || typeof mastra.getMCPServerById !== 'function') {\n throw new HTTPException(500, { message: 'Mastra instance or getMCPServerById method not available' });\n }\n\n const server = mastra.getMCPServerById(serverId);\n\n if (!server) {\n throw new HTTPException(404, { message: `MCP server with ID '${serverId}' not found` });\n }\n\n if (typeof server.getToolListInfo !== 'function') {\n throw new HTTPException(501, { message: `Server '${serverId}' cannot list tools in this way.` });\n }\n\n return await server.getToolListInfo(requestContext);\n },\n});\n\nexport const GET_MCP_SERVER_TOOL_DETAIL_ROUTE = createRoute({\n method: 'GET',\n path: '/mcp/:serverId/tools/:toolId',\n responseType: 'json',\n pathParamSchema: mcpServerToolPathParams,\n responseSchema: mcpToolInfoSchema,\n summary: 'Get MCP server tool details',\n description: 'Returns detailed information about a specific tool on the MCP server',\n tags: ['MCP'],\n requiresAuth: true,\n handler: async ({ mastra, serverId, toolId }: ServerContext & { serverId: string; toolId: string }) => {\n if (!mastra || typeof mastra.getMCPServerById !== 'function') {\n throw new HTTPException(500, { message: 'Mastra instance or getMCPServerById method not available' });\n }\n\n const server = mastra.getMCPServerById(serverId);\n\n if (!server) {\n throw new HTTPException(404, { message: `MCP server with ID '${serverId}' not found` });\n }\n\n if (typeof server.getToolInfo !== 'function') {\n throw new HTTPException(501, { message: `Server '${serverId}' cannot provide tool details in this way.` });\n }\n\n const toolInfo = await server.getToolInfo(toolId);\n if (!toolInfo) {\n throw new HTTPException(404, { message: `Tool with ID '${toolId}' not found on MCP server '${serverId}'` });\n }\n\n return toolInfo;\n },\n});\n\nexport const EXECUTE_MCP_SERVER_TOOL_ROUTE = createRoute({\n method: 'POST',\n path: '/mcp/:serverId/tools/:toolId/execute',\n responseType: 'json',\n pathParamSchema: mcpServerToolPathParams,\n bodySchema: executeToolBodySchema,\n responseSchema: executeToolResponseSchema,\n summary: 'Execute MCP server tool',\n description: 'Executes a tool on the specified MCP server with the provided arguments',\n tags: ['MCP'],\n requiresAuth: true,\n handler: async ({\n mastra,\n serverId,\n toolId,\n data,\n resumeData,\n suspendPayload,\n requestContext,\n }: ServerContext & {\n serverId: string;\n toolId: string;\n data?: unknown;\n resumeData?: unknown;\n suspendPayload?: unknown;\n }) => {\n if (!mastra || typeof mastra.getMCPServerById !== 'function') {\n throw new HTTPException(500, { message: 'Mastra instance or getMCPServerById method not available' });\n }\n\n const server = mastra.getMCPServerById(serverId);\n\n if (!server) {\n throw new HTTPException(404, { message: `MCP server with ID '${serverId}' not found` });\n }\n\n if (typeof server.executeTool !== 'function') {\n throw new HTTPException(501, { message: `Server '${serverId}' cannot execute tools in this way.` });\n }\n\n if (server.mcpVersion === 2) {\n // A 2026-07-28 server runs the tool with no protocol client attached: a tool\n // that suspends for input is reported as such instead of pretending it finished, and\n // the caller answers by sending the same args with `resumeData` and `suspendPayload`.\n let execution: MCPToolExecutionResultV2;\n try {\n execution = await server.executeTool(toolId, data, { requestContext, resumeData, suspendPayload });\n } catch (error) {\n if (error instanceof MastraError && error.id === 'MCP_SERVER_TOOL_INVALID_INPUT') {\n throw new HTTPException(400, { message: error.message, cause: error });\n }\n throw error;\n }\n if (execution.status === 'suspended') {\n return {\n status: 'suspended' as const,\n suspendPayload: execution.suspendPayload,\n resumeSchema: execution.resumeSchema,\n };\n }\n return { result: execution.output };\n }\n\n const result = await server.executeTool(toolId, data, { requestContext });\n return { result };\n },\n});\n\n// ============================================================================\n// MCP Resource Routes\n// ============================================================================\n\nexport const LIST_MCP_SERVER_RESOURCES_ROUTE = createRoute({\n method: 'GET',\n path: '/mcp/:serverId/resources',\n responseType: 'json',\n pathParamSchema: mcpServerResourcePathParams,\n responseSchema: listResourcesResponseSchema,\n summary: 'List MCP server resources',\n description: 'Returns a list of resources available on the MCP server, including ui:// app resources',\n tags: ['MCP'],\n requiresAuth: true,\n handler: async ({ mastra, serverId }: ServerContext & { serverId: string }) => {\n if (!mastra || typeof mastra.getMCPServerById !== 'function') {\n throw new HTTPException(500, { message: 'Mastra instance or getMCPServerById method not available' });\n }\n\n const server = mastra.getMCPServerById(serverId);\n\n if (!server) {\n throw new HTTPException(404, { message: `MCP server with ID '${serverId}' not found` });\n }\n\n if (typeof server.listResources !== 'function') {\n return { resources: [] };\n }\n\n return server.listResources();\n },\n});\n\nexport const READ_MCP_SERVER_RESOURCE_ROUTE = createRoute({\n method: 'POST',\n path: '/mcp/:serverId/resources/read',\n responseType: 'json',\n pathParamSchema: mcpServerResourcePathParams,\n bodySchema: readResourceBodySchema,\n responseSchema: readResourceResponseSchema,\n summary: 'Read MCP server resource content',\n description: 'Reads the content of a resource by URI, used for rendering MCP App ui:// resources',\n tags: ['MCP'],\n requiresAuth: true,\n handler: async ({ mastra, serverId, uri }: ServerContext & { serverId: string; uri: string }) => {\n if (!mastra || typeof mastra.getMCPServerById !== 'function') {\n throw new HTTPException(500, { message: 'Mastra instance or getMCPServerById method not available' });\n }\n\n const server = mastra.getMCPServerById(serverId);\n\n if (!server) {\n throw new HTTPException(404, { message: `MCP server with ID '${serverId}' not found` });\n }\n\n if (typeof server.readResource !== 'function') {\n throw new HTTPException(501, { message: `Server '${serverId}' does not support reading resources` });\n }\n\n try {\n return await server.readResource(uri);\n } catch (error) {\n const message = error instanceof Error ? error.message : String(error);\n if (message.includes('not found') || message.includes('not configured')) {\n throw new HTTPException(404, { message: `Resource '${uri}' not found on server '${serverId}'` });\n }\n throw error;\n }\n },\n});\n\n// ============================================================================\n// MCP Transport Routes (Streamable HTTP and SSE)\n// ============================================================================\n\n/**\n * MCP transport options that can be passed to startHTTP() or startSSE().\n * Includes serverless mode for running in stateless environments like Cloudflare Workers or Vercel Edge.\n */\nexport interface MCPTransportOptions {\n /**\n * When true, runs in stateless mode without session management.\n * Ideal for serverless environments where you can't maintain persistent connections.\n */\n serverless?: boolean;\n /**\n * Custom session ID generator function.\n */\n sessionIdGenerator?: () => string;\n /**\n * Sets `req.auth` before the MCP transport reads it. Overrides the default\n * bridge that forwards the principal resolved by `server.auth`.\n */\n setRequestAuth?: SetMcpRequestAuth;\n}\n\n/**\n * MCP HTTP Transport response type.\n * Adapters use this to set up the HTTP transport via MCPServer.startHTTP()\n */\nexport interface MCPHttpTransportResult {\n server: MastraMCPServerImplementation;\n httpPath: string;\n /**\n * Optional MCP transport options for this specific route.\n * These override any class-level mcpOptions configured on the adapter.\n */\n mcpOptions?: MCPTransportOptions;\n}\n\n/**\n * MCP SSE Transport response type.\n * Adapters use this to set up the SSE transport via MCPServer.startSSE() or startHonoSSE()\n *\n * Note: SSE transport is inherently stateful and doesn't support serverless mode.\n */\nexport interface MCPSseTransportResult {\n /** A 1.x server: the SSE route only resolves servers that still implement the transport. */\n server: MastraMCPServerImplementation;\n ssePath: string;\n messagePath: string;\n}\n\nexport const MCP_HTTP_TRANSPORT_ROUTE = createRoute({\n method: 'ALL',\n path: '/mcp/:serverId/mcp',\n responseType: 'mcp-http',\n pathParamSchema: mcpServerIdPathParams,\n summary: 'MCP HTTP Transport',\n description: 'Streamable HTTP transport endpoint for MCP protocol communication',\n tags: ['MCP'],\n requiresAuth: true,\n handler: async ({ mastra, serverId }: ServerContext & { serverId: string }): Promise<MCPHttpTransportResult> => {\n if (!mastra || typeof mastra.getMCPServerById !== 'function') {\n throw new HTTPException(500, { message: 'Mastra instance or getMCPServerById method not available' });\n }\n\n const server = mastra.getMCPServerById(serverId);\n\n if (!server) {\n throw new HTTPException(404, { message: `MCP server '${serverId}' not found` });\n }\n\n return {\n server,\n httpPath: `/mcp/${serverId}/mcp`,\n };\n },\n});\n\nexport const MCP_SSE_TRANSPORT_ROUTE = createRoute({\n method: 'ALL',\n path: '/mcp/:serverId/sse',\n responseType: 'mcp-sse',\n pathParamSchema: mcpServerIdPathParams,\n summary: 'MCP SSE Transport',\n description: 'SSE transport endpoint for MCP protocol communication',\n tags: ['MCP'],\n requiresAuth: true,\n handler: async ({ mastra, serverId }: ServerContext & { serverId: string }): Promise<MCPSseTransportResult> => {\n if (!mastra || typeof mastra.getMCPServerById !== 'function') {\n throw new HTTPException(500, { message: 'Mastra instance or getMCPServerById method not available' });\n }\n\n const server = mastra.getMCPServerById(serverId);\n\n if (!server) {\n throw new HTTPException(404, { message: `MCP server '${serverId}' not found` });\n }\n\n if (!hasSSETransport(server)) {\n throw new HTTPException(404, { message: 'Legacy SSE transport is unavailable for MCP v2 servers' });\n }\n\n return {\n server,\n ssePath: `/mcp/${serverId}/sse`,\n messagePath: `/mcp/${serverId}/messages`,\n };\n },\n});\n\nexport const MCP_SSE_MESSAGES_ROUTE = createRoute({\n method: 'POST',\n path: '/mcp/:serverId/messages',\n responseType: 'mcp-sse',\n pathParamSchema: mcpServerIdPathParams,\n summary: 'MCP SSE Messages',\n description: 'Message endpoint for SSE transport (posts messages to active SSE streams)',\n tags: ['MCP'],\n requiresAuth: true,\n handler: MCP_SSE_TRANSPORT_ROUTE.handler,\n});\n"],"mappings":"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"}
1
+ {"version":3,"file":"mcp.cjs","names":["createRoute","listMcpServersQuerySchema","listMcpServersResponseSchema","HTTPException","mcpServerDetailPathParams","getMcpServerDetailQuerySchema","serverDetailSchema","mcpServerIdPathParams","listMcpServerToolsResponseSchema","mcpServerToolPathParams","mcpToolInfoSchema","executeToolBodySchema","executeToolResponseSchema","MastraError","mcpServerResourcePathParams","listResourcesResponseSchema","readResourceBodySchema","readResourceResponseSchema"],"sources":["../../../src/server/handlers/mcp.ts"],"sourcesContent":["import { MastraError } from '@mastra/core/error';\nimport type {\n MCPServerBase as MastraMCPServerImplementation,\n MCPToolExecutionResultV2,\n ServerInfo,\n} from '@mastra/core/mcp';\nimport { HTTPException } from '../http-exception';\nimport {\n mcpServerDetailPathParams,\n mcpServerToolPathParams,\n executeToolBodySchema,\n listMcpServersQuerySchema,\n getMcpServerDetailQuerySchema,\n listMcpServersResponseSchema,\n serverDetailSchema,\n mcpServerIdPathParams,\n listMcpServerToolsResponseSchema,\n mcpToolInfoSchema,\n executeToolResponseSchema,\n mcpServerResourcePathParams,\n readResourceBodySchema,\n readResourceResponseSchema,\n listResourcesResponseSchema,\n} from '../schemas/mcp';\nimport type { MCPServerTransport } from '../schemas/mcp';\nimport type { ServerContext } from '../server-adapter';\nimport type { SetMcpRequestAuth } from '../server-adapter/mcp-auth';\nimport { createRoute } from '../server-adapter/routes/route-builder';\n\n// ============================================================================\n// Route Definitions (createRoute pattern for server adapters)\n// ============================================================================\n\n/**\n * Only `@mastra/mcp` 1.x servers implement the standalone HTTP+SSE transport; on a\n * 2026-07-28 server the inherited `startSSE`/`startHonoSSE` throw.\n */\nfunction hasSSETransport(server: MastraMCPServerImplementation): boolean {\n return server.mcpVersion !== 2;\n}\n\nexport interface MCPServerInfoResponse extends ServerInfo {\n /** Endpoints served under `/mcp/:serverId`; 2026-07-28 servers speak Streamable HTTP only. */\n transports: MCPServerTransport[];\n}\n\nfunction transportsOf(server: MastraMCPServerImplementation): MCPServerTransport[] {\n return hasSSETransport(server) ? ['streamable-http', 'sse'] : ['streamable-http'];\n}\n\nexport const LIST_MCP_SERVERS_ROUTE = createRoute({\n method: 'GET',\n path: '/mcp/v0/servers',\n responseType: 'json',\n queryParamSchema: listMcpServersQuerySchema,\n responseSchema: listMcpServersResponseSchema,\n summary: 'List MCP servers',\n description: 'Returns a list of registered MCP servers with pagination support',\n tags: ['MCP'],\n requiresAuth: true,\n handler: async ({\n mastra,\n routePrefix,\n page,\n perPage,\n limit,\n offset,\n }: ServerContext & { page?: number; perPage?: number; limit?: number; offset?: number }) => {\n if (!mastra || typeof mastra.listMCPServers !== 'function') {\n throw new HTTPException(500, { message: 'Mastra instance or listMCPServers method not available' });\n }\n\n const servers = mastra.listMCPServers();\n\n if (!servers) {\n return { servers: [], total_count: 0, next: null };\n }\n\n const serverList = Object.values(servers);\n const totalCount = serverList.length;\n\n // Support both page/perPage and limit/offset for backwards compatibility\n // Detect which format user is using - prefer page/perPage if both provided\n const useLegacyFormat =\n (limit !== undefined || offset !== undefined) && page === undefined && perPage === undefined;\n\n // If perPage provided, use it; otherwise fall back to limit\n const finalPerPage = perPage ?? limit;\n // If page provided, use it; otherwise convert from offset\n let finalPage = page;\n if (finalPage === undefined && offset !== undefined && finalPerPage !== undefined && finalPerPage > 0) {\n finalPage = Math.floor(offset / finalPerPage);\n }\n\n // Calculate offset from page/perPage\n const actualOffset = finalPage !== undefined && finalPerPage !== undefined ? finalPage * finalPerPage : 0;\n\n // Apply pagination\n let paginatedServers = serverList;\n let nextUrl: string | null = null;\n\n if (finalPerPage !== undefined) {\n paginatedServers = serverList.slice(actualOffset, actualOffset + finalPerPage);\n\n // Calculate next URL if there are more results\n if (actualOffset + finalPerPage < totalCount) {\n const nextPage = (finalPage ?? 0) + 1;\n // Return next URL in same format as request (legacy limit/offset or page/perPage)\n const prefix = routePrefix ?? '';\n if (useLegacyFormat) {\n const nextOffset = actualOffset + finalPerPage;\n nextUrl = `${prefix}/mcp/v0/servers?limit=${finalPerPage}&offset=${nextOffset}`;\n } else {\n nextUrl = `${prefix}/mcp/v0/servers?perPage=${finalPerPage}&page=${nextPage}`;\n }\n }\n }\n\n // Get server info for each server\n const serverInfoList: MCPServerInfoResponse[] = paginatedServers.map(server => ({\n ...server.getServerInfo(),\n transports: transportsOf(server),\n }));\n\n return {\n servers: serverInfoList,\n total_count: totalCount,\n next: nextUrl,\n };\n },\n});\n\nexport const GET_MCP_SERVER_DETAIL_ROUTE = createRoute({\n method: 'GET',\n path: '/mcp/v0/servers/:id',\n responseType: 'json',\n pathParamSchema: mcpServerDetailPathParams,\n queryParamSchema: getMcpServerDetailQuerySchema,\n responseSchema: serverDetailSchema,\n summary: 'Get MCP server details',\n description: 'Returns detailed information about a specific MCP server',\n tags: ['MCP'],\n requiresAuth: true,\n handler: async ({ mastra, id, version }: ServerContext & { id: string; version?: string }) => {\n if (!mastra || typeof mastra.getMCPServerById !== 'function') {\n throw new HTTPException(500, { message: 'Mastra instance or getMCPServerById method not available' });\n }\n\n const server = mastra.getMCPServerById(id);\n\n if (!server) {\n throw new HTTPException(404, { message: `MCP server with ID '${id}' not found` });\n }\n\n const serverDetail = { ...server.getServerDetail(), transports: transportsOf(server) };\n\n // If a specific version was requested, check if it matches\n if (version && serverDetail.version_detail.version !== version) {\n throw new HTTPException(404, {\n message: `MCP server with ID '${id}' found, but not version '${version}'. Available version: ${serverDetail.version_detail.version}`,\n });\n }\n\n return serverDetail;\n },\n});\n\nexport const LIST_MCP_SERVER_TOOLS_ROUTE = createRoute({\n method: 'GET',\n path: '/mcp/:serverId/tools',\n responseType: 'json',\n pathParamSchema: mcpServerIdPathParams,\n responseSchema: listMcpServerToolsResponseSchema,\n summary: 'List MCP server tools',\n description: 'Returns a list of tools available on the specified MCP server',\n tags: ['MCP'],\n requiresAuth: true,\n handler: async ({ mastra, serverId, requestContext }: ServerContext & { serverId: string }) => {\n if (!mastra || typeof mastra.getMCPServerById !== 'function') {\n throw new HTTPException(500, { message: 'Mastra instance or getMCPServerById method not available' });\n }\n\n const server = mastra.getMCPServerById(serverId);\n\n if (!server) {\n throw new HTTPException(404, { message: `MCP server with ID '${serverId}' not found` });\n }\n\n if (typeof server.getToolListInfo !== 'function') {\n throw new HTTPException(501, { message: `Server '${serverId}' cannot list tools in this way.` });\n }\n\n return await server.getToolListInfo(requestContext);\n },\n});\n\nexport const GET_MCP_SERVER_TOOL_DETAIL_ROUTE = createRoute({\n method: 'GET',\n path: '/mcp/:serverId/tools/:toolId',\n responseType: 'json',\n pathParamSchema: mcpServerToolPathParams,\n responseSchema: mcpToolInfoSchema,\n summary: 'Get MCP server tool details',\n description: 'Returns detailed information about a specific tool on the MCP server',\n tags: ['MCP'],\n requiresAuth: true,\n handler: async ({ mastra, serverId, toolId }: ServerContext & { serverId: string; toolId: string }) => {\n if (!mastra || typeof mastra.getMCPServerById !== 'function') {\n throw new HTTPException(500, { message: 'Mastra instance or getMCPServerById method not available' });\n }\n\n const server = mastra.getMCPServerById(serverId);\n\n if (!server) {\n throw new HTTPException(404, { message: `MCP server with ID '${serverId}' not found` });\n }\n\n if (typeof server.getToolInfo !== 'function') {\n throw new HTTPException(501, { message: `Server '${serverId}' cannot provide tool details in this way.` });\n }\n\n const toolInfo = await server.getToolInfo(toolId);\n if (!toolInfo) {\n throw new HTTPException(404, { message: `Tool with ID '${toolId}' not found on MCP server '${serverId}'` });\n }\n\n return toolInfo;\n },\n});\n\nexport const EXECUTE_MCP_SERVER_TOOL_ROUTE = createRoute({\n method: 'POST',\n path: '/mcp/:serverId/tools/:toolId/execute',\n responseType: 'json',\n pathParamSchema: mcpServerToolPathParams,\n bodySchema: executeToolBodySchema,\n responseSchema: executeToolResponseSchema,\n summary: 'Execute MCP server tool',\n description: 'Executes a tool on the specified MCP server with the provided arguments',\n tags: ['MCP'],\n requiresAuth: true,\n handler: async ({\n mastra,\n serverId,\n toolId,\n data,\n resumeData,\n suspendPayload,\n requestContext,\n }: ServerContext & {\n serverId: string;\n toolId: string;\n data?: unknown;\n resumeData?: unknown;\n suspendPayload?: unknown;\n }) => {\n if (!mastra || typeof mastra.getMCPServerById !== 'function') {\n throw new HTTPException(500, { message: 'Mastra instance or getMCPServerById method not available' });\n }\n\n const server = mastra.getMCPServerById(serverId);\n\n if (!server) {\n throw new HTTPException(404, { message: `MCP server with ID '${serverId}' not found` });\n }\n\n if (typeof server.executeTool !== 'function') {\n throw new HTTPException(501, { message: `Server '${serverId}' cannot execute tools in this way.` });\n }\n\n if (server.mcpVersion === 2) {\n // A 2026-07-28 server runs the tool with no protocol client attached: a tool\n // that suspends for input is reported as such instead of pretending it finished, and\n // the caller answers by sending the same args with `resumeData` and `suspendPayload`.\n let execution: MCPToolExecutionResultV2;\n try {\n execution = await server.executeTool(toolId, data, { requestContext, resumeData, suspendPayload });\n } catch (error) {\n if (error instanceof MastraError && error.id === 'MCP_SERVER_TOOL_INVALID_INPUT') {\n throw new HTTPException(400, { message: error.message, cause: error });\n }\n throw error;\n }\n if (execution.status === 'suspended') {\n return {\n status: 'suspended' as const,\n suspendPayload: execution.suspendPayload,\n resumeSchema: execution.resumeSchema,\n };\n }\n return { result: execution.output };\n }\n\n const result = await server.executeTool(toolId, data, { requestContext });\n return { result };\n },\n});\n\n// ============================================================================\n// MCP Resource Routes\n// ============================================================================\n\nexport const LIST_MCP_SERVER_RESOURCES_ROUTE = createRoute({\n method: 'GET',\n path: '/mcp/:serverId/resources',\n responseType: 'json',\n pathParamSchema: mcpServerResourcePathParams,\n responseSchema: listResourcesResponseSchema,\n summary: 'List MCP server resources',\n description: 'Returns a list of resources available on the MCP server, including ui:// app resources',\n tags: ['MCP'],\n requiresAuth: true,\n handler: async ({ mastra, serverId }: ServerContext & { serverId: string }) => {\n if (!mastra || typeof mastra.getMCPServerById !== 'function') {\n throw new HTTPException(500, { message: 'Mastra instance or getMCPServerById method not available' });\n }\n\n const server = mastra.getMCPServerById(serverId);\n\n if (!server) {\n throw new HTTPException(404, { message: `MCP server with ID '${serverId}' not found` });\n }\n\n if (typeof server.listResources !== 'function') {\n return { resources: [] };\n }\n\n return server.listResources();\n },\n});\n\nexport const READ_MCP_SERVER_RESOURCE_ROUTE = createRoute({\n method: 'POST',\n path: '/mcp/:serverId/resources/read',\n responseType: 'json',\n pathParamSchema: mcpServerResourcePathParams,\n bodySchema: readResourceBodySchema,\n responseSchema: readResourceResponseSchema,\n summary: 'Read MCP server resource content',\n description: 'Reads the content of a resource by URI, used for rendering MCP App ui:// resources',\n tags: ['MCP'],\n requiresAuth: true,\n handler: async ({ mastra, serverId, uri }: ServerContext & { serverId: string; uri: string }) => {\n if (!mastra || typeof mastra.getMCPServerById !== 'function') {\n throw new HTTPException(500, { message: 'Mastra instance or getMCPServerById method not available' });\n }\n\n const server = mastra.getMCPServerById(serverId);\n\n if (!server) {\n throw new HTTPException(404, { message: `MCP server with ID '${serverId}' not found` });\n }\n\n if (typeof server.readResource !== 'function') {\n throw new HTTPException(501, { message: `Server '${serverId}' does not support reading resources` });\n }\n\n try {\n return await server.readResource(uri);\n } catch (error) {\n const message = error instanceof Error ? error.message : String(error);\n if (message.includes('not found') || message.includes('not configured')) {\n throw new HTTPException(404, { message: `Resource '${uri}' not found on server '${serverId}'` });\n }\n throw error;\n }\n },\n});\n\n// ============================================================================\n// MCP Transport Routes (Streamable HTTP and SSE)\n// ============================================================================\n\n/**\n * MCP transport options that can be passed to startHTTP() or startSSE().\n * Includes serverless mode for running in stateless environments like Cloudflare Workers or Vercel Edge.\n */\nexport interface MCPTransportOptions {\n /**\n * When true, runs in stateless mode without session management.\n * Ideal for serverless environments where you can't maintain persistent connections.\n */\n serverless?: boolean;\n /**\n * Custom session ID generator function.\n */\n sessionIdGenerator?: () => string;\n /**\n * Sets `req.auth` before the MCP transport reads it. Overrides the default\n * bridge that forwards the principal resolved by `server.auth`.\n */\n setRequestAuth?: SetMcpRequestAuth;\n}\n\n/**\n * MCP HTTP Transport response type.\n * Adapters use this to set up the HTTP transport via MCPServer.startHTTP()\n */\nexport interface MCPHttpTransportResult {\n server: MastraMCPServerImplementation;\n httpPath: string;\n /**\n * Optional MCP transport options for this specific route.\n * These override any class-level mcpOptions configured on the adapter.\n */\n mcpOptions?: MCPTransportOptions;\n}\n\n/**\n * MCP SSE Transport response type.\n * Adapters use this to set up the SSE transport via MCPServer.startSSE() or startHonoSSE()\n *\n * Note: SSE transport is inherently stateful and doesn't support serverless mode.\n */\nexport interface MCPSseTransportResult {\n /** A 1.x server: the SSE route only resolves servers that still implement the transport. */\n server: MastraMCPServerImplementation;\n ssePath: string;\n messagePath: string;\n}\n\nexport const MCP_HTTP_TRANSPORT_ROUTE = createRoute({\n method: 'ALL',\n path: '/mcp/:serverId/mcp',\n responseType: 'mcp-http',\n pathParamSchema: mcpServerIdPathParams,\n summary: 'MCP HTTP Transport',\n description: 'Streamable HTTP transport endpoint for MCP protocol communication',\n tags: ['MCP'],\n requiresAuth: true,\n handler: async ({ mastra, serverId }: ServerContext & { serverId: string }): Promise<MCPHttpTransportResult> => {\n if (!mastra || typeof mastra.getMCPServerById !== 'function') {\n throw new HTTPException(500, { message: 'Mastra instance or getMCPServerById method not available' });\n }\n\n const server = mastra.getMCPServerById(serverId);\n\n if (!server) {\n throw new HTTPException(404, { message: `MCP server '${serverId}' not found` });\n }\n\n return {\n server,\n httpPath: `/mcp/${serverId}/mcp`,\n };\n },\n});\n\nexport const MCP_SSE_TRANSPORT_ROUTE = createRoute({\n method: 'ALL',\n path: '/mcp/:serverId/sse',\n responseType: 'mcp-sse',\n pathParamSchema: mcpServerIdPathParams,\n summary: 'MCP SSE Transport',\n description: 'SSE transport endpoint for MCP protocol communication',\n tags: ['MCP'],\n requiresAuth: true,\n handler: async ({ mastra, serverId }: ServerContext & { serverId: string }): Promise<MCPSseTransportResult> => {\n if (!mastra || typeof mastra.getMCPServerById !== 'function') {\n throw new HTTPException(500, { message: 'Mastra instance or getMCPServerById method not available' });\n }\n\n const server = mastra.getMCPServerById(serverId);\n\n if (!server) {\n throw new HTTPException(404, { message: `MCP server '${serverId}' not found` });\n }\n\n if (!hasSSETransport(server)) {\n throw new HTTPException(404, { message: 'Legacy SSE transport is unavailable for MCP v2 servers' });\n }\n\n return {\n server,\n ssePath: `/mcp/${serverId}/sse`,\n messagePath: `/mcp/${serverId}/messages`,\n };\n },\n});\n\nexport const MCP_SSE_MESSAGES_ROUTE = createRoute({\n method: 'POST',\n path: '/mcp/:serverId/messages',\n responseType: 'mcp-sse',\n pathParamSchema: mcpServerIdPathParams,\n summary: 'MCP SSE Messages',\n description: 'Message endpoint for SSE transport (posts messages to active SSE streams)',\n tags: ['MCP'],\n requiresAuth: true,\n handler: MCP_SSE_TRANSPORT_ROUTE.handler,\n});\n"],"mappings":"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"}
@@ -1,6 +1,11 @@
1
- import type { MCPServerBase as MastraMCPServerImplementation } from '@mastra/core/mcp';
1
+ import type { MCPServerBase as MastraMCPServerImplementation, ServerInfo } from '@mastra/core/mcp';
2
+ import type { MCPServerTransport } from '../schemas/mcp.js';
2
3
  import type { ServerContext } from '../server-adapter/index.js';
3
4
  import type { SetMcpRequestAuth } from '../server-adapter/mcp-auth.js';
5
+ export interface MCPServerInfoResponse extends ServerInfo {
6
+ /** Endpoints served under `/mcp/:serverId`; 2026-07-28 servers speak Streamable HTTP only. */
7
+ transports: MCPServerTransport[];
8
+ }
4
9
  export declare const LIST_MCP_SERVERS_ROUTE: Omit<import("@mastra/core/server").ApiRoute, "createHandler" | "handler" | "method" | "openapi" | "path"> & {
5
10
  method: "GET";
6
11
  path: "/mcp/v0/servers";
@@ -21,6 +26,7 @@ export declare const LIST_MCP_SERVERS_ROUTE: Omit<import("@mastra/core/server").
21
26
  release_date: string;
22
27
  is_latest: boolean;
23
28
  };
29
+ transports?: ("sse" | "streamable-http")[] | undefined;
24
30
  }[];
25
31
  total_count: number;
26
32
  next: string | null;
@@ -49,6 +55,10 @@ export declare const LIST_MCP_SERVERS_ROUTE: Omit<import("@mastra/core/server").
49
55
  release_date: import("zod").ZodString;
50
56
  is_latest: import("zod").ZodBoolean;
51
57
  }, import("zod/v4/core").$strip>;
58
+ transports: import("zod").ZodOptional<import("zod").ZodArray<import("zod").ZodEnum<{
59
+ sse: "sse";
60
+ "streamable-http": "streamable-http";
61
+ }>>>;
52
62
  }, import("zod/v4/core").$strip>>;
53
63
  total_count: import("zod").ZodNumber;
54
64
  next: import("zod").ZodNullable<import("zod").ZodString>;
@@ -78,6 +88,7 @@ export declare const GET_MCP_SERVER_DETAIL_ROUTE: Omit<import("@mastra/core/serv
78
88
  package_canonical?: string | undefined;
79
89
  packages?: unknown[] | undefined;
80
90
  remotes?: unknown[] | undefined;
91
+ transports?: ("sse" | "streamable-http")[] | undefined;
81
92
  }>;
82
93
  pathParamSchema?: import("zod").ZodSchema;
83
94
  queryParamSchema?: import("zod").ZodSchema;
@@ -105,6 +116,10 @@ export declare const GET_MCP_SERVER_DETAIL_ROUTE: Omit<import("@mastra/core/serv
105
116
  package_canonical: import("zod").ZodOptional<import("zod").ZodString>;
106
117
  packages: import("zod").ZodOptional<import("zod").ZodArray<import("zod").ZodUnknown>>;
107
118
  remotes: import("zod").ZodOptional<import("zod").ZodArray<import("zod").ZodUnknown>>;
119
+ transports: import("zod").ZodOptional<import("zod").ZodArray<import("zod").ZodEnum<{
120
+ sse: "sse";
121
+ "streamable-http": "streamable-http";
122
+ }>>>;
108
123
  }, import("zod/v4/core").$strip>> | undefined;
109
124
  } & {
110
125
  readonly _mastraSchemaRoute: true;
@@ -119,6 +134,7 @@ export declare const LIST_MCP_SERVER_TOOLS_ROUTE: Omit<import("@mastra/core/serv
119
134
  serverId: string;
120
135
  } & ServerContext): Promise<{
121
136
  tools: {
137
+ id?: string | undefined;
122
138
  name: string;
123
139
  description?: string | undefined;
124
140
  inputSchema: unknown;
@@ -141,6 +157,7 @@ export declare const LIST_MCP_SERVER_TOOLS_ROUTE: Omit<import("@mastra/core/serv
141
157
  serverId: import("zod").ZodString;
142
158
  }, import("zod/v4/core").$strip>, undefined, undefined, import("zod").ZodObject<{
143
159
  tools: import("zod").ZodArray<import("zod").ZodObject<{
160
+ id: import("zod").ZodOptional<import("zod").ZodString>;
144
161
  name: import("zod").ZodString;
145
162
  description: import("zod").ZodOptional<import("zod").ZodString>;
146
163
  inputSchema: import("zod").ZodUnknown;
@@ -162,6 +179,7 @@ export declare const GET_MCP_SERVER_TOOL_DETAIL_ROUTE: Omit<import("@mastra/core
162
179
  serverId: string;
163
180
  toolId: string;
164
181
  } & ServerContext): Promise<{
182
+ id?: string | undefined;
165
183
  name: string;
166
184
  description?: string | undefined;
167
185
  inputSchema: unknown;
@@ -183,6 +201,7 @@ export declare const GET_MCP_SERVER_TOOL_DETAIL_ROUTE: Omit<import("@mastra/core
183
201
  serverId: import("zod").ZodString;
184
202
  toolId: import("zod").ZodString;
185
203
  }, import("zod/v4/core").$strip>, undefined, undefined, import("zod").ZodObject<{
204
+ id: import("zod").ZodOptional<import("zod").ZodString>;
186
205
  name: import("zod").ZodString;
187
206
  description: import("zod").ZodOptional<import("zod").ZodString>;
188
207
  inputSchema: import("zod").ZodUnknown;