@mastra/mcp-docs-server 0.13.37 → 0.13.39-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.
Files changed (450) 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%2Fagent-builder.md +11 -11
  6. package/.docs/organized/changelogs/%40mastra%2Fai-sdk.md +16 -16
  7. package/.docs/organized/changelogs/%40mastra%2Fastra.md +10 -10
  8. package/.docs/organized/changelogs/%40mastra%2Fauth.md +6 -0
  9. package/.docs/organized/changelogs/%40mastra%2Fchroma.md +11 -11
  10. package/.docs/organized/changelogs/%40mastra%2Fclickhouse.md +10 -10
  11. package/.docs/organized/changelogs/%40mastra%2Fclient-js.md +38 -38
  12. package/.docs/organized/changelogs/%40mastra%2Fcloud.md +10 -10
  13. package/.docs/organized/changelogs/%40mastra%2Fcloudflare-d1.md +10 -10
  14. package/.docs/organized/changelogs/%40mastra%2Fcloudflare.md +10 -10
  15. package/.docs/organized/changelogs/%40mastra%2Fcore.md +88 -88
  16. package/.docs/organized/changelogs/%40mastra%2Fcouchbase.md +11 -11
  17. package/.docs/organized/changelogs/%40mastra%2Fdeployer-cloud.md +28 -28
  18. package/.docs/organized/changelogs/%40mastra%2Fdeployer-cloudflare.md +27 -27
  19. package/.docs/organized/changelogs/%40mastra%2Fdeployer-netlify.md +27 -27
  20. package/.docs/organized/changelogs/%40mastra%2Fdeployer-vercel.md +27 -27
  21. package/.docs/organized/changelogs/%40mastra%2Fdeployer.md +59 -59
  22. package/.docs/organized/changelogs/%40mastra%2Fdynamodb.md +11 -11
  23. package/.docs/organized/changelogs/%40mastra%2Fevals.md +11 -11
  24. package/.docs/organized/changelogs/%40mastra%2Ffastembed.md +6 -0
  25. package/.docs/organized/changelogs/%40mastra%2Flance.md +10 -10
  26. package/.docs/organized/changelogs/%40mastra%2Flibsql.md +11 -11
  27. package/.docs/organized/changelogs/%40mastra%2Floggers.md +11 -11
  28. package/.docs/organized/changelogs/%40mastra%2Fmcp-docs-server.md +25 -25
  29. package/.docs/organized/changelogs/%40mastra%2Fmcp-registry-registry.md +10 -10
  30. package/.docs/organized/changelogs/%40mastra%2Fmcp.md +11 -11
  31. package/.docs/organized/changelogs/%40mastra%2Fmemory.md +11 -11
  32. package/.docs/organized/changelogs/%40mastra%2Fmongodb.md +10 -10
  33. package/.docs/organized/changelogs/%40mastra%2Fmssql.md +11 -11
  34. package/.docs/organized/changelogs/%40mastra%2Fopensearch.md +10 -10
  35. package/.docs/organized/changelogs/%40mastra%2Fpg.md +10 -10
  36. package/.docs/organized/changelogs/%40mastra%2Fpinecone.md +10 -10
  37. package/.docs/organized/changelogs/%40mastra%2Fplayground-ui.md +48 -48
  38. package/.docs/organized/changelogs/%40mastra%2Fqdrant.md +11 -11
  39. package/.docs/organized/changelogs/%40mastra%2Frag.md +10 -10
  40. package/.docs/organized/changelogs/%40mastra%2Freact.md +24 -24
  41. package/.docs/organized/changelogs/%40mastra%2Fs3vectors.md +9 -0
  42. package/.docs/organized/changelogs/%40mastra%2Fschema-compat.md +6 -0
  43. package/.docs/organized/changelogs/%40mastra%2Fserver.md +40 -40
  44. package/.docs/organized/changelogs/%40mastra%2Fturbopuffer.md +10 -10
  45. package/.docs/organized/changelogs/%40mastra%2Fupstash.md +10 -10
  46. package/.docs/organized/changelogs/%40mastra%2Fvectorize.md +10 -10
  47. package/.docs/organized/changelogs/%40mastra%2Fvoice-azure.md +10 -10
  48. package/.docs/organized/changelogs/%40mastra%2Fvoice-cloudflare.md +11 -11
  49. package/.docs/organized/changelogs/%40mastra%2Fvoice-deepgram.md +11 -11
  50. package/.docs/organized/changelogs/%40mastra%2Fvoice-elevenlabs.md +11 -11
  51. package/.docs/organized/changelogs/%40mastra%2Fvoice-gladia.md +11 -11
  52. package/.docs/organized/changelogs/%40mastra%2Fvoice-google-gemini-live.md +11 -1
  53. package/.docs/organized/changelogs/%40mastra%2Fvoice-google.md +10 -10
  54. package/.docs/organized/changelogs/%40mastra%2Fvoice-murf.md +11 -11
  55. package/.docs/organized/changelogs/%40mastra%2Fvoice-openai-realtime.md +10 -10
  56. package/.docs/organized/changelogs/%40mastra%2Fvoice-openai.md +10 -10
  57. package/.docs/organized/changelogs/%40mastra%2Fvoice-playai.md +11 -11
  58. package/.docs/organized/changelogs/%40mastra%2Fvoice-sarvam.md +11 -11
  59. package/.docs/organized/changelogs/%40mastra%2Fvoice-speechify.md +10 -10
  60. package/.docs/organized/changelogs/create-mastra.md +11 -11
  61. package/.docs/organized/changelogs/mastra.md +34 -34
  62. package/.docs/raw/agents/adding-voice.mdx +20 -9
  63. package/.docs/raw/agents/agent-memory.mdx +55 -39
  64. package/.docs/raw/agents/guardrails.mdx +68 -61
  65. package/.docs/raw/agents/networks.mdx +50 -46
  66. package/.docs/raw/agents/overview.mdx +126 -89
  67. package/.docs/raw/agents/using-tools.mdx +14 -15
  68. package/.docs/raw/auth/auth0.mdx +28 -27
  69. package/.docs/raw/auth/clerk.mdx +22 -20
  70. package/.docs/raw/auth/firebase.mdx +42 -39
  71. package/.docs/raw/auth/index.mdx +1 -1
  72. package/.docs/raw/auth/jwt.mdx +18 -16
  73. package/.docs/raw/auth/supabase.mdx +20 -18
  74. package/.docs/raw/auth/workos.mdx +32 -26
  75. package/.docs/raw/community/contributing-templates.mdx +7 -7
  76. package/.docs/raw/community/discord.mdx +2 -2
  77. package/.docs/raw/community/licensing.mdx +1 -1
  78. package/.docs/raw/course/02-agent-tools-mcp/04-initializing-mcp-tools.md +2 -2
  79. package/.docs/raw/course/03-agent-memory/18-advanced-configuration-semantic-recall.md +1 -1
  80. package/.docs/raw/course/03-agent-memory/26-updating-mastra-export-comprehensive.md +0 -32
  81. package/.docs/raw/deployment/cloud-providers/amazon-ec2.mdx +41 -22
  82. package/.docs/raw/deployment/cloud-providers/aws-lambda.mdx +48 -29
  83. package/.docs/raw/deployment/cloud-providers/azure-app-services.mdx +52 -24
  84. package/.docs/raw/deployment/cloud-providers/digital-ocean.mdx +86 -55
  85. package/.docs/raw/deployment/cloud-providers/index.mdx +16 -13
  86. package/.docs/raw/deployment/monorepo.mdx +32 -42
  87. package/.docs/raw/deployment/overview.mdx +15 -15
  88. package/.docs/raw/deployment/server-deployment.mdx +18 -23
  89. package/.docs/raw/deployment/serverless-platforms/cloudflare-deployer.mdx +16 -17
  90. package/.docs/raw/deployment/serverless-platforms/index.mdx +15 -12
  91. package/.docs/raw/deployment/serverless-platforms/netlify-deployer.mdx +14 -23
  92. package/.docs/raw/deployment/serverless-platforms/vercel-deployer.mdx +16 -23
  93. package/.docs/raw/deployment/web-framework.mdx +14 -14
  94. package/.docs/raw/frameworks/agentic-uis/ai-sdk.mdx +130 -121
  95. package/.docs/raw/frameworks/agentic-uis/assistant-ui.mdx +54 -43
  96. package/.docs/raw/frameworks/agentic-uis/cedar-os.mdx +51 -36
  97. package/.docs/raw/frameworks/agentic-uis/copilotkit.mdx +161 -120
  98. package/.docs/raw/frameworks/agentic-uis/openrouter.mdx +60 -49
  99. package/.docs/raw/frameworks/servers/express.mdx +46 -45
  100. package/.docs/raw/frameworks/web-frameworks/astro.mdx +245 -162
  101. package/.docs/raw/frameworks/web-frameworks/next-js.mdx +112 -69
  102. package/.docs/raw/frameworks/web-frameworks/sveltekit.mdx +171 -130
  103. package/.docs/raw/frameworks/web-frameworks/vite-react.mdx +94 -81
  104. package/.docs/raw/getting-started/installation.mdx +165 -134
  105. package/.docs/raw/getting-started/mcp-docs-server.mdx +36 -39
  106. package/.docs/raw/getting-started/project-structure.mdx +34 -42
  107. package/.docs/raw/getting-started/studio.mdx +42 -50
  108. package/.docs/raw/getting-started/templates.mdx +18 -15
  109. package/.docs/raw/index.mdx +9 -9
  110. package/.docs/raw/mastra-cloud/dashboard.mdx +12 -12
  111. package/.docs/raw/mastra-cloud/observability.mdx +9 -10
  112. package/.docs/raw/mastra-cloud/overview.mdx +17 -23
  113. package/.docs/raw/mastra-cloud/setting-up.mdx +33 -20
  114. package/.docs/raw/memory/conversation-history.mdx +2 -2
  115. package/.docs/raw/memory/overview.mdx +22 -24
  116. package/.docs/raw/memory/semantic-recall.mdx +16 -17
  117. package/.docs/raw/memory/storage/memory-with-libsql.mdx +27 -28
  118. package/.docs/raw/memory/storage/memory-with-pg.mdx +26 -26
  119. package/.docs/raw/memory/storage/memory-with-upstash.mdx +26 -27
  120. package/.docs/raw/memory/threads-and-resources.mdx +24 -21
  121. package/.docs/raw/memory/working-memory.mdx +27 -38
  122. package/.docs/raw/observability/ai-tracing/exporters/arize.mdx +30 -29
  123. package/.docs/raw/observability/ai-tracing/exporters/braintrust.mdx +8 -9
  124. package/.docs/raw/observability/ai-tracing/exporters/cloud.mdx +17 -16
  125. package/.docs/raw/observability/ai-tracing/exporters/default.mdx +37 -38
  126. package/.docs/raw/observability/ai-tracing/exporters/langfuse.mdx +18 -17
  127. package/.docs/raw/observability/ai-tracing/exporters/langsmith.mdx +14 -14
  128. package/.docs/raw/observability/ai-tracing/exporters/otel.mdx +56 -46
  129. package/.docs/raw/observability/ai-tracing/overview.mdx +151 -128
  130. package/.docs/raw/observability/ai-tracing/processors/sensitive-data-filter.mdx +57 -36
  131. package/.docs/raw/observability/logging.mdx +14 -17
  132. package/.docs/raw/observability/nextjs-tracing.mdx +5 -5
  133. package/.docs/raw/observability/otel-tracing.mdx +17 -18
  134. package/.docs/raw/observability/overview.mdx +15 -11
  135. package/.docs/raw/rag/chunking-and-embedding.mdx +10 -8
  136. package/.docs/raw/rag/overview.mdx +5 -5
  137. package/.docs/raw/rag/retrieval.mdx +125 -107
  138. package/.docs/raw/rag/vector-databases.mdx +232 -223
  139. package/.docs/raw/reference/agents/agent.mdx +56 -43
  140. package/.docs/raw/reference/agents/generate.mdx +367 -261
  141. package/.docs/raw/reference/agents/generateLegacy.mdx +260 -178
  142. package/.docs/raw/reference/agents/getDefaultGenerateOptions.mdx +7 -5
  143. package/.docs/raw/reference/agents/getDefaultStreamOptions.mdx +7 -5
  144. package/.docs/raw/reference/agents/getDescription.mdx +3 -2
  145. package/.docs/raw/reference/agents/getInstructions.mdx +7 -5
  146. package/.docs/raw/reference/agents/getLLM.mdx +11 -7
  147. package/.docs/raw/reference/agents/getMemory.mdx +7 -5
  148. package/.docs/raw/reference/agents/getModel.mdx +7 -5
  149. package/.docs/raw/reference/agents/getScorers.mdx +7 -5
  150. package/.docs/raw/reference/agents/getTools.mdx +7 -5
  151. package/.docs/raw/reference/agents/getVoice.mdx +7 -5
  152. package/.docs/raw/reference/agents/getWorkflows.mdx +7 -5
  153. package/.docs/raw/reference/agents/listAgents.mdx +6 -4
  154. package/.docs/raw/reference/agents/listScorers.mdx +69 -0
  155. package/.docs/raw/reference/agents/listTools.mdx +69 -0
  156. package/.docs/raw/reference/agents/listWorkflows.mdx +69 -0
  157. package/.docs/raw/reference/agents/network.mdx +171 -116
  158. package/.docs/raw/reference/auth/auth0.mdx +18 -14
  159. package/.docs/raw/reference/auth/clerk.mdx +15 -12
  160. package/.docs/raw/reference/auth/firebase.mdx +23 -16
  161. package/.docs/raw/reference/auth/jwt.mdx +7 -6
  162. package/.docs/raw/reference/auth/supabase.mdx +13 -10
  163. package/.docs/raw/reference/auth/workos.mdx +17 -13
  164. package/.docs/raw/reference/cli/create-mastra.mdx +61 -44
  165. package/.docs/raw/reference/cli/mastra.mdx +11 -11
  166. package/.docs/raw/reference/client-js/agents.mdx +41 -44
  167. package/.docs/raw/reference/client-js/error-handling.mdx +1 -1
  168. package/.docs/raw/reference/client-js/logs.mdx +2 -2
  169. package/.docs/raw/reference/client-js/mastra-client.mdx +28 -20
  170. package/.docs/raw/reference/client-js/memory.mdx +7 -3
  171. package/.docs/raw/reference/client-js/observability.mdx +10 -9
  172. package/.docs/raw/reference/client-js/telemetry.mdx +1 -1
  173. package/.docs/raw/reference/client-js/tools.mdx +2 -2
  174. package/.docs/raw/reference/client-js/vectors.mdx +1 -1
  175. package/.docs/raw/reference/client-js/workflows-legacy.mdx +1 -1
  176. package/.docs/raw/reference/client-js/workflows.mdx +8 -8
  177. package/.docs/raw/reference/core/getAgent.mdx +6 -5
  178. package/.docs/raw/reference/core/getAgentById.mdx +5 -4
  179. package/.docs/raw/reference/core/getAgents.mdx +3 -3
  180. package/.docs/raw/reference/core/getDeployer.mdx +4 -3
  181. package/.docs/raw/reference/core/getLogger.mdx +4 -3
  182. package/.docs/raw/reference/core/getLogs.mdx +10 -6
  183. package/.docs/raw/reference/core/getLogsByRunId.mdx +8 -5
  184. package/.docs/raw/reference/core/getMCPServer.mdx +8 -5
  185. package/.docs/raw/reference/core/getMCPServers.mdx +4 -3
  186. package/.docs/raw/reference/core/getMemory.mdx +4 -3
  187. package/.docs/raw/reference/core/getScorer.mdx +15 -12
  188. package/.docs/raw/reference/core/getScorerByName.mdx +13 -10
  189. package/.docs/raw/reference/core/getScorers.mdx +3 -2
  190. package/.docs/raw/reference/core/getServer.mdx +4 -3
  191. package/.docs/raw/reference/core/getStorage.mdx +4 -3
  192. package/.docs/raw/reference/core/getTelemetry.mdx +4 -3
  193. package/.docs/raw/reference/core/getVector.mdx +6 -4
  194. package/.docs/raw/reference/core/getVectors.mdx +4 -3
  195. package/.docs/raw/reference/core/getWorkflow.mdx +7 -4
  196. package/.docs/raw/reference/core/getWorkflows.mdx +5 -3
  197. package/.docs/raw/reference/core/listAgents.mdx +35 -0
  198. package/.docs/raw/reference/core/listLogs.mdx +96 -0
  199. package/.docs/raw/reference/core/listLogsByRunId.mdx +87 -0
  200. package/.docs/raw/reference/core/listScorers.mdx +43 -0
  201. package/.docs/raw/reference/core/listWorkflows.mdx +45 -0
  202. package/.docs/raw/reference/core/mastra-class.mdx +16 -16
  203. package/.docs/raw/reference/core/setLogger.mdx +6 -4
  204. package/.docs/raw/reference/core/setStorage.mdx +4 -4
  205. package/.docs/raw/reference/core/setTelemetry.mdx +4 -3
  206. package/.docs/raw/reference/deployer/cloudflare.mdx +11 -7
  207. package/.docs/raw/reference/deployer/deployer.mdx +2 -1
  208. package/.docs/raw/reference/deployer/netlify.mdx +4 -4
  209. package/.docs/raw/reference/deployer/vercel.mdx +6 -6
  210. package/.docs/raw/reference/evals/answer-relevancy.mdx +4 -5
  211. package/.docs/raw/reference/evals/bias.mdx +4 -5
  212. package/.docs/raw/reference/evals/completeness.mdx +4 -5
  213. package/.docs/raw/reference/evals/content-similarity.mdx +4 -5
  214. package/.docs/raw/reference/evals/context-position.mdx +4 -5
  215. package/.docs/raw/reference/evals/context-precision.mdx +4 -5
  216. package/.docs/raw/reference/evals/context-relevancy.mdx +4 -5
  217. package/.docs/raw/reference/evals/contextual-recall.mdx +4 -5
  218. package/.docs/raw/reference/evals/faithfulness.mdx +4 -5
  219. package/.docs/raw/reference/evals/hallucination.mdx +4 -6
  220. package/.docs/raw/reference/evals/keyword-coverage.mdx +4 -5
  221. package/.docs/raw/reference/evals/prompt-alignment.mdx +4 -6
  222. package/.docs/raw/reference/evals/summarization.mdx +4 -6
  223. package/.docs/raw/reference/evals/textual-difference.mdx +4 -5
  224. package/.docs/raw/reference/evals/tone-consistency.mdx +4 -7
  225. package/.docs/raw/reference/evals/toxicity.mdx +4 -5
  226. package/.docs/raw/reference/index.mdx +3 -3
  227. package/.docs/raw/reference/legacyWorkflows/after.mdx +5 -5
  228. package/.docs/raw/reference/legacyWorkflows/afterEvent.mdx +5 -5
  229. package/.docs/raw/reference/legacyWorkflows/commit.mdx +5 -5
  230. package/.docs/raw/reference/legacyWorkflows/createRun.mdx +4 -4
  231. package/.docs/raw/reference/legacyWorkflows/else.mdx +5 -5
  232. package/.docs/raw/reference/legacyWorkflows/events.mdx +7 -7
  233. package/.docs/raw/reference/legacyWorkflows/execute.mdx +4 -4
  234. package/.docs/raw/reference/legacyWorkflows/if.mdx +5 -5
  235. package/.docs/raw/reference/legacyWorkflows/resume.mdx +5 -5
  236. package/.docs/raw/reference/legacyWorkflows/resumeWithEvent.mdx +6 -6
  237. package/.docs/raw/reference/legacyWorkflows/snapshots.mdx +6 -6
  238. package/.docs/raw/reference/legacyWorkflows/start.mdx +6 -6
  239. package/.docs/raw/reference/legacyWorkflows/step-class.mdx +4 -4
  240. package/.docs/raw/reference/legacyWorkflows/step-condition.mdx +4 -4
  241. package/.docs/raw/reference/legacyWorkflows/step-function.mdx +5 -5
  242. package/.docs/raw/reference/legacyWorkflows/step-options.mdx +6 -6
  243. package/.docs/raw/reference/legacyWorkflows/step-retries.mdx +4 -4
  244. package/.docs/raw/reference/legacyWorkflows/suspend.mdx +4 -4
  245. package/.docs/raw/reference/legacyWorkflows/then.mdx +5 -5
  246. package/.docs/raw/reference/legacyWorkflows/until.mdx +4 -4
  247. package/.docs/raw/reference/legacyWorkflows/watch.mdx +3 -3
  248. package/.docs/raw/reference/legacyWorkflows/while.mdx +4 -4
  249. package/.docs/raw/reference/legacyWorkflows/workflow.mdx +7 -7
  250. package/.docs/raw/reference/memory/createThread.mdx +10 -10
  251. package/.docs/raw/reference/memory/deleteMessages.mdx +7 -5
  252. package/.docs/raw/reference/memory/getThreadById.mdx +6 -5
  253. package/.docs/raw/reference/memory/getThreadsByResourceId.mdx +11 -10
  254. package/.docs/raw/reference/memory/getThreadsByResourceIdPaginated.mdx +10 -9
  255. package/.docs/raw/reference/memory/{Memory.mdx → memory-class.mdx} +55 -47
  256. package/.docs/raw/reference/memory/query.mdx +39 -25
  257. package/.docs/raw/reference/observability/ai-tracing/ai-tracing.mdx +9 -6
  258. package/.docs/raw/reference/observability/ai-tracing/configuration.mdx +26 -22
  259. package/.docs/raw/reference/observability/ai-tracing/exporters/arize.mdx +16 -12
  260. package/.docs/raw/reference/observability/ai-tracing/exporters/braintrust.mdx +14 -14
  261. package/.docs/raw/reference/observability/ai-tracing/exporters/cloud-exporter.mdx +16 -11
  262. package/.docs/raw/reference/observability/ai-tracing/exporters/console-exporter.mdx +10 -6
  263. package/.docs/raw/reference/observability/ai-tracing/exporters/default-exporter.mdx +23 -15
  264. package/.docs/raw/reference/observability/ai-tracing/exporters/langfuse.mdx +6 -6
  265. package/.docs/raw/reference/observability/ai-tracing/exporters/langsmith.mdx +13 -13
  266. package/.docs/raw/reference/observability/ai-tracing/exporters/otel.mdx +44 -36
  267. package/.docs/raw/reference/observability/ai-tracing/interfaces.mdx +116 -107
  268. package/.docs/raw/reference/observability/ai-tracing/processors/sensitive-data-filter.mdx +37 -32
  269. package/.docs/raw/reference/observability/ai-tracing/span.mdx +29 -26
  270. package/.docs/raw/reference/observability/logging/pino-logger.mdx +13 -15
  271. package/.docs/raw/reference/observability/otel-tracing/otel-config.mdx +2 -2
  272. package/.docs/raw/reference/observability/otel-tracing/providers/arize-ax.mdx +3 -3
  273. package/.docs/raw/reference/observability/otel-tracing/providers/arize-phoenix.mdx +2 -1
  274. package/.docs/raw/reference/observability/otel-tracing/providers/dash0.mdx +1 -1
  275. package/.docs/raw/reference/observability/otel-tracing/providers/index.mdx +12 -14
  276. package/.docs/raw/reference/observability/otel-tracing/providers/keywordsai.mdx +4 -4
  277. package/.docs/raw/reference/observability/otel-tracing/providers/laminar.mdx +1 -1
  278. package/.docs/raw/reference/observability/otel-tracing/providers/langfuse.mdx +4 -4
  279. package/.docs/raw/reference/observability/otel-tracing/providers/langsmith.mdx +1 -1
  280. package/.docs/raw/reference/observability/otel-tracing/providers/langwatch.mdx +2 -2
  281. package/.docs/raw/reference/observability/otel-tracing/providers/new-relic.mdx +1 -1
  282. package/.docs/raw/reference/observability/otel-tracing/providers/signoz.mdx +1 -1
  283. package/.docs/raw/reference/observability/otel-tracing/providers/traceloop.mdx +1 -1
  284. package/.docs/raw/reference/processors/batch-parts-processor.mdx +3 -4
  285. package/.docs/raw/reference/processors/language-detector.mdx +6 -8
  286. package/.docs/raw/reference/processors/moderation-processor.mdx +36 -11
  287. package/.docs/raw/reference/processors/pii-detector.mdx +34 -9
  288. package/.docs/raw/reference/processors/prompt-injection-detector.mdx +6 -8
  289. package/.docs/raw/reference/processors/system-prompt-scrubber.mdx +14 -10
  290. package/.docs/raw/reference/processors/token-limiter-processor.mdx +3 -5
  291. package/.docs/raw/reference/processors/unicode-normalizer.mdx +3 -4
  292. package/.docs/raw/reference/rag/chunk.mdx +41 -23
  293. package/.docs/raw/reference/rag/database-config.mdx +56 -38
  294. package/.docs/raw/reference/rag/embeddings.mdx +1 -1
  295. package/.docs/raw/reference/rag/extract-params.mdx +1 -1
  296. package/.docs/raw/reference/rag/graph-rag.mdx +1 -1
  297. package/.docs/raw/reference/rag/metadata-filters.mdx +23 -26
  298. package/.docs/raw/reference/rag/rerank.mdx +1 -1
  299. package/.docs/raw/reference/rag/rerankWithScorer.mdx +2 -2
  300. package/.docs/raw/reference/scorers/answer-relevancy.mdx +35 -17
  301. package/.docs/raw/reference/scorers/answer-similarity.mdx +84 -68
  302. package/.docs/raw/reference/scorers/bias.mdx +22 -19
  303. package/.docs/raw/reference/scorers/completeness.mdx +21 -16
  304. package/.docs/raw/reference/scorers/content-similarity.mdx +12 -10
  305. package/.docs/raw/reference/scorers/context-precision.mdx +73 -64
  306. package/.docs/raw/reference/scorers/context-relevance.mdx +142 -126
  307. package/.docs/raw/reference/scorers/create-scorer.mdx +93 -61
  308. package/.docs/raw/reference/scorers/faithfulness.mdx +21 -13
  309. package/.docs/raw/reference/scorers/hallucination.mdx +17 -12
  310. package/.docs/raw/reference/scorers/keyword-coverage.mdx +32 -27
  311. package/.docs/raw/reference/scorers/mastra-scorer.mdx +39 -33
  312. package/.docs/raw/reference/scorers/noise-sensitivity.mdx +203 -152
  313. package/.docs/raw/reference/scorers/prompt-alignment.mdx +186 -132
  314. package/.docs/raw/reference/scorers/run-experiment.mdx +41 -32
  315. package/.docs/raw/reference/scorers/textual-difference.mdx +25 -26
  316. package/.docs/raw/reference/scorers/tone-consistency.mdx +29 -26
  317. package/.docs/raw/reference/scorers/tool-call-accuracy.mdx +180 -176
  318. package/.docs/raw/reference/scorers/toxicity.mdx +35 -31
  319. package/.docs/raw/reference/storage/cloudflare-d1.mdx +1 -1
  320. package/.docs/raw/reference/storage/cloudflare.mdx +1 -1
  321. package/.docs/raw/reference/storage/dynamodb.mdx +1 -1
  322. package/.docs/raw/reference/storage/lance.mdx +1 -1
  323. package/.docs/raw/reference/storage/libsql.mdx +2 -2
  324. package/.docs/raw/reference/storage/mongodb.mdx +4 -5
  325. package/.docs/raw/reference/storage/mssql.mdx +8 -7
  326. package/.docs/raw/reference/storage/postgresql.mdx +35 -33
  327. package/.docs/raw/reference/storage/upstash.mdx +6 -5
  328. package/.docs/raw/reference/streaming/ChunkType.mdx +788 -314
  329. package/.docs/raw/reference/streaming/agents/MastraModelOutput.mdx +265 -109
  330. package/.docs/raw/reference/streaming/agents/stream.mdx +375 -266
  331. package/.docs/raw/reference/streaming/agents/streamLegacy.mdx +233 -162
  332. package/.docs/raw/reference/streaming/workflows/observeStream.mdx +4 -4
  333. package/.docs/raw/reference/streaming/workflows/observeStreamVNext.mdx +5 -5
  334. package/.docs/raw/reference/streaming/workflows/resumeStreamVNext.mdx +25 -21
  335. package/.docs/raw/reference/streaming/workflows/stream.mdx +36 -27
  336. package/.docs/raw/reference/streaming/workflows/streamVNext.mdx +37 -28
  337. package/.docs/raw/reference/templates/overview.mdx +16 -39
  338. package/.docs/raw/reference/tools/client.mdx +1 -1
  339. package/.docs/raw/reference/tools/create-tool.mdx +45 -35
  340. package/.docs/raw/reference/tools/document-chunker-tool.mdx +2 -2
  341. package/.docs/raw/reference/tools/graph-rag-tool.mdx +12 -12
  342. package/.docs/raw/reference/tools/mcp-client.mdx +78 -72
  343. package/.docs/raw/reference/tools/mcp-server.mdx +91 -78
  344. package/.docs/raw/reference/tools/vector-query-tool.mdx +48 -38
  345. package/.docs/raw/reference/vectors/astra.mdx +1 -1
  346. package/.docs/raw/reference/vectors/chroma.mdx +25 -19
  347. package/.docs/raw/reference/vectors/couchbase.mdx +4 -4
  348. package/.docs/raw/reference/vectors/lance.mdx +5 -6
  349. package/.docs/raw/reference/vectors/libsql.mdx +1 -1
  350. package/.docs/raw/reference/vectors/mongodb.mdx +1 -1
  351. package/.docs/raw/reference/vectors/opensearch.mdx +1 -1
  352. package/.docs/raw/reference/vectors/pg.mdx +8 -4
  353. package/.docs/raw/reference/vectors/pinecone.mdx +1 -1
  354. package/.docs/raw/reference/vectors/qdrant.mdx +1 -1
  355. package/.docs/raw/reference/vectors/s3vectors.mdx +35 -27
  356. package/.docs/raw/reference/vectors/turbopuffer.mdx +1 -1
  357. package/.docs/raw/reference/vectors/upstash.mdx +33 -25
  358. package/.docs/raw/reference/vectors/vectorize.mdx +1 -1
  359. package/.docs/raw/reference/voice/azure.mdx +1 -1
  360. package/.docs/raw/reference/voice/cloudflare.mdx +1 -1
  361. package/.docs/raw/reference/voice/composite-voice.mdx +1 -1
  362. package/.docs/raw/reference/voice/deepgram.mdx +1 -1
  363. package/.docs/raw/reference/voice/elevenlabs.mdx +1 -1
  364. package/.docs/raw/reference/voice/google-gemini-live.mdx +7 -5
  365. package/.docs/raw/reference/voice/google.mdx +1 -1
  366. package/.docs/raw/reference/voice/mastra-voice.mdx +1 -1
  367. package/.docs/raw/reference/voice/murf.mdx +1 -1
  368. package/.docs/raw/reference/voice/openai-realtime.mdx +1 -1
  369. package/.docs/raw/reference/voice/openai.mdx +1 -1
  370. package/.docs/raw/reference/voice/playai.mdx +1 -1
  371. package/.docs/raw/reference/voice/sarvam.mdx +1 -1
  372. package/.docs/raw/reference/voice/speechify.mdx +1 -1
  373. package/.docs/raw/reference/voice/voice.addInstructions.mdx +1 -1
  374. package/.docs/raw/reference/voice/voice.addTools.mdx +1 -1
  375. package/.docs/raw/reference/voice/voice.answer.mdx +1 -1
  376. package/.docs/raw/reference/voice/voice.close.mdx +1 -1
  377. package/.docs/raw/reference/voice/voice.connect.mdx +1 -1
  378. package/.docs/raw/reference/voice/voice.events.mdx +1 -1
  379. package/.docs/raw/reference/voice/voice.getSpeakers.mdx +23 -30
  380. package/.docs/raw/reference/voice/voice.listen.mdx +1 -1
  381. package/.docs/raw/reference/voice/voice.off.mdx +1 -1
  382. package/.docs/raw/reference/voice/voice.on.mdx +1 -1
  383. package/.docs/raw/reference/voice/voice.send.mdx +1 -1
  384. package/.docs/raw/reference/voice/voice.speak.mdx +1 -1
  385. package/.docs/raw/reference/voice/voice.updateConfig.mdx +1 -1
  386. package/.docs/raw/reference/workflows/run-methods/cancel.mdx +4 -3
  387. package/.docs/raw/reference/workflows/run-methods/resume.mdx +49 -34
  388. package/.docs/raw/reference/workflows/run-methods/start.mdx +43 -31
  389. package/.docs/raw/reference/workflows/run-methods/watch.mdx +7 -8
  390. package/.docs/raw/reference/workflows/run.mdx +7 -10
  391. package/.docs/raw/reference/workflows/step.mdx +16 -13
  392. package/.docs/raw/reference/workflows/workflow-methods/branch.mdx +2 -2
  393. package/.docs/raw/reference/workflows/workflow-methods/commit.mdx +1 -1
  394. package/.docs/raw/reference/workflows/workflow-methods/create-run.mdx +7 -7
  395. package/.docs/raw/reference/workflows/workflow-methods/dountil.mdx +2 -2
  396. package/.docs/raw/reference/workflows/workflow-methods/dowhile.mdx +2 -2
  397. package/.docs/raw/reference/workflows/workflow-methods/foreach.mdx +1 -1
  398. package/.docs/raw/reference/workflows/workflow-methods/map.mdx +74 -3
  399. package/.docs/raw/reference/workflows/workflow-methods/parallel.mdx +1 -1
  400. package/.docs/raw/reference/workflows/workflow-methods/sendEvent.mdx +5 -5
  401. package/.docs/raw/reference/workflows/workflow-methods/sleep.mdx +3 -2
  402. package/.docs/raw/reference/workflows/workflow-methods/sleepUntil.mdx +3 -2
  403. package/.docs/raw/reference/workflows/workflow-methods/then.mdx +1 -1
  404. package/.docs/raw/reference/workflows/workflow-methods/waitForEvent.mdx +3 -3
  405. package/.docs/raw/reference/workflows/workflow.mdx +12 -23
  406. package/.docs/raw/scorers/custom-scorers.mdx +58 -48
  407. package/.docs/raw/scorers/evals-old-api/custom-eval.mdx +6 -8
  408. package/.docs/raw/scorers/evals-old-api/overview.mdx +8 -8
  409. package/.docs/raw/scorers/evals-old-api/running-in-ci.mdx +9 -9
  410. package/.docs/raw/scorers/evals-old-api/textual-evals.mdx +5 -5
  411. package/.docs/raw/scorers/off-the-shelf-scorers.mdx +3 -1
  412. package/.docs/raw/scorers/overview.mdx +23 -22
  413. package/.docs/raw/server-db/custom-api-routes.mdx +8 -8
  414. package/.docs/raw/server-db/mastra-client.mdx +56 -54
  415. package/.docs/raw/server-db/middleware.mdx +15 -11
  416. package/.docs/raw/server-db/production-server.mdx +5 -7
  417. package/.docs/raw/server-db/runtime-context.mdx +41 -38
  418. package/.docs/raw/server-db/storage.mdx +82 -87
  419. package/.docs/raw/streaming/events.mdx +24 -16
  420. package/.docs/raw/streaming/overview.mdx +17 -18
  421. package/.docs/raw/streaming/tool-streaming.mdx +9 -10
  422. package/.docs/raw/streaming/workflow-streaming.mdx +14 -12
  423. package/.docs/raw/tools-mcp/advanced-usage.mdx +2 -2
  424. package/.docs/raw/tools-mcp/mcp-overview.mdx +92 -102
  425. package/.docs/raw/tools-mcp/overview.mdx +10 -15
  426. package/.docs/raw/voice/overview.mdx +273 -250
  427. package/.docs/raw/voice/speech-to-speech.mdx +14 -12
  428. package/.docs/raw/voice/speech-to-text.mdx +2 -2
  429. package/.docs/raw/voice/text-to-speech.mdx +2 -2
  430. package/.docs/raw/workflows/agents-and-tools.mdx +27 -30
  431. package/.docs/raw/workflows/control-flow.mdx +213 -170
  432. package/.docs/raw/workflows/error-handling.mdx +15 -17
  433. package/.docs/raw/workflows/human-in-the-loop.mdx +39 -39
  434. package/.docs/raw/workflows/inngest-workflow.mdx +35 -31
  435. package/.docs/raw/workflows/overview.mdx +108 -56
  436. package/.docs/raw/workflows/snapshots.mdx +54 -36
  437. package/.docs/raw/workflows/suspend-and-resume.mdx +52 -65
  438. package/.docs/raw/workflows-legacy/control-flow.mdx +15 -17
  439. package/.docs/raw/workflows-legacy/dynamic-workflows.mdx +3 -1
  440. package/.docs/raw/workflows-legacy/error-handling.mdx +8 -6
  441. package/.docs/raw/workflows-legacy/nested-workflows.mdx +6 -0
  442. package/.docs/raw/workflows-legacy/overview.mdx +28 -26
  443. package/.docs/raw/workflows-legacy/runtime-variables.mdx +4 -2
  444. package/.docs/raw/workflows-legacy/steps.mdx +5 -3
  445. package/.docs/raw/workflows-legacy/suspend-and-resume.mdx +10 -8
  446. package/.docs/raw/workflows-legacy/variables.mdx +10 -8
  447. package/CHANGELOG.md +24 -0
  448. package/package.json +5 -5
  449. package/.docs/raw/memory/storage/memory-with-mongodb.mdx +0 -148
  450. package/.docs/raw/workflows/input-data-mapping.mdx +0 -107
@@ -1,9 +1,10 @@
1
1
  ---
2
- title: "Using with Vercel AI SDK"
2
+ title: "Using Vercel AI SDK | Frameworks | Mastra Docs"
3
3
  description: "Learn how Mastra leverages the Vercel AI SDK library and how you can leverage it further with Mastra"
4
4
  ---
5
5
 
6
- import { Callout, Tabs } from "nextra/components";
6
+ import Tabs from "@theme/Tabs";
7
+ import TabItem from "@theme/TabItem";
7
8
 
8
9
  # Using Vercel AI SDK
9
10
 
@@ -13,7 +14,7 @@ Mastra integrates with [Vercel's AI SDK](https://sdk.vercel.ai) to support model
13
14
 
14
15
  When creating agents in Mastra, you can specify any AI SDK-supported model.
15
16
 
16
- ```typescript {6} filename="agents/weather-agent.ts" copy
17
+ ```typescript {6} title="agents/weather-agent.ts" copy
17
18
  import { Agent } from "@mastra/core/agent";
18
19
 
19
20
  export const weatherAgent = new Agent({
@@ -29,43 +30,43 @@ export const weatherAgent = new Agent({
29
30
 
30
31
  The recommended way of using Mastra and AI SDK together is by installing the `@mastra/ai-sdk` package. `@mastra/ai-sdk` provides custom API routes and utilities for streaming Mastra agents in AI SDK-compatible formats. Including chat, workflow, and network route handlers, along with utilities and exported types for UI integrations.
31
32
 
32
- <Tabs items={["npm", "pnpm", "yarn", "bun"]}>
33
- <Tabs.Tab>
33
+ <Tabs>
34
+ <TabItem value="npm" label="npm">
34
35
  ```bash copy
35
36
  npm install @mastra/ai-sdk
36
37
  ```
37
- </Tabs.Tab>
38
- <Tabs.Tab>
38
+ </TabItem>
39
+ <TabItem value="pnpm" label="pnpm">
39
40
  ```bash copy
40
41
  pnpm add @mastra/ai-sdk
41
42
  ```
42
- </Tabs.Tab>
43
- <Tabs.Tab>
43
+ </TabItem>
44
+ <TabItem value="yarn" label="yarn">
44
45
  ```bash copy
45
46
  yarn add @mastra/ai-sdk
46
47
  ```
47
- </Tabs.Tab>
48
- <Tabs.Tab>
48
+ </TabItem>
49
+ <TabItem value="bun" label="bun">
49
50
  ```bash copy
50
51
  bun add @mastra/ai-sdk
51
52
  ```
52
- </Tabs.Tab>
53
+ </TabItem>
53
54
  </Tabs>
54
55
 
55
56
  ### `chatRoute()`
56
57
 
57
58
  When setting up a [custom API route](/docs/server-db/custom-api-routes), use the `chatRoute()` utility to create a route handler that automatically formats the agent stream into an AI SDK-compatible format.
58
59
 
59
- ```typescript filename="src/mastra/index.ts" copy
60
- import { Mastra } from '@mastra/core/mastra';
61
- import { chatRoute } from '@mastra/ai-sdk';
60
+ ```typescript title="src/mastra/index.ts" copy
61
+ import { Mastra } from "@mastra/core/mastra";
62
+ import { chatRoute } from "@mastra/ai-sdk";
62
63
 
63
64
  export const mastra = new Mastra({
64
65
  server: {
65
66
  apiRoutes: [
66
67
  chatRoute({
67
- path: '/chat',
68
- agent: 'weatherAgent',
68
+ path: "/chat",
69
+ agent: "weatherAgent",
69
70
  }),
70
71
  ],
71
72
  },
@@ -75,51 +76,49 @@ export const mastra = new Mastra({
75
76
  Once you have your `/chat` API route set up, you can call the `useChat()` hook in your application.
76
77
 
77
78
  ```typescript
78
- const { error, status, sendMessage, messages, regenerate, stop } =
79
- useChat({
80
- transport: new DefaultChatTransport({
81
- api: 'http://localhost:4111/chat',
82
- }),
83
- });
79
+ const { error, status, sendMessage, messages, regenerate, stop } = useChat({
80
+ transport: new DefaultChatTransport({
81
+ api: "http://localhost:4111/chat",
82
+ }),
83
+ });
84
84
  ```
85
85
 
86
86
  Pass extra agent stream execution options:
87
87
 
88
88
  ```typescript
89
- const { error, status, sendMessage, messages, regenerate, stop } =
90
- useChat({
91
- transport: new DefaultChatTransport({
92
- api: 'http://localhost:4111/chat',
93
- prepareSendMessagesRequest({ messages }) {
94
- return {
95
- body: {
96
- messages,
97
- // Pass memory config
98
- memory: {
99
- thread: "user-1",
100
- resource: "user-1"
101
- }
89
+ const { error, status, sendMessage, messages, regenerate, stop } = useChat({
90
+ transport: new DefaultChatTransport({
91
+ api: "http://localhost:4111/chat",
92
+ prepareSendMessagesRequest({ messages }) {
93
+ return {
94
+ body: {
95
+ messages,
96
+ // Pass memory config
97
+ memory: {
98
+ thread: "user-1",
99
+ resource: "user-1",
102
100
  },
103
- }
104
- }
105
- }),
106
- });
101
+ },
102
+ };
103
+ },
104
+ }),
105
+ });
107
106
  ```
108
107
 
109
108
  ### `workflowRoute()`
110
109
 
111
110
  Use the `workflowRoute()` utility to create a route handler that automatically formats the workflow stream into an AI SDK-compatible format.
112
111
 
113
- ```typescript filename="src/mastra/index.ts" copy
114
- import { Mastra } from '@mastra/core/mastra';
115
- import { workflowRoute } from '@mastra/ai-sdk';
112
+ ```typescript title="src/mastra/index.ts" copy
113
+ import { Mastra } from "@mastra/core/mastra";
114
+ import { workflowRoute } from "@mastra/ai-sdk";
116
115
 
117
116
  export const mastra = new Mastra({
118
117
  server: {
119
118
  apiRoutes: [
120
119
  workflowRoute({
121
- path: '/workflow',
122
- agent: 'weatherAgent',
120
+ path: "/workflow",
121
+ agent: "weatherAgent",
123
122
  }),
124
123
  ],
125
124
  },
@@ -129,37 +128,36 @@ export const mastra = new Mastra({
129
128
  Once you have your `/workflow` API route set up, you can call the `useChat()` hook in your application.
130
129
 
131
130
  ```typescript
132
- const { error, status, sendMessage, messages, regenerate, stop } =
133
- useChat({
134
- transport: new DefaultChatTransport({
135
- api: 'http://localhost:4111/workflow',
136
- prepareSendMessagesRequest({messages}) {
137
- return {
138
- body: {
139
- inputData: {
140
- city: messages[messages.length - 1].parts[0].text
141
- }
142
- }
143
- }
144
- }
145
- }),
146
- });
131
+ const { error, status, sendMessage, messages, regenerate, stop } = useChat({
132
+ transport: new DefaultChatTransport({
133
+ api: "http://localhost:4111/workflow",
134
+ prepareSendMessagesRequest({ messages }) {
135
+ return {
136
+ body: {
137
+ inputData: {
138
+ city: messages[messages.length - 1].parts[0].text,
139
+ },
140
+ },
141
+ };
142
+ },
143
+ }),
144
+ });
147
145
  ```
148
146
 
149
147
  ### `networkRoute()`
150
148
 
151
149
  Use the `networkRoute()` utility to create a route handler that automatically formats the agent network stream into an AI SDK-compatible format.
152
150
 
153
- ```typescript filename="src/mastra/index.ts" copy
154
- import { Mastra } from '@mastra/core/mastra';
155
- import { networkRoute } from '@mastra/ai-sdk';
151
+ ```typescript title="src/mastra/index.ts" copy
152
+ import { Mastra } from "@mastra/core/mastra";
153
+ import { networkRoute } from "@mastra/ai-sdk";
156
154
 
157
155
  export const mastra = new Mastra({
158
156
  server: {
159
157
  apiRoutes: [
160
158
  networkRoute({
161
- path: '/network',
162
- agent: 'weatherAgent',
159
+ path: "/network",
160
+ agent: "weatherAgent",
163
161
  }),
164
162
  ],
165
163
  },
@@ -169,12 +167,11 @@ export const mastra = new Mastra({
169
167
  Once you have your `/network` API route set up, you can call the `useChat()` hook in your application.
170
168
 
171
169
  ```typescript
172
- const { error, status, sendMessage, messages, regenerate, stop } =
173
- useChat({
174
- transport: new DefaultChatTransport({
175
- api: 'http://localhost:4111/network',
176
- }),
177
- });
170
+ const { error, status, sendMessage, messages, regenerate, stop } = useChat({
171
+ transport: new DefaultChatTransport({
172
+ api: "http://localhost:4111/network",
173
+ }),
174
+ });
178
175
  ```
179
176
 
180
177
  ### Custom UI
@@ -192,7 +189,7 @@ The `@mastra/ai-sdk` package transforms and emits Mastra streams (e.g workflow,
192
189
 
193
190
  Here's an example: For a [nested agent stream within a tool](/docs/streaming/tool-streaming#tool-using-an-agent), `data-tool-agent` UI message parts will be emitted and can be leveraged on the client as documented below:
194
191
 
195
- ```typescript filename="app/page.tsx" copy
192
+ ```typescript title="app/page.tsx" copy
196
193
  "use client";
197
194
 
198
195
  import { useChat } from "@ai-sdk/react";
@@ -228,16 +225,16 @@ export default function Page() {
228
225
  }
229
226
  ```
230
227
 
231
- ```typescript filename="ui/agent-tool.ts" copy
228
+ ```typescript title="ui/agent-tool.ts" copy
232
229
  import { Tool, ToolContent, ToolHeader, ToolOutput } from "../ai-elements/tool";
233
230
  import type { AgentDataPart } from "@mastra/ai-sdk";
234
231
 
235
232
  export const AgentTool = ({ id, text, status }: AgentDataPart) => {
236
233
  return (
237
234
  <Tool>
238
- <ToolHeader
239
- type={`${id}`}
240
- state={status === 'finished' ? 'output-available' : 'input-available'}
235
+ <ToolHeader
236
+ type={`${id}`}
237
+ state={status === 'finished' ? 'output-available' : 'input-available'}
241
238
  />
242
239
  <ToolContent>
243
240
  <ToolOutput output={text} />
@@ -246,7 +243,9 @@ export const AgentTool = ({ id, text, status }: AgentDataPart) => {
246
243
  );
247
244
  };
248
245
  ```
246
+
249
247
  ### Custom Tool streaming
248
+
250
249
  To stream custom data parts from within your tool execution function, use the
251
250
  `writer.custom()` method.
252
251
 
@@ -283,10 +282,10 @@ For more information about tool streaming see [Tool streaming documentation](/do
283
282
 
284
283
  To manually transform Mastra's streams to AI SDK-compatible format, use the `toAISdkFormat()` utility.
285
284
 
286
- ```typescript filename="app/api/chat/route.ts" copy {3,13}
285
+ ```typescript title="app/api/chat/route.ts" copy {3,13}
287
286
  import { mastra } from "../../mastra";
288
- import { createUIMessageStream, createUIMessageStreamResponse } from 'ai';
289
- import { toAISdkFormat } from '@mastra/ai-sdk'
287
+ import { createUIMessageStream, createUIMessageStreamResponse } from "ai";
288
+ import { toAISdkFormat } from "@mastra/ai-sdk";
290
289
 
291
290
  export async function POST(req: Request) {
292
291
  const { messages } = await req.json();
@@ -296,7 +295,7 @@ export async function POST(req: Request) {
296
295
  // Transform stream into AI SDK format and create UI messages stream
297
296
  const uiMessageStream = createUIMessageStream({
298
297
  execute: async ({ writer }) => {
299
- for await (const part of toAISdkFormat(stream, { from: 'agent' })!) {
298
+ for await (const part of toAISdkFormat(stream, { from: "agent" })!) {
300
299
  writer.write(part);
301
300
  }
302
301
  },
@@ -313,27 +312,34 @@ export async function POST(req: Request) {
313
312
 
314
313
  If you have a client-side `response` from `agent.stream(...)` and want AI SDK-formatted parts without custom SSE parsing, wrap `response.processDataStream` into a `ReadableStream<ChunkType>` and pipe it through `toAISdkFormat`:
315
314
 
316
- ```typescript filename="client-stream-to-ai-sdk.ts" copy
317
- import { createUIMessageStream } from 'ai';
318
- import { toAISdkFormat } from '@mastra/ai-sdk';
319
- import type { ChunkType, MastraModelOutput } from '@mastra/core/stream';
315
+ ```typescript title="client-stream-to-ai-sdk.ts" copy
316
+ import { createUIMessageStream } from "ai";
317
+ import { toAISdkFormat } from "@mastra/ai-sdk";
318
+ import type { ChunkType, MastraModelOutput } from "@mastra/core/stream";
320
319
 
321
320
  // Client SDK agent stream
322
- const response = await agent.stream({ messages: 'What is the weather in Tokyo' });
321
+ const response = await agent.stream({
322
+ messages: "What is the weather in Tokyo",
323
+ });
323
324
 
324
325
  const chunkStream: ReadableStream<ChunkType> = new ReadableStream<ChunkType>({
325
326
  start(controller) {
326
- response.processDataStream({
327
- onChunk: async (chunk) => {
328
- controller.enqueue(chunk as ChunkType);
329
- },
330
- }).finally(() => controller.close());
327
+ response
328
+ .processDataStream({
329
+ onChunk: async (chunk) => {
330
+ controller.enqueue(chunk as ChunkType);
331
+ },
332
+ })
333
+ .finally(() => controller.close());
331
334
  },
332
335
  });
333
336
 
334
337
  const uiMessageStream = createUIMessageStream({
335
338
  execute: async ({ writer }) => {
336
- for await (const part of toAISdkFormat(chunkStream as unknown as MastraModelOutput, { from: 'agent' })) {
339
+ for await (const part of toAISdkFormat(
340
+ chunkStream as unknown as MastraModelOutput,
341
+ { from: "agent" },
342
+ )) {
337
343
  writer.write(part);
338
344
  }
339
345
  },
@@ -350,35 +356,34 @@ Mastra supports AI SDK UI hooks for connecting frontend components directly to a
350
356
 
351
357
  Install the required AI SDK React package:
352
358
 
353
- <Tabs items={["npm", "pnpm", "yarn", "bun"]}>
354
- <Tabs.Tab>
359
+ <Tabs>
360
+ <TabItem value="npm" label="npm">
355
361
  ```bash copy
356
362
  npm install @ai-sdk/react
357
363
  ```
358
- </Tabs.Tab>
359
- <Tabs.Tab>
364
+ </TabItem>
365
+ <TabItem value="pnpm" label="pnpm">
360
366
  ```bash copy
361
367
  pnpm add @ai-sdk/react
362
368
  ```
363
- </Tabs.Tab>
364
- <Tabs.Tab>
369
+ </TabItem>
370
+ <TabItem value="yarn" label="yarn">
365
371
  ```bash copy
366
372
  yarn add @ai-sdk/react
367
373
  ```
368
- </Tabs.Tab>
369
- <Tabs.Tab>
374
+ </TabItem>
375
+ <TabItem value="bun" label="bun">
370
376
  ```bash copy
371
377
  bun add @ai-sdk/react
372
378
  ```
373
- </Tabs.Tab>
379
+ </TabItem>
374
380
  </Tabs>
375
381
 
376
-
377
382
  ### Using `useChat()`
378
383
 
379
384
  The `useChat()` hook handles real-time chat interactions between your frontend and a Mastra agent, enabling you to send prompts and receive streaming responses over HTTP.
380
385
 
381
- ```typescript {8-12} filename="app/test/chat.tsx" copy
386
+ ```typescript {8-12} title="app/test/chat.tsx" copy
382
387
  "use client";
383
388
 
384
389
  import { useChat } from "@ai-sdk/react";
@@ -411,25 +416,25 @@ export function Chat() {
411
416
 
412
417
  Requests sent using the `useChat()` hook are handled by a standard server route. This example shows how to define a POST route using a Next.js Route Handler.
413
418
 
414
- ```typescript filename="app/api/chat/route.ts" copy
419
+ ```typescript title="app/api/chat/route.ts" copy
415
420
  import { mastra } from "../../mastra";
416
421
 
417
422
  export async function POST(req: Request) {
418
423
  const { messages } = await req.json();
419
424
  const myAgent = mastra.getAgent("weatherAgent");
420
- const stream = await myAgent.stream(messages, { format: 'aisdk' });
425
+ const stream = await myAgent.stream(messages, { format: "aisdk" });
421
426
 
422
- return stream.toUIMessageStreamResponse()
427
+ return stream.toUIMessageStreamResponse();
423
428
  }
424
429
  ```
425
430
 
426
- > When using `useChat()` with agent memory, refer to the [Agent Memory section](/docs/agents/agent-memory#usechat) for key implementation details.
431
+ > When using `useChat()` with agent memory, refer to the [Agent Memory section](/docs/agents/agent-memory) for key implementation details.
427
432
 
428
433
  ### Using `useCompletion()`
429
434
 
430
435
  The `useCompletion()` hook handles single-turn completions between your frontend and a Mastra agent, allowing you to send a prompt and receive a streamed response over HTTP.
431
436
 
432
- ```typescript {6-8} filename="app/test/completion.tsx" copy
437
+ ```typescript {6-8} title="app/test/completion.tsx" copy
433
438
  "use client";
434
439
 
435
440
  import { useCompletion } from "@ai-sdk/react";
@@ -452,15 +457,17 @@ export function Completion() {
452
457
 
453
458
  Requests sent using the `useCompletion()` hook are handled by a standard server route. This example shows how to define a POST route using a Next.js Route Handler.
454
459
 
455
- ```typescript filename="app/api/completion/route.ts" copy
460
+ ```typescript title="app/api/completion/route.ts" copy
456
461
  import { mastra } from "../../../mastra";
457
462
 
458
463
  export async function POST(req: Request) {
459
464
  const { prompt } = await req.json();
460
465
  const myAgent = mastra.getAgent("weatherAgent");
461
- const stream = await myAgent.stream([{ role: "user", content: prompt }], { format: 'aisdk' });
466
+ const stream = await myAgent.stream([{ role: "user", content: prompt }], {
467
+ format: "aisdk",
468
+ });
462
469
 
463
- return stream.toUIMessageStreamResponse()
470
+ return stream.toUIMessageStreamResponse();
464
471
  }
465
472
  ```
466
473
 
@@ -468,7 +475,7 @@ export async function POST(req: Request) {
468
475
 
469
476
  `sendMessage()` allows you to pass additional data from the frontend to Mastra. This data can then be used on the server as `RuntimeContext`.
470
477
 
471
- ```typescript {16-26} filename="app/test/chat-extra.tsx" copy
478
+ ```typescript {16-26} title="app/test/chat-extra.tsx" copy
472
479
  "use client";
473
480
 
474
481
  import { useChat } from "@ai-sdk/react";
@@ -509,7 +516,7 @@ export function ChatExtra() {
509
516
  }
510
517
  ```
511
518
 
512
- ```typescript {8,12} filename="app/api/chat-extra/route.ts" copy
519
+ ```typescript {8,12} title="app/api/chat-extra/route.ts" copy
513
520
  import { mastra } from "../../../mastra";
514
521
  import { RuntimeContext } from "@mastra/core/runtime-context";
515
522
 
@@ -525,7 +532,10 @@ export async function POST(req: Request) {
525
532
  }
526
533
  }
527
534
 
528
- const stream = await myAgent.stream(messages, { runtimeContext, format: 'aisdk' });
535
+ const stream = await myAgent.stream(messages, {
536
+ runtimeContext,
537
+ format: "aisdk",
538
+ });
529
539
  return stream.toUIMessageStreamResponse();
530
540
  }
531
541
  ```
@@ -534,7 +544,7 @@ export async function POST(req: Request) {
534
544
 
535
545
  You can also populate the `RuntimeContext` by reading custom data in a server middleware:
536
546
 
537
- ```typescript {8,17} filename="mastra/index.ts" copy
547
+ ```typescript {8,17} title="mastra/index.ts" copy
538
548
  import { Mastra } from "@mastra/core/mastra";
539
549
 
540
550
  export const mastra = new Mastra({
@@ -554,8 +564,7 @@ export const mastra = new Mastra({
554
564
  runtimeContext.set(key, value);
555
565
  }
556
566
  }
557
- } catch {
558
- }
567
+ } catch {}
559
568
  }
560
569
  await next();
561
570
  },
@@ -584,13 +593,13 @@ Mastra automatically handles AI SDK v4 data using its internal `MessageList` cla
584
593
  For cases where you need to manually convert messages between AI SDK and Mastra formats, use the `convertMessages()` utility:
585
594
 
586
595
  ```typescript
587
- import { convertMessages } from '@mastra/core/agent';
596
+ import { convertMessages } from "@mastra/core/agent";
588
597
 
589
598
  // Convert AI SDK v4 messages to v5
590
- const aiv5Messages = convertMessages(aiv4Messages).to('AIV5.UI');
599
+ const aiv5Messages = convertMessages(aiv4Messages).to("AIV5.UI");
591
600
 
592
601
  // Convert Mastra messages to AI SDK v5
593
- const aiv5Messages = convertMessages(mastraMessages).to('AIV5.Core');
602
+ const aiv5Messages = convertMessages(mastraMessages).to("AIV5.Core");
594
603
 
595
604
  // Supported output formats:
596
605
  // 'Mastra.V2', 'AIV4.UI', 'AIV5.UI', 'AIV5.Core', 'AIV5.Model'
@@ -606,7 +615,7 @@ When using tools with TypeScript in AI SDK v5, Mastra provides type inference he
606
615
 
607
616
  The `InferUITool` type helper infers the input and output types of a single Mastra tool:
608
617
 
609
- ```typescript filename="app/types.ts" copy
618
+ ```typescript title="app/types.ts" copy
610
619
  import { InferUITool, createTool } from "@mastra/core/tools";
611
620
  import { z } from "zod";
612
621
 
@@ -641,7 +650,7 @@ type WeatherUITool = InferUITool<typeof weatherTool>;
641
650
 
642
651
  The `InferUITools` type helper infers the input and output types of multiple tools:
643
652
 
644
- ```typescript filename="app/mastra/tools.ts" copy
653
+ ```typescript title="app/mastra/tools.ts" copy
645
654
  import { InferUITools, createTool } from "@mastra/core/tools";
646
655
  import { z } from "zod";
647
656