@mastra/mcp-docs-server 0.13.37 → 0.13.38

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (397) hide show
  1. package/.docs/organized/changelogs/%40internal%2Fchangeset-cli.md +2 -0
  2. package/.docs/organized/changelogs/%40internal%2Fexternal-types.md +2 -0
  3. package/.docs/organized/changelogs/%40internal%2Fstorage-test-utils.md +8 -8
  4. package/.docs/organized/changelogs/%40internal%2Ftypes-builder.md +2 -0
  5. package/.docs/organized/changelogs/%40mastra%2Fclient-js.md +23 -23
  6. package/.docs/organized/changelogs/%40mastra%2Fcore.md +69 -69
  7. package/.docs/organized/changelogs/%40mastra%2Fdeployer-cloud.md +17 -17
  8. package/.docs/organized/changelogs/%40mastra%2Fdeployer-cloudflare.md +17 -17
  9. package/.docs/organized/changelogs/%40mastra%2Fdeployer-netlify.md +17 -17
  10. package/.docs/organized/changelogs/%40mastra%2Fdeployer-vercel.md +17 -17
  11. package/.docs/organized/changelogs/%40mastra%2Fdeployer.md +25 -25
  12. package/.docs/organized/changelogs/%40mastra%2Fmcp-docs-server.md +15 -15
  13. package/.docs/organized/changelogs/%40mastra%2Fplayground-ui.md +27 -27
  14. package/.docs/organized/changelogs/%40mastra%2Freact.md +15 -15
  15. package/.docs/organized/changelogs/%40mastra%2Fserver.md +23 -23
  16. package/.docs/organized/changelogs/create-mastra.md +5 -5
  17. package/.docs/organized/changelogs/mastra.md +17 -17
  18. package/.docs/raw/agents/adding-voice.mdx +20 -9
  19. package/.docs/raw/agents/agent-memory.mdx +55 -39
  20. package/.docs/raw/agents/guardrails.mdx +68 -61
  21. package/.docs/raw/agents/networks.mdx +50 -46
  22. package/.docs/raw/agents/overview.mdx +125 -88
  23. package/.docs/raw/agents/using-tools.mdx +14 -15
  24. package/.docs/raw/auth/auth0.mdx +28 -27
  25. package/.docs/raw/auth/clerk.mdx +22 -20
  26. package/.docs/raw/auth/firebase.mdx +42 -39
  27. package/.docs/raw/auth/index.mdx +1 -1
  28. package/.docs/raw/auth/jwt.mdx +18 -16
  29. package/.docs/raw/auth/supabase.mdx +20 -18
  30. package/.docs/raw/auth/workos.mdx +32 -26
  31. package/.docs/raw/community/contributing-templates.mdx +7 -7
  32. package/.docs/raw/community/discord.mdx +2 -2
  33. package/.docs/raw/community/licensing.mdx +1 -1
  34. package/.docs/raw/course/03-agent-memory/26-updating-mastra-export-comprehensive.md +0 -32
  35. package/.docs/raw/deployment/cloud-providers/amazon-ec2.mdx +41 -22
  36. package/.docs/raw/deployment/cloud-providers/aws-lambda.mdx +48 -29
  37. package/.docs/raw/deployment/cloud-providers/azure-app-services.mdx +52 -24
  38. package/.docs/raw/deployment/cloud-providers/digital-ocean.mdx +86 -55
  39. package/.docs/raw/deployment/cloud-providers/index.mdx +16 -13
  40. package/.docs/raw/deployment/monorepo.mdx +32 -42
  41. package/.docs/raw/deployment/overview.mdx +15 -15
  42. package/.docs/raw/deployment/server-deployment.mdx +18 -23
  43. package/.docs/raw/deployment/serverless-platforms/cloudflare-deployer.mdx +16 -17
  44. package/.docs/raw/deployment/serverless-platforms/index.mdx +15 -12
  45. package/.docs/raw/deployment/serverless-platforms/netlify-deployer.mdx +14 -23
  46. package/.docs/raw/deployment/serverless-platforms/vercel-deployer.mdx +16 -23
  47. package/.docs/raw/deployment/web-framework.mdx +14 -14
  48. package/.docs/raw/frameworks/agentic-uis/ai-sdk.mdx +138 -145
  49. package/.docs/raw/frameworks/agentic-uis/assistant-ui.mdx +54 -43
  50. package/.docs/raw/frameworks/agentic-uis/cedar-os.mdx +51 -36
  51. package/.docs/raw/frameworks/agentic-uis/copilotkit.mdx +161 -120
  52. package/.docs/raw/frameworks/agentic-uis/openrouter.mdx +59 -48
  53. package/.docs/raw/frameworks/servers/express.mdx +45 -44
  54. package/.docs/raw/frameworks/web-frameworks/astro.mdx +245 -162
  55. package/.docs/raw/frameworks/web-frameworks/next-js.mdx +112 -69
  56. package/.docs/raw/frameworks/web-frameworks/sveltekit.mdx +189 -164
  57. package/.docs/raw/frameworks/web-frameworks/vite-react.mdx +94 -81
  58. package/.docs/raw/getting-started/installation.mdx +164 -133
  59. package/.docs/raw/getting-started/mcp-docs-server.mdx +36 -39
  60. package/.docs/raw/getting-started/project-structure.mdx +34 -42
  61. package/.docs/raw/getting-started/studio.mdx +40 -58
  62. package/.docs/raw/getting-started/templates.mdx +22 -27
  63. package/.docs/raw/index.mdx +9 -9
  64. package/.docs/raw/mastra-cloud/dashboard.mdx +10 -10
  65. package/.docs/raw/mastra-cloud/observability.mdx +7 -8
  66. package/.docs/raw/mastra-cloud/overview.mdx +16 -22
  67. package/.docs/raw/mastra-cloud/setting-up.mdx +33 -20
  68. package/.docs/raw/memory/conversation-history.mdx +2 -2
  69. package/.docs/raw/memory/overview.mdx +21 -23
  70. package/.docs/raw/memory/semantic-recall.mdx +14 -13
  71. package/.docs/raw/memory/storage/memory-with-libsql.mdx +27 -28
  72. package/.docs/raw/memory/storage/memory-with-pg.mdx +26 -26
  73. package/.docs/raw/memory/storage/memory-with-upstash.mdx +26 -27
  74. package/.docs/raw/memory/threads-and-resources.mdx +23 -20
  75. package/.docs/raw/memory/working-memory.mdx +27 -38
  76. package/.docs/raw/observability/ai-tracing/exporters/arize.mdx +30 -29
  77. package/.docs/raw/observability/ai-tracing/exporters/braintrust.mdx +8 -9
  78. package/.docs/raw/observability/ai-tracing/exporters/cloud.mdx +17 -16
  79. package/.docs/raw/observability/ai-tracing/exporters/default.mdx +31 -32
  80. package/.docs/raw/observability/ai-tracing/exporters/langfuse.mdx +18 -17
  81. package/.docs/raw/observability/ai-tracing/exporters/langsmith.mdx +14 -14
  82. package/.docs/raw/observability/ai-tracing/exporters/otel.mdx +56 -46
  83. package/.docs/raw/observability/ai-tracing/overview.mdx +145 -122
  84. package/.docs/raw/observability/ai-tracing/processors/sensitive-data-filter.mdx +57 -36
  85. package/.docs/raw/observability/logging.mdx +14 -17
  86. package/.docs/raw/observability/nextjs-tracing.mdx +5 -5
  87. package/.docs/raw/observability/otel-tracing.mdx +17 -18
  88. package/.docs/raw/observability/overview.mdx +14 -10
  89. package/.docs/raw/rag/chunking-and-embedding.mdx +10 -8
  90. package/.docs/raw/rag/overview.mdx +5 -5
  91. package/.docs/raw/rag/retrieval.mdx +125 -107
  92. package/.docs/raw/rag/vector-databases.mdx +232 -223
  93. package/.docs/raw/reference/agents/agent.mdx +54 -41
  94. package/.docs/raw/reference/agents/generate.mdx +367 -261
  95. package/.docs/raw/reference/agents/generateLegacy.mdx +260 -178
  96. package/.docs/raw/reference/agents/getDefaultGenerateOptions.mdx +7 -5
  97. package/.docs/raw/reference/agents/getDefaultStreamOptions.mdx +7 -5
  98. package/.docs/raw/reference/agents/getDescription.mdx +3 -2
  99. package/.docs/raw/reference/agents/getInstructions.mdx +7 -5
  100. package/.docs/raw/reference/agents/getLLM.mdx +11 -7
  101. package/.docs/raw/reference/agents/getMemory.mdx +7 -5
  102. package/.docs/raw/reference/agents/getModel.mdx +7 -5
  103. package/.docs/raw/reference/agents/getScorers.mdx +7 -5
  104. package/.docs/raw/reference/agents/getTools.mdx +7 -5
  105. package/.docs/raw/reference/agents/getVoice.mdx +7 -5
  106. package/.docs/raw/reference/agents/getWorkflows.mdx +7 -5
  107. package/.docs/raw/reference/agents/listAgents.mdx +6 -4
  108. package/.docs/raw/reference/agents/network.mdx +171 -116
  109. package/.docs/raw/reference/auth/auth0.mdx +18 -14
  110. package/.docs/raw/reference/auth/clerk.mdx +15 -12
  111. package/.docs/raw/reference/auth/firebase.mdx +23 -16
  112. package/.docs/raw/reference/auth/jwt.mdx +7 -6
  113. package/.docs/raw/reference/auth/supabase.mdx +13 -10
  114. package/.docs/raw/reference/auth/workos.mdx +17 -13
  115. package/.docs/raw/reference/cli/create-mastra.mdx +61 -44
  116. package/.docs/raw/reference/cli/mastra.mdx +11 -11
  117. package/.docs/raw/reference/client-js/agents.mdx +40 -43
  118. package/.docs/raw/reference/client-js/error-handling.mdx +1 -1
  119. package/.docs/raw/reference/client-js/logs.mdx +1 -1
  120. package/.docs/raw/reference/client-js/mastra-client.mdx +21 -13
  121. package/.docs/raw/reference/client-js/memory.mdx +6 -2
  122. package/.docs/raw/reference/client-js/observability.mdx +10 -9
  123. package/.docs/raw/reference/client-js/telemetry.mdx +1 -1
  124. package/.docs/raw/reference/client-js/tools.mdx +1 -1
  125. package/.docs/raw/reference/client-js/vectors.mdx +1 -1
  126. package/.docs/raw/reference/client-js/workflows-legacy.mdx +1 -1
  127. package/.docs/raw/reference/client-js/workflows.mdx +7 -7
  128. package/.docs/raw/reference/core/getAgent.mdx +6 -5
  129. package/.docs/raw/reference/core/getAgentById.mdx +5 -4
  130. package/.docs/raw/reference/core/getAgents.mdx +3 -3
  131. package/.docs/raw/reference/core/getDeployer.mdx +4 -3
  132. package/.docs/raw/reference/core/getLogger.mdx +4 -3
  133. package/.docs/raw/reference/core/getLogs.mdx +10 -6
  134. package/.docs/raw/reference/core/getLogsByRunId.mdx +8 -5
  135. package/.docs/raw/reference/core/getMCPServer.mdx +8 -5
  136. package/.docs/raw/reference/core/getMCPServers.mdx +4 -3
  137. package/.docs/raw/reference/core/getMemory.mdx +4 -3
  138. package/.docs/raw/reference/core/getScorer.mdx +15 -12
  139. package/.docs/raw/reference/core/getScorerByName.mdx +12 -9
  140. package/.docs/raw/reference/core/getScorers.mdx +3 -2
  141. package/.docs/raw/reference/core/getServer.mdx +4 -3
  142. package/.docs/raw/reference/core/getStorage.mdx +4 -3
  143. package/.docs/raw/reference/core/getTelemetry.mdx +4 -3
  144. package/.docs/raw/reference/core/getVector.mdx +6 -4
  145. package/.docs/raw/reference/core/getVectors.mdx +4 -3
  146. package/.docs/raw/reference/core/getWorkflow.mdx +7 -4
  147. package/.docs/raw/reference/core/getWorkflows.mdx +5 -3
  148. package/.docs/raw/reference/core/mastra-class.mdx +16 -16
  149. package/.docs/raw/reference/core/setLogger.mdx +6 -4
  150. package/.docs/raw/reference/core/setStorage.mdx +4 -4
  151. package/.docs/raw/reference/core/setTelemetry.mdx +4 -3
  152. package/.docs/raw/reference/deployer/cloudflare.mdx +11 -7
  153. package/.docs/raw/reference/deployer/deployer.mdx +2 -1
  154. package/.docs/raw/reference/deployer/netlify.mdx +4 -4
  155. package/.docs/raw/reference/deployer/vercel.mdx +6 -6
  156. package/.docs/raw/reference/evals/answer-relevancy.mdx +4 -5
  157. package/.docs/raw/reference/evals/bias.mdx +4 -5
  158. package/.docs/raw/reference/evals/completeness.mdx +4 -5
  159. package/.docs/raw/reference/evals/content-similarity.mdx +4 -5
  160. package/.docs/raw/reference/evals/context-position.mdx +4 -5
  161. package/.docs/raw/reference/evals/context-precision.mdx +4 -5
  162. package/.docs/raw/reference/evals/context-relevancy.mdx +4 -5
  163. package/.docs/raw/reference/evals/contextual-recall.mdx +4 -5
  164. package/.docs/raw/reference/evals/faithfulness.mdx +4 -5
  165. package/.docs/raw/reference/evals/hallucination.mdx +4 -6
  166. package/.docs/raw/reference/evals/keyword-coverage.mdx +4 -5
  167. package/.docs/raw/reference/evals/prompt-alignment.mdx +4 -6
  168. package/.docs/raw/reference/evals/summarization.mdx +4 -6
  169. package/.docs/raw/reference/evals/textual-difference.mdx +4 -5
  170. package/.docs/raw/reference/evals/tone-consistency.mdx +4 -7
  171. package/.docs/raw/reference/evals/toxicity.mdx +4 -5
  172. package/.docs/raw/reference/index.mdx +3 -3
  173. package/.docs/raw/reference/legacyWorkflows/after.mdx +5 -5
  174. package/.docs/raw/reference/legacyWorkflows/afterEvent.mdx +5 -5
  175. package/.docs/raw/reference/legacyWorkflows/commit.mdx +5 -5
  176. package/.docs/raw/reference/legacyWorkflows/createRun.mdx +4 -4
  177. package/.docs/raw/reference/legacyWorkflows/else.mdx +5 -5
  178. package/.docs/raw/reference/legacyWorkflows/events.mdx +7 -7
  179. package/.docs/raw/reference/legacyWorkflows/execute.mdx +4 -4
  180. package/.docs/raw/reference/legacyWorkflows/if.mdx +5 -5
  181. package/.docs/raw/reference/legacyWorkflows/resume.mdx +5 -5
  182. package/.docs/raw/reference/legacyWorkflows/resumeWithEvent.mdx +6 -6
  183. package/.docs/raw/reference/legacyWorkflows/snapshots.mdx +6 -6
  184. package/.docs/raw/reference/legacyWorkflows/start.mdx +6 -6
  185. package/.docs/raw/reference/legacyWorkflows/step-class.mdx +4 -4
  186. package/.docs/raw/reference/legacyWorkflows/step-condition.mdx +4 -4
  187. package/.docs/raw/reference/legacyWorkflows/step-function.mdx +5 -5
  188. package/.docs/raw/reference/legacyWorkflows/step-options.mdx +6 -6
  189. package/.docs/raw/reference/legacyWorkflows/step-retries.mdx +4 -4
  190. package/.docs/raw/reference/legacyWorkflows/suspend.mdx +4 -4
  191. package/.docs/raw/reference/legacyWorkflows/then.mdx +5 -5
  192. package/.docs/raw/reference/legacyWorkflows/until.mdx +4 -4
  193. package/.docs/raw/reference/legacyWorkflows/watch.mdx +3 -3
  194. package/.docs/raw/reference/legacyWorkflows/while.mdx +4 -4
  195. package/.docs/raw/reference/legacyWorkflows/workflow.mdx +7 -7
  196. package/.docs/raw/reference/memory/createThread.mdx +10 -10
  197. package/.docs/raw/reference/memory/deleteMessages.mdx +7 -5
  198. package/.docs/raw/reference/memory/getThreadById.mdx +6 -5
  199. package/.docs/raw/reference/memory/getThreadsByResourceId.mdx +11 -10
  200. package/.docs/raw/reference/memory/getThreadsByResourceIdPaginated.mdx +10 -9
  201. package/.docs/raw/reference/memory/{Memory.mdx → memory-class.mdx} +53 -46
  202. package/.docs/raw/reference/memory/query.mdx +39 -25
  203. package/.docs/raw/reference/observability/ai-tracing/ai-tracing.mdx +9 -5
  204. package/.docs/raw/reference/observability/ai-tracing/configuration.mdx +26 -22
  205. package/.docs/raw/reference/observability/ai-tracing/exporters/arize.mdx +16 -12
  206. package/.docs/raw/reference/observability/ai-tracing/exporters/braintrust.mdx +14 -14
  207. package/.docs/raw/reference/observability/ai-tracing/exporters/cloud-exporter.mdx +16 -11
  208. package/.docs/raw/reference/observability/ai-tracing/exporters/console-exporter.mdx +10 -6
  209. package/.docs/raw/reference/observability/ai-tracing/exporters/default-exporter.mdx +23 -15
  210. package/.docs/raw/reference/observability/ai-tracing/exporters/langfuse.mdx +6 -6
  211. package/.docs/raw/reference/observability/ai-tracing/exporters/langsmith.mdx +13 -13
  212. package/.docs/raw/reference/observability/ai-tracing/exporters/otel.mdx +44 -36
  213. package/.docs/raw/reference/observability/ai-tracing/interfaces.mdx +115 -106
  214. package/.docs/raw/reference/observability/ai-tracing/processors/sensitive-data-filter.mdx +37 -32
  215. package/.docs/raw/reference/observability/ai-tracing/span.mdx +29 -26
  216. package/.docs/raw/reference/observability/logging/pino-logger.mdx +13 -15
  217. package/.docs/raw/reference/observability/otel-tracing/otel-config.mdx +2 -2
  218. package/.docs/raw/reference/observability/otel-tracing/providers/arize-ax.mdx +3 -3
  219. package/.docs/raw/reference/observability/otel-tracing/providers/arize-phoenix.mdx +2 -1
  220. package/.docs/raw/reference/observability/otel-tracing/providers/dash0.mdx +1 -1
  221. package/.docs/raw/reference/observability/otel-tracing/providers/index.mdx +12 -14
  222. package/.docs/raw/reference/observability/otel-tracing/providers/keywordsai.mdx +3 -3
  223. package/.docs/raw/reference/observability/otel-tracing/providers/laminar.mdx +1 -1
  224. package/.docs/raw/reference/observability/otel-tracing/providers/langfuse.mdx +4 -4
  225. package/.docs/raw/reference/observability/otel-tracing/providers/langsmith.mdx +1 -1
  226. package/.docs/raw/reference/observability/otel-tracing/providers/langwatch.mdx +2 -2
  227. package/.docs/raw/reference/observability/otel-tracing/providers/new-relic.mdx +1 -1
  228. package/.docs/raw/reference/observability/otel-tracing/providers/signoz.mdx +1 -1
  229. package/.docs/raw/reference/observability/otel-tracing/providers/traceloop.mdx +1 -1
  230. package/.docs/raw/reference/processors/batch-parts-processor.mdx +13 -10
  231. package/.docs/raw/reference/processors/language-detector.mdx +27 -17
  232. package/.docs/raw/reference/processors/moderation-processor.mdx +26 -17
  233. package/.docs/raw/reference/processors/pii-detector.mdx +28 -18
  234. package/.docs/raw/reference/processors/prompt-injection-detector.mdx +25 -17
  235. package/.docs/raw/reference/processors/system-prompt-scrubber.mdx +26 -17
  236. package/.docs/raw/reference/processors/token-limiter-processor.mdx +22 -15
  237. package/.docs/raw/reference/processors/unicode-normalizer.mdx +13 -12
  238. package/.docs/raw/reference/rag/chunk.mdx +41 -23
  239. package/.docs/raw/reference/rag/database-config.mdx +56 -38
  240. package/.docs/raw/reference/rag/document.mdx +1 -1
  241. package/.docs/raw/reference/rag/embeddings.mdx +1 -1
  242. package/.docs/raw/reference/rag/extract-params.mdx +1 -1
  243. package/.docs/raw/reference/rag/graph-rag.mdx +1 -1
  244. package/.docs/raw/reference/rag/metadata-filters.mdx +23 -26
  245. package/.docs/raw/reference/rag/rerank.mdx +1 -1
  246. package/.docs/raw/reference/rag/rerankWithScorer.mdx +2 -2
  247. package/.docs/raw/reference/scorers/answer-relevancy.mdx +35 -17
  248. package/.docs/raw/reference/scorers/answer-similarity.mdx +84 -68
  249. package/.docs/raw/reference/scorers/bias.mdx +22 -19
  250. package/.docs/raw/reference/scorers/completeness.mdx +21 -16
  251. package/.docs/raw/reference/scorers/content-similarity.mdx +12 -10
  252. package/.docs/raw/reference/scorers/context-precision.mdx +73 -64
  253. package/.docs/raw/reference/scorers/context-relevance.mdx +142 -126
  254. package/.docs/raw/reference/scorers/create-scorer.mdx +93 -61
  255. package/.docs/raw/reference/scorers/faithfulness.mdx +21 -13
  256. package/.docs/raw/reference/scorers/hallucination.mdx +17 -12
  257. package/.docs/raw/reference/scorers/keyword-coverage.mdx +32 -27
  258. package/.docs/raw/reference/scorers/mastra-scorer.mdx +39 -33
  259. package/.docs/raw/reference/scorers/noise-sensitivity.mdx +203 -152
  260. package/.docs/raw/reference/scorers/prompt-alignment.mdx +186 -132
  261. package/.docs/raw/reference/scorers/run-experiment.mdx +40 -31
  262. package/.docs/raw/reference/scorers/textual-difference.mdx +25 -26
  263. package/.docs/raw/reference/scorers/tone-consistency.mdx +29 -26
  264. package/.docs/raw/reference/scorers/tool-call-accuracy.mdx +180 -176
  265. package/.docs/raw/reference/scorers/toxicity.mdx +35 -31
  266. package/.docs/raw/reference/storage/cloudflare-d1.mdx +1 -1
  267. package/.docs/raw/reference/storage/cloudflare.mdx +1 -1
  268. package/.docs/raw/reference/storage/dynamodb.mdx +1 -1
  269. package/.docs/raw/reference/storage/lance.mdx +1 -1
  270. package/.docs/raw/reference/storage/libsql.mdx +2 -2
  271. package/.docs/raw/reference/storage/mongodb.mdx +4 -5
  272. package/.docs/raw/reference/storage/mssql.mdx +5 -4
  273. package/.docs/raw/reference/storage/postgresql.mdx +35 -33
  274. package/.docs/raw/reference/storage/upstash.mdx +6 -5
  275. package/.docs/raw/reference/streaming/ChunkType.mdx +788 -314
  276. package/.docs/raw/reference/streaming/agents/MastraModelOutput.mdx +265 -109
  277. package/.docs/raw/reference/streaming/agents/stream.mdx +375 -266
  278. package/.docs/raw/reference/streaming/agents/streamLegacy.mdx +233 -162
  279. package/.docs/raw/reference/streaming/workflows/observeStream.mdx +4 -4
  280. package/.docs/raw/reference/streaming/workflows/observeStreamVNext.mdx +5 -5
  281. package/.docs/raw/reference/streaming/workflows/resumeStreamVNext.mdx +24 -20
  282. package/.docs/raw/reference/streaming/workflows/stream.mdx +35 -26
  283. package/.docs/raw/reference/streaming/workflows/streamVNext.mdx +36 -27
  284. package/.docs/raw/reference/templates/overview.mdx +16 -39
  285. package/.docs/raw/reference/tools/client.mdx +1 -1
  286. package/.docs/raw/reference/tools/create-tool.mdx +45 -35
  287. package/.docs/raw/reference/tools/document-chunker-tool.mdx +2 -2
  288. package/.docs/raw/reference/tools/graph-rag-tool.mdx +12 -12
  289. package/.docs/raw/reference/tools/mcp-client.mdx +70 -64
  290. package/.docs/raw/reference/tools/mcp-server.mdx +91 -78
  291. package/.docs/raw/reference/tools/vector-query-tool.mdx +48 -38
  292. package/.docs/raw/reference/vectors/astra.mdx +1 -1
  293. package/.docs/raw/reference/vectors/chroma.mdx +25 -19
  294. package/.docs/raw/reference/vectors/couchbase.mdx +4 -4
  295. package/.docs/raw/reference/vectors/lance.mdx +5 -6
  296. package/.docs/raw/reference/vectors/libsql.mdx +1 -1
  297. package/.docs/raw/reference/vectors/mongodb.mdx +1 -1
  298. package/.docs/raw/reference/vectors/opensearch.mdx +1 -1
  299. package/.docs/raw/reference/vectors/pg.mdx +8 -4
  300. package/.docs/raw/reference/vectors/pinecone.mdx +1 -1
  301. package/.docs/raw/reference/vectors/qdrant.mdx +1 -1
  302. package/.docs/raw/reference/vectors/s3vectors.mdx +35 -27
  303. package/.docs/raw/reference/vectors/turbopuffer.mdx +1 -1
  304. package/.docs/raw/reference/vectors/upstash.mdx +33 -25
  305. package/.docs/raw/reference/vectors/vectorize.mdx +1 -1
  306. package/.docs/raw/reference/voice/azure.mdx +1 -1
  307. package/.docs/raw/reference/voice/cloudflare.mdx +1 -1
  308. package/.docs/raw/reference/voice/composite-voice.mdx +1 -1
  309. package/.docs/raw/reference/voice/deepgram.mdx +1 -1
  310. package/.docs/raw/reference/voice/elevenlabs.mdx +1 -1
  311. package/.docs/raw/reference/voice/google-gemini-live.mdx +6 -4
  312. package/.docs/raw/reference/voice/google.mdx +1 -1
  313. package/.docs/raw/reference/voice/mastra-voice.mdx +1 -1
  314. package/.docs/raw/reference/voice/murf.mdx +1 -1
  315. package/.docs/raw/reference/voice/openai-realtime.mdx +1 -1
  316. package/.docs/raw/reference/voice/openai.mdx +1 -1
  317. package/.docs/raw/reference/voice/playai.mdx +1 -1
  318. package/.docs/raw/reference/voice/sarvam.mdx +1 -1
  319. package/.docs/raw/reference/voice/speechify.mdx +1 -1
  320. package/.docs/raw/reference/voice/voice.addInstructions.mdx +1 -1
  321. package/.docs/raw/reference/voice/voice.addTools.mdx +1 -1
  322. package/.docs/raw/reference/voice/voice.answer.mdx +1 -1
  323. package/.docs/raw/reference/voice/voice.close.mdx +1 -1
  324. package/.docs/raw/reference/voice/voice.connect.mdx +1 -1
  325. package/.docs/raw/reference/voice/voice.events.mdx +1 -1
  326. package/.docs/raw/reference/voice/voice.getSpeakers.mdx +23 -30
  327. package/.docs/raw/reference/voice/voice.listen.mdx +1 -1
  328. package/.docs/raw/reference/voice/voice.off.mdx +1 -1
  329. package/.docs/raw/reference/voice/voice.on.mdx +1 -1
  330. package/.docs/raw/reference/voice/voice.send.mdx +1 -1
  331. package/.docs/raw/reference/voice/voice.speak.mdx +1 -1
  332. package/.docs/raw/reference/voice/voice.updateConfig.mdx +1 -1
  333. package/.docs/raw/reference/workflows/run-methods/cancel.mdx +4 -3
  334. package/.docs/raw/reference/workflows/run-methods/resume.mdx +49 -34
  335. package/.docs/raw/reference/workflows/run-methods/start.mdx +43 -31
  336. package/.docs/raw/reference/workflows/run-methods/watch.mdx +7 -8
  337. package/.docs/raw/reference/workflows/run.mdx +7 -10
  338. package/.docs/raw/reference/workflows/step.mdx +15 -12
  339. package/.docs/raw/reference/workflows/workflow-methods/branch.mdx +2 -2
  340. package/.docs/raw/reference/workflows/workflow-methods/commit.mdx +1 -1
  341. package/.docs/raw/reference/workflows/workflow-methods/create-run.mdx +7 -7
  342. package/.docs/raw/reference/workflows/workflow-methods/dountil.mdx +2 -2
  343. package/.docs/raw/reference/workflows/workflow-methods/dowhile.mdx +2 -2
  344. package/.docs/raw/reference/workflows/workflow-methods/foreach.mdx +1 -1
  345. package/.docs/raw/reference/workflows/workflow-methods/map.mdx +3 -2
  346. package/.docs/raw/reference/workflows/workflow-methods/parallel.mdx +1 -1
  347. package/.docs/raw/reference/workflows/workflow-methods/sendEvent.mdx +5 -5
  348. package/.docs/raw/reference/workflows/workflow-methods/sleep.mdx +3 -2
  349. package/.docs/raw/reference/workflows/workflow-methods/sleepUntil.mdx +3 -2
  350. package/.docs/raw/reference/workflows/workflow-methods/then.mdx +1 -1
  351. package/.docs/raw/reference/workflows/workflow-methods/waitForEvent.mdx +3 -3
  352. package/.docs/raw/reference/workflows/workflow.mdx +13 -10
  353. package/.docs/raw/scorers/custom-scorers.mdx +58 -48
  354. package/.docs/raw/scorers/evals-old-api/custom-eval.mdx +6 -8
  355. package/.docs/raw/scorers/evals-old-api/overview.mdx +8 -8
  356. package/.docs/raw/scorers/evals-old-api/running-in-ci.mdx +9 -9
  357. package/.docs/raw/scorers/evals-old-api/textual-evals.mdx +5 -5
  358. package/.docs/raw/scorers/off-the-shelf-scorers.mdx +3 -1
  359. package/.docs/raw/scorers/overview.mdx +20 -19
  360. package/.docs/raw/server-db/custom-api-routes.mdx +8 -8
  361. package/.docs/raw/server-db/mastra-client.mdx +56 -54
  362. package/.docs/raw/server-db/middleware.mdx +11 -7
  363. package/.docs/raw/server-db/production-server.mdx +5 -7
  364. package/.docs/raw/server-db/runtime-context.mdx +41 -38
  365. package/.docs/raw/server-db/storage.mdx +82 -87
  366. package/.docs/raw/streaming/events.mdx +24 -16
  367. package/.docs/raw/streaming/overview.mdx +17 -18
  368. package/.docs/raw/streaming/tool-streaming.mdx +9 -10
  369. package/.docs/raw/streaming/workflow-streaming.mdx +14 -12
  370. package/.docs/raw/tools-mcp/advanced-usage.mdx +2 -2
  371. package/.docs/raw/tools-mcp/mcp-overview.mdx +92 -102
  372. package/.docs/raw/tools-mcp/overview.mdx +9 -14
  373. package/.docs/raw/voice/overview.mdx +273 -250
  374. package/.docs/raw/voice/speech-to-speech.mdx +14 -12
  375. package/.docs/raw/voice/speech-to-text.mdx +2 -2
  376. package/.docs/raw/voice/text-to-speech.mdx +2 -2
  377. package/.docs/raw/workflows/agents-and-tools.mdx +29 -28
  378. package/.docs/raw/workflows/control-flow.mdx +24 -24
  379. package/.docs/raw/workflows/error-handling.mdx +15 -17
  380. package/.docs/raw/workflows/human-in-the-loop.mdx +39 -39
  381. package/.docs/raw/workflows/inngest-workflow.mdx +33 -29
  382. package/.docs/raw/workflows/input-data-mapping.mdx +9 -9
  383. package/.docs/raw/workflows/overview.mdx +60 -60
  384. package/.docs/raw/workflows/snapshots.mdx +54 -36
  385. package/.docs/raw/workflows/suspend-and-resume.mdx +52 -57
  386. package/.docs/raw/workflows-legacy/control-flow.mdx +15 -17
  387. package/.docs/raw/workflows-legacy/dynamic-workflows.mdx +3 -1
  388. package/.docs/raw/workflows-legacy/error-handling.mdx +8 -6
  389. package/.docs/raw/workflows-legacy/nested-workflows.mdx +6 -0
  390. package/.docs/raw/workflows-legacy/overview.mdx +28 -26
  391. package/.docs/raw/workflows-legacy/runtime-variables.mdx +4 -2
  392. package/.docs/raw/workflows-legacy/steps.mdx +5 -3
  393. package/.docs/raw/workflows-legacy/suspend-and-resume.mdx +10 -8
  394. package/.docs/raw/workflows-legacy/variables.mdx +10 -8
  395. package/CHANGELOG.md +14 -0
  396. package/package.json +5 -5
  397. package/.docs/raw/memory/storage/memory-with-mongodb.mdx +0 -148
@@ -1,11 +1,11 @@
1
1
  ---
2
- title: "Suspend & Resume Workflows | Human-in-the-Loop | Mastra Docs"
2
+ title: "Suspend & Resume | Workflows | Mastra Docs"
3
3
  description: "Suspend and resume in Mastra workflows allows you to pause execution while waiting for external input or resources."
4
4
  ---
5
5
 
6
6
  # Suspend & Resume
7
7
 
8
- Workflows can be paused at any step, with their current state persisted as a [snapshot](./snapshots.mdx) in storage. Execution can then be resumed from this saved snapshot when ready. Persisting the snapshot ensures the workflow state is maintained across sessions, deployments, and server restarts, essential for workflows that may remain suspended while awaiting external input or resources.
8
+ Workflows can be paused at any step, with their current state persisted as a [snapshot](./snapshots) in storage. Execution can then be resumed from this saved snapshot when ready. Persisting the snapshot ensures the workflow state is maintained across sessions, deployments, and server restarts, essential for workflows that may remain suspended while awaiting external input or resources.
9
9
 
10
10
  Common scenarios for suspending workflows include:
11
11
 
@@ -33,19 +33,19 @@ When running a workflow, its `status` can be one of the following:
33
33
 
34
34
  To pause execution at a specific step until user input is received, use the `⁠suspend` function to temporarily halt the workflow, allowing it to resume only when the necessary data is provided.
35
35
 
36
- ![Suspending a workflow with suspend()](/image/workflows/workflows-suspend-resume-suspend.jpg)
36
+ ![Suspending a workflow with suspend()](/img/workflows/workflows-suspend-resume-suspend.jpg)
37
37
 
38
- ```typescript {16} filename="src/mastra/workflows/test-workflow.ts" showLineNumbers copy
38
+ ```typescript {16} title="src/mastra/workflows/test-workflow.ts" showLineNumbers copy
39
39
  const step1 = createStep({
40
40
  id: "step-1",
41
41
  inputSchema: z.object({
42
- input: z.string()
42
+ input: z.string(),
43
43
  }),
44
44
  outputSchema: z.object({
45
- output: z.string()
45
+ output: z.string(),
46
46
  }),
47
47
  resumeSchema: z.object({
48
- city: z.string()
48
+ city: z.string(),
49
49
  }),
50
50
  execute: async ({ resumeData, suspend }) => {
51
51
  const { city } = resumeData ?? {};
@@ -55,7 +55,7 @@ const step1 = createStep({
55
55
  }
56
56
 
57
57
  return { output: "" };
58
- }
58
+ },
59
59
  });
60
60
 
61
61
  export const testWorkflow = createWorkflow({
@@ -65,21 +65,21 @@ export const testWorkflow = createWorkflow({
65
65
  .commit();
66
66
  ```
67
67
 
68
- > For more details, check out the [Suspend workflow example](../../examples/workflows/human-in-the-loop.mdx#suspend-workflow).
68
+ > For more details, check out the [Suspend workflow example](/examples/workflows_legacy/suspend-and-resume).
69
69
 
70
70
  ### Identifying suspended steps
71
71
 
72
72
  To resume a suspended workflow, inspect the `suspended` array in the result to determine which step needs input:
73
73
 
74
- ```typescript {15} filename="src/mastra/workflows/test-workflow.ts" showLineNumbers copy
74
+ ```typescript {15} title="src/mastra/workflows/test-workflow.ts" showLineNumbers copy
75
75
  import { mastra } from "./mastra";
76
76
 
77
77
  const run = await mastra.getWorkflow("testWorkflow").createRunAsync();
78
78
 
79
79
  const result = await run.start({
80
80
  inputData: {
81
- city: "London"
82
- }
81
+ city: "London",
82
+ },
83
83
  });
84
84
 
85
85
  console.log(JSON.stringify(result, null, 2));
@@ -88,8 +88,8 @@ if (result.status === "suspended") {
88
88
  const resumedResult = await run.resume({
89
89
  step: result.suspended[0],
90
90
  resumeData: {
91
- city: "Berlin"
92
- }
91
+ city: "Berlin",
92
+ },
93
93
  });
94
94
  }
95
95
  ```
@@ -103,52 +103,48 @@ In this case, the logic resumes the first step listed in the `suspended` array.
103
103
  // ...
104
104
  "step-1": {
105
105
  // ...
106
- "status": "suspended",
106
+ "status": "suspended"
107
107
  }
108
108
  },
109
- "suspended": [
110
- [
111
- "step-1"
112
- ]
113
- ]
109
+ "suspended": [["step-1"]]
114
110
  }
115
111
  ```
116
112
 
117
- > See [Run Workflow Results](./overview.mdx#run-workflow-results) for more details.
113
+ > See [Workflow Output](./overview#workflow-output) for more details.
118
114
 
119
115
  ## Providing user feedback with suspend
120
116
 
121
117
  When a workflow is suspended, feedback can be surfaced to the user through the `suspendSchema`. Include a reason in the `suspend` payload to explain why the workflow paused.
122
118
 
123
- ```typescript {13,23} filename="src/mastra/workflows/test-workflow.ts" showLineNumbers copy
119
+ ```typescript {13,23} title="src/mastra/workflows/test-workflow.ts" showLineNumbers copy
124
120
  import { createWorkflow, createStep } from "@mastra/core/workflows";
125
121
  import { z } from "zod";
126
122
 
127
123
  const step1 = createStep({
128
124
  id: "step-1",
129
125
  inputSchema: z.object({
130
- value: z.string()
126
+ value: z.string(),
131
127
  }),
132
128
  resumeSchema: z.object({
133
- confirm: z.boolean()
129
+ confirm: z.boolean(),
134
130
  }),
135
131
  suspendSchema: z.object({
136
- reason: z.string()
132
+ reason: z.string(),
137
133
  }),
138
134
  outputSchema: z.object({
139
- value: z.string()
135
+ value: z.string(),
140
136
  }),
141
137
  execute: async ({ resumeData, suspend }) => {
142
138
  const { confirm } = resumeData ?? {};
143
139
 
144
140
  if (!confirm) {
145
141
  return await suspend({
146
- reason: "Confirm to continue"
142
+ reason: "Confirm to continue",
147
143
  });
148
144
  }
149
145
 
150
146
  return { value: "" };
151
- }
147
+ },
152
148
  });
153
149
 
154
150
  export const testWorkflow = createWorkflow({
@@ -156,7 +152,6 @@ export const testWorkflow = createWorkflow({
156
152
  })
157
153
  .then(step1)
158
154
  .commit();
159
-
160
155
  ```
161
156
 
162
157
  In this case, the reason provided explains that the user must confirm to continue.
@@ -168,36 +163,36 @@ In this case, the reason provided explains that the user must confirm to continu
168
163
  "status": "suspended",
169
164
  "suspendPayload": {
170
165
  "reason": "Confirm to continue"
171
- },
166
+ }
172
167
  }
173
168
  }
174
169
  ```
175
170
 
176
- > See [Run Workflow Results](./overview.mdx#run-workflow-results) for more details.
171
+ > See [Workflow Output](./overview#workflow-output) for more details.
177
172
 
178
173
  ## Resuming a workflow with `resume()`
179
174
 
180
175
  A workflow can be resumed by calling `resume` and providing the required `resumeData`. You can either explicitly specify which step to resume from, or when exactly one step is suspended, omit the `step` parameter and the workflow will automatically resume that step.
181
176
 
182
- ```typescript {16-18} filename="src/mastra/workflows/test-workflow.ts" showLineNumbers copy
177
+ ```typescript {16-18} title="src/mastra/workflows/test-workflow.ts" showLineNumbers copy
183
178
  import { mastra } from "./mastra";
184
179
 
185
180
  const run = await mastra.getWorkflow("testWorkflow").createRunAsync();
186
181
 
187
182
  const result = await run.start({
188
- inputData: {
189
- city: "London"
190
- }
183
+ inputData: {
184
+ city: "London",
185
+ },
191
186
  });
192
187
 
193
188
  console.log(JSON.stringify(result, null, 2));
194
189
 
195
190
  if (result.status === "suspended") {
196
191
  const resumedResult = await run.resume({
197
- step: 'step-1',
192
+ step: "step-1",
198
193
  resumeData: {
199
- city: "Berlin"
200
- }
194
+ city: "Berlin",
195
+ },
201
196
  });
202
197
 
203
198
  console.log(JSON.stringify(resumedResult, null, 2));
@@ -206,10 +201,10 @@ if (result.status === "suspended") {
206
201
 
207
202
  You can also omit the `step` parameter when exactly one step is suspended:
208
203
 
209
- ```typescript {5} filename="src/mastra/workflows/test-workflow.ts" showLineNumbers copy
204
+ ```typescript {5} title="src/mastra/workflows/test-workflow.ts" showLineNumbers copy
210
205
  const resumedResult = await run.resume({
211
206
  resumeData: {
212
- city: "Berlin"
207
+ city: "Berlin",
213
208
  },
214
209
  // step parameter omitted - automatically resumes the single suspended step
215
210
  });
@@ -217,43 +212,43 @@ const resumedResult = await run.resume({
217
212
 
218
213
  You can pass `runtimeContext` as an argument to both the `start` and `resume` commands.
219
214
 
220
- ```typescript filename="src/mastra/workflows/test-workflow.ts"
215
+ ```typescript title="src/mastra/workflows/test-workflow.ts"
221
216
  import { RuntimeContext } from "@mastra/core/runtime-context";
222
217
 
223
218
  const runtimeContext = new RuntimeContext();
224
219
 
225
220
  const result = await run.start({
226
- step: 'step-1',
221
+ step: "step-1",
227
222
  inputData: {
228
- city: "London"
223
+ city: "London",
229
224
  },
230
- runtimeContext
225
+ runtimeContext,
231
226
  });
232
227
 
233
228
  const resumedResult = await run.resume({
234
- step: 'step-1',
229
+ step: "step-1",
235
230
  resumeData: {
236
- city: "New York"
231
+ city: "New York",
237
232
  },
238
- runtimeContext
233
+ runtimeContext,
239
234
  });
240
235
  ```
241
236
 
242
- > See [Runtime Context](../server-db/runtime-context.mdx) for more information.
237
+ > See [Runtime Context](/docs/server-db/runtime-context) for more information.
243
238
 
244
239
  ### Resuming nested workflows
245
240
 
246
241
  To resume a suspended nested workflow pass the workflow instance to the `step` parameter of the `resume` function.
247
242
 
248
- ```typescript {33-34} filename="src/mastra/workflows/test-workflow.ts" showLineNumbers copy
243
+ ```typescript {33-34} title="src/mastra/workflows/test-workflow.ts" showLineNumbers copy
249
244
  const dowhileWorkflow = createWorkflow({
250
- id: 'dowhile-workflow',
245
+ id: "dowhile-workflow",
251
246
  inputSchema: z.object({ value: z.number() }),
252
247
  outputSchema: z.object({ value: z.number() }),
253
248
  })
254
249
  .dountil(
255
250
  createWorkflow({
256
- id: 'simple-resume-workflow',
251
+ id: "simple-resume-workflow",
257
252
  inputSchema: z.object({ value: z.number() }),
258
253
  outputSchema: z.object({ value: z.number() }),
259
254
  steps: [incrementStep, resumeStep],
@@ -265,7 +260,7 @@ const dowhileWorkflow = createWorkflow({
265
260
  )
266
261
  .then(
267
262
  createStep({
268
- id: 'final',
263
+ id: "final",
269
264
  inputSchema: z.object({ value: z.number() }),
270
265
  outputSchema: z.object({ value: z.number() }),
271
266
  execute: async ({ inputData }) => ({ value: inputData.value }),
@@ -279,7 +274,7 @@ const result = await run.start({ inputData: { value: 0 } });
279
274
  if (result.status === "suspended") {
280
275
  const resumedResult = await run.resume({
281
276
  resumeData: { value: 2 },
282
- step: ['simple-resume-workflow', 'resume'],
277
+ step: ["simple-resume-workflow", "resume"],
283
278
  });
284
279
 
285
280
  console.log(JSON.stringify(resumedResult, null, 2));
@@ -292,7 +287,7 @@ Workflows can also pause execution for timed delays or external events. These me
292
287
 
293
288
  **Available methods:**
294
289
 
295
- - [`.sleep()`](../../reference/workflows/workflow-methods/sleep.mdx): Pause for a specified number of milliseconds
296
- - [`.sleepUntil()`](../../reference/workflows/workflow-methods/sleepUntil.mdx) : Pause until a specific date
297
- - [`.waitForEvent()`](../../reference/workflows/workflow-methods/waitForEvent.mdx): Pause until an external event is received
298
- - [`.sendEvent()`](../../reference/workflows/workflow-methods/sendEvent.mdx) : Send an event to resume a waiting workflow
290
+ - [`.sleep()`](/reference/workflows/workflow-methods/sleep): Pause for a specified number of milliseconds
291
+ - [`.sleepUntil()`](/reference/workflows/workflow-methods/sleepUntil) : Pause until a specific date
292
+ - [`.waitForEvent()`](/reference/workflows/workflow-methods/waitForEvent): Pause until an external event is received
293
+ - [`.sendEvent()`](/reference/workflows/workflow-methods/sendEvent) : Send an event to resume a waiting workflow
@@ -1,5 +1,7 @@
1
1
  ---
2
- title: "Branching, Merging, Conditions | Workflows (Legacy) | Mastra Docs"
2
+ title: "Control Flow in Legacy Workflows: Branching, Merging, and Conditions | Workflows (Legacy) | Mastra Docs"
3
+ sidebar_position: 7
4
+ sidebar_label: "Control Flow"
3
5
  description: "Control flow in Mastra legacy workflows allows you to manage branching, merging, and conditions to construct legacy workflows that meet your logic requirements."
4
6
  ---
5
7
 
@@ -15,7 +17,7 @@ You can run multiple steps at the same time if they don't depend on each other.
15
17
  myWorkflow.step(fetchUserData).step(fetchOrderData);
16
18
  ```
17
19
 
18
- See the [Parallel Steps](../../examples/workflows_legacy/parallel-steps.mdx) example for more details.
20
+ See the [Parallel Steps](/examples/workflows_legacy/parallel-steps) example for more details.
19
21
 
20
22
  ## Sequential Execution
21
23
 
@@ -25,7 +27,7 @@ Sometimes you need to run steps in strict order to ensure outputs from one step
25
27
  myWorkflow.step(fetchOrderData).then(validateData).then(processOrder);
26
28
  ```
27
29
 
28
- See the [Sequential Steps](../../examples/workflows_legacy/sequential-steps.mdx) example for more details.
30
+ See the [Sequential Steps](/examples/workflows_legacy/sequential-steps) example for more details.
29
31
 
30
32
  ## Branching and Merging Paths
31
33
 
@@ -49,7 +51,7 @@ In this example:
49
51
  - Separately, stepA also triggers stepC, which in turn leads to stepE.
50
52
  - Separately, stepF is triggered when both stepD and stepE are completed.
51
53
 
52
- See the [Branching Paths](../../examples/workflows_legacy/branching-paths.mdx) example for more details.
54
+ See the [Branching Paths](/examples/workflows_legacy/branching-paths) example for more details.
53
55
 
54
56
  ## Merging Multiple Branches
55
57
 
@@ -356,7 +358,7 @@ The `getStepResult` method provides a type-safe way to access step results. This
356
358
 
357
359
  For better type safety, you can provide a type parameter to `getStepResult`:
358
360
 
359
- ```typescript showLineNumbers filename="src/mastra/workflows/get-step-result.ts" copy
361
+ ```typescript showLineNumbers title="src/mastra/workflows/get-step-result.ts" copy
360
362
  import { LegacyStep, LegacyWorkflow } from "@mastra/core/workflows/legacy";
361
363
  import { z } from "zod";
362
364
 
@@ -395,7 +397,7 @@ const analyzeDataStep = new LegacyStep({
395
397
 
396
398
  The most type-safe approach is to reference the step directly in the `getStepResult` call:
397
399
 
398
- ```typescript showLineNumbers filename="src/mastra/workflows/step-reference.ts" copy
400
+ ```typescript showLineNumbers title="src/mastra/workflows/step-reference.ts" copy
399
401
  import { LegacyStep, LegacyWorkflow } from "@mastra/core/workflows/legacy";
400
402
  import { z } from "zod";
401
403
 
@@ -442,7 +444,7 @@ Variable mapping is an explicit way to define data flow between steps.
442
444
  This approach makes dependencies clear and provides good type safety.
443
445
  The data injected into the step is available in the `context.inputData` object, and typed based on the `inputSchema` of the step.
444
446
 
445
- ```typescript showLineNumbers filename="src/mastra/workflows/variable-mapping.ts" copy
447
+ ```typescript showLineNumbers title="src/mastra/workflows/variable-mapping.ts" copy
446
448
  import { LegacyStep, LegacyWorkflow } from "@mastra/core/workflows/legacy";
447
449
  import { z } from "zod";
448
450
 
@@ -495,14 +497,14 @@ workflow
495
497
  .commit();
496
498
  ```
497
499
 
498
- For more details on variable mapping, see the [Data Mapping with Workflow Variables](./variables.mdx) documentation.
500
+ For more details on variable mapping, see the [Data Mapping with Workflow Variables](./variables) documentation.
499
501
 
500
502
  ### Using the Context Object
501
503
 
502
504
  The context object provides direct access to all step results and their outputs. This approach is more flexible but requires careful handling to maintain type safety.
503
505
  You can access step results directly through the `context.steps` object:
504
506
 
505
- ```typescript showLineNumbers filename="src/mastra/workflows/context-access.ts" copy
507
+ ```typescript showLineNumbers title="src/mastra/workflows/context-access.ts" copy
506
508
  import { LegacyStep, LegacyWorkflow } from "@mastra/core/workflows/legacy";
507
509
  import { z } from "zod";
508
510
 
@@ -537,7 +539,7 @@ workflow.step(fetchUserStep).then(processOrderStep).commit();
537
539
  For comprehensive type safety across your entire workflow, you can define types for all steps and pass them to the Workflow
538
540
  This allows you to get type safety for the context object on conditions, and on step results in the final workflow output.
539
541
 
540
- ```typescript showLineNumbers filename="src/mastra/workflows/workflow-typing.ts" copy
542
+ ```typescript showLineNumbers title="src/mastra/workflows/workflow-typing.ts" copy
541
543
  import { LegacyStep, LegacyWorkflow } from "@mastra/core/workflows/legacy";
542
544
  import { z } from "zod";
543
545
 
@@ -592,7 +594,7 @@ workflow
592
594
 
593
595
  In addition to step results, you can access the original trigger data that started the workflow:
594
596
 
595
- ```typescript showLineNumbers filename="src/mastra/workflows/trigger-data.ts" copy
597
+ ```typescript showLineNumbers title="src/mastra/workflows/trigger-data.ts" copy
596
598
  import { LegacyStep, LegacyWorkflow } from "@mastra/core/workflows/legacy";
597
599
  import { z } from "zod";
598
600
 
@@ -630,7 +632,7 @@ workflow.step(processOrderStep).commit();
630
632
 
631
633
  The data injected into the step is available in the `context.inputData` object, and typed based on the `inputSchema` of the step.
632
634
 
633
- ```typescript showLineNumbers filename="src/mastra/workflows/resume-data.ts" copy
635
+ ```typescript showLineNumbers title="src/mastra/workflows/resume-data.ts" copy
634
636
  import { LegacyStep, LegacyWorkflow } from "@mastra/core/workflows/legacy";
635
637
  import { z } from "zod";
636
638
 
@@ -678,7 +680,7 @@ console.log({ resumedResult });
678
680
 
679
681
  You can get typed access to the results of a workflow by injecting the step types into the `Workflow` type params:
680
682
 
681
- ```typescript showLineNumbers filename="src/mastra/workflows/get-results.ts" copy
683
+ ```typescript showLineNumbers title="src/mastra/workflows/get-results.ts" copy
682
684
  import { LegacyStep, LegacyWorkflow } from "@mastra/core/workflows/legacy";
683
685
  import { z } from "zod";
684
686
 
@@ -741,23 +743,19 @@ if (result.results.fetchUser.status === "success") {
741
743
  ### Best Practices for Data Flow
742
744
 
743
745
  1. **Use getStepResult with Step References for Type Safety**
744
-
745
746
  - Ensures TypeScript can infer the correct types
746
747
  - Catches type errors at compile time
747
748
 
748
749
  2. \*_Use Variable Mapping for Explicit Dependencies_
749
-
750
750
  - Makes data flow clear and maintainable
751
751
  - Provides good documentation of step dependencies
752
752
 
753
753
  3. **Define Output Schemas for Steps**
754
-
755
754
  - Validates data at runtime
756
755
  - Validates return type of the `execute` function
757
756
  - Improves type inference in TypeScript
758
757
 
759
758
  4. **Handle Missing Data Gracefully**
760
-
761
759
  - Always check if step results exist before accessing properties
762
760
  - Provide fallback values for optional data
763
761
 
@@ -1,5 +1,7 @@
1
1
  ---
2
- title: "Dynamic Workflows (Legacy) | Mastra Docs"
2
+ title: "Dynamic Workflows (Legacy) | Workflows (Legacy) | Mastra Docs"
3
+ sidebar_position: 3
4
+ sidebar_label: "Dynamic Workflows"
3
5
  description: "Learn how to create dynamic workflows within legacy workflow steps, allowing for flexible workflow creation based on runtime conditions."
4
6
  ---
5
7
 
@@ -1,5 +1,7 @@
1
1
  ---
2
- title: "Error Handling in Workflows (Legacy) | Mastra Docs"
2
+ title: "Error Handling in Workflows (Legacy) | Workflows (Legacy) | Mastra Docs"
3
+ sidebar_position: 8
4
+ sidebar_label: "Error Handling"
3
5
  description: "Learn how to handle errors in Mastra legacy workflows using step retries, conditional branching, and monitoring."
4
6
  ---
5
7
 
@@ -49,7 +51,7 @@ const apiStep = new LegacyStep({
49
51
  });
50
52
  ```
51
53
 
52
- For more details about step retries, see the [Step Retries](../../reference/legacyWorkflows/step-retries.mdx) reference.
54
+ For more details about step retries, see the [Step Retries](/reference/legacyWorkflows/step-retries) reference.
53
55
 
54
56
  ## Conditional Branching
55
57
 
@@ -179,7 +181,7 @@ For more complex error handling scenarios, consider:
179
181
 
180
182
  ## Related
181
183
 
182
- - [Step Retries Reference](../../reference/legacyWorkflows/step-retries.mdx)
183
- - [Watch Method Reference](../../reference/legacyWorkflows/watch.mdx)
184
- - [Step Conditions](../../reference/legacyWorkflows/step-condition.mdx)
185
- - [Control Flow](./control-flow.mdx)
184
+ - [Step Retries Reference](/reference/legacyWorkflows/step-retries)
185
+ - [Watch Method Reference](/reference/legacyWorkflows/watch)
186
+ - [Step Conditions](/reference/legacyWorkflows/step-condition)
187
+ - [Control Flow](./control-flow)
@@ -1,3 +1,9 @@
1
+ ---
2
+ title: "Nested Workflows (Legacy) | Workflows (Legacy) | Mastra Docs"
3
+ sidebar_position: 4
4
+ sidebar_label: "Nested Workflows"
5
+ ---
6
+
1
7
  # Nested Workflows (Legacy)
2
8
 
3
9
  Mastra allows you to use workflows as steps within other workflows, enabling you to create modular and reusable workflow components. This feature helps in organizing complex workflows into smaller, manageable pieces and promotes code reuse.
@@ -1,5 +1,7 @@
1
1
  ---
2
- title: "Handling Complex LLM Operations | Workflows (Legacy) | Mastra"
2
+ title: "Handling Complex LLM Operations with Workflows (Legacy) | Workflows (Legacy) | Mastra Docs"
3
+ sidebar_position: 1
4
+ sidebar_label: "Overview"
3
5
  description: "Workflows in Mastra help you orchestrate complex sequences of operations with features like branching, parallel execution, resource suspension, and more."
4
6
  ---
5
7
 
@@ -7,14 +9,14 @@ description: "Workflows in Mastra help you orchestrate complex sequences of oper
7
9
 
8
10
  All the legacy workflow documentation is available on the links below.
9
11
 
10
- - [Steps](/docs/workflows-legacy/steps.mdx)
11
- - [Control Flow](/docs/workflows-legacy/control-flow.mdx)
12
- - [Variables](/docs/workflows-legacy/variables.mdx)
13
- - [Suspend & Resume](/docs/workflows-legacy/suspend-and-resume.mdx)
14
- - [Dynamic Workflows](/docs/workflows-legacy/dynamic-workflows.mdx)
15
- - [Error Handling](/docs/workflows-legacy/error-handling.mdx)
16
- - [Nested Workflows](/docs/workflows-legacy/nested-workflows.mdx)
17
- - [Runtime/Dynamic Variables](/docs/workflows-legacy/runtime-variables.mdx)
12
+ - [Steps](/docs/workflows-legacy/steps)
13
+ - [Control Flow](/docs/workflows-legacy/control-flow)
14
+ - [Variables](/docs/workflows-legacy/variables)
15
+ - [Suspend & Resume](/docs/workflows-legacy/suspend-and-resume)
16
+ - [Dynamic Workflows](/docs/workflows-legacy/dynamic-workflows)
17
+ - [Error Handling](/docs/workflows-legacy/error-handling)
18
+ - [Nested Workflows](/docs/workflows-legacy/nested-workflows)
19
+ - [Runtime/Dynamic Variables](/docs/workflows-legacy/runtime-variables)
18
20
 
19
21
  Workflows in Mastra help you orchestrate complex sequences of operations with features like branching, parallel execution, resource suspension, and more.
20
22
 
@@ -40,7 +42,7 @@ Let's examine each part of the workflow creation process:
40
42
 
41
43
  Here's how you define a workflow in Mastra. The `name` field determines the workflow's API endpoint (`/workflows/$NAME/`), while the `triggerSchema` defines the structure of the workflow's trigger data:
42
44
 
43
- ```ts filename="src/mastra/workflow/index.ts"
45
+ ```ts title="src/mastra/workflow/index.ts"
44
46
  import { LegacyStep, LegacyWorkflow } from "@mastra/core/workflows/legacy";
45
47
 
46
48
  const myWorkflow = new LegacyWorkflow({
@@ -55,7 +57,7 @@ const myWorkflow = new LegacyWorkflow({
55
57
 
56
58
  Now, we'll define the workflow's steps. Each step can have its own input and output schemas. Here, `stepOne` doubles an input value, and `stepTwo` increments that result if `stepOne` was successful. (To keep things simple, we aren't making any LLM calls in this example):
57
59
 
58
- ```ts filename="src/mastra/workflow/index.ts"
60
+ ```ts title="src/mastra/workflow/index.ts"
59
61
  const stepOne = new LegacyStep({
60
62
  id: "stepOne",
61
63
  outputSchema: z.object({
@@ -85,7 +87,7 @@ const stepTwo = new LegacyStep({
85
87
 
86
88
  Now, let's create the control flow, and "commit" (finalize the workflow). In this case, `stepOne` runs first and is followed by `stepTwo`.
87
89
 
88
- ```ts filename="src/mastra/workflow/index.ts"
90
+ ```ts title="src/mastra/workflow/index.ts"
89
91
  myWorkflow.step(stepOne).then(stepTwo).commit();
90
92
  ```
91
93
 
@@ -93,7 +95,7 @@ myWorkflow.step(stepOne).then(stepTwo).commit();
93
95
 
94
96
  Register your workflow with Mastra to enable logging and telemetry:
95
97
 
96
- ```ts showLineNumbers filename="src/mastra/index.ts"
98
+ ```ts showLineNumbers title="src/mastra/index.ts"
97
99
  import { Mastra } from "@mastra/core";
98
100
 
99
101
  export const mastra = new Mastra({
@@ -103,7 +105,7 @@ export const mastra = new Mastra({
103
105
 
104
106
  The workflow can also have the mastra instance injected into the context in the case where you need to create dynamic workflows:
105
107
 
106
- ```ts filename="src/mastra/workflow/index.ts"
108
+ ```ts title="src/mastra/workflow/index.ts"
107
109
  import { Mastra } from "@mastra/core";
108
110
  import { LegacyWorkflow } from "@mastra/core/workflows/legacy";
109
111
 
@@ -119,7 +121,7 @@ const myWorkflow = new LegacyWorkflow({
119
121
 
120
122
  Execute your workflow programmatically or via API:
121
123
 
122
- ```ts showLineNumbers filename="src/mastra/run-workflow.ts" copy
124
+ ```ts showLineNumbers title="src/mastra/run-workflow.ts" copy
123
125
  import { mastra } from "./index";
124
126
 
125
127
  // Get the workflow
@@ -146,23 +148,23 @@ This example shows the essentials: define your workflow, add steps, commit the w
146
148
 
147
149
  ## Defining Steps
148
150
 
149
- The basic building block of a workflow [is a step](./steps.mdx). Steps are defined using schemas for inputs and outputs, and can fetch prior step results.
151
+ The basic building block of a workflow [is a step](./steps). Steps are defined using schemas for inputs and outputs, and can fetch prior step results.
150
152
 
151
153
  ## Control Flow
152
154
 
153
- Workflows let you define a [control flow](./control-flow.mdx) to chain steps together in with parallel steps, branching paths, and more.
155
+ Workflows let you define a [control flow](./control-flow) to chain steps together in with parallel steps, branching paths, and more.
154
156
 
155
157
  ## Workflow Variables
156
158
 
157
- When you need to map data between steps or create dynamic data flows, [workflow variables](./variables.mdx) provide a powerful mechanism for passing information from one step to another and accessing nested properties within step outputs.
159
+ When you need to map data between steps or create dynamic data flows, [workflow variables](./variables) provide a powerful mechanism for passing information from one step to another and accessing nested properties within step outputs.
158
160
 
159
161
  ## Suspend and Resume
160
162
 
161
- When you need to pause execution for external data, user input, or asynchronous events, Mastra [supports suspension at any step](./suspend-and-resume.mdx), persisting the state of the workflow so you can resume it later.
163
+ When you need to pause execution for external data, user input, or asynchronous events, Mastra [supports suspension at any step](./suspend-and-resume), persisting the state of the workflow so you can resume it later.
162
164
 
163
165
  ## Observability and Debugging
164
166
 
165
- Mastra workflows automatically [log the input and output of each step within a workflow run](../../reference/observability/otel-config.mdx), allowing you to send this data to your preferred logging, telemetry, or observability tools.
167
+ Mastra workflows automatically [log the input and output of each step within a workflow run](/docs/observability/otel-tracing), allowing you to send this data to your preferred logging, telemetry, or observability tools.
166
168
 
167
169
  You can:
168
170
 
@@ -172,9 +174,9 @@ You can:
172
174
 
173
175
  ## More Resources
174
176
 
175
- - [Sequential Steps workflow example](../../examples/workflows_legacy/sequential-steps.mdx)
176
- - [Parallel Steps workflow example](../../examples/workflows_legacy/parallel-steps.mdx)
177
- - [Branching Paths workflow example](../../examples/workflows_legacy/branching-paths.mdx)
178
- - [Workflow Variables example](../../examples/workflows_legacy/workflow-variables.mdx)
179
- - [Cyclical Dependencies workflow example](../../examples/workflows_legacy/cyclical-dependencies.mdx)
180
- - [Suspend and Resume workflow example](../../examples/workflows_legacy/suspend-and-resume.mdx)
177
+ - [Sequential Steps workflow example](/examples/workflows_legacy/sequential-steps)
178
+ - [Parallel Steps workflow example](/examples/workflows_legacy/parallel-steps)
179
+ - [Branching Paths workflow example](/examples/workflows_legacy/branching-paths)
180
+ - [Workflow Variables example](/examples/workflows_legacy/workflow-variables)
181
+ - [Cyclical Dependencies workflow example](/examples/workflows_legacy/cyclical-dependencies)
182
+ - [Suspend and Resume workflow example](/examples/workflows_legacy/suspend-and-resume)
@@ -1,5 +1,7 @@
1
1
  ---
2
- title: "Runtime variables - dependency injection | Workflows (Legacy) | Mastra Docs"
2
+ title: "Workflow Runtime Variables (Legacy) | Workflows (Legacy) | Mastra Docs"
3
+ sidebar_position: 6
4
+ sidebar_label: "Runtime/Dynamic Variables"
3
5
  description: Learn how to use Mastra's dependency injection system to provide runtime configuration to workflows and steps.
4
6
  ---
5
7
 
@@ -41,7 +43,7 @@ await start({
41
43
 
42
44
  Here's how to dynamically set a multiplier value from an HTTP header:
43
45
 
44
- ```typescript filename="src/index.ts"
46
+ ```typescript title="src/index.ts"
45
47
  import { Mastra } from "@mastra/core";
46
48
  import { RuntimeContext } from "@mastra/core/di";
47
49
  import { workflow as myWorkflow } from "./workflows";
@@ -1,5 +1,7 @@
1
1
  ---
2
- title: "Creating Steps and Adding to Workflows (Legacy) | Mastra Docs"
2
+ title: "Defining Steps in a Workflow (Legacy) | Workflows (Legacy) | Mastra Docs"
3
+ sidebar_position: 2
4
+ sidebar_label: "Steps"
3
5
  description: "Steps in Mastra workflows provide a structured way to manage operations by defining inputs, outputs, and execution logic."
4
6
  ---
5
7
 
@@ -13,7 +15,7 @@ The code below shows how to define these steps inline or separately.
13
15
 
14
16
  You can create steps directly within your workflow using `.step()` and `.then()`. This code shows how to define, link, and execute two steps in sequence.
15
17
 
16
- ```typescript showLineNumbers filename="src/mastra/workflows/index.ts" copy
18
+ ```typescript showLineNumbers title="src/mastra/workflows/index.ts" copy
17
19
  import { Mastra } from "@mastra/core";
18
20
  import { LegacyStep, LegacyWorkflow } from "@mastra/core/workflows/legacy";
19
21
  import { z } from "zod";
@@ -66,7 +68,7 @@ export const mastra = new Mastra({
66
68
 
67
69
  If you prefer to manage your step logic in separate entities, you can define steps outside and then add them to your workflow. This code shows how to define steps independently and link them afterward.
68
70
 
69
- ```typescript showLineNumbers filename="src/mastra/workflows/index.ts" copy
71
+ ```typescript showLineNumbers title="src/mastra/workflows/index.ts" copy
70
72
  import { Mastra } from "@mastra/core";
71
73
  import { LegacyStep, LegacyWorkflow } from "@mastra/core/workflows/legacy";
72
74
  import { z } from "zod";