@mastra/server 1.33.0-alpha.14 → 1.33.0-alpha.16
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.
- package/CHANGELOG.md +16 -0
- package/dist/{api-schema-manifest-H56IOQ7Q.cjs → api-schema-manifest-MFWM2IYT.cjs} +6 -6
- package/dist/{api-schema-manifest-H56IOQ7Q.cjs.map → api-schema-manifest-MFWM2IYT.cjs.map} +1 -1
- package/dist/{api-schema-manifest-SCZXY4HI.js → api-schema-manifest-W7V46W67.js} +4 -4
- package/dist/{api-schema-manifest-SCZXY4HI.js.map → api-schema-manifest-W7V46W67.js.map} +1 -1
- package/dist/{chunk-J6L4JMBT.cjs → chunk-2CFSCWYB.cjs} +7 -7
- package/dist/{chunk-J6L4JMBT.cjs.map → chunk-2CFSCWYB.cjs.map} +1 -1
- package/dist/{chunk-T3G3GPE3.cjs → chunk-3WBBCKFS.cjs} +83 -3970
- package/dist/chunk-3WBBCKFS.cjs.map +1 -0
- package/dist/{chunk-VSXPATYI.js → chunk-45VXNWVY.js} +4 -4
- package/dist/{chunk-VSXPATYI.js.map → chunk-45VXNWVY.js.map} +1 -1
- package/dist/{chunk-5CGIBJFA.cjs → chunk-4AF5BOBB.cjs} +12 -12
- package/dist/{chunk-5CGIBJFA.cjs.map → chunk-4AF5BOBB.cjs.map} +1 -1
- package/dist/chunk-4PBGZDMH.cjs +614 -0
- package/dist/chunk-4PBGZDMH.cjs.map +1 -0
- package/dist/{chunk-OMF7VJBL.js → chunk-4UMXWTGK.js} +4 -4
- package/dist/{chunk-OMF7VJBL.js.map → chunk-4UMXWTGK.js.map} +1 -1
- package/dist/{chunk-WXLLZARK.js → chunk-5KMAVRTH.js} +3 -3
- package/dist/{chunk-WXLLZARK.js.map → chunk-5KMAVRTH.js.map} +1 -1
- package/dist/{chunk-ZHOGHUAX.cjs → chunk-64KPSMDB.cjs} +28 -28
- package/dist/{chunk-ZHOGHUAX.cjs.map → chunk-64KPSMDB.cjs.map} +1 -1
- package/dist/{chunk-3RMKJTCU.cjs → chunk-6JO4HU6S.cjs} +10 -10
- package/dist/{chunk-3RMKJTCU.cjs.map → chunk-6JO4HU6S.cjs.map} +1 -1
- package/dist/{chunk-5SURXCX2.cjs → chunk-6KSZGG56.cjs} +10 -10
- package/dist/{chunk-5SURXCX2.cjs.map → chunk-6KSZGG56.cjs.map} +1 -1
- package/dist/{chunk-MGUB4XMC.cjs → chunk-6MLYT26T.cjs} +10 -10
- package/dist/{chunk-MGUB4XMC.cjs.map → chunk-6MLYT26T.cjs.map} +1 -1
- package/dist/{chunk-SBS6VJM2.cjs → chunk-7EETVLI2.cjs} +38 -38
- package/dist/{chunk-SBS6VJM2.cjs.map → chunk-7EETVLI2.cjs.map} +1 -1
- package/dist/{chunk-SYAGB4OG.js → chunk-7NGOF4XS.js} +5 -4
- package/dist/chunk-7NGOF4XS.js.map +1 -0
- package/dist/{chunk-EXI2FQQE.js → chunk-7PVVZLF7.js} +3 -3
- package/dist/{chunk-EXI2FQQE.js.map → chunk-7PVVZLF7.js.map} +1 -1
- package/dist/{chunk-7CCIRVMW.cjs → chunk-AGMODQ2J.cjs} +32 -32
- package/dist/{chunk-7CCIRVMW.cjs.map → chunk-AGMODQ2J.cjs.map} +1 -1
- package/dist/{chunk-AE7WAPJS.js → chunk-APSCZDR4.js} +3 -3
- package/dist/{chunk-AE7WAPJS.js.map → chunk-APSCZDR4.js.map} +1 -1
- package/dist/{chunk-UUK46T7P.js → chunk-B5GGWXNO.js} +4 -4
- package/dist/{chunk-UUK46T7P.js.map → chunk-B5GGWXNO.js.map} +1 -1
- package/dist/{chunk-WHTPC7MP.cjs → chunk-BMYFOYBH.cjs} +10 -10
- package/dist/{chunk-WHTPC7MP.cjs.map → chunk-BMYFOYBH.cjs.map} +1 -1
- package/dist/{chunk-GTLERIMC.js → chunk-BR3R3DQQ.js} +3 -3
- package/dist/{chunk-GTLERIMC.js.map → chunk-BR3R3DQQ.js.map} +1 -1
- package/dist/chunk-BSIAJKBX.cjs +4 -0
- package/dist/chunk-BSIAJKBX.cjs.map +1 -0
- package/dist/{chunk-XQCH52QI.cjs → chunk-BZXYO5VZ.cjs} +10 -10
- package/dist/{chunk-XQCH52QI.cjs.map → chunk-BZXYO5VZ.cjs.map} +1 -1
- package/dist/{chunk-FAEMMSQB.js → chunk-C5TT527L.js} +4 -4
- package/dist/{chunk-FAEMMSQB.js.map → chunk-C5TT527L.js.map} +1 -1
- package/dist/{chunk-DYHG4LMH.js → chunk-C6RCQJ2Z.js} +3 -3
- package/dist/{chunk-DYHG4LMH.js.map → chunk-C6RCQJ2Z.js.map} +1 -1
- package/dist/{chunk-54CKNFLM.cjs → chunk-COT4ZTGZ.cjs} +9 -9
- package/dist/{chunk-54CKNFLM.cjs.map → chunk-COT4ZTGZ.cjs.map} +1 -1
- package/dist/{chunk-T2TSJEGX.js → chunk-CSOQH4AK.js} +4 -4
- package/dist/{chunk-T2TSJEGX.js.map → chunk-CSOQH4AK.js.map} +1 -1
- package/dist/{chunk-2L6MRDXM.js → chunk-DFA4U26G.js} +3 -3
- package/dist/{chunk-2L6MRDXM.js.map → chunk-DFA4U26G.js.map} +1 -1
- package/dist/{chunk-2F6R22KQ.js → chunk-DFM7GOO4.js} +3 -3
- package/dist/{chunk-2F6R22KQ.js.map → chunk-DFM7GOO4.js.map} +1 -1
- package/dist/chunk-E6BG2C5U.js +3 -0
- package/dist/chunk-E6BG2C5U.js.map +1 -0
- package/dist/{chunk-XGKFSSPC.js → chunk-E7EMWFYN.js} +4 -4
- package/dist/{chunk-XGKFSSPC.js.map → chunk-E7EMWFYN.js.map} +1 -1
- package/dist/{chunk-GW475GAG.cjs → chunk-EIYUA4AX.cjs} +6 -6
- package/dist/{chunk-GW475GAG.cjs.map → chunk-EIYUA4AX.cjs.map} +1 -1
- package/dist/{chunk-VG5YTXWO.cjs → chunk-FCO2EQC6.cjs} +7 -7
- package/dist/{chunk-VG5YTXWO.cjs.map → chunk-FCO2EQC6.cjs.map} +1 -1
- package/dist/chunk-FT2N6D2N.cjs +3898 -0
- package/dist/chunk-FT2N6D2N.cjs.map +1 -0
- package/dist/{chunk-FZNUEGME.js → chunk-G5LV7OSI.js} +3 -3
- package/dist/{chunk-FZNUEGME.js.map → chunk-G5LV7OSI.js.map} +1 -1
- package/dist/{chunk-J2TNUEHZ.cjs → chunk-GXWNKZOD.cjs} +11 -11
- package/dist/{chunk-J2TNUEHZ.cjs.map → chunk-GXWNKZOD.cjs.map} +1 -1
- package/dist/{chunk-SQK6E6OB.cjs → chunk-H6HH44D5.cjs} +6 -6
- package/dist/{chunk-SQK6E6OB.cjs.map → chunk-H6HH44D5.cjs.map} +1 -1
- package/dist/{chunk-QYJ2Z4NM.cjs → chunk-HGMVVFDP.cjs} +28 -28
- package/dist/{chunk-QYJ2Z4NM.cjs.map → chunk-HGMVVFDP.cjs.map} +1 -1
- package/dist/{chunk-WYZWXMWT.js → chunk-I7ZTF2HK.js} +4 -4
- package/dist/{chunk-WYZWXMWT.js.map → chunk-I7ZTF2HK.js.map} +1 -1
- package/dist/{chunk-UG4TQYA5.js → chunk-IBZWGHQV.js} +4 -4
- package/dist/{chunk-UG4TQYA5.js.map → chunk-IBZWGHQV.js.map} +1 -1
- package/dist/{chunk-24XD6PRY.cjs → chunk-IJAASJBB.cjs} +6 -6
- package/dist/{chunk-24XD6PRY.cjs.map → chunk-IJAASJBB.cjs.map} +1 -1
- package/dist/{chunk-KBRQAVQ7.js → chunk-ITYCYE2S.js} +4 -4
- package/dist/{chunk-KBRQAVQ7.js.map → chunk-ITYCYE2S.js.map} +1 -1
- package/dist/chunk-JGW5HWOG.js +3889 -0
- package/dist/chunk-JGW5HWOG.js.map +1 -0
- package/dist/chunk-KKVBPEU6.cjs +544 -0
- package/dist/chunk-KKVBPEU6.cjs.map +1 -0
- package/dist/{chunk-3OED33MB.js → chunk-KMLEXUTX.js} +3 -3
- package/dist/{chunk-3OED33MB.js.map → chunk-KMLEXUTX.js.map} +1 -1
- package/dist/{chunk-UTA2JCM5.cjs → chunk-KPO4YSUU.cjs} +52 -52
- package/dist/{chunk-UTA2JCM5.cjs.map → chunk-KPO4YSUU.cjs.map} +1 -1
- package/dist/{chunk-3BMOLOBX.cjs → chunk-KYDOI34F.cjs} +10 -10
- package/dist/{chunk-3BMOLOBX.cjs.map → chunk-KYDOI34F.cjs.map} +1 -1
- package/dist/{chunk-SAWFPSUZ.js → chunk-L2OVPQXL.js} +3 -3
- package/dist/{chunk-SAWFPSUZ.js.map → chunk-L2OVPQXL.js.map} +1 -1
- package/dist/{chunk-GBFE3ATX.js → chunk-LDLL5EFD.js} +4 -4
- package/dist/{chunk-GBFE3ATX.js.map → chunk-LDLL5EFD.js.map} +1 -1
- package/dist/{chunk-5HTICUZW.cjs → chunk-LIW53IKN.cjs} +12 -12
- package/dist/{chunk-5HTICUZW.cjs.map → chunk-LIW53IKN.cjs.map} +1 -1
- package/dist/{chunk-QH24MMM4.cjs → chunk-LWMBJBWV.cjs} +24 -24
- package/dist/{chunk-QH24MMM4.cjs.map → chunk-LWMBJBWV.cjs.map} +1 -1
- package/dist/{chunk-XOVUIPJ5.cjs → chunk-LXB2YPEL.cjs} +8 -8
- package/dist/{chunk-XOVUIPJ5.cjs.map → chunk-LXB2YPEL.cjs.map} +1 -1
- package/dist/{chunk-VRW4RECS.js → chunk-NJNPWO2U.js} +37 -61
- package/dist/chunk-NJNPWO2U.js.map +1 -0
- package/dist/{chunk-6BX5UZ67.js → chunk-NKBFUK47.js} +3 -3
- package/dist/{chunk-6BX5UZ67.js.map → chunk-NKBFUK47.js.map} +1 -1
- package/dist/{chunk-DZVF6RQF.cjs → chunk-NS2TBDC7.cjs} +8 -8
- package/dist/{chunk-DZVF6RQF.cjs.map → chunk-NS2TBDC7.cjs.map} +1 -1
- package/dist/{chunk-7Y5IMVVS.js → chunk-NVTFYBJK.js} +4 -4
- package/dist/{chunk-7Y5IMVVS.js.map → chunk-NVTFYBJK.js.map} +1 -1
- package/dist/{chunk-EUI4PQF5.cjs → chunk-OJTOUPO5.cjs} +11 -11
- package/dist/{chunk-EUI4PQF5.cjs.map → chunk-OJTOUPO5.cjs.map} +1 -1
- package/dist/{chunk-RS2S4SBQ.cjs → chunk-OR37DTRU.cjs} +10 -10
- package/dist/{chunk-RS2S4SBQ.cjs.map → chunk-OR37DTRU.cjs.map} +1 -1
- package/dist/{chunk-GKWEP64R.cjs → chunk-QBJTV6J6.cjs} +5 -5
- package/dist/{chunk-GKWEP64R.cjs.map → chunk-QBJTV6J6.cjs.map} +1 -1
- package/dist/{chunk-HC7DEFY6.js → chunk-QOGXAX3L.js} +4 -4
- package/dist/{chunk-HC7DEFY6.js.map → chunk-QOGXAX3L.js.map} +1 -1
- package/dist/{chunk-YYTNZ4KH.js → chunk-R6MZNDPJ.js} +3 -3
- package/dist/{chunk-YYTNZ4KH.js.map → chunk-R6MZNDPJ.js.map} +1 -1
- package/dist/{chunk-CQOIFPKU.cjs → chunk-RZZ2QEMR.cjs} +17 -16
- package/dist/chunk-RZZ2QEMR.cjs.map +1 -0
- package/dist/{chunk-BQ4HXRAL.cjs → chunk-S2ZHO5NI.cjs} +11 -11
- package/dist/{chunk-BQ4HXRAL.cjs.map → chunk-S2ZHO5NI.cjs.map} +1 -1
- package/dist/{chunk-YY6BP6U2.js → chunk-S3KGEFOS.js} +6 -5
- package/dist/chunk-S3KGEFOS.js.map +1 -0
- package/dist/{chunk-4KCXZZ2I.js → chunk-S3RNHJLO.js} +3 -3
- package/dist/{chunk-4KCXZZ2I.js.map → chunk-S3RNHJLO.js.map} +1 -1
- package/dist/{chunk-VBFA6U5X.cjs → chunk-SCOS4OMV.cjs} +6 -6
- package/dist/{chunk-VBFA6U5X.cjs.map → chunk-SCOS4OMV.cjs.map} +1 -1
- package/dist/{chunk-D3MJC643.js → chunk-SGOBXOXA.js} +3 -3
- package/dist/{chunk-D3MJC643.js.map → chunk-SGOBXOXA.js.map} +1 -1
- package/dist/{chunk-MIWKRHIV.js → chunk-SJSR6N44.js} +6 -6
- package/dist/{chunk-MIWKRHIV.js.map → chunk-SJSR6N44.js.map} +1 -1
- package/dist/{chunk-VMHV5ATJ.js → chunk-SMKFE63B.js} +3 -3
- package/dist/{chunk-VMHV5ATJ.js.map → chunk-SMKFE63B.js.map} +1 -1
- package/dist/{chunk-CRN2HHZ4.cjs → chunk-TFQJA7WK.cjs} +13 -13
- package/dist/{chunk-CRN2HHZ4.cjs.map → chunk-TFQJA7WK.cjs.map} +1 -1
- package/dist/{chunk-HKZWPQSC.cjs → chunk-WFIBVKCP.cjs} +6 -6
- package/dist/{chunk-HKZWPQSC.cjs.map → chunk-WFIBVKCP.cjs.map} +1 -1
- package/dist/{chunk-GZQFBILP.js → chunk-WOUAM4PW.js} +3 -3
- package/dist/{chunk-GZQFBILP.js.map → chunk-WOUAM4PW.js.map} +1 -1
- package/dist/{chunk-JH5BL5V2.js → chunk-XP4JDZGU.js} +4 -4
- package/dist/{chunk-JH5BL5V2.js.map → chunk-XP4JDZGU.js.map} +1 -1
- package/dist/{chunk-ZCRTO66C.cjs → chunk-YJ66A6QD.cjs} +44 -43
- package/dist/chunk-YJ66A6QD.cjs.map +1 -0
- package/dist/{chunk-3GNDZVNF.js → chunk-YTH7NL2B.js} +3 -3
- package/dist/{chunk-3GNDZVNF.js.map → chunk-YTH7NL2B.js.map} +1 -1
- package/dist/{chunk-R2FHHF2M.js → chunk-YUMPAAZI.js} +4 -4
- package/dist/{chunk-R2FHHF2M.js.map → chunk-YUMPAAZI.js.map} +1 -1
- package/dist/{chunk-SALKEPIL.cjs → chunk-Z36ILXII.cjs} +10 -10
- package/dist/{chunk-SALKEPIL.cjs.map → chunk-Z36ILXII.cjs.map} +1 -1
- package/dist/chunk-Z5YIGHY3.js +527 -0
- package/dist/chunk-Z5YIGHY3.js.map +1 -0
- package/dist/{chunk-OG5H7763.cjs → chunk-ZD7C4XQM.cjs} +11 -11
- package/dist/{chunk-OG5H7763.cjs.map → chunk-ZD7C4XQM.cjs.map} +1 -1
- package/dist/{chunk-Y7PKRD75.js → chunk-ZEXNIBWR.js} +3 -3
- package/dist/{chunk-Y7PKRD75.js.map → chunk-ZEXNIBWR.js.map} +1 -1
- package/dist/{chunk-SW5NAE22.js → chunk-ZT2BLQRR.js} +83 -3964
- package/dist/chunk-ZT2BLQRR.js.map +1 -0
- package/dist/{chunk-TYOEQICH.cjs → chunk-ZVFA7UYX.cjs} +14 -14
- package/dist/{chunk-TYOEQICH.cjs.map → chunk-ZVFA7UYX.cjs.map} +1 -1
- package/dist/{chunk-M7WKIFTE.cjs → dist-QLRB64BV.cjs} +48 -542
- package/dist/dist-QLRB64BV.cjs.map +1 -0
- package/dist/{chunk-MU5LIFIL.js → dist-RHST5CLJ.js} +39 -524
- package/dist/dist-RHST5CLJ.js.map +1 -0
- package/dist/docs/SKILL.md +1 -1
- package/dist/docs/assets/SOURCE_MAP.json +1 -1
- package/dist/server/handlers/a2a.cjs +14 -14
- package/dist/server/handlers/a2a.js +1 -1
- package/dist/server/handlers/agent-builder.cjs +16 -16
- package/dist/server/handlers/agent-builder.d.ts.map +1 -1
- package/dist/server/handlers/agent-builder.js +1 -1
- package/dist/server/handlers/agent-versions.cjs +8 -8
- package/dist/server/handlers/agent-versions.js +1 -1
- package/dist/server/handlers/agents.cjs +41 -41
- package/dist/server/handlers/agents.js +1 -1
- package/dist/server/handlers/auth.cjs +11 -11
- package/dist/server/handlers/auth.js +1 -1
- package/dist/server/handlers/background-tasks.cjs +4 -4
- package/dist/server/handlers/background-tasks.js +1 -1
- package/dist/server/handlers/channels.cjs +5 -5
- package/dist/server/handlers/channels.js +1 -1
- package/dist/server/handlers/conversations.cjs +5 -5
- package/dist/server/handlers/conversations.js +1 -1
- package/dist/server/handlers/datasets.cjs +26 -26
- package/dist/server/handlers/datasets.js +1 -1
- package/dist/server/handlers/logs.cjs +4 -4
- package/dist/server/handlers/logs.js +1 -1
- package/dist/server/handlers/mcp-client-versions.cjs +8 -8
- package/dist/server/handlers/mcp-client-versions.js +1 -1
- package/dist/server/handlers/mcp.cjs +11 -11
- package/dist/server/handlers/mcp.js +1 -1
- package/dist/server/handlers/memory.cjs +27 -27
- package/dist/server/handlers/memory.js +1 -1
- package/dist/server/handlers/observability-new-endpoints.cjs +28 -28
- package/dist/server/handlers/observability-new-endpoints.js +1 -1
- package/dist/server/handlers/observability.cjs +38 -38
- package/dist/server/handlers/observability.js +2 -2
- package/dist/server/handlers/processor-providers.cjs +3 -3
- package/dist/server/handlers/processor-providers.js +1 -1
- package/dist/server/handlers/processors.cjs +4 -4
- package/dist/server/handlers/processors.js +1 -1
- package/dist/server/handlers/prompt-block-versions.cjs +8 -8
- package/dist/server/handlers/prompt-block-versions.js +1 -1
- package/dist/server/handlers/responses.cjs +4 -4
- package/dist/server/handlers/responses.js +1 -1
- package/dist/server/handlers/schedules.cjs +6 -6
- package/dist/server/handlers/schedules.js +1 -1
- package/dist/server/handlers/scorer-versions.cjs +8 -8
- package/dist/server/handlers/scorer-versions.js +1 -1
- package/dist/server/handlers/scores.cjs +7 -7
- package/dist/server/handlers/scores.js +1 -1
- package/dist/server/handlers/stored-agents.cjs +7 -7
- package/dist/server/handlers/stored-agents.js +1 -1
- package/dist/server/handlers/stored-mcp-clients.cjs +6 -6
- package/dist/server/handlers/stored-mcp-clients.js +1 -1
- package/dist/server/handlers/stored-prompt-blocks.cjs +6 -6
- package/dist/server/handlers/stored-prompt-blocks.js +1 -1
- package/dist/server/handlers/stored-scorers.cjs +6 -6
- package/dist/server/handlers/stored-scorers.js +1 -1
- package/dist/server/handlers/stored-skills.cjs +7 -7
- package/dist/server/handlers/stored-skills.js +1 -1
- package/dist/server/handlers/stored-workspaces.cjs +6 -6
- package/dist/server/handlers/stored-workspaces.js +1 -1
- package/dist/server/handlers/system.cjs +3 -3
- package/dist/server/handlers/system.js +1 -1
- package/dist/server/handlers/tool-providers.cjs +5 -5
- package/dist/server/handlers/tool-providers.js +1 -1
- package/dist/server/handlers/tools.cjs +6 -6
- package/dist/server/handlers/tools.js +1 -1
- package/dist/server/handlers/vector.cjs +16 -16
- package/dist/server/handlers/vector.js +1 -1
- package/dist/server/handlers/voice.cjs +8 -8
- package/dist/server/handlers/voice.js +1 -1
- package/dist/server/handlers/workflows.cjs +26 -26
- package/dist/server/handlers/workflows.js +1 -1
- package/dist/server/handlers/workspace.cjs +26 -26
- package/dist/server/handlers/workspace.js +1 -1
- package/dist/server/handlers.cjs +35 -35
- package/dist/server/handlers.js +15 -15
- package/dist/server/schemas/index.cjs +232 -232
- package/dist/server/schemas/index.js +6 -6
- package/dist/server/server-adapter/index.cjs +22 -22
- package/dist/server/server-adapter/index.js +6 -6
- package/dist/server/server-adapter/routes/index.d.ts +1 -1
- package/dist/server/server-adapter/routes/index.d.ts.map +1 -1
- package/dist/server/server-adapter/routes/legacy.d.ts +1 -47
- package/dist/server/server-adapter/routes/legacy.d.ts.map +1 -1
- package/package.json +5 -5
- package/dist/chunk-6UWC2NY3.cjs +0 -638
- package/dist/chunk-6UWC2NY3.cjs.map +0 -1
- package/dist/chunk-CQOIFPKU.cjs.map +0 -1
- package/dist/chunk-M7WKIFTE.cjs.map +0 -1
- package/dist/chunk-MU5LIFIL.js.map +0 -1
- package/dist/chunk-SW5NAE22.js.map +0 -1
- package/dist/chunk-SYAGB4OG.js.map +0 -1
- package/dist/chunk-T3G3GPE3.cjs.map +0 -1
- package/dist/chunk-VRW4RECS.js.map +0 -1
- package/dist/chunk-YY6BP6U2.js.map +0 -1
- package/dist/chunk-ZCRTO66C.cjs.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/server/handlers/mcp.ts"],"names":["__export","createRoute","listMcpServersQuerySchema","listMcpServersResponseSchema","HTTPException","mcpServerDetailPathParams","getMcpServerDetailQuerySchema","serverDetailSchema","mcpServerIdPathParams","listMcpServerToolsResponseSchema","mcpServerToolPathParams","mcpToolInfoSchema","MastraFGAPermissions","executeToolBodySchema","executeToolResponseSchema","mcpServerResourcePathParams","listResourcesResponseSchema","readResourceBodySchema","readResourceResponseSchema"],"mappings":"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","file":"chunk-CRN2HHZ4.cjs","sourcesContent":["import type { MCPServerBase as MastraMCPServerImplementation, ServerInfo } from '@mastra/core/mcp';\nimport { MastraFGAPermissions } from '../fga-permissions';\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 { createRoute } from '../server-adapter/routes/route-builder';\n\n// ============================================================================\n// Route Definitions (createRoute pattern for server adapters)\n// ============================================================================\n\nconst createMCPToolResourceId = ({ serverId, toolId }: Record<string, unknown>) =>\n JSON.stringify([String(serverId), String(toolId)]);\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) as MastraMCPServerImplementation[];\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 fga: {\n resourceType: 'tool',\n resourceId: createMCPToolResourceId,\n permission: MastraFGAPermissions.TOOLS_READ,\n },\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 fga: {\n resourceType: 'tool',\n resourceId: createMCPToolResourceId,\n permission: MastraFGAPermissions.TOOLS_EXECUTE,\n },\n handler: async ({\n mastra,\n serverId,\n toolId,\n data,\n requestContext,\n }: ServerContext & { serverId: string; toolId: string; data?: unknown }) => {\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 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\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 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 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"]}
|
|
1
|
+
{"version":3,"sources":["../src/server/handlers/mcp.ts"],"names":["__export","createRoute","listMcpServersQuerySchema","listMcpServersResponseSchema","HTTPException","mcpServerDetailPathParams","getMcpServerDetailQuerySchema","serverDetailSchema","mcpServerIdPathParams","listMcpServerToolsResponseSchema","mcpServerToolPathParams","mcpToolInfoSchema","MastraFGAPermissions","executeToolBodySchema","executeToolResponseSchema","mcpServerResourcePathParams","listResourcesResponseSchema","readResourceBodySchema","readResourceResponseSchema"],"mappings":"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","file":"chunk-TFQJA7WK.cjs","sourcesContent":["import type { MCPServerBase as MastraMCPServerImplementation, ServerInfo } from '@mastra/core/mcp';\nimport { MastraFGAPermissions } from '../fga-permissions';\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 { createRoute } from '../server-adapter/routes/route-builder';\n\n// ============================================================================\n// Route Definitions (createRoute pattern for server adapters)\n// ============================================================================\n\nconst createMCPToolResourceId = ({ serverId, toolId }: Record<string, unknown>) =>\n JSON.stringify([String(serverId), String(toolId)]);\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) as MastraMCPServerImplementation[];\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 fga: {\n resourceType: 'tool',\n resourceId: createMCPToolResourceId,\n permission: MastraFGAPermissions.TOOLS_READ,\n },\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 fga: {\n resourceType: 'tool',\n resourceId: createMCPToolResourceId,\n permission: MastraFGAPermissions.TOOLS_EXECUTE,\n },\n handler: async ({\n mastra,\n serverId,\n toolId,\n data,\n requestContext,\n }: ServerContext & { serverId: string; toolId: string; data?: unknown }) => {\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 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\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 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 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"]}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var
|
|
3
|
+
var chunk3WBBCKFS_cjs = require('./chunk-3WBBCKFS.cjs');
|
|
4
4
|
|
|
5
5
|
// ../../node_modules/.pnpm/superjson@2.2.6/node_modules/superjson/dist/double-indexed-kv.js
|
|
6
6
|
var DoubleIndexedKV = class {
|
|
@@ -799,8 +799,8 @@ var stringify = SuperJSON.stringify;
|
|
|
799
799
|
// src/server/utils.ts
|
|
800
800
|
function schemaToJsonSchema(schema) {
|
|
801
801
|
if (!schema) return void 0;
|
|
802
|
-
const standardSchema =
|
|
803
|
-
return
|
|
802
|
+
const standardSchema = chunk3WBBCKFS_cjs.toStandardSchema5(schema);
|
|
803
|
+
return chunk3WBBCKFS_cjs.standardSchemaToJSONSchema(standardSchema);
|
|
804
804
|
}
|
|
805
805
|
function normalizeRoutePath(path) {
|
|
806
806
|
let normalized = path.trim();
|
|
@@ -822,7 +822,7 @@ function normalizeRoutePath(path) {
|
|
|
822
822
|
function looksLikeProcessorStepSchema(schema) {
|
|
823
823
|
if (!schema) return false;
|
|
824
824
|
try {
|
|
825
|
-
const jsonSchema =
|
|
825
|
+
const jsonSchema = chunk3WBBCKFS_cjs.standardSchemaToJSONSchema(chunk3WBBCKFS_cjs.toStandardSchema5(schema));
|
|
826
826
|
if (!jsonSchema) return false;
|
|
827
827
|
const variants = jsonSchema.anyOf || jsonSchema.oneOf;
|
|
828
828
|
if (!variants || !Array.isArray(variants)) return false;
|
|
@@ -998,5 +998,5 @@ exports.getWorkflowInfo = getWorkflowInfo;
|
|
|
998
998
|
exports.normalizeRoutePath = normalizeRoutePath;
|
|
999
999
|
exports.stringify = stringify;
|
|
1000
1000
|
exports.toSlug = toSlug;
|
|
1001
|
-
//# sourceMappingURL=chunk-
|
|
1002
|
-
//# sourceMappingURL=chunk-
|
|
1001
|
+
//# sourceMappingURL=chunk-WFIBVKCP.cjs.map
|
|
1002
|
+
//# sourceMappingURL=chunk-WFIBVKCP.cjs.map
|
|
@@ -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","toStandardSchema5","standardSchemaToJSONSchema"],"mappings":"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","file":"chunk-HKZWPQSC.cjs","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 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","toStandardSchema5","standardSchemaToJSONSchema"],"mappings":"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","file":"chunk-WFIBVKCP.cjs","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 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,6 +1,6 @@
|
|
|
1
1
|
import { listMcpServersResponseSchema, listMcpServersQuerySchema, serverDetailSchema, getMcpServerDetailQuerySchema, mcpServerDetailPathParams, listMcpServerToolsResponseSchema, mcpServerIdPathParams, mcpToolInfoSchema, mcpServerToolPathParams, executeToolResponseSchema, executeToolBodySchema, listResourcesResponseSchema, mcpServerResourcePathParams, readResourceResponseSchema, readResourceBodySchema } from './chunk-356JZOB2.js';
|
|
2
2
|
import { MastraFGAPermissions } from './chunk-6KDKASVR.js';
|
|
3
|
-
import { createRoute } from './chunk-
|
|
3
|
+
import { createRoute } from './chunk-JGW5HWOG.js';
|
|
4
4
|
import { HTTPException } from './chunk-6QWQZI4Q.js';
|
|
5
5
|
import { __export } from './chunk-PR4QN5HX.js';
|
|
6
6
|
|
|
@@ -315,5 +315,5 @@ var MCP_SSE_MESSAGES_ROUTE = createRoute({
|
|
|
315
315
|
});
|
|
316
316
|
|
|
317
317
|
export { EXECUTE_MCP_SERVER_TOOL_ROUTE, GET_MCP_SERVER_DETAIL_ROUTE, GET_MCP_SERVER_TOOL_DETAIL_ROUTE, LIST_MCP_SERVERS_ROUTE, LIST_MCP_SERVER_RESOURCES_ROUTE, LIST_MCP_SERVER_TOOLS_ROUTE, MCP_HTTP_TRANSPORT_ROUTE, MCP_SSE_MESSAGES_ROUTE, MCP_SSE_TRANSPORT_ROUTE, READ_MCP_SERVER_RESOURCE_ROUTE, mcp_exports };
|
|
318
|
-
//# sourceMappingURL=chunk-
|
|
319
|
-
//# sourceMappingURL=chunk-
|
|
318
|
+
//# sourceMappingURL=chunk-WOUAM4PW.js.map
|
|
319
|
+
//# sourceMappingURL=chunk-WOUAM4PW.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/server/handlers/mcp.ts"],"names":[],"mappings":"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","file":"chunk-GZQFBILP.js","sourcesContent":["import type { MCPServerBase as MastraMCPServerImplementation, ServerInfo } from '@mastra/core/mcp';\nimport { MastraFGAPermissions } from '../fga-permissions';\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 { createRoute } from '../server-adapter/routes/route-builder';\n\n// ============================================================================\n// Route Definitions (createRoute pattern for server adapters)\n// ============================================================================\n\nconst createMCPToolResourceId = ({ serverId, toolId }: Record<string, unknown>) =>\n JSON.stringify([String(serverId), String(toolId)]);\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) as MastraMCPServerImplementation[];\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 fga: {\n resourceType: 'tool',\n resourceId: createMCPToolResourceId,\n permission: MastraFGAPermissions.TOOLS_READ,\n },\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 fga: {\n resourceType: 'tool',\n resourceId: createMCPToolResourceId,\n permission: MastraFGAPermissions.TOOLS_EXECUTE,\n },\n handler: async ({\n mastra,\n serverId,\n toolId,\n data,\n requestContext,\n }: ServerContext & { serverId: string; toolId: string; data?: unknown }) => {\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 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\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 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 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"]}
|
|
1
|
+
{"version":3,"sources":["../src/server/handlers/mcp.ts"],"names":[],"mappings":"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","file":"chunk-WOUAM4PW.js","sourcesContent":["import type { MCPServerBase as MastraMCPServerImplementation, ServerInfo } from '@mastra/core/mcp';\nimport { MastraFGAPermissions } from '../fga-permissions';\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 { createRoute } from '../server-adapter/routes/route-builder';\n\n// ============================================================================\n// Route Definitions (createRoute pattern for server adapters)\n// ============================================================================\n\nconst createMCPToolResourceId = ({ serverId, toolId }: Record<string, unknown>) =>\n JSON.stringify([String(serverId), String(toolId)]);\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) as MastraMCPServerImplementation[];\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 fga: {\n resourceType: 'tool',\n resourceId: createMCPToolResourceId,\n permission: MastraFGAPermissions.TOOLS_READ,\n },\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 fga: {\n resourceType: 'tool',\n resourceId: createMCPToolResourceId,\n permission: MastraFGAPermissions.TOOLS_EXECUTE,\n },\n handler: async ({\n mastra,\n serverId,\n toolId,\n data,\n requestContext,\n }: ServerContext & { serverId: string; toolId: string; data?: unknown }) => {\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 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\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 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 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"]}
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import { listWorkflowsResponseSchema, workflowInfoSchema, workflowIdPathParams, workflowRunsResponseSchema, listWorkflowRunsQuerySchema, workflowRunResultSchema, workflowRunResultQuerySchema, workflowRunPathParams, workflowControlResponseSchema, createWorkflowRunResponseSchema, createWorkflowRunBodySchema, streamWorkflowBodySchema, resumeBodySchema, workflowExecutionResultSchema, startAsyncWorkflowBodySchema, observeWorkflowQuerySchema, restartBodySchema, timeTravelBodySchema } from './chunk-5OOYXBPG.js';
|
|
2
2
|
import { streamResponseSchema } from './chunk-EQUOHUYY.js';
|
|
3
|
-
import { getWorkflowInfo, WorkflowRegistry } from './chunk-
|
|
3
|
+
import { getWorkflowInfo, WorkflowRegistry } from './chunk-C6RCQJ2Z.js';
|
|
4
4
|
import { getEffectiveResourceId, validateRunOwnership } from './chunk-JOUPK2UV.js';
|
|
5
5
|
import { MastraFGAPermissions } from './chunk-6KDKASVR.js';
|
|
6
6
|
import { optionalRunIdSchema, runIdSchema } from './chunk-2YY3EMMS.js';
|
|
7
|
-
import { createRoute } from './chunk-
|
|
7
|
+
import { createRoute } from './chunk-JGW5HWOG.js';
|
|
8
8
|
import { handleError } from './chunk-P23KBWKB.js';
|
|
9
9
|
import { HTTPException } from './chunk-6QWQZI4Q.js';
|
|
10
10
|
import { __export } from './chunk-PR4QN5HX.js';
|
|
@@ -1070,5 +1070,5 @@ var RECEIVE_WORKFLOW_EVENT_ROUTE = createRoute({
|
|
|
1070
1070
|
});
|
|
1071
1071
|
|
|
1072
1072
|
export { CANCEL_WORKFLOW_RUN_ROUTE, CREATE_WORKFLOW_RUN_ROUTE, DELETE_WORKFLOW_RUN_BY_ID_ROUTE, EXECUTE_WORKFLOW_STEP_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, RECEIVE_WORKFLOW_EVENT_ROUTE, RESTART_ALL_ACTIVE_WORKFLOW_RUNS_ASYNC_ROUTE, RESTART_ALL_ACTIVE_WORKFLOW_RUNS_ROUTE, RESTART_ASYNC_WORKFLOW_ROUTE, RESTART_WORKFLOW_ROUTE, RESUME_ASYNC_WORKFLOW_ROUTE, RESUME_STREAM_WORKFLOW_ROUTE, RESUME_WORKFLOW_ROUTE, START_ASYNC_WORKFLOW_ROUTE, START_WORKFLOW_RUN_ROUTE, STREAM_LEGACY_WORKFLOW_ROUTE, STREAM_WORKFLOW_ROUTE, TIME_TRAVEL_ASYNC_WORKFLOW_ROUTE, TIME_TRAVEL_STREAM_WORKFLOW_ROUTE, TIME_TRAVEL_WORKFLOW_ROUTE, workflows_exports };
|
|
1073
|
-
//# sourceMappingURL=chunk-
|
|
1074
|
-
//# sourceMappingURL=chunk-
|
|
1073
|
+
//# sourceMappingURL=chunk-XP4JDZGU.js.map
|
|
1074
|
+
//# sourceMappingURL=chunk-XP4JDZGU.js.map
|