@mastra/server 1.0.4-alpha.2 → 1.1.0-alpha.0
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 +6765 -0
- package/LICENSE.md +11 -42
- package/README.md +45 -137
- package/a2a/store.d.ts +1 -0
- package/auth.d.ts +1 -0
- package/dist/chunk-24SISJRB.js +250 -0
- package/dist/chunk-24SISJRB.js.map +1 -0
- package/dist/chunk-2HAVULC2.cjs +204 -0
- package/dist/chunk-2HAVULC2.cjs.map +1 -0
- package/dist/chunk-2HOMKKY4.cjs +352 -0
- package/dist/chunk-2HOMKKY4.cjs.map +1 -0
- package/dist/chunk-37DO73XV.cjs +33207 -0
- package/dist/chunk-37DO73XV.cjs.map +1 -0
- package/dist/chunk-3AZY5AWI.js +689 -0
- package/dist/chunk-3AZY5AWI.js.map +1 -0
- package/dist/chunk-3OIJLD3O.js +333 -0
- package/dist/chunk-3OIJLD3O.js.map +1 -0
- package/dist/chunk-3QUACCLU.js +1372 -0
- package/dist/chunk-3QUACCLU.js.map +1 -0
- package/dist/chunk-3W67K7YE.js +13 -0
- package/dist/chunk-3W67K7YE.js.map +1 -0
- package/dist/chunk-4HFYR562.cjs +82 -0
- package/dist/chunk-4HFYR562.cjs.map +1 -0
- package/dist/chunk-4JAEBN6N.js +1201 -0
- package/dist/chunk-4JAEBN6N.js.map +1 -0
- package/dist/chunk-4LVJBXI2.cjs +324 -0
- package/dist/chunk-4LVJBXI2.cjs.map +1 -0
- package/dist/{chunk-FV45V6WC.cjs → chunk-64ITUOXI.cjs} +3 -7
- package/dist/chunk-64ITUOXI.cjs.map +1 -0
- package/dist/chunk-6G2RQWKA.cjs +252 -0
- package/dist/chunk-6G2RQWKA.cjs.map +1 -0
- package/dist/chunk-6KC345IN.cjs +708 -0
- package/dist/chunk-6KC345IN.cjs.map +1 -0
- package/dist/{chunk-TRDNDNGQ.js → chunk-6QWQZI4Q.js} +4 -7
- package/dist/chunk-6QWQZI4Q.js.map +1 -0
- package/dist/chunk-7D3UAMQM.cjs +82 -0
- package/dist/chunk-7D3UAMQM.cjs.map +1 -0
- package/dist/chunk-7XIMPDJV.js +442 -0
- package/dist/chunk-7XIMPDJV.js.map +1 -0
- package/dist/chunk-A2K5ZL47.cjs +195 -0
- package/dist/chunk-A2K5ZL47.cjs.map +1 -0
- package/dist/chunk-AAHPYUEC.cjs +211 -0
- package/dist/chunk-AAHPYUEC.cjs.map +1 -0
- package/dist/chunk-AN42MFD5.cjs +1231 -0
- package/dist/chunk-AN42MFD5.cjs.map +1 -0
- package/dist/chunk-AQI6GLTN.cjs +2777 -0
- package/dist/chunk-AQI6GLTN.cjs.map +1 -0
- package/dist/chunk-AV3VZ6S3.cjs +190 -0
- package/dist/chunk-AV3VZ6S3.cjs.map +1 -0
- package/dist/chunk-C4NZAUUW.js +33168 -0
- package/dist/chunk-C4NZAUUW.js.map +1 -0
- package/dist/chunk-D5VCL56B.js +317 -0
- package/dist/chunk-D5VCL56B.js.map +1 -0
- package/dist/chunk-DD7LYNHB.js +596 -0
- package/dist/chunk-DD7LYNHB.js.map +1 -0
- package/dist/chunk-DHDVJ5II.js +334 -0
- package/dist/chunk-DHDVJ5II.js.map +1 -0
- package/dist/chunk-ED6NQBHF.js +190 -0
- package/dist/chunk-ED6NQBHF.js.map +1 -0
- package/dist/chunk-EKFYZUPC.cjs +1404 -0
- package/dist/chunk-EKFYZUPC.cjs.map +1 -0
- package/dist/chunk-EV5H2JQU.js +45 -0
- package/dist/chunk-EV5H2JQU.js.map +1 -0
- package/dist/chunk-F2WTCJ5C.js +1153 -0
- package/dist/chunk-F2WTCJ5C.js.map +1 -0
- package/dist/chunk-FCPLBTHB.js +195 -0
- package/dist/chunk-FCPLBTHB.js.map +1 -0
- package/dist/chunk-FQX5SQO7.js +212 -0
- package/dist/chunk-FQX5SQO7.js.map +1 -0
- package/dist/chunk-FRRHYZR6.cjs +88 -0
- package/dist/chunk-FRRHYZR6.cjs.map +1 -0
- package/dist/chunk-GUG6KRAJ.js +666 -0
- package/dist/chunk-GUG6KRAJ.js.map +1 -0
- package/dist/chunk-GXUBQJ74.js +184 -0
- package/dist/chunk-GXUBQJ74.js.map +1 -0
- package/dist/chunk-H66LLFDL.js +970 -0
- package/dist/chunk-H66LLFDL.js.map +1 -0
- package/dist/chunk-HDGF45K7.cjs +128 -0
- package/dist/chunk-HDGF45K7.cjs.map +1 -0
- package/dist/chunk-HT4LP3BO.js +75 -0
- package/dist/chunk-HT4LP3BO.js.map +1 -0
- package/dist/chunk-HZINLMHL.cjs +252 -0
- package/dist/chunk-HZINLMHL.cjs.map +1 -0
- package/dist/chunk-IS3HHGL4.js +250 -0
- package/dist/chunk-IS3HHGL4.js.map +1 -0
- package/dist/chunk-JLFFAYTC.cjs +252 -0
- package/dist/chunk-JLFFAYTC.cjs.map +1 -0
- package/dist/chunk-JRM3DWRM.cjs +322 -0
- package/dist/chunk-JRM3DWRM.cjs.map +1 -0
- package/dist/chunk-K2SXZLA3.cjs +1049 -0
- package/dist/chunk-K2SXZLA3.cjs.map +1 -0
- package/dist/chunk-K4HSW5ZF.js +77 -0
- package/dist/chunk-K4HSW5ZF.js.map +1 -0
- package/dist/chunk-LFNP3ACE.js +1009 -0
- package/dist/chunk-LFNP3ACE.js.map +1 -0
- package/dist/chunk-LFTVDHOD.js +200 -0
- package/dist/chunk-LFTVDHOD.js.map +1 -0
- package/dist/chunk-LJ6YRVDI.cjs +15 -0
- package/dist/chunk-LJ6YRVDI.cjs.map +1 -0
- package/dist/chunk-LOA7RQYO.js +2774 -0
- package/dist/chunk-LOA7RQYO.js.map +1 -0
- package/dist/chunk-MCYD5LW7.cjs +90 -0
- package/dist/chunk-MCYD5LW7.cjs.map +1 -0
- package/dist/chunk-MZRJNOYJ.cjs +1195 -0
- package/dist/chunk-MZRJNOYJ.cjs.map +1 -0
- package/dist/chunk-O7I5CWRX.cjs +44 -0
- package/dist/chunk-O7I5CWRX.cjs.map +1 -0
- package/dist/chunk-ONN5EA7E.js +26 -0
- package/dist/chunk-ONN5EA7E.js.map +1 -0
- package/dist/chunk-OS7SAIRA.js +250 -0
- package/dist/chunk-OS7SAIRA.js.map +1 -0
- package/dist/chunk-PR4QN5HX.js +39 -0
- package/dist/chunk-PR4QN5HX.js.map +1 -0
- package/dist/chunk-PWXUI3OG.cjs +252 -0
- package/dist/chunk-PWXUI3OG.cjs.map +1 -0
- package/dist/chunk-QOVLJFLX.cjs +680 -0
- package/dist/chunk-QOVLJFLX.cjs.map +1 -0
- package/dist/chunk-QXDNFBJQ.js +220 -0
- package/dist/chunk-QXDNFBJQ.js.map +1 -0
- package/dist/chunk-RIX6WEJ2.js +83 -0
- package/dist/chunk-RIX6WEJ2.js.map +1 -0
- package/dist/chunk-RW66MHXI.js +246 -0
- package/dist/chunk-RW66MHXI.js.map +1 -0
- package/dist/chunk-S4SLHUJ7.cjs +253 -0
- package/dist/chunk-S4SLHUJ7.cjs.map +1 -0
- package/dist/chunk-SONAXR2M.cjs +450 -0
- package/dist/chunk-SONAXR2M.cjs.map +1 -0
- package/dist/chunk-SUKFO7UM.cjs +29 -0
- package/dist/chunk-SUKFO7UM.cjs.map +1 -0
- package/dist/chunk-T5KH32UA.cjs +47 -0
- package/dist/chunk-T5KH32UA.cjs.map +1 -0
- package/dist/chunk-TCWPL26W.js +119 -0
- package/dist/chunk-TCWPL26W.js.map +1 -0
- package/dist/chunk-TGDBGIDA.cjs +623 -0
- package/dist/chunk-TGDBGIDA.cjs.map +1 -0
- package/dist/chunk-USR6JK77.js +62 -0
- package/dist/chunk-USR6JK77.js.map +1 -0
- package/dist/chunk-VNHOYZ56.cjs +219 -0
- package/dist/chunk-VNHOYZ56.cjs.map +1 -0
- package/dist/chunk-VX3VN7FN.cjs +992 -0
- package/dist/chunk-VX3VN7FN.cjs.map +1 -0
- package/dist/chunk-WHC6S3VY.cjs +345 -0
- package/dist/chunk-WHC6S3VY.cjs.map +1 -0
- package/dist/chunk-XKLJYRAA.js +77 -0
- package/dist/chunk-XKLJYRAA.js.map +1 -0
- package/dist/chunk-XUSAKRLX.js +312 -0
- package/dist/chunk-XUSAKRLX.js.map +1 -0
- package/dist/chunk-ZKMVCV4G.cjs +71 -0
- package/dist/chunk-ZKMVCV4G.cjs.map +1 -0
- package/dist/dist-7NTDEVLP.cjs +928 -0
- package/dist/dist-7NTDEVLP.cjs.map +1 -0
- package/dist/dist-B5GMANA6.js +1147 -0
- package/dist/dist-B5GMANA6.js.map +1 -0
- package/dist/dist-EDO7GEGI.js +3 -0
- package/dist/dist-EDO7GEGI.js.map +1 -0
- package/dist/dist-OF24ZMHH.cjs +764 -0
- package/dist/dist-OF24ZMHH.cjs.map +1 -0
- package/dist/dist-P6YSNLL3.cjs +1150 -0
- package/dist/dist-P6YSNLL3.cjs.map +1 -0
- package/dist/dist-SMBO5KVB.js +937 -0
- package/dist/dist-SMBO5KVB.js.map +1 -0
- package/dist/dist-THPMW5QR.js +761 -0
- package/dist/dist-THPMW5QR.js.map +1 -0
- package/dist/dist-VZTG56X2.cjs +940 -0
- package/dist/dist-VZTG56X2.cjs.map +1 -0
- package/dist/dist-ZLC23RVC.cjs +16 -0
- package/dist/dist-ZLC23RVC.cjs.map +1 -0
- package/dist/dist-ZOZ6MHJH.js +925 -0
- package/dist/dist-ZOZ6MHJH.js.map +1 -0
- package/dist/docs/README.md +31 -0
- package/dist/docs/SKILL.md +32 -0
- package/dist/docs/SOURCE_MAP.json +6 -0
- package/dist/docs/server/01-custom-adapters.md +380 -0
- package/dist/docs/server/02-reference.md +833 -0
- package/dist/index.cjs +6 -0
- package/dist/index.cjs.map +1 -0
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +5 -0
- package/dist/index.js.map +1 -0
- package/dist/server/a2a/protocol.d.ts +8 -0
- package/dist/server/a2a/protocol.d.ts.map +1 -0
- package/dist/server/a2a/store.cjs +25 -0
- package/dist/server/a2a/store.cjs.map +1 -0
- package/dist/server/a2a/store.d.ts +14 -0
- package/dist/server/a2a/store.d.ts.map +1 -0
- package/dist/server/a2a/store.js +23 -0
- package/dist/server/a2a/store.js.map +1 -0
- package/dist/server/a2a/tasks.d.ts +20 -0
- package/dist/server/a2a/tasks.d.ts.map +1 -0
- package/dist/server/auth/defaults.d.ts +3 -0
- package/dist/server/auth/defaults.d.ts.map +1 -0
- package/dist/server/auth/helpers.d.ts +21 -0
- package/dist/server/auth/helpers.d.ts.map +1 -0
- package/dist/server/auth/index.cjs +48 -0
- package/dist/server/auth/index.cjs.map +1 -0
- package/dist/server/auth/index.d.ts +3 -0
- package/dist/server/auth/index.d.ts.map +1 -0
- package/dist/server/auth/index.js +3 -0
- package/dist/server/auth/index.js.map +1 -0
- package/dist/server/auth/path-pattern.d.ts +43 -0
- package/dist/server/auth/path-pattern.d.ts.map +1 -0
- package/dist/server/constants.d.ts +51 -0
- package/dist/server/constants.d.ts.map +1 -0
- package/dist/server/handlers/a2a.cjs +40 -0
- package/dist/server/handlers/a2a.cjs.map +1 -0
- package/dist/server/handlers/a2a.d.ts +550 -0
- package/dist/server/handlers/a2a.d.ts.map +1 -0
- package/dist/server/handlers/a2a.js +3 -0
- package/dist/server/handlers/a2a.js.map +1 -0
- package/dist/server/handlers/agent-builder.cjs +68 -0
- package/dist/server/handlers/agent-builder.cjs.map +1 -0
- package/dist/server/handlers/agent-builder.d.ts +632 -0
- package/dist/server/handlers/agent-builder.d.ts.map +1 -0
- package/dist/server/handlers/agent-builder.js +3 -0
- package/dist/server/handlers/agent-builder.js.map +1 -0
- package/dist/server/handlers/agent-versions.cjs +60 -0
- package/dist/server/handlers/agent-versions.cjs.map +1 -0
- package/dist/server/handlers/agent-versions.d.ts +479 -0
- package/dist/server/handlers/agent-versions.d.ts.map +1 -0
- package/dist/server/handlers/agent-versions.js +3 -0
- package/dist/server/handlers/agent-versions.js.map +1 -0
- package/dist/server/handlers/agents.cjs +111 -13
- package/dist/server/handlers/agents.cjs.map +1 -0
- package/dist/server/handlers/agents.d.ts +3440 -6
- package/dist/server/handlers/agents.d.ts.map +1 -0
- package/dist/server/handlers/agents.js +3 -1
- package/dist/server/handlers/agents.js.map +1 -0
- package/dist/server/handlers/error.cjs +8 -2
- package/dist/server/handlers/error.cjs.map +1 -0
- package/dist/server/handlers/error.d.ts +14 -1
- package/dist/server/handlers/error.d.ts.map +1 -0
- package/dist/server/handlers/error.js +3 -1
- package/dist/server/handlers/error.js.map +1 -0
- package/dist/server/handlers/logs.cjs +9 -7
- package/dist/server/handlers/logs.cjs.map +1 -0
- package/dist/server/handlers/logs.d.ts +142 -3
- package/dist/server/handlers/logs.d.ts.map +1 -0
- package/dist/server/handlers/logs.js +3 -1
- package/dist/server/handlers/logs.js.map +1 -0
- package/dist/server/handlers/mcp.cjs +40 -0
- package/dist/server/handlers/mcp.cjs.map +1 -0
- package/dist/server/handlers/mcp.d.ts +132 -0
- package/dist/server/handlers/mcp.d.ts.map +1 -0
- package/dist/server/handlers/mcp.js +3 -0
- package/dist/server/handlers/mcp.js.map +1 -0
- package/dist/server/handlers/memory.cjs +83 -17
- package/dist/server/handlers/memory.cjs.map +1 -0
- package/dist/server/handlers/memory.d.ts +1089 -8
- package/dist/server/handlers/memory.d.ts.map +1 -0
- package/dist/server/handlers/memory.js +3 -1
- package/dist/server/handlers/memory.js.map +1 -0
- package/dist/server/handlers/observability.cjs +24 -0
- package/dist/server/handlers/observability.cjs.map +1 -0
- package/dist/server/handlers/observability.d.ts +154 -0
- package/dist/server/handlers/observability.d.ts.map +1 -0
- package/dist/server/handlers/observability.js +3 -0
- package/dist/server/handlers/observability.js.map +1 -0
- package/dist/server/handlers/processors.cjs +20 -0
- package/dist/server/handlers/processors.cjs.map +1 -0
- package/dist/server/handlers/processors.d.ts +181 -0
- package/dist/server/handlers/processors.d.ts.map +1 -0
- package/dist/server/handlers/processors.js +3 -0
- package/dist/server/handlers/processors.js.map +1 -0
- package/dist/server/handlers/scores.cjs +32 -0
- package/dist/server/handlers/scores.cjs.map +1 -0
- package/dist/server/handlers/scores.d.ts +121 -0
- package/dist/server/handlers/scores.d.ts.map +1 -0
- package/dist/server/handlers/scores.js +3 -0
- package/dist/server/handlers/scores.js.map +1 -0
- package/dist/server/handlers/stored-agents.cjs +28 -0
- package/dist/server/handlers/stored-agents.cjs.map +1 -0
- package/dist/server/handlers/stored-agents.d.ts +317 -0
- package/dist/server/handlers/stored-agents.d.ts.map +1 -0
- package/dist/server/handlers/stored-agents.js +3 -0
- package/dist/server/handlers/stored-agents.js.map +1 -0
- package/dist/server/handlers/system.cjs +12 -0
- package/dist/server/handlers/system.cjs.map +1 -0
- package/dist/server/handlers/system.d.ts +7 -0
- package/dist/server/handlers/system.d.ts.map +1 -0
- package/dist/server/handlers/system.js +3 -0
- package/dist/server/handlers/system.js.map +1 -0
- package/dist/server/handlers/test-utils.cjs +15 -0
- package/dist/server/handlers/test-utils.cjs.map +1 -0
- package/dist/server/handlers/test-utils.d.ts +6 -0
- package/dist/server/handlers/test-utils.d.ts.map +1 -0
- package/dist/server/handlers/test-utils.js +13 -0
- package/dist/server/handlers/test-utils.js.map +1 -0
- package/dist/server/handlers/tools.cjs +15 -9
- package/dist/server/handlers/tools.cjs.map +1 -0
- package/dist/server/handlers/tools.d.ts +71 -4
- package/dist/server/handlers/tools.d.ts.map +1 -0
- package/dist/server/handlers/tools.js +3 -1
- package/dist/server/handlers/tools.js.map +1 -0
- package/dist/server/handlers/utils.cjs +32 -2
- package/dist/server/handlers/utils.cjs.map +1 -0
- package/dist/server/handlers/utils.d.ts +39 -1
- package/dist/server/handlers/utils.d.ts.map +1 -0
- package/dist/server/handlers/utils.js +3 -1
- package/dist/server/handlers/utils.js.map +1 -0
- package/dist/server/handlers/vector.cjs +33 -7
- package/dist/server/handlers/vector.cjs.map +1 -0
- package/dist/server/handlers/vector.d.ts +135 -6
- package/dist/server/handlers/vector.d.ts.map +1 -0
- package/dist/server/handlers/vector.js +3 -1
- package/dist/server/handlers/vector.js.map +1 -0
- package/dist/server/handlers/voice.cjs +25 -7
- package/dist/server/handlers/voice.cjs.map +1 -0
- package/dist/server/handlers/voice.d.ts +82 -3
- package/dist/server/handlers/voice.d.ts.map +1 -0
- package/dist/server/handlers/voice.js +3 -1
- package/dist/server/handlers/voice.js.map +1 -0
- package/dist/server/handlers/workflows.cjs +75 -21
- package/dist/server/handlers/workflows.cjs.map +1 -0
- package/dist/server/handlers/workflows.d.ts +996 -10
- package/dist/server/handlers/workflows.d.ts.map +1 -0
- package/dist/server/handlers/workflows.js +3 -1
- package/dist/server/handlers/workflows.js.map +1 -0
- package/dist/server/handlers/workspace.cjs +80 -0
- package/dist/server/handlers/workspace.cjs.map +1 -0
- package/dist/server/handlers/workspace.d.ts +591 -0
- package/dist/server/handlers/workspace.d.ts.map +1 -0
- package/dist/server/handlers/workspace.js +3 -0
- package/dist/server/handlers/workspace.js.map +1 -0
- package/dist/server/handlers.cjs +41 -24
- package/dist/server/handlers.cjs.map +1 -0
- package/dist/server/handlers.d.ts +13 -9
- package/dist/server/handlers.d.ts.map +1 -0
- package/dist/server/handlers.js +14 -9
- package/dist/server/handlers.js.map +1 -0
- package/dist/server/http-exception.d.ts +82 -0
- package/dist/server/http-exception.d.ts.map +1 -0
- package/dist/server/schemas/a2a.d.ts +786 -0
- package/dist/server/schemas/a2a.d.ts.map +1 -0
- package/dist/server/schemas/agent-builder.d.ts +225 -0
- package/dist/server/schemas/agent-builder.d.ts.map +1 -0
- package/dist/server/schemas/agent-versions.d.ts +1646 -0
- package/dist/server/schemas/agent-versions.d.ts.map +1 -0
- package/dist/server/schemas/agents.d.ts +1815 -0
- package/dist/server/schemas/agents.d.ts.map +1 -0
- package/dist/server/schemas/common.d.ts +179 -0
- package/dist/server/schemas/common.d.ts.map +1 -0
- package/dist/server/schemas/logs.d.ts +124 -0
- package/dist/server/schemas/logs.d.ts.map +1 -0
- package/dist/server/schemas/mcp.d.ts +299 -0
- package/dist/server/schemas/mcp.d.ts.map +1 -0
- package/dist/server/schemas/memory.d.ts +1216 -0
- package/dist/server/schemas/memory.d.ts.map +1 -0
- package/dist/server/schemas/processors.d.ts +519 -0
- package/dist/server/schemas/processors.d.ts.map +1 -0
- package/dist/server/schemas/scores.d.ts +259 -0
- package/dist/server/schemas/scores.d.ts.map +1 -0
- package/dist/server/schemas/stored-agents.d.ts +850 -0
- package/dist/server/schemas/stored-agents.d.ts.map +1 -0
- package/dist/server/schemas/system.d.ts +36 -0
- package/dist/server/schemas/system.d.ts.map +1 -0
- package/dist/server/schemas/vectors.d.ts +107 -0
- package/dist/server/schemas/vectors.d.ts.map +1 -0
- package/dist/server/schemas/workflows.d.ts +863 -0
- package/dist/server/schemas/workflows.d.ts.map +1 -0
- package/dist/server/schemas/workspace.d.ts +1107 -0
- package/dist/server/schemas/workspace.d.ts.map +1 -0
- package/dist/server/server-adapter/index.cjs +661 -0
- package/dist/server/server-adapter/index.cjs.map +1 -0
- package/dist/server/server-adapter/index.d.ts +163 -0
- package/dist/server/server-adapter/index.d.ts.map +1 -0
- package/dist/server/server-adapter/index.js +630 -0
- package/dist/server/server-adapter/index.js.map +1 -0
- package/dist/server/server-adapter/openapi-utils.d.ts +69 -0
- package/dist/server/server-adapter/openapi-utils.d.ts.map +1 -0
- package/dist/server/server-adapter/redact.d.ts +26 -0
- package/dist/server/server-adapter/redact.d.ts.map +1 -0
- package/dist/server/server-adapter/routes/a2a.d.ts +3 -0
- package/dist/server/server-adapter/routes/a2a.d.ts.map +1 -0
- package/dist/server/server-adapter/routes/agent-builder.d.ts +3 -0
- package/dist/server/server-adapter/routes/agent-builder.d.ts.map +1 -0
- package/dist/server/server-adapter/routes/agents.d.ts +3 -0
- package/dist/server/server-adapter/routes/agents.d.ts.map +1 -0
- package/dist/server/server-adapter/routes/index.d.ts +52 -0
- package/dist/server/server-adapter/routes/index.d.ts.map +1 -0
- package/dist/server/server-adapter/routes/legacy.d.ts +7 -0
- package/dist/server/server-adapter/routes/legacy.d.ts.map +1 -0
- package/dist/server/server-adapter/routes/logs.d.ts +3 -0
- package/dist/server/server-adapter/routes/logs.d.ts.map +1 -0
- package/dist/server/server-adapter/routes/mcp.d.ts +9 -0
- package/dist/server/server-adapter/routes/mcp.d.ts.map +1 -0
- package/dist/server/server-adapter/routes/memory.d.ts +3 -0
- package/dist/server/server-adapter/routes/memory.d.ts.map +1 -0
- package/dist/server/server-adapter/routes/observability.d.ts +3 -0
- package/dist/server/server-adapter/routes/observability.d.ts.map +1 -0
- package/dist/server/server-adapter/routes/processors.d.ts +3 -0
- package/dist/server/server-adapter/routes/processors.d.ts.map +1 -0
- package/dist/server/server-adapter/routes/route-builder.d.ts +112 -0
- package/dist/server/server-adapter/routes/route-builder.d.ts.map +1 -0
- package/dist/server/server-adapter/routes/scorers.d.ts +3 -0
- package/dist/server/server-adapter/routes/scorers.d.ts.map +1 -0
- package/dist/server/server-adapter/routes/stored-agents.d.ts +8 -0
- package/dist/server/server-adapter/routes/stored-agents.d.ts.map +1 -0
- package/dist/server/server-adapter/routes/stream-types.d.ts +10 -0
- package/dist/server/server-adapter/routes/stream-types.d.ts.map +1 -0
- package/dist/server/server-adapter/routes/system.d.ts +12 -0
- package/dist/server/server-adapter/routes/system.d.ts.map +1 -0
- package/dist/server/server-adapter/routes/tools.d.ts +3 -0
- package/dist/server/server-adapter/routes/tools.d.ts.map +1 -0
- package/dist/server/server-adapter/routes/vectors.d.ts +3 -0
- package/dist/server/server-adapter/routes/vectors.d.ts.map +1 -0
- package/dist/server/server-adapter/routes/workflows.d.ts +3 -0
- package/dist/server/server-adapter/routes/workflows.d.ts.map +1 -0
- package/dist/server/server-adapter/routes/workspace.d.ts +8 -0
- package/dist/server/server-adapter/routes/workspace.d.ts.map +1 -0
- package/dist/server/types.d.ts +10 -0
- package/dist/server/types.d.ts.map +1 -0
- package/dist/server/utils.d.ts +58 -0
- package/dist/server/utils.d.ts.map +1 -0
- package/dist/token-6GSAFR2W-ABXTQD64-MC4IMVOB.cjs +63 -0
- package/dist/token-6GSAFR2W-ABXTQD64-MC4IMVOB.cjs.map +1 -0
- package/dist/token-6GSAFR2W-ABXTQD64-Z6U2TA2C.js +61 -0
- package/dist/token-6GSAFR2W-ABXTQD64-Z6U2TA2C.js.map +1 -0
- package/dist/token-6GSAFR2W-F2L44NEJ-B3QIV63M.cjs +63 -0
- package/dist/token-6GSAFR2W-F2L44NEJ-B3QIV63M.cjs.map +1 -0
- package/dist/token-6GSAFR2W-F2L44NEJ-GFZ37A2V.js +61 -0
- package/dist/token-6GSAFR2W-F2L44NEJ-GFZ37A2V.js.map +1 -0
- package/dist/token-6GSAFR2W-WGTMOPEU-6HSZQUFZ.cjs +63 -0
- package/dist/token-6GSAFR2W-WGTMOPEU-6HSZQUFZ.cjs.map +1 -0
- package/dist/token-6GSAFR2W-WGTMOPEU-JKP67ZX4.js +61 -0
- package/dist/token-6GSAFR2W-WGTMOPEU-JKP67ZX4.js.map +1 -0
- package/dist/token-util-NEHG7TUY-4YJ4EPCL-MBTAVIJ3.js +8 -0
- package/dist/token-util-NEHG7TUY-4YJ4EPCL-MBTAVIJ3.js.map +1 -0
- package/dist/token-util-NEHG7TUY-4YJ4EPCL-SQ4NADRW.cjs +10 -0
- package/dist/token-util-NEHG7TUY-4YJ4EPCL-SQ4NADRW.cjs.map +1 -0
- package/dist/token-util-NEHG7TUY-TV2H7N56-GGCGMPDG.js +8 -0
- package/dist/token-util-NEHG7TUY-TV2H7N56-GGCGMPDG.js.map +1 -0
- package/dist/token-util-NEHG7TUY-TV2H7N56-R7OENTCJ.cjs +10 -0
- package/dist/token-util-NEHG7TUY-TV2H7N56-R7OENTCJ.cjs.map +1 -0
- package/dist/token-util-NEHG7TUY-XQP3QSPX-BL5O5N7R.cjs +10 -0
- package/dist/token-util-NEHG7TUY-XQP3QSPX-BL5O5N7R.cjs.map +1 -0
- package/dist/token-util-NEHG7TUY-XQP3QSPX-YCJRRNXO.js +8 -0
- package/dist/token-util-NEHG7TUY-XQP3QSPX-YCJRRNXO.js.map +1 -0
- package/handlers/server/handlers.d.ts +1 -0
- package/handlers.d.ts +1 -0
- package/package.json +74 -20
- package/server-adapter.d.ts +1 -0
- package/dist/_tsup-dts-rollup.d.cts +0 -573
- package/dist/_tsup-dts-rollup.d.ts +0 -573
- package/dist/chunk-2FJURXCL.cjs +0 -213
- package/dist/chunk-3AHQ5RGN.js +0 -11
- package/dist/chunk-3EJZQ6TQ.js +0 -49
- package/dist/chunk-3RVHWGWO.js +0 -95
- package/dist/chunk-4JINXASC.js +0 -120
- package/dist/chunk-67WTHYAV.js +0 -156
- package/dist/chunk-A7DF4ETD.cjs +0 -100
- package/dist/chunk-B64YROKU.cjs +0 -317
- package/dist/chunk-CWSDZEZG.cjs +0 -139
- package/dist/chunk-DVPP5S6I.js +0 -135
- package/dist/chunk-JLDXUWK7.cjs +0 -126
- package/dist/chunk-L7XE5QTW.js +0 -16
- package/dist/chunk-M56ECCHK.cjs +0 -128
- package/dist/chunk-OPP7H5TW.js +0 -305
- package/dist/chunk-PDC4ZBQW.cjs +0 -126
- package/dist/chunk-QH6XWSXP.cjs +0 -5579
- package/dist/chunk-QN4KF3BH.cjs +0 -18
- package/dist/chunk-RBQASTUP.js +0 -203
- package/dist/chunk-SKBVVI24.cjs +0 -54
- package/dist/chunk-UV4WTEH4.js +0 -120
- package/dist/chunk-VK6FX47H.js +0 -5576
- package/dist/chunk-YANVFOYA.js +0 -120
- package/dist/chunk-Z46X3YCB.cjs +0 -164
- package/dist/chunk-ZLBRQFDD.cjs +0 -13
- package/dist/index.d.cts +0 -1
- package/dist/server/handlers/agents.d.cts +0 -6
- package/dist/server/handlers/error.d.cts +0 -1
- package/dist/server/handlers/logs.d.cts +0 -3
- package/dist/server/handlers/memory.d.cts +0 -8
- package/dist/server/handlers/network.cjs +0 -22
- package/dist/server/handlers/network.d.cts +0 -4
- package/dist/server/handlers/network.d.ts +0 -4
- package/dist/server/handlers/network.js +0 -1
- package/dist/server/handlers/telemetry.cjs +0 -14
- package/dist/server/handlers/telemetry.d.cts +0 -2
- package/dist/server/handlers/telemetry.d.ts +0 -2
- package/dist/server/handlers/telemetry.js +0 -1
- package/dist/server/handlers/tools.d.cts +0 -4
- package/dist/server/handlers/utils.d.cts +0 -1
- package/dist/server/handlers/vector.d.cts +0 -6
- package/dist/server/handlers/voice.d.cts +0 -3
- package/dist/server/handlers/workflows.d.cts +0 -10
- package/dist/server/handlers.d.cts +0 -9
|
@@ -0,0 +1,833 @@
|
|
|
1
|
+
# Server API Reference
|
|
2
|
+
|
|
3
|
+
> API reference for server - 3 entries
|
|
4
|
+
|
|
5
|
+
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
## Reference: MastraServer
|
|
9
|
+
|
|
10
|
+
> API reference for the MastraServer abstract class used to create server adapters.
|
|
11
|
+
|
|
12
|
+
The `MastraServer` abstract class is the base for all server adapters. Extend this class to create adapters for frameworks other than Hono or Express.
|
|
13
|
+
|
|
14
|
+
## Import
|
|
15
|
+
|
|
16
|
+
```typescript
|
|
17
|
+
import { MastraServer } from '@mastra/server/server-adapter';
|
|
18
|
+
```
|
|
19
|
+
|
|
20
|
+
## Type parameters
|
|
21
|
+
|
|
22
|
+
```typescript
|
|
23
|
+
MastraServer<TApp, TRequest, TResponse>
|
|
24
|
+
```
|
|
25
|
+
|
|
26
|
+
| Parameter | Description |
|
|
27
|
+
|-----------|-------------|
|
|
28
|
+
| `TApp` | Framework app type (e.g., `Hono`, `Application`) |
|
|
29
|
+
| `TRequest` | Framework request type |
|
|
30
|
+
| `TResponse` | Framework response/context type |
|
|
31
|
+
|
|
32
|
+
## Constructor
|
|
33
|
+
|
|
34
|
+
```typescript
|
|
35
|
+
constructor(options: MastraServerOptions<TApp>)
|
|
36
|
+
```
|
|
37
|
+
|
|
38
|
+
### Options
|
|
39
|
+
|
|
40
|
+
## Abstract methods
|
|
41
|
+
|
|
42
|
+
These methods must be implemented by adapters:
|
|
43
|
+
|
|
44
|
+
### registerContextMiddleware()
|
|
45
|
+
|
|
46
|
+
Attach Mastra context to every request.
|
|
47
|
+
|
|
48
|
+
```typescript
|
|
49
|
+
abstract registerContextMiddleware(): void
|
|
50
|
+
```
|
|
51
|
+
|
|
52
|
+
**Context to attach:**
|
|
53
|
+
- `mastra` - Mastra instance
|
|
54
|
+
- `requestContext` - Request-scoped context
|
|
55
|
+
- `tools` - Available tools
|
|
56
|
+
- `abortSignal` - Request cancellation signal
|
|
57
|
+
|
|
58
|
+
### registerAuthMiddleware()
|
|
59
|
+
|
|
60
|
+
Register authentication and authorization middleware.
|
|
61
|
+
|
|
62
|
+
```typescript
|
|
63
|
+
abstract registerAuthMiddleware(): void
|
|
64
|
+
```
|
|
65
|
+
|
|
66
|
+
### registerRoute()
|
|
67
|
+
|
|
68
|
+
Register a single route with the framework.
|
|
69
|
+
|
|
70
|
+
```typescript
|
|
71
|
+
abstract registerRoute(
|
|
72
|
+
app: TApp,
|
|
73
|
+
route: ServerRoute,
|
|
74
|
+
options: { prefix?: string }
|
|
75
|
+
): Promise<void>
|
|
76
|
+
```
|
|
77
|
+
|
|
78
|
+
### getParams()
|
|
79
|
+
|
|
80
|
+
Extract parameters from the request.
|
|
81
|
+
|
|
82
|
+
```typescript
|
|
83
|
+
abstract getParams(
|
|
84
|
+
route: ServerRoute,
|
|
85
|
+
request: TRequest
|
|
86
|
+
): Promise<{
|
|
87
|
+
urlParams: Record<string, string>;
|
|
88
|
+
queryParams: Record<string, string>;
|
|
89
|
+
body: unknown;
|
|
90
|
+
}>
|
|
91
|
+
```
|
|
92
|
+
|
|
93
|
+
### sendResponse()
|
|
94
|
+
|
|
95
|
+
Send response based on route type.
|
|
96
|
+
|
|
97
|
+
```typescript
|
|
98
|
+
abstract sendResponse(
|
|
99
|
+
route: ServerRoute,
|
|
100
|
+
response: TResponse,
|
|
101
|
+
result: unknown
|
|
102
|
+
): Promise<unknown>
|
|
103
|
+
```
|
|
104
|
+
|
|
105
|
+
### stream()
|
|
106
|
+
|
|
107
|
+
Handle streaming responses.
|
|
108
|
+
|
|
109
|
+
```typescript
|
|
110
|
+
abstract stream(
|
|
111
|
+
route: ServerRoute,
|
|
112
|
+
response: TResponse,
|
|
113
|
+
result: unknown
|
|
114
|
+
): Promise<unknown>
|
|
115
|
+
```
|
|
116
|
+
|
|
117
|
+
## Instance methods
|
|
118
|
+
|
|
119
|
+
### init()
|
|
120
|
+
|
|
121
|
+
Initialize the server by registering all middleware and routes.
|
|
122
|
+
|
|
123
|
+
```typescript
|
|
124
|
+
async init(): Promise<void>
|
|
125
|
+
```
|
|
126
|
+
|
|
127
|
+
Calls in order:
|
|
128
|
+
1. `registerContextMiddleware()`
|
|
129
|
+
2. `registerAuthMiddleware()`
|
|
130
|
+
3. `registerRoutes()`
|
|
131
|
+
|
|
132
|
+
### registerRoutes()
|
|
133
|
+
|
|
134
|
+
Register all Mastra routes.
|
|
135
|
+
|
|
136
|
+
```typescript
|
|
137
|
+
async registerRoutes(): Promise<void>
|
|
138
|
+
```
|
|
139
|
+
|
|
140
|
+
### getApp()
|
|
141
|
+
|
|
142
|
+
Get the framework app instance.
|
|
143
|
+
|
|
144
|
+
```typescript
|
|
145
|
+
getApp<T = TApp>(): T
|
|
146
|
+
```
|
|
147
|
+
|
|
148
|
+
### parsePathParams()
|
|
149
|
+
|
|
150
|
+
Validate path parameters with the route's Zod schema.
|
|
151
|
+
|
|
152
|
+
```typescript
|
|
153
|
+
async parsePathParams(
|
|
154
|
+
route: ServerRoute,
|
|
155
|
+
params: Record<string, string>
|
|
156
|
+
): Promise<Record<string, unknown>>
|
|
157
|
+
```
|
|
158
|
+
|
|
159
|
+
### parseQueryParams()
|
|
160
|
+
|
|
161
|
+
Validate query parameters with the route's Zod schema.
|
|
162
|
+
|
|
163
|
+
```typescript
|
|
164
|
+
async parseQueryParams(
|
|
165
|
+
route: ServerRoute,
|
|
166
|
+
params: Record<string, string>
|
|
167
|
+
): Promise<Record<string, unknown>>
|
|
168
|
+
```
|
|
169
|
+
|
|
170
|
+
### parseBody()
|
|
171
|
+
|
|
172
|
+
Validate request body with the route's Zod schema.
|
|
173
|
+
|
|
174
|
+
```typescript
|
|
175
|
+
async parseBody(
|
|
176
|
+
route: ServerRoute,
|
|
177
|
+
body: unknown
|
|
178
|
+
): Promise<unknown>
|
|
179
|
+
```
|
|
180
|
+
|
|
181
|
+
### registerOpenAPIRoute()
|
|
182
|
+
|
|
183
|
+
Register an endpoint that serves the OpenAPI specification.
|
|
184
|
+
|
|
185
|
+
```typescript
|
|
186
|
+
async registerOpenAPIRoute(
|
|
187
|
+
app: TApp,
|
|
188
|
+
config: OpenAPIConfig,
|
|
189
|
+
options: { prefix?: string }
|
|
190
|
+
): Promise<void>
|
|
191
|
+
```
|
|
192
|
+
|
|
193
|
+
## Protected methods
|
|
194
|
+
|
|
195
|
+
### mergeRequestContext()
|
|
196
|
+
|
|
197
|
+
Merge request context from multiple sources (query params and body).
|
|
198
|
+
|
|
199
|
+
```typescript
|
|
200
|
+
protected mergeRequestContext(options: {
|
|
201
|
+
paramsRequestContext?: Record<string, any>;
|
|
202
|
+
bodyRequestContext?: Record<string, any>;
|
|
203
|
+
}): RequestContext
|
|
204
|
+
```
|
|
205
|
+
|
|
206
|
+
## Types
|
|
207
|
+
|
|
208
|
+
### BodyLimitOptions
|
|
209
|
+
|
|
210
|
+
```typescript
|
|
211
|
+
interface BodyLimitOptions {
|
|
212
|
+
maxSize: number;
|
|
213
|
+
onError: (error: unknown) => unknown;
|
|
214
|
+
}
|
|
215
|
+
```
|
|
216
|
+
|
|
217
|
+
### StreamOptions
|
|
218
|
+
|
|
219
|
+
```typescript
|
|
220
|
+
interface StreamOptions {
|
|
221
|
+
redact?: boolean;
|
|
222
|
+
}
|
|
223
|
+
```
|
|
224
|
+
|
|
225
|
+
### MCPOptions
|
|
226
|
+
|
|
227
|
+
```typescript
|
|
228
|
+
interface MCPOptions {
|
|
229
|
+
serverless?: boolean;
|
|
230
|
+
sessionIdGenerator?: () => string;
|
|
231
|
+
}
|
|
232
|
+
```
|
|
233
|
+
|
|
234
|
+
| Property | Description |
|
|
235
|
+
|----------|-------------|
|
|
236
|
+
| `serverless` | When `true`, runs MCP in stateless mode without session management. Use for serverless environments like Cloudflare Workers or Vercel Edge. |
|
|
237
|
+
| `sessionIdGenerator` | Custom function to generate session IDs. |
|
|
238
|
+
|
|
239
|
+
## Example
|
|
240
|
+
|
|
241
|
+
```typescript
|
|
242
|
+
import { MastraServer, ServerRoute } from '@mastra/server/server-adapter';
|
|
243
|
+
import type { Mastra } from '@mastra/core';
|
|
244
|
+
|
|
245
|
+
export class MyServer extends MastraServer<MyApp, MyRequest, MyResponse> {
|
|
246
|
+
registerContextMiddleware(): void {
|
|
247
|
+
this.app.use('*', (req, res, next) => {
|
|
248
|
+
res.locals.mastra = this.mastra;
|
|
249
|
+
next();
|
|
250
|
+
});
|
|
251
|
+
}
|
|
252
|
+
|
|
253
|
+
registerAuthMiddleware(): void {
|
|
254
|
+
const auth = this.mastra.getServer()?.auth;
|
|
255
|
+
if (!auth) return;
|
|
256
|
+
// Implement auth
|
|
257
|
+
}
|
|
258
|
+
|
|
259
|
+
async registerRoute(app, route, { prefix }) {
|
|
260
|
+
// Implement route registration
|
|
261
|
+
}
|
|
262
|
+
|
|
263
|
+
async getParams(route, request) {
|
|
264
|
+
return {
|
|
265
|
+
urlParams: request.params,
|
|
266
|
+
queryParams: request.query,
|
|
267
|
+
body: request.body,
|
|
268
|
+
};
|
|
269
|
+
}
|
|
270
|
+
|
|
271
|
+
async sendResponse(route, response, result) {
|
|
272
|
+
return response.json(result);
|
|
273
|
+
}
|
|
274
|
+
|
|
275
|
+
async stream(route, response, result) {
|
|
276
|
+
// Implement streaming
|
|
277
|
+
}
|
|
278
|
+
}
|
|
279
|
+
```
|
|
280
|
+
|
|
281
|
+
## Related
|
|
282
|
+
|
|
283
|
+
- [Server Adapters](https://mastra.ai/docs/server/server-adapters) - Using adapters
|
|
284
|
+
- [Custom Adapters](https://mastra.ai/docs/server/custom-adapters) - Creating custom adapters
|
|
285
|
+
- [createRoute()](https://mastra.ai/reference/server/create-route) - Creating custom routes
|
|
286
|
+
|
|
287
|
+
---
|
|
288
|
+
|
|
289
|
+
## Reference: createRoute()
|
|
290
|
+
|
|
291
|
+
> API reference for createRoute() function used to define type-safe routes with validation and OpenAPI generation.
|
|
292
|
+
|
|
293
|
+
The `createRoute()` function creates type-safe routes with Zod validation. When an `openapiPath` is configured on the server adapter, it generates OpenAPI schema entries from the supplied Zod schemas.
|
|
294
|
+
|
|
295
|
+
## Import
|
|
296
|
+
|
|
297
|
+
```typescript
|
|
298
|
+
import { createRoute } from '@mastra/server/server-adapter';
|
|
299
|
+
```
|
|
300
|
+
|
|
301
|
+
## Signature
|
|
302
|
+
|
|
303
|
+
```typescript
|
|
304
|
+
function createRoute<TPath, TQuery, TBody, TResponse, TResponseType>(
|
|
305
|
+
config: RouteConfig<TPath, TQuery, TBody, TResponse, TResponseType>
|
|
306
|
+
): ServerRoute
|
|
307
|
+
```
|
|
308
|
+
|
|
309
|
+
## Parameters
|
|
310
|
+
|
|
311
|
+
## Handler parameters
|
|
312
|
+
|
|
313
|
+
The handler receives validated parameters plus runtime context:
|
|
314
|
+
|
|
315
|
+
```typescript
|
|
316
|
+
handler: async (params) => {
|
|
317
|
+
// From schemas (typed from Zod)
|
|
318
|
+
params.id; // From pathParamSchema
|
|
319
|
+
params.filter; // From queryParamSchema
|
|
320
|
+
params.name; // From bodySchema
|
|
321
|
+
|
|
322
|
+
// Runtime context (always available)
|
|
323
|
+
params.mastra; // Mastra instance
|
|
324
|
+
params.requestContext; // Request-scoped context
|
|
325
|
+
params.tools; // Available tools
|
|
326
|
+
params.abortSignal; // Request cancellation signal
|
|
327
|
+
params.taskStore; // A2A task storage
|
|
328
|
+
}
|
|
329
|
+
```
|
|
330
|
+
|
|
331
|
+
## Return value
|
|
332
|
+
|
|
333
|
+
Returns a `ServerRoute` object that can be registered with an adapter.
|
|
334
|
+
|
|
335
|
+
## Examples
|
|
336
|
+
|
|
337
|
+
### GET route with path params
|
|
338
|
+
|
|
339
|
+
```typescript
|
|
340
|
+
import { createRoute } from '@mastra/server/server-adapter';
|
|
341
|
+
import { z } from 'zod';
|
|
342
|
+
|
|
343
|
+
const getAgent = createRoute({
|
|
344
|
+
method: 'GET',
|
|
345
|
+
path: '/api/agents/:agentId',
|
|
346
|
+
responseType: 'json',
|
|
347
|
+
pathParamSchema: z.object({
|
|
348
|
+
agentId: z.string(),
|
|
349
|
+
}),
|
|
350
|
+
responseSchema: z.object({
|
|
351
|
+
name: z.string(),
|
|
352
|
+
description: z.string().optional(),
|
|
353
|
+
}),
|
|
354
|
+
summary: 'Get agent by ID',
|
|
355
|
+
tags: ['Agents'],
|
|
356
|
+
handler: async ({ agentId, mastra }) => {
|
|
357
|
+
return mastra.getAgent(agentId);
|
|
358
|
+
},
|
|
359
|
+
});
|
|
360
|
+
```
|
|
361
|
+
|
|
362
|
+
### POST route with body
|
|
363
|
+
|
|
364
|
+
```typescript
|
|
365
|
+
const createItem = createRoute({
|
|
366
|
+
method: 'POST',
|
|
367
|
+
path: '/api/items',
|
|
368
|
+
responseType: 'json',
|
|
369
|
+
bodySchema: z.object({
|
|
370
|
+
name: z.string(),
|
|
371
|
+
value: z.number(),
|
|
372
|
+
}),
|
|
373
|
+
responseSchema: z.object({
|
|
374
|
+
id: z.string(),
|
|
375
|
+
name: z.string(),
|
|
376
|
+
value: z.number(),
|
|
377
|
+
}),
|
|
378
|
+
handler: async ({ name, value, mastra }) => {
|
|
379
|
+
// name and value are typed from bodySchema
|
|
380
|
+
return { id: 'new-id', name, value };
|
|
381
|
+
},
|
|
382
|
+
});
|
|
383
|
+
```
|
|
384
|
+
|
|
385
|
+
### Query params with coercion
|
|
386
|
+
|
|
387
|
+
```typescript
|
|
388
|
+
const listItems = createRoute({
|
|
389
|
+
method: 'GET',
|
|
390
|
+
path: '/api/items',
|
|
391
|
+
responseType: 'json',
|
|
392
|
+
queryParamSchema: z.object({
|
|
393
|
+
page: z.coerce.number().default(0),
|
|
394
|
+
limit: z.coerce.number().default(50),
|
|
395
|
+
enabled: z.coerce.boolean().optional(),
|
|
396
|
+
}),
|
|
397
|
+
handler: async ({ page, limit, enabled, mastra }) => {
|
|
398
|
+
// page, limit, enabled are typed and coerced
|
|
399
|
+
return { items: [], page, limit };
|
|
400
|
+
},
|
|
401
|
+
});
|
|
402
|
+
```
|
|
403
|
+
|
|
404
|
+
### Streaming route
|
|
405
|
+
|
|
406
|
+
```typescript
|
|
407
|
+
const streamAgent = createRoute({
|
|
408
|
+
method: 'POST',
|
|
409
|
+
path: '/api/agents/:agentId/stream',
|
|
410
|
+
responseType: 'stream',
|
|
411
|
+
streamFormat: 'sse',
|
|
412
|
+
pathParamSchema: z.object({
|
|
413
|
+
agentId: z.string(),
|
|
414
|
+
}),
|
|
415
|
+
bodySchema: z.object({
|
|
416
|
+
messages: z.array(z.any()),
|
|
417
|
+
}),
|
|
418
|
+
handler: async ({ agentId, messages, mastra, abortSignal }) => {
|
|
419
|
+
const agent = mastra.getAgent(agentId);
|
|
420
|
+
return agent.stream(messages, { abortSignal });
|
|
421
|
+
},
|
|
422
|
+
});
|
|
423
|
+
```
|
|
424
|
+
|
|
425
|
+
### Custom body size limit
|
|
426
|
+
|
|
427
|
+
```typescript
|
|
428
|
+
const uploadRoute = createRoute({
|
|
429
|
+
method: 'POST',
|
|
430
|
+
path: '/api/upload',
|
|
431
|
+
responseType: 'json',
|
|
432
|
+
maxBodySize: 50 * 1024 * 1024, // 50MB
|
|
433
|
+
bodySchema: z.object({
|
|
434
|
+
file: z.string(),
|
|
435
|
+
}),
|
|
436
|
+
handler: async ({ file }) => {
|
|
437
|
+
return { uploaded: true };
|
|
438
|
+
},
|
|
439
|
+
});
|
|
440
|
+
```
|
|
441
|
+
|
|
442
|
+
## Schema patterns
|
|
443
|
+
|
|
444
|
+
### Passthrough for extensibility
|
|
445
|
+
|
|
446
|
+
```typescript
|
|
447
|
+
const bodySchema = z.object({
|
|
448
|
+
required: z.string(),
|
|
449
|
+
}).passthrough(); // Allow unknown fields
|
|
450
|
+
```
|
|
451
|
+
|
|
452
|
+
### Date coercion
|
|
453
|
+
|
|
454
|
+
```typescript
|
|
455
|
+
const querySchema = z.object({
|
|
456
|
+
fromDate: z.coerce.date().optional(),
|
|
457
|
+
toDate: z.coerce.date().optional(),
|
|
458
|
+
});
|
|
459
|
+
```
|
|
460
|
+
|
|
461
|
+
### Union types
|
|
462
|
+
|
|
463
|
+
```typescript
|
|
464
|
+
const bodySchema = z.object({
|
|
465
|
+
messages: z.union([
|
|
466
|
+
z.array(z.any()),
|
|
467
|
+
z.string(),
|
|
468
|
+
]),
|
|
469
|
+
});
|
|
470
|
+
```
|
|
471
|
+
|
|
472
|
+
## Error handling
|
|
473
|
+
|
|
474
|
+
Throw an error with a `status` property to return specific HTTP status codes from handlers. If using Hono, you can use `HTTPException` from `hono/http-exception`:
|
|
475
|
+
|
|
476
|
+
```typescript
|
|
477
|
+
import { createRoute } from '@mastra/server/server-adapter';
|
|
478
|
+
import { HTTPException } from 'hono/http-exception';
|
|
479
|
+
|
|
480
|
+
const getAgent = createRoute({
|
|
481
|
+
method: 'GET',
|
|
482
|
+
path: '/api/agents/:agentId',
|
|
483
|
+
responseType: 'json',
|
|
484
|
+
pathParamSchema: z.object({ agentId: z.string() }),
|
|
485
|
+
handler: async ({ agentId, mastra }) => {
|
|
486
|
+
const agent = mastra.getAgent(agentId);
|
|
487
|
+
if (!agent) {
|
|
488
|
+
throw new HTTPException(404, { message: `Agent '${agentId}' not found` });
|
|
489
|
+
}
|
|
490
|
+
return agent;
|
|
491
|
+
},
|
|
492
|
+
});
|
|
493
|
+
```
|
|
494
|
+
|
|
495
|
+
For Express or framework-agnostic code, throw an error with a `status` property:
|
|
496
|
+
|
|
497
|
+
```typescript
|
|
498
|
+
class HttpError extends Error {
|
|
499
|
+
constructor(public status: number, message: string) {
|
|
500
|
+
super(message);
|
|
501
|
+
}
|
|
502
|
+
}
|
|
503
|
+
|
|
504
|
+
// In handler:
|
|
505
|
+
throw new HttpError(404, `Agent '${agentId}' not found`);
|
|
506
|
+
```
|
|
507
|
+
|
|
508
|
+
Common status codes:
|
|
509
|
+
|
|
510
|
+
| Code | Meaning |
|
|
511
|
+
|------|---------|
|
|
512
|
+
| 400 | Bad Request |
|
|
513
|
+
| 401 | Unauthorized |
|
|
514
|
+
| 403 | Forbidden |
|
|
515
|
+
| 404 | Not Found |
|
|
516
|
+
| 500 | Internal Server Error |
|
|
517
|
+
|
|
518
|
+
## Related
|
|
519
|
+
|
|
520
|
+
- [Server Routes](https://mastra.ai/reference/server/routes) - Default Mastra routes
|
|
521
|
+
- [MastraServer](https://mastra.ai/reference/server/mastra-server) - Server adapter class
|
|
522
|
+
- [Server Adapters](https://mastra.ai/docs/server/server-adapters) - Using adapters
|
|
523
|
+
|
|
524
|
+
---
|
|
525
|
+
|
|
526
|
+
## Reference: Server Routes
|
|
527
|
+
|
|
528
|
+
> API reference for HTTP routes registered by Mastra server adapters.
|
|
529
|
+
|
|
530
|
+
Server adapters register these routes when you call `server.init()`. All routes are prefixed with the `prefix` option if configured.
|
|
531
|
+
|
|
532
|
+
## Agents
|
|
533
|
+
|
|
534
|
+
| Method | Path | Description |
|
|
535
|
+
|--------|------|-------------|
|
|
536
|
+
| `GET` | `/api/agents` | List all agents |
|
|
537
|
+
| `GET` | `/api/agents/:agentId` | Get agent by ID |
|
|
538
|
+
| `POST` | `/api/agents/:agentId/generate` | Generate agent response |
|
|
539
|
+
| `POST` | `/api/agents/:agentId/stream` | Stream agent response |
|
|
540
|
+
| `GET` | `/api/agents/:agentId/tools` | List agent tools |
|
|
541
|
+
| `POST` | `/api/agents/:agentId/tools/:toolId/execute` | Execute agent tool |
|
|
542
|
+
|
|
543
|
+
### Generate request body
|
|
544
|
+
|
|
545
|
+
```typescript
|
|
546
|
+
{
|
|
547
|
+
messages: CoreMessage[] | string; // Required
|
|
548
|
+
instructions?: string; // System instructions
|
|
549
|
+
system?: string; // System prompt
|
|
550
|
+
context?: CoreMessage[]; // Additional context
|
|
551
|
+
memory?: { key: string } | boolean; // Memory config
|
|
552
|
+
resourceId?: string; // Resource identifier
|
|
553
|
+
threadId?: string; // Thread identifier
|
|
554
|
+
runId?: string; // Run identifier
|
|
555
|
+
maxSteps?: number; // Max tool steps
|
|
556
|
+
activeTools?: string[]; // Tools to enable
|
|
557
|
+
toolChoice?: ToolChoice; // Tool selection mode
|
|
558
|
+
requestContext?: Record<string, unknown>; // Request context
|
|
559
|
+
output?: ZodSchema; // Structured output schema
|
|
560
|
+
}
|
|
561
|
+
```
|
|
562
|
+
|
|
563
|
+
### Generate response
|
|
564
|
+
|
|
565
|
+
```typescript
|
|
566
|
+
{
|
|
567
|
+
text: string;
|
|
568
|
+
toolCalls?: ToolCall[];
|
|
569
|
+
finishReason: string;
|
|
570
|
+
usage?: {
|
|
571
|
+
promptTokens: number;
|
|
572
|
+
completionTokens: number;
|
|
573
|
+
};
|
|
574
|
+
}
|
|
575
|
+
```
|
|
576
|
+
|
|
577
|
+
## Workflows
|
|
578
|
+
|
|
579
|
+
| Method | Path | Description |
|
|
580
|
+
|--------|------|-------------|
|
|
581
|
+
| `GET` | `/api/workflows` | List all workflows |
|
|
582
|
+
| `GET` | `/api/workflows/:workflowId` | Get workflow by ID |
|
|
583
|
+
| `POST` | `/api/workflows/:workflowId/create-run` | Create a new workflow run |
|
|
584
|
+
| `POST` | `/api/workflows/:workflowId/start-async` | Start workflow and await result |
|
|
585
|
+
| `POST` | `/api/workflows/:workflowId/stream` | Stream workflow execution |
|
|
586
|
+
| `POST` | `/api/workflows/:workflowId/resume` | Resume suspended workflow |
|
|
587
|
+
| `POST` | `/api/workflows/:workflowId/resume-async` | Resume asynchronously |
|
|
588
|
+
| `GET` | `/api/workflows/:workflowId/runs` | List workflow runs |
|
|
589
|
+
| `GET` | `/api/workflows/:workflowId/runs/:runId` | Get specific run |
|
|
590
|
+
|
|
591
|
+
### Create run request body
|
|
592
|
+
|
|
593
|
+
```typescript
|
|
594
|
+
{
|
|
595
|
+
resourceId?: string; // Associate run with a resource (e.g., user ID)
|
|
596
|
+
disableScorers?: boolean; // Disable scorers for this run
|
|
597
|
+
}
|
|
598
|
+
```
|
|
599
|
+
|
|
600
|
+
### Start-async request body
|
|
601
|
+
|
|
602
|
+
```typescript
|
|
603
|
+
{
|
|
604
|
+
resourceId?: string; // Associate run with a resource (e.g., user ID)
|
|
605
|
+
inputData?: unknown;
|
|
606
|
+
initialState?: unknown;
|
|
607
|
+
requestContext?: Record<string, unknown>;
|
|
608
|
+
tracingOptions?: {
|
|
609
|
+
spanName?: string;
|
|
610
|
+
attributes?: Record<string, unknown>;
|
|
611
|
+
};
|
|
612
|
+
}
|
|
613
|
+
```
|
|
614
|
+
|
|
615
|
+
### Stream workflow request body
|
|
616
|
+
|
|
617
|
+
```typescript
|
|
618
|
+
{
|
|
619
|
+
resourceId?: string; // Associate run with a resource (e.g., user ID)
|
|
620
|
+
inputData?: unknown;
|
|
621
|
+
initialState?: unknown;
|
|
622
|
+
requestContext?: Record<string, unknown>;
|
|
623
|
+
closeOnSuspend?: boolean;
|
|
624
|
+
}
|
|
625
|
+
```
|
|
626
|
+
|
|
627
|
+
### Resume request body
|
|
628
|
+
|
|
629
|
+
```typescript
|
|
630
|
+
{
|
|
631
|
+
step?: string | string[];
|
|
632
|
+
resumeData?: unknown;
|
|
633
|
+
requestContext?: Record<string, unknown>;
|
|
634
|
+
}
|
|
635
|
+
```
|
|
636
|
+
|
|
637
|
+
## Tools
|
|
638
|
+
|
|
639
|
+
| Method | Path | Description |
|
|
640
|
+
|--------|------|-------------|
|
|
641
|
+
| `GET` | `/api/tools` | List all tools |
|
|
642
|
+
| `GET` | `/api/tools/:toolId` | Get tool by ID |
|
|
643
|
+
| `POST` | `/api/tools/:toolId/execute` | Execute tool |
|
|
644
|
+
|
|
645
|
+
### Execute tool request body
|
|
646
|
+
|
|
647
|
+
```typescript
|
|
648
|
+
{
|
|
649
|
+
data: unknown; // Tool input data
|
|
650
|
+
requestContext?: Record<string, unknown>;
|
|
651
|
+
}
|
|
652
|
+
```
|
|
653
|
+
|
|
654
|
+
## Memory
|
|
655
|
+
|
|
656
|
+
| Method | Path | Description |
|
|
657
|
+
|--------|------|-------------|
|
|
658
|
+
| `GET` | `/api/memory/threads` | List threads |
|
|
659
|
+
| `GET` | `/api/memory/threads/:threadId` | Get thread |
|
|
660
|
+
| `POST` | `/api/memory/threads` | Create thread |
|
|
661
|
+
| `DELETE` | `/api/memory/threads/:threadId` | Delete thread |
|
|
662
|
+
| `POST` | `/api/memory/threads/:threadId/clone` | Clone thread |
|
|
663
|
+
| `GET` | `/api/memory/threads/:threadId/messages` | Get thread messages |
|
|
664
|
+
| `POST` | `/api/memory/threads/:threadId/messages` | Add message |
|
|
665
|
+
|
|
666
|
+
### Create thread request body
|
|
667
|
+
|
|
668
|
+
```typescript
|
|
669
|
+
{
|
|
670
|
+
resourceId: string;
|
|
671
|
+
title?: string;
|
|
672
|
+
metadata?: Record<string, unknown>;
|
|
673
|
+
}
|
|
674
|
+
```
|
|
675
|
+
|
|
676
|
+
### Clone thread request body
|
|
677
|
+
|
|
678
|
+
```typescript
|
|
679
|
+
{
|
|
680
|
+
newThreadId?: string; // Custom ID for cloned thread
|
|
681
|
+
resourceId?: string; // Override resource ID
|
|
682
|
+
title?: string; // Custom title for clone
|
|
683
|
+
metadata?: Record<string, unknown>; // Additional metadata
|
|
684
|
+
options?: {
|
|
685
|
+
messageLimit?: number; // Max messages to clone
|
|
686
|
+
messageFilter?: {
|
|
687
|
+
startDate?: Date; // Clone messages after this date
|
|
688
|
+
endDate?: Date; // Clone messages before this date
|
|
689
|
+
messageIds?: string[]; // Clone specific messages
|
|
690
|
+
};
|
|
691
|
+
};
|
|
692
|
+
}
|
|
693
|
+
```
|
|
694
|
+
|
|
695
|
+
### Clone thread response
|
|
696
|
+
|
|
697
|
+
```typescript
|
|
698
|
+
{
|
|
699
|
+
thread: {
|
|
700
|
+
id: string;
|
|
701
|
+
resourceId: string;
|
|
702
|
+
title: string;
|
|
703
|
+
createdAt: Date;
|
|
704
|
+
updatedAt: Date;
|
|
705
|
+
metadata: {
|
|
706
|
+
clone: {
|
|
707
|
+
sourceThreadId: string;
|
|
708
|
+
clonedAt: Date;
|
|
709
|
+
lastMessageId?: string;
|
|
710
|
+
};
|
|
711
|
+
// ... other metadata
|
|
712
|
+
};
|
|
713
|
+
};
|
|
714
|
+
clonedMessages: MastraDBMessage[];
|
|
715
|
+
}
|
|
716
|
+
```
|
|
717
|
+
|
|
718
|
+
## Vectors
|
|
719
|
+
|
|
720
|
+
| Method | Path | Description |
|
|
721
|
+
|--------|------|-------------|
|
|
722
|
+
| `POST` | `/api/vectors/:vectorName/upsert` | Upsert vectors |
|
|
723
|
+
| `POST` | `/api/vectors/:vectorName/query` | Query vectors |
|
|
724
|
+
| `POST` | `/api/vectors/:vectorName/delete` | Delete vectors |
|
|
725
|
+
|
|
726
|
+
### Upsert request body
|
|
727
|
+
|
|
728
|
+
```typescript
|
|
729
|
+
{
|
|
730
|
+
vectors: Array<{
|
|
731
|
+
id: string;
|
|
732
|
+
values: number[];
|
|
733
|
+
metadata?: Record<string, unknown>;
|
|
734
|
+
}>;
|
|
735
|
+
}
|
|
736
|
+
```
|
|
737
|
+
|
|
738
|
+
### Query request body
|
|
739
|
+
|
|
740
|
+
```typescript
|
|
741
|
+
{
|
|
742
|
+
vector: number[];
|
|
743
|
+
topK?: number;
|
|
744
|
+
filter?: Record<string, unknown>;
|
|
745
|
+
includeMetadata?: boolean;
|
|
746
|
+
}
|
|
747
|
+
```
|
|
748
|
+
|
|
749
|
+
## MCP
|
|
750
|
+
|
|
751
|
+
| Method | Path | Description |
|
|
752
|
+
|--------|------|-------------|
|
|
753
|
+
| `GET` | `/api/mcp/servers` | List MCP servers |
|
|
754
|
+
| `GET` | `/api/mcp/servers/:serverId/tools` | List server tools |
|
|
755
|
+
| `POST` | `/api/mcp/:serverId` | MCP HTTP transport |
|
|
756
|
+
| `GET` | `/api/mcp/:serverId/sse` | MCP SSE transport |
|
|
757
|
+
|
|
758
|
+
## Logs
|
|
759
|
+
|
|
760
|
+
| Method | Path | Description |
|
|
761
|
+
|--------|------|-------------|
|
|
762
|
+
| `GET` | `/api/logs` | List logs |
|
|
763
|
+
| `GET` | `/api/logs/:runId` | Get logs by run ID |
|
|
764
|
+
|
|
765
|
+
### Query parameters
|
|
766
|
+
|
|
767
|
+
```typescript
|
|
768
|
+
{
|
|
769
|
+
page?: number;
|
|
770
|
+
perPage?: number;
|
|
771
|
+
transportId?: string;
|
|
772
|
+
}
|
|
773
|
+
```
|
|
774
|
+
|
|
775
|
+
## Telemetry
|
|
776
|
+
|
|
777
|
+
| Method | Path | Description |
|
|
778
|
+
|--------|------|-------------|
|
|
779
|
+
| `GET` | `/api/telemetry/traces` | List traces |
|
|
780
|
+
| `GET` | `/api/telemetry/traces/:traceId` | Get trace |
|
|
781
|
+
| `GET` | `/api/telemetry/traces/:traceId/spans` | Get trace spans |
|
|
782
|
+
|
|
783
|
+
## Common query parameters
|
|
784
|
+
|
|
785
|
+
### Pagination
|
|
786
|
+
|
|
787
|
+
Most list endpoints support:
|
|
788
|
+
|
|
789
|
+
```typescript
|
|
790
|
+
{
|
|
791
|
+
page?: number; // Page number (0-indexed)
|
|
792
|
+
perPage?: number; // Items per page (default: 10)
|
|
793
|
+
}
|
|
794
|
+
```
|
|
795
|
+
|
|
796
|
+
### Filtering
|
|
797
|
+
|
|
798
|
+
Workflow runs support:
|
|
799
|
+
|
|
800
|
+
```typescript
|
|
801
|
+
{
|
|
802
|
+
fromDate?: string; // ISO date string
|
|
803
|
+
toDate?: string; // ISO date string
|
|
804
|
+
status?: string; // Run status filter
|
|
805
|
+
resourceId?: string; // Filter by resource
|
|
806
|
+
}
|
|
807
|
+
```
|
|
808
|
+
|
|
809
|
+
## Error responses
|
|
810
|
+
|
|
811
|
+
All routes return errors in this format:
|
|
812
|
+
|
|
813
|
+
```typescript
|
|
814
|
+
{
|
|
815
|
+
error: string; // Error message
|
|
816
|
+
details?: unknown; // Additional details
|
|
817
|
+
}
|
|
818
|
+
```
|
|
819
|
+
|
|
820
|
+
Common status codes:
|
|
821
|
+
|
|
822
|
+
| Code | Meaning |
|
|
823
|
+
|------|---------|
|
|
824
|
+
| 400 | Bad Request - Invalid parameters |
|
|
825
|
+
| 401 | Unauthorized - Missing/invalid auth |
|
|
826
|
+
| 403 | Forbidden - Insufficient permissions |
|
|
827
|
+
| 404 | Not Found - Resource doesn't exist |
|
|
828
|
+
| 500 | Internal Server Error |
|
|
829
|
+
|
|
830
|
+
## Related
|
|
831
|
+
|
|
832
|
+
- [createRoute()](https://mastra.ai/reference/server/create-route) - Creating custom routes
|
|
833
|
+
- [Server Adapters](https://mastra.ai/docs/server/server-adapters) - Using adapters
|