@mastra/mcp-docs-server 1.0.0-beta.9 → 1.0.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 (541) hide show
  1. package/.docs/organized/changelogs/%40internal%2Fchangeset-cli.md +3 -1
  2. package/.docs/organized/changelogs/%40internal%2Fexternal-types.md +3 -1
  3. package/.docs/organized/changelogs/%40internal%2Fplayground.md +40 -0
  4. package/.docs/organized/changelogs/%40internal%2Fstorage-test-utils.md +8 -8
  5. package/.docs/organized/changelogs/%40internal%2Ftypes-builder.md +3 -1
  6. package/.docs/organized/changelogs/%40mastra%2Fagent-builder.md +287 -287
  7. package/.docs/organized/changelogs/%40mastra%2Fai-sdk.md +299 -299
  8. package/.docs/organized/changelogs/%40mastra%2Fastra.md +53 -53
  9. package/.docs/organized/changelogs/%40mastra%2Fauth.md +38 -0
  10. package/.docs/organized/changelogs/%40mastra%2Fchroma.md +66 -66
  11. package/.docs/organized/changelogs/%40mastra%2Fclickhouse.md +522 -212
  12. package/.docs/organized/changelogs/%40mastra%2Fclient-js.md +662 -200
  13. package/.docs/organized/changelogs/%40mastra%2Fcloudflare-d1.md +439 -234
  14. package/.docs/organized/changelogs/%40mastra%2Fcloudflare.md +450 -211
  15. package/.docs/organized/changelogs/%40mastra%2Fcodemod.md +202 -0
  16. package/.docs/organized/changelogs/%40mastra%2Fconvex.md +448 -22
  17. package/.docs/organized/changelogs/%40mastra%2Fcore.md +3359 -289
  18. package/.docs/organized/changelogs/%40mastra%2Fcouchbase.md +60 -60
  19. package/.docs/organized/changelogs/%40mastra%2Fdeployer-cloud.md +289 -289
  20. package/.docs/organized/changelogs/%40mastra%2Fdeployer-cloudflare.md +90 -90
  21. package/.docs/organized/changelogs/%40mastra%2Fdeployer-netlify.md +74 -74
  22. package/.docs/organized/changelogs/%40mastra%2Fdeployer-vercel.md +70 -70
  23. package/.docs/organized/changelogs/%40mastra%2Fdeployer.md +248 -221
  24. package/.docs/organized/changelogs/%40mastra%2Fduckdb.md +70 -0
  25. package/.docs/organized/changelogs/%40mastra%2Fdynamodb.md +403 -225
  26. package/.docs/organized/changelogs/%40mastra%2Felasticsearch.md +72 -0
  27. package/.docs/organized/changelogs/%40mastra%2Fevals.md +145 -145
  28. package/.docs/organized/changelogs/%40mastra%2Ffastembed.md +54 -0
  29. package/.docs/organized/changelogs/%40mastra%2Flance.md +456 -226
  30. package/.docs/organized/changelogs/%40mastra%2Flibsql.md +625 -229
  31. package/.docs/organized/changelogs/%40mastra%2Floggers.md +71 -71
  32. package/.docs/organized/changelogs/%40mastra%2Fmcp-docs-server.md +247 -247
  33. package/.docs/organized/changelogs/%40mastra%2Fmcp-registry-registry.md +28 -28
  34. package/.docs/organized/changelogs/%40mastra%2Fmcp.md +281 -281
  35. package/.docs/organized/changelogs/%40mastra%2Fmemory.md +354 -156
  36. package/.docs/organized/changelogs/%40mastra%2Fmongodb.md +545 -212
  37. package/.docs/organized/changelogs/%40mastra%2Fmssql.md +481 -202
  38. package/.docs/organized/changelogs/%40mastra%2Fopensearch.md +194 -194
  39. package/.docs/organized/changelogs/%40mastra%2Fpg.md +781 -235
  40. package/.docs/organized/changelogs/%40mastra%2Fpinecone.md +198 -198
  41. package/.docs/organized/changelogs/%40mastra%2Fplayground-ui.md +655 -248
  42. package/.docs/organized/changelogs/%40mastra%2Fqdrant.md +163 -163
  43. package/.docs/organized/changelogs/%40mastra%2Frag.md +310 -310
  44. package/.docs/organized/changelogs/%40mastra%2Freact.md +328 -237
  45. package/.docs/organized/changelogs/%40mastra%2Fs3vectors.md +64 -0
  46. package/.docs/organized/changelogs/%40mastra%2Fschema-compat.md +160 -0
  47. package/.docs/organized/changelogs/%40mastra%2Fserver.md +850 -239
  48. package/.docs/organized/changelogs/%40mastra%2Fturbopuffer.md +57 -57
  49. package/.docs/organized/changelogs/%40mastra%2Fupstash.md +479 -232
  50. package/.docs/organized/changelogs/%40mastra%2Fvectorize.md +53 -53
  51. package/.docs/organized/changelogs/%40mastra%2Fvoice-azure.md +45 -45
  52. package/.docs/organized/changelogs/%40mastra%2Fvoice-cloudflare.md +45 -45
  53. package/.docs/organized/changelogs/%40mastra%2Fvoice-deepgram.md +47 -47
  54. package/.docs/organized/changelogs/%40mastra%2Fvoice-elevenlabs.md +110 -110
  55. package/.docs/organized/changelogs/%40mastra%2Fvoice-gladia.md +15 -0
  56. package/.docs/organized/changelogs/%40mastra%2Fvoice-google-gemini-live.md +98 -0
  57. package/.docs/organized/changelogs/%40mastra%2Fvoice-google.md +54 -54
  58. package/.docs/organized/changelogs/%40mastra%2Fvoice-murf.md +46 -46
  59. package/.docs/organized/changelogs/%40mastra%2Fvoice-openai-realtime.md +93 -93
  60. package/.docs/organized/changelogs/%40mastra%2Fvoice-openai.md +47 -47
  61. package/.docs/organized/changelogs/%40mastra%2Fvoice-playai.md +45 -45
  62. package/.docs/organized/changelogs/%40mastra%2Fvoice-sarvam.md +45 -45
  63. package/.docs/organized/changelogs/%40mastra%2Fvoice-speechify.md +45 -45
  64. package/.docs/organized/changelogs/create-mastra.md +215 -215
  65. package/.docs/organized/changelogs/mastra.md +278 -278
  66. package/.docs/organized/code-examples/a2a.md +2 -2
  67. package/.docs/organized/code-examples/agent-v6.md +221 -0
  68. package/.docs/organized/code-examples/agui.md +4 -4
  69. package/.docs/organized/code-examples/ai-elements.md +3 -3
  70. package/.docs/organized/code-examples/ai-sdk-useChat.md +2 -2
  71. package/.docs/organized/code-examples/ai-sdk-v5.md +3 -3
  72. package/.docs/organized/code-examples/assistant-ui.md +5 -5
  73. package/.docs/organized/code-examples/bird-checker-with-express.md +1 -1
  74. package/.docs/organized/code-examples/bird-checker-with-nextjs-and-eval.md +2 -2
  75. package/.docs/organized/code-examples/bird-checker-with-nextjs.md +3 -3
  76. package/.docs/organized/code-examples/client-side-tools.md +4 -4
  77. package/.docs/organized/code-examples/crypto-chatbot.md +5 -5
  78. package/.docs/organized/code-examples/experimental-auth-weather-agent.md +1 -1
  79. package/.docs/organized/code-examples/fireworks-r1.md +2 -2
  80. package/.docs/organized/code-examples/heads-up-game.md +7 -7
  81. package/.docs/organized/code-examples/inngest.md +1075 -0
  82. package/.docs/organized/code-examples/mcp-configuration.md +1 -1
  83. package/.docs/organized/code-examples/mcp-server-adapters.md +2 -2
  84. package/.docs/organized/code-examples/memory-per-resource-example.md +3 -3
  85. package/.docs/organized/code-examples/memory-todo-agent.md +1 -1
  86. package/.docs/organized/code-examples/memory-with-context.md +1 -1
  87. package/.docs/organized/code-examples/memory-with-processors.md +1 -1
  88. package/.docs/organized/code-examples/openapi-spec-writer.md +3 -3
  89. package/.docs/organized/code-examples/quick-start.md +1 -5
  90. package/.docs/organized/code-examples/server-app-access.md +2 -2
  91. package/.docs/organized/code-examples/server-express-adapter.md +1 -1
  92. package/.docs/organized/code-examples/server-fastify-adapter.md +83 -0
  93. package/.docs/organized/code-examples/server-hono-adapter.md +2 -2
  94. package/.docs/organized/code-examples/server-koa-adapter.md +94 -0
  95. package/.docs/organized/code-examples/stock-price-tool.md +21 -2
  96. package/.docs/organized/code-examples/workflow-ai-recruiter.md +1 -1
  97. package/.docs/organized/code-examples/workflow-with-inline-steps.md +1 -1
  98. package/.docs/organized/code-examples/workflow-with-memory.md +1 -1
  99. package/.docs/organized/code-examples/workflow-with-separate-steps.md +1 -1
  100. package/.docs/organized/code-examples/workflow-with-suspend-resume.md +1 -1
  101. package/.docs/raw/agents/adding-voice.mdx +24 -6
  102. package/.docs/raw/agents/agent-approval.mdx +209 -12
  103. package/.docs/raw/agents/agent-memory.mdx +36 -32
  104. package/.docs/raw/agents/guardrails.mdx +105 -56
  105. package/.docs/raw/agents/network-approval.mdx +281 -0
  106. package/.docs/raw/agents/networks.mdx +69 -13
  107. package/.docs/raw/agents/overview.mdx +43 -25
  108. package/.docs/raw/agents/processors.mdx +234 -17
  109. package/.docs/raw/agents/structured-output.mdx +78 -8
  110. package/.docs/raw/agents/using-tools.mdx +67 -6
  111. package/.docs/raw/course/01-first-agent/07-creating-your-agent.md +1 -2
  112. package/.docs/raw/course/01-first-agent/12-connecting-tool-to-agent.md +1 -1
  113. package/.docs/raw/course/01-first-agent/16-adding-memory-to-agent.md +1 -2
  114. package/.docs/raw/course/02-agent-tools-mcp/05-updating-your-agent.md +1 -1
  115. package/.docs/raw/course/02-agent-tools-mcp/10-updating-agent-instructions-zapier.md +1 -1
  116. package/.docs/raw/course/02-agent-tools-mcp/16-updating-agent-instructions-github.md +1 -1
  117. package/.docs/raw/course/02-agent-tools-mcp/21-updating-agent-instructions-hackernews.md +1 -1
  118. package/.docs/raw/course/02-agent-tools-mcp/27-updating-agent-instructions-filesystem.md +1 -1
  119. package/.docs/raw/course/02-agent-tools-mcp/31-enhancing-memory-configuration.md +3 -3
  120. package/.docs/raw/course/03-agent-memory/04-creating-basic-memory-agent.md +1 -2
  121. package/.docs/raw/course/03-agent-memory/07-understanding-memory-threads.md +35 -0
  122. package/.docs/raw/course/03-agent-memory/08-configuring-conversation-history.md +1 -2
  123. package/.docs/raw/course/03-agent-memory/13-vector-store-configuration.md +1 -1
  124. package/.docs/raw/course/03-agent-memory/16-configuring-semantic-recall.md +4 -5
  125. package/.docs/raw/course/03-agent-memory/18-advanced-configuration-semantic-recall.md +1 -1
  126. package/.docs/raw/course/03-agent-memory/21-configuring-working-memory.md +3 -4
  127. package/.docs/raw/course/03-agent-memory/22-custom-working-memory-templates.md +3 -4
  128. package/.docs/raw/course/03-agent-memory/25-combining-memory-features.md +3 -4
  129. package/.docs/raw/course/03-agent-memory/27-creating-learning-assistant.md +3 -4
  130. package/.docs/raw/course/04-workflows/11-creating-an-ai-agent.md +2 -3
  131. package/.docs/raw/deployment/cloud-providers.mdx +22 -0
  132. package/.docs/raw/deployment/mastra-server.mdx +140 -0
  133. package/.docs/raw/deployment/monorepo.mdx +106 -42
  134. package/.docs/raw/deployment/overview.mdx +35 -48
  135. package/.docs/raw/deployment/web-framework.mdx +17 -19
  136. package/.docs/raw/deployment/workflow-runners.mdx +16 -0
  137. package/.docs/raw/evals/built-in-scorers.mdx +2 -0
  138. package/.docs/raw/evals/custom-scorers.mdx +60 -12
  139. package/.docs/raw/evals/overview.mdx +6 -6
  140. package/.docs/raw/evals/running-in-ci.mdx +4 -2
  141. package/.docs/raw/getting-started/manual-install.mdx +20 -20
  142. package/.docs/raw/getting-started/mcp-docs-server.mdx +59 -2
  143. package/.docs/raw/getting-started/project-structure.mdx +2 -2
  144. package/.docs/raw/getting-started/start.mdx +17 -1
  145. package/.docs/raw/getting-started/studio.mdx +6 -35
  146. package/.docs/raw/guides/agent-frameworks/ai-sdk.mdx +23 -33
  147. package/.docs/raw/guides/build-your-ui/ai-sdk-ui.mdx +1034 -80
  148. package/.docs/raw/guides/build-your-ui/assistant-ui.mdx +8 -8
  149. package/.docs/raw/guides/build-your-ui/copilotkit.mdx +32 -11
  150. package/.docs/raw/{deployment/cloud-providers → guides/deployment}/amazon-ec2.mdx +9 -9
  151. package/.docs/raw/{deployment/cloud-providers → guides/deployment}/aws-lambda.mdx +13 -16
  152. package/.docs/raw/{deployment/cloud-providers → guides/deployment}/azure-app-services.mdx +5 -7
  153. package/.docs/raw/{deployment/cloud-providers → guides/deployment}/cloudflare-deployer.mdx +8 -5
  154. package/.docs/raw/{deployment/cloud-providers → guides/deployment}/digital-ocean.mdx +18 -23
  155. package/.docs/raw/guides/deployment/index.mdx +32 -0
  156. package/.docs/raw/guides/deployment/inngest.mdx +673 -0
  157. package/.docs/raw/{deployment/cloud-providers → guides/deployment}/netlify-deployer.mdx +7 -3
  158. package/.docs/raw/{deployment/cloud-providers → guides/deployment}/vercel-deployer.mdx +8 -5
  159. package/.docs/raw/guides/getting-started/astro.mdx +292 -451
  160. package/.docs/raw/guides/getting-started/express.mdx +72 -153
  161. package/.docs/raw/guides/getting-started/hono.mdx +227 -0
  162. package/.docs/raw/guides/getting-started/next-js.mdx +173 -61
  163. package/.docs/raw/guides/getting-started/nuxt.mdx +505 -0
  164. package/.docs/raw/guides/getting-started/quickstart.mdx +5 -5
  165. package/.docs/raw/guides/getting-started/sveltekit.mdx +238 -409
  166. package/.docs/raw/guides/getting-started/vite-react.mdx +317 -147
  167. package/.docs/raw/guides/guide/ai-recruiter.mdx +10 -10
  168. package/.docs/raw/guides/guide/chef-michel.mdx +9 -11
  169. package/.docs/raw/guides/guide/notes-mcp-server.mdx +15 -15
  170. package/.docs/raw/guides/guide/research-assistant.mdx +20 -20
  171. package/.docs/raw/guides/guide/stock-agent.mdx +5 -5
  172. package/.docs/raw/guides/guide/web-search.mdx +38 -38
  173. package/.docs/raw/guides/guide/whatsapp-chat-bot.mdx +7 -7
  174. package/.docs/raw/guides/index.mdx +0 -1
  175. package/.docs/raw/guides/migrations/ai-sdk-v4-to-v5.mdx +2 -2
  176. package/.docs/raw/guides/migrations/upgrade-to-v1/agent.mdx +105 -4
  177. package/.docs/raw/guides/migrations/upgrade-to-v1/cli.mdx +15 -1
  178. package/.docs/raw/guides/migrations/upgrade-to-v1/client.mdx +170 -0
  179. package/.docs/raw/guides/migrations/upgrade-to-v1/deployment.mdx +42 -0
  180. package/.docs/raw/guides/migrations/upgrade-to-v1/mastra.mdx +0 -35
  181. package/.docs/raw/guides/migrations/upgrade-to-v1/memory.mdx +40 -3
  182. package/.docs/raw/guides/migrations/upgrade-to-v1/overview.mdx +17 -2
  183. package/.docs/raw/guides/migrations/upgrade-to-v1/processors.mdx +11 -0
  184. package/.docs/raw/guides/migrations/upgrade-to-v1/rag.mdx +47 -0
  185. package/.docs/raw/guides/migrations/upgrade-to-v1/storage.mdx +271 -25
  186. package/.docs/raw/guides/migrations/upgrade-to-v1/tracing.mdx +72 -17
  187. package/.docs/raw/guides/migrations/upgrade-to-v1/vectors.mdx +46 -1
  188. package/.docs/raw/guides/migrations/upgrade-to-v1/workflows.mdx +50 -7
  189. package/.docs/raw/guides/migrations/vnext-to-standard-apis.mdx +21 -23
  190. package/.docs/raw/index.mdx +2 -2
  191. package/.docs/raw/mastra-cloud/deployment.mdx +86 -0
  192. package/.docs/raw/mastra-cloud/observability.mdx +43 -0
  193. package/.docs/raw/mastra-cloud/overview.mdx +31 -0
  194. package/.docs/raw/mastra-cloud/setup.mdx +64 -0
  195. package/.docs/raw/mastra-cloud/studio.mdx +35 -0
  196. package/.docs/raw/mcp/overview.mdx +60 -25
  197. package/.docs/raw/mcp/publishing-mcp-server.mdx +7 -4
  198. package/.docs/raw/memory/memory-processors.mdx +17 -12
  199. package/.docs/raw/memory/message-history.mdx +72 -0
  200. package/.docs/raw/memory/overview.mdx +38 -76
  201. package/.docs/raw/memory/semantic-recall.mdx +65 -52
  202. package/.docs/raw/memory/storage.mdx +248 -0
  203. package/.docs/raw/memory/working-memory.mdx +24 -13
  204. package/.docs/raw/observability/logging.mdx +16 -15
  205. package/.docs/raw/observability/overview.mdx +27 -7
  206. package/.docs/raw/observability/tracing/bridges/otel.mdx +7 -4
  207. package/.docs/raw/observability/tracing/exporters/arize.mdx +61 -24
  208. package/.docs/raw/observability/tracing/exporters/braintrust.mdx +32 -22
  209. package/.docs/raw/observability/tracing/exporters/cloud.mdx +24 -5
  210. package/.docs/raw/observability/tracing/exporters/datadog.mdx +175 -0
  211. package/.docs/raw/observability/tracing/exporters/default.mdx +28 -7
  212. package/.docs/raw/observability/tracing/exporters/laminar.mdx +89 -0
  213. package/.docs/raw/observability/tracing/exporters/langfuse.mdx +31 -22
  214. package/.docs/raw/observability/tracing/exporters/langsmith.mdx +33 -3
  215. package/.docs/raw/observability/tracing/exporters/otel.mdx +194 -22
  216. package/.docs/raw/observability/tracing/exporters/posthog.mdx +32 -22
  217. package/.docs/raw/observability/tracing/exporters/sentry.mdx +198 -0
  218. package/.docs/raw/observability/tracing/overview.mdx +388 -108
  219. package/.docs/raw/observability/tracing/processors/sensitive-data-filter.mdx +27 -7
  220. package/.docs/raw/rag/chunking-and-embedding.mdx +22 -33
  221. package/.docs/raw/rag/graph-rag.mdx +223 -0
  222. package/.docs/raw/rag/overview.mdx +6 -3
  223. package/.docs/raw/rag/retrieval.mdx +53 -57
  224. package/.docs/raw/rag/vector-databases.mdx +55 -31
  225. package/.docs/raw/reference/agents/agent.mdx +17 -14
  226. package/.docs/raw/reference/agents/generate.mdx +172 -44
  227. package/.docs/raw/reference/agents/generateLegacy.mdx +5 -3
  228. package/.docs/raw/reference/agents/getDefaultGenerateOptions.mdx +5 -3
  229. package/.docs/raw/reference/agents/getDefaultOptions.mdx +5 -3
  230. package/.docs/raw/reference/agents/getDefaultStreamOptions.mdx +5 -3
  231. package/.docs/raw/reference/agents/getDescription.mdx +3 -1
  232. package/.docs/raw/reference/agents/getInstructions.mdx +5 -3
  233. package/.docs/raw/reference/agents/getLLM.mdx +5 -3
  234. package/.docs/raw/reference/agents/getMemory.mdx +5 -3
  235. package/.docs/raw/reference/agents/getModel.mdx +5 -3
  236. package/.docs/raw/reference/agents/getTools.mdx +4 -2
  237. package/.docs/raw/reference/agents/getVoice.mdx +4 -2
  238. package/.docs/raw/reference/agents/listAgents.mdx +4 -2
  239. package/.docs/raw/reference/agents/listScorers.mdx +5 -3
  240. package/.docs/raw/reference/agents/listTools.mdx +4 -2
  241. package/.docs/raw/reference/agents/listWorkflows.mdx +4 -2
  242. package/.docs/raw/reference/agents/network.mdx +113 -1
  243. package/.docs/raw/reference/ai-sdk/chat-route.mdx +6 -3
  244. package/.docs/raw/reference/ai-sdk/handle-chat-stream.mdx +4 -2
  245. package/.docs/raw/reference/ai-sdk/handle-network-stream.mdx +4 -2
  246. package/.docs/raw/reference/ai-sdk/handle-workflow-stream.mdx +5 -3
  247. package/.docs/raw/reference/ai-sdk/network-route.mdx +6 -3
  248. package/.docs/raw/reference/ai-sdk/to-ai-sdk-stream.mdx +10 -6
  249. package/.docs/raw/reference/ai-sdk/to-ai-sdk-v4-messages.mdx +130 -0
  250. package/.docs/raw/reference/ai-sdk/to-ai-sdk-v5-messages.mdx +110 -0
  251. package/.docs/raw/reference/ai-sdk/with-mastra.mdx +122 -0
  252. package/.docs/raw/reference/ai-sdk/workflow-route.mdx +7 -4
  253. package/.docs/raw/reference/auth/auth0.mdx +5 -3
  254. package/.docs/raw/reference/auth/clerk.mdx +5 -3
  255. package/.docs/raw/reference/auth/firebase.mdx +6 -5
  256. package/.docs/raw/reference/auth/jwt.mdx +5 -3
  257. package/.docs/raw/reference/auth/supabase.mdx +5 -3
  258. package/.docs/raw/reference/auth/workos.mdx +5 -3
  259. package/.docs/raw/reference/cli/create-mastra.mdx +12 -10
  260. package/.docs/raw/reference/cli/mastra.mdx +63 -15
  261. package/.docs/raw/reference/client-js/agents.mdx +77 -35
  262. package/.docs/raw/reference/client-js/error-handling.mdx +3 -3
  263. package/.docs/raw/reference/client-js/logs.mdx +2 -0
  264. package/.docs/raw/reference/client-js/mastra-client.mdx +4 -2
  265. package/.docs/raw/reference/client-js/memory.mdx +43 -1
  266. package/.docs/raw/reference/client-js/observability.mdx +2 -0
  267. package/.docs/raw/reference/client-js/telemetry.mdx +2 -0
  268. package/.docs/raw/reference/client-js/tools.mdx +2 -0
  269. package/.docs/raw/reference/client-js/vectors.mdx +2 -0
  270. package/.docs/raw/reference/client-js/workflows.mdx +47 -3
  271. package/.docs/raw/reference/configuration.mdx +761 -0
  272. package/.docs/raw/reference/core/addGateway.mdx +2 -0
  273. package/.docs/raw/reference/core/getAgent.mdx +3 -1
  274. package/.docs/raw/reference/core/getAgentById.mdx +3 -1
  275. package/.docs/raw/reference/core/getDeployer.mdx +3 -1
  276. package/.docs/raw/reference/core/getGateway.mdx +2 -0
  277. package/.docs/raw/reference/core/getGatewayById.mdx +2 -0
  278. package/.docs/raw/reference/core/getLogger.mdx +3 -1
  279. package/.docs/raw/reference/core/getMCPServer.mdx +3 -1
  280. package/.docs/raw/reference/core/getMCPServerById.mdx +3 -1
  281. package/.docs/raw/reference/core/getMemory.mdx +7 -3
  282. package/.docs/raw/reference/core/getScorer.mdx +2 -0
  283. package/.docs/raw/reference/core/getScorerById.mdx +2 -0
  284. package/.docs/raw/reference/core/getServer.mdx +6 -4
  285. package/.docs/raw/reference/core/getStorage.mdx +5 -3
  286. package/.docs/raw/reference/core/getStoredAgentById.mdx +6 -4
  287. package/.docs/raw/reference/core/getTelemetry.mdx +3 -1
  288. package/.docs/raw/reference/core/getVector.mdx +3 -1
  289. package/.docs/raw/reference/core/getWorkflow.mdx +3 -1
  290. package/.docs/raw/reference/core/listAgents.mdx +3 -1
  291. package/.docs/raw/reference/core/listGateways.mdx +2 -0
  292. package/.docs/raw/reference/core/listLogs.mdx +3 -1
  293. package/.docs/raw/reference/core/listLogsByRunId.mdx +3 -1
  294. package/.docs/raw/reference/core/listMCPServers.mdx +3 -1
  295. package/.docs/raw/reference/core/listMemory.mdx +8 -4
  296. package/.docs/raw/reference/core/listScorers.mdx +2 -0
  297. package/.docs/raw/reference/core/listStoredAgents.mdx +7 -5
  298. package/.docs/raw/reference/core/listVectors.mdx +3 -1
  299. package/.docs/raw/reference/core/listWorkflows.mdx +3 -1
  300. package/.docs/raw/reference/core/mastra-class.mdx +27 -20
  301. package/.docs/raw/reference/core/mastra-model-gateway.mdx +2 -0
  302. package/.docs/raw/reference/core/setLogger.mdx +3 -1
  303. package/.docs/raw/reference/core/setStorage.mdx +6 -4
  304. package/.docs/raw/reference/deployer/cloudflare.mdx +22 -53
  305. package/.docs/raw/reference/deployer/deployer.mdx +2 -1
  306. package/.docs/raw/reference/deployer/netlify.mdx +4 -1
  307. package/.docs/raw/reference/deployer/vercel.mdx +5 -4
  308. package/.docs/raw/reference/evals/answer-relevancy.mdx +4 -1
  309. package/.docs/raw/reference/evals/answer-similarity.mdx +4 -1
  310. package/.docs/raw/reference/evals/bias.mdx +4 -1
  311. package/.docs/raw/reference/evals/completeness.mdx +4 -1
  312. package/.docs/raw/reference/evals/content-similarity.mdx +4 -1
  313. package/.docs/raw/reference/evals/context-precision.mdx +4 -1
  314. package/.docs/raw/reference/evals/context-relevance.mdx +2 -0
  315. package/.docs/raw/reference/evals/create-scorer.mdx +11 -3
  316. package/.docs/raw/reference/evals/faithfulness.mdx +4 -1
  317. package/.docs/raw/reference/evals/hallucination.mdx +4 -1
  318. package/.docs/raw/reference/evals/keyword-coverage.mdx +4 -1
  319. package/.docs/raw/reference/evals/mastra-scorer.mdx +2 -0
  320. package/.docs/raw/reference/evals/noise-sensitivity.mdx +2 -0
  321. package/.docs/raw/reference/evals/prompt-alignment.mdx +9 -7
  322. package/.docs/raw/reference/evals/run-evals.mdx +3 -1
  323. package/.docs/raw/reference/evals/scorer-utils.mdx +3 -0
  324. package/.docs/raw/reference/evals/textual-difference.mdx +4 -1
  325. package/.docs/raw/reference/evals/tone-consistency.mdx +4 -1
  326. package/.docs/raw/reference/evals/tool-call-accuracy.mdx +25 -23
  327. package/.docs/raw/reference/evals/toxicity.mdx +4 -1
  328. package/.docs/raw/reference/index.mdx +2 -1
  329. package/.docs/raw/reference/logging/pino-logger.mdx +10 -8
  330. package/.docs/raw/reference/memory/clone-utilities.mdx +345 -0
  331. package/.docs/raw/reference/memory/cloneThread.mdx +237 -0
  332. package/.docs/raw/reference/memory/createThread.mdx +6 -4
  333. package/.docs/raw/reference/memory/deleteMessages.mdx +4 -2
  334. package/.docs/raw/reference/memory/getThreadById.mdx +3 -1
  335. package/.docs/raw/reference/memory/listThreads.mdx +187 -0
  336. package/.docs/raw/reference/memory/memory-class.mdx +27 -20
  337. package/.docs/raw/reference/memory/recall.mdx +6 -4
  338. package/.docs/raw/reference/observability/tracing/bridges/otel.mdx +6 -2
  339. package/.docs/raw/reference/observability/tracing/configuration.mdx +51 -0
  340. package/.docs/raw/reference/observability/tracing/exporters/arize.mdx +25 -6
  341. package/.docs/raw/reference/observability/tracing/exporters/braintrust.mdx +23 -2
  342. package/.docs/raw/reference/observability/tracing/exporters/cloud-exporter.mdx +10 -0
  343. package/.docs/raw/reference/observability/tracing/exporters/console-exporter.mdx +3 -0
  344. package/.docs/raw/reference/observability/tracing/exporters/datadog.mdx +172 -0
  345. package/.docs/raw/reference/observability/tracing/exporters/default-exporter.mdx +10 -0
  346. package/.docs/raw/reference/observability/tracing/exporters/laminar.mdx +139 -0
  347. package/.docs/raw/reference/observability/tracing/exporters/langfuse.mdx +26 -4
  348. package/.docs/raw/reference/observability/tracing/exporters/langsmith.mdx +10 -0
  349. package/.docs/raw/reference/observability/tracing/exporters/otel.mdx +51 -34
  350. package/.docs/raw/reference/observability/tracing/exporters/posthog.mdx +25 -4
  351. package/.docs/raw/reference/observability/tracing/exporters/sentry.mdx +224 -0
  352. package/.docs/raw/reference/observability/tracing/instances.mdx +2 -0
  353. package/.docs/raw/reference/observability/tracing/interfaces.mdx +20 -0
  354. package/.docs/raw/reference/observability/tracing/processors/sensitive-data-filter.mdx +2 -0
  355. package/.docs/raw/reference/observability/tracing/spans.mdx +2 -0
  356. package/.docs/raw/reference/processors/batch-parts-processor.mdx +4 -2
  357. package/.docs/raw/reference/processors/language-detector.mdx +6 -3
  358. package/.docs/raw/reference/processors/message-history-processor.mdx +5 -2
  359. package/.docs/raw/reference/processors/moderation-processor.mdx +6 -4
  360. package/.docs/raw/reference/processors/pii-detector.mdx +6 -4
  361. package/.docs/raw/reference/processors/processor-interface.mdx +326 -23
  362. package/.docs/raw/reference/processors/prompt-injection-detector.mdx +5 -3
  363. package/.docs/raw/reference/processors/semantic-recall-processor.mdx +7 -2
  364. package/.docs/raw/reference/processors/system-prompt-scrubber.mdx +5 -3
  365. package/.docs/raw/reference/processors/token-limiter-processor.mdx +62 -19
  366. package/.docs/raw/reference/processors/tool-call-filter.mdx +5 -3
  367. package/.docs/raw/reference/processors/unicode-normalizer.mdx +6 -3
  368. package/.docs/raw/reference/processors/working-memory-processor.mdx +6 -3
  369. package/.docs/raw/reference/rag/chunk.mdx +7 -6
  370. package/.docs/raw/reference/rag/database-config.mdx +8 -6
  371. package/.docs/raw/reference/rag/document.mdx +2 -0
  372. package/.docs/raw/reference/rag/embeddings.mdx +2 -0
  373. package/.docs/raw/reference/rag/extract-params.mdx +57 -3
  374. package/.docs/raw/reference/rag/graph-rag.mdx +2 -0
  375. package/.docs/raw/reference/rag/metadata-filters.mdx +27 -7
  376. package/.docs/raw/reference/rag/rerank.mdx +2 -0
  377. package/.docs/raw/reference/rag/rerankWithScorer.mdx +2 -0
  378. package/.docs/raw/reference/server/create-route.mdx +34 -18
  379. package/.docs/raw/reference/server/express-adapter.mdx +27 -51
  380. package/.docs/raw/reference/server/fastify-adapter.mdx +130 -0
  381. package/.docs/raw/reference/server/hono-adapter.mdx +27 -51
  382. package/.docs/raw/reference/server/koa-adapter.mdx +129 -0
  383. package/.docs/raw/reference/server/mastra-server.mdx +52 -34
  384. package/.docs/raw/reference/server/routes.mdx +73 -10
  385. package/.docs/raw/reference/storage/cloudflare-d1.mdx +10 -5
  386. package/.docs/raw/reference/storage/cloudflare.mdx +12 -2
  387. package/.docs/raw/reference/storage/composite.mdx +245 -0
  388. package/.docs/raw/reference/storage/convex.mdx +8 -6
  389. package/.docs/raw/reference/storage/dynamodb.mdx +134 -8
  390. package/.docs/raw/reference/storage/lance.mdx +9 -5
  391. package/.docs/raw/reference/storage/libsql.mdx +76 -54
  392. package/.docs/raw/reference/storage/mongodb.mdx +115 -16
  393. package/.docs/raw/reference/storage/mssql.mdx +11 -6
  394. package/.docs/raw/{server-db/storage.mdx → reference/storage/overview.mdx} +15 -111
  395. package/.docs/raw/reference/storage/postgresql.mdx +228 -83
  396. package/.docs/raw/reference/storage/upstash.mdx +78 -2
  397. package/.docs/raw/reference/streaming/ChunkType.mdx +31 -3
  398. package/.docs/raw/reference/streaming/agents/MastraModelOutput.mdx +67 -6
  399. package/.docs/raw/reference/streaming/agents/stream.mdx +48 -51
  400. package/.docs/raw/reference/streaming/agents/streamLegacy.mdx +5 -3
  401. package/.docs/raw/reference/streaming/workflows/observeStream.mdx +3 -1
  402. package/.docs/raw/reference/streaming/workflows/resumeStream.mdx +3 -1
  403. package/.docs/raw/reference/streaming/workflows/stream.mdx +37 -22
  404. package/.docs/raw/reference/streaming/workflows/timeTravelStream.mdx +6 -4
  405. package/.docs/raw/reference/templates/overview.mdx +3 -2
  406. package/.docs/raw/reference/tools/client.mdx +3 -0
  407. package/.docs/raw/reference/tools/create-tool.mdx +127 -5
  408. package/.docs/raw/reference/tools/document-chunker-tool.mdx +2 -0
  409. package/.docs/raw/reference/tools/graph-rag-tool.mdx +40 -3
  410. package/.docs/raw/reference/tools/mcp-client.mdx +110 -1
  411. package/.docs/raw/reference/tools/mcp-server.mdx +278 -24
  412. package/.docs/raw/reference/tools/vector-query-tool.mdx +68 -4
  413. package/.docs/raw/reference/vectors/astra.mdx +5 -3
  414. package/.docs/raw/reference/vectors/chroma.mdx +5 -3
  415. package/.docs/raw/reference/vectors/convex.mdx +14 -12
  416. package/.docs/raw/reference/vectors/couchbase.mdx +7 -5
  417. package/.docs/raw/reference/vectors/duckdb.mdx +12 -10
  418. package/.docs/raw/reference/vectors/elasticsearch.mdx +12 -4
  419. package/.docs/raw/reference/vectors/lance.mdx +6 -4
  420. package/.docs/raw/reference/vectors/libsql.mdx +66 -13
  421. package/.docs/raw/reference/vectors/mongodb.mdx +90 -10
  422. package/.docs/raw/reference/vectors/opensearch.mdx +30 -3
  423. package/.docs/raw/reference/vectors/pg.mdx +58 -6
  424. package/.docs/raw/reference/vectors/pinecone.mdx +23 -8
  425. package/.docs/raw/reference/vectors/qdrant.mdx +148 -4
  426. package/.docs/raw/reference/vectors/s3vectors.mdx +8 -6
  427. package/.docs/raw/reference/vectors/turbopuffer.mdx +6 -4
  428. package/.docs/raw/reference/vectors/upstash.mdx +60 -6
  429. package/.docs/raw/reference/vectors/vectorize.mdx +5 -3
  430. package/.docs/raw/reference/voice/azure.mdx +2 -0
  431. package/.docs/raw/reference/voice/cloudflare.mdx +2 -0
  432. package/.docs/raw/reference/voice/composite-voice.mdx +4 -0
  433. package/.docs/raw/reference/voice/deepgram.mdx +2 -0
  434. package/.docs/raw/reference/voice/elevenlabs.mdx +2 -0
  435. package/.docs/raw/reference/voice/google-gemini-live.mdx +3 -0
  436. package/.docs/raw/reference/voice/google.mdx +2 -0
  437. package/.docs/raw/reference/voice/mastra-voice.mdx +2 -0
  438. package/.docs/raw/reference/voice/murf.mdx +2 -0
  439. package/.docs/raw/reference/voice/openai-realtime.mdx +3 -0
  440. package/.docs/raw/reference/voice/openai.mdx +2 -0
  441. package/.docs/raw/reference/voice/playai.mdx +2 -0
  442. package/.docs/raw/reference/voice/sarvam.mdx +2 -0
  443. package/.docs/raw/reference/voice/speechify.mdx +2 -0
  444. package/.docs/raw/reference/voice/voice.addInstructions.mdx +3 -0
  445. package/.docs/raw/reference/voice/voice.addTools.mdx +3 -0
  446. package/.docs/raw/reference/voice/voice.answer.mdx +4 -0
  447. package/.docs/raw/reference/voice/voice.close.mdx +3 -0
  448. package/.docs/raw/reference/voice/voice.connect.mdx +5 -1
  449. package/.docs/raw/reference/voice/voice.events.mdx +2 -0
  450. package/.docs/raw/reference/voice/voice.getSpeakers.mdx +3 -0
  451. package/.docs/raw/reference/voice/voice.listen.mdx +6 -0
  452. package/.docs/raw/reference/voice/voice.off.mdx +2 -0
  453. package/.docs/raw/reference/voice/voice.on.mdx +5 -1
  454. package/.docs/raw/reference/voice/voice.send.mdx +4 -0
  455. package/.docs/raw/reference/voice/voice.speak.mdx +6 -0
  456. package/.docs/raw/reference/voice/voice.updateConfig.mdx +2 -0
  457. package/.docs/raw/reference/workflows/run-methods/cancel.mdx +55 -5
  458. package/.docs/raw/reference/workflows/run-methods/restart.mdx +3 -3
  459. package/.docs/raw/reference/workflows/run-methods/resume.mdx +6 -4
  460. package/.docs/raw/reference/workflows/run-methods/start.mdx +7 -5
  461. package/.docs/raw/reference/workflows/run-methods/startAsync.mdx +145 -0
  462. package/.docs/raw/reference/workflows/run-methods/timeTravel.mdx +10 -8
  463. package/.docs/raw/reference/workflows/run.mdx +11 -3
  464. package/.docs/raw/reference/workflows/step.mdx +56 -3
  465. package/.docs/raw/reference/workflows/workflow-methods/branch.mdx +3 -1
  466. package/.docs/raw/reference/workflows/workflow-methods/commit.mdx +3 -1
  467. package/.docs/raw/reference/workflows/workflow-methods/create-run.mdx +39 -2
  468. package/.docs/raw/reference/workflows/workflow-methods/dountil.mdx +3 -1
  469. package/.docs/raw/reference/workflows/workflow-methods/dowhile.mdx +3 -1
  470. package/.docs/raw/reference/workflows/workflow-methods/foreach.mdx +71 -4
  471. package/.docs/raw/reference/workflows/workflow-methods/map.mdx +9 -7
  472. package/.docs/raw/reference/workflows/workflow-methods/parallel.mdx +3 -1
  473. package/.docs/raw/reference/workflows/workflow-methods/sleep.mdx +4 -6
  474. package/.docs/raw/reference/workflows/workflow-methods/sleepUntil.mdx +4 -6
  475. package/.docs/raw/reference/workflows/workflow-methods/then.mdx +3 -1
  476. package/.docs/raw/reference/workflows/workflow.mdx +193 -2
  477. package/.docs/raw/{auth → server/auth}/auth0.mdx +40 -21
  478. package/.docs/raw/{auth → server/auth}/clerk.mdx +37 -16
  479. package/.docs/raw/{auth → server/auth}/firebase.mdx +47 -25
  480. package/.docs/raw/{auth → server/auth}/index.mdx +8 -6
  481. package/.docs/raw/{auth → server/auth}/jwt.mdx +22 -10
  482. package/.docs/raw/{auth → server/auth}/supabase.mdx +45 -25
  483. package/.docs/raw/{auth → server/auth}/workos.mdx +39 -20
  484. package/.docs/raw/{server-db → server}/custom-adapters.mdx +40 -24
  485. package/.docs/raw/{server-db → server}/custom-api-routes.mdx +6 -6
  486. package/.docs/raw/{server-db → server}/mastra-client.mdx +35 -38
  487. package/.docs/raw/server/mastra-server.mdx +86 -0
  488. package/.docs/raw/{server-db → server}/middleware.mdx +11 -9
  489. package/.docs/raw/{server-db → server}/request-context.mdx +85 -43
  490. package/.docs/raw/{server-db → server}/server-adapters.mdx +154 -33
  491. package/.docs/raw/streaming/events.mdx +16 -7
  492. package/.docs/raw/streaming/overview.mdx +30 -17
  493. package/.docs/raw/streaming/tool-streaming.mdx +8 -6
  494. package/.docs/raw/streaming/workflow-streaming.mdx +8 -8
  495. package/.docs/raw/tools-mcp/advanced-usage.mdx +4 -2
  496. package/.docs/raw/tools-mcp/mcp-overview.mdx +46 -12
  497. package/.docs/raw/tools-mcp/overview.mdx +14 -13
  498. package/.docs/raw/voice/overview.mdx +17 -2
  499. package/.docs/raw/voice/speech-to-speech.mdx +5 -0
  500. package/.docs/raw/voice/speech-to-text.mdx +4 -0
  501. package/.docs/raw/voice/text-to-speech.mdx +3 -0
  502. package/.docs/raw/workflows/agents-and-tools.mdx +70 -21
  503. package/.docs/raw/workflows/control-flow.mdx +369 -34
  504. package/.docs/raw/workflows/error-handling.mdx +192 -18
  505. package/.docs/raw/workflows/human-in-the-loop.mdx +8 -7
  506. package/.docs/raw/workflows/input-data-mapping.mdx +9 -7
  507. package/.docs/raw/workflows/overview.mdx +80 -34
  508. package/.docs/raw/workflows/snapshots.mdx +19 -45
  509. package/.docs/raw/workflows/suspend-and-resume.mdx +14 -14
  510. package/.docs/raw/workflows/time-travel.mdx +25 -21
  511. package/.docs/raw/workflows/workflow-state.mdx +7 -8
  512. package/CHANGELOG.md +246 -0
  513. package/README.md +36 -0
  514. package/dist/index.d.ts.map +1 -1
  515. package/dist/logger.d.ts +3 -0
  516. package/dist/logger.d.ts.map +1 -1
  517. package/dist/stdio.js +746 -49
  518. package/dist/tools/course.d.ts.map +1 -1
  519. package/dist/tools/embedded-docs.d.ts +276 -0
  520. package/dist/tools/embedded-docs.d.ts.map +1 -0
  521. package/package.json +9 -8
  522. package/.docs/organized/changelogs/%40internal%2Fai-sdk-v4.md +0 -1
  523. package/.docs/raw/deployment/building-mastra.mdx +0 -73
  524. package/.docs/raw/deployment/cloud-providers/index.mdx +0 -55
  525. package/.docs/raw/deployment/mastra-cloud/dashboard.mdx +0 -100
  526. package/.docs/raw/deployment/mastra-cloud/observability.mdx +0 -53
  527. package/.docs/raw/deployment/mastra-cloud/overview.mdx +0 -65
  528. package/.docs/raw/deployment/mastra-cloud/setting-up.mdx +0 -105
  529. package/.docs/raw/memory/conversation-history.mdx +0 -24
  530. package/.docs/raw/memory/storage/memory-with-libsql.mdx +0 -140
  531. package/.docs/raw/memory/storage/memory-with-mongodb.mdx +0 -150
  532. package/.docs/raw/memory/storage/memory-with-pg.mdx +0 -138
  533. package/.docs/raw/memory/storage/memory-with-upstash.mdx +0 -146
  534. package/.docs/raw/memory/threads-and-resources.mdx +0 -95
  535. package/.docs/raw/reference/core/setTelemetry.mdx +0 -36
  536. package/.docs/raw/reference/memory/listThreadsByResourceId.mdx +0 -110
  537. package/.docs/raw/reference/memory/query.mdx +0 -189
  538. package/.docs/raw/reference/workflows/workflow-methods/sendEvent.mdx +0 -70
  539. package/.docs/raw/reference/workflows/workflow-methods/waitForEvent.mdx +0 -66
  540. package/.docs/raw/server-db/mastra-server.mdx +0 -97
  541. package/.docs/raw/workflows/inngest-workflow.mdx +0 -363
@@ -1,6 +1,8 @@
1
1
  ---
2
- title: "Request Context | Server & DB"
2
+ title: "Request Context | Server"
3
3
  description: Learn how to use Mastra's RequestContext to provide dynamic, request-specific configuration to agents.
4
+ packages:
5
+ - "@mastra/core"
4
6
  ---
5
7
 
6
8
  # Request Context
@@ -9,7 +11,7 @@ Agents, tools, and workflows can all accept `RequestContext` as a parameter, mak
9
11
 
10
12
  ## When to use `RequestContext`
11
13
 
12
- Use `RequestContext` when a primitives behavior should change based on runtime conditions. For example, you might switch models or storage backends based on user attributes, or adjust instructions and tool selection based on language.
14
+ Use `RequestContext` when a primitive's behavior should change based on runtime conditions. For example, you might switch models or storage backends based on user attributes, or adjust instructions and tool selection based on language.
13
15
 
14
16
  :::note
15
17
 
@@ -28,7 +30,7 @@ The `.set()` method takes two arguments:
28
30
  1. **key**: The name used to identify the value.
29
31
  2. **value**: The data to associate with that key.
30
32
 
31
- ```typescript showLineNumbers
33
+ ```typescript
32
34
  import { RequestContext } from "@mastra/core/request-context";
33
35
 
34
36
  export type UserTier = {
@@ -62,19 +64,17 @@ await run.resume({
62
64
  requestContext,
63
65
  });
64
66
 
65
- await weatherTool.execute({
66
- context: {
67
- location: "London",
68
- },
69
- requestContext,
70
- });
67
+ await weatherTool.execute(
68
+ { location: "London" },
69
+ { requestContext },
70
+ );
71
71
  ```
72
72
 
73
73
  ### Setting values based on request headers
74
74
 
75
75
  You can populate `requestContext` dynamically in server middleware by extracting information from the request. In this example, the `temperature-unit` is set based on the Cloudflare `CF-IPCountry` header to ensure responses match the user's locale.
76
76
 
77
- ```typescript title="src/mastra/index.ts" showLineNumbers copy
77
+ ```typescript title="src/mastra/index.ts"
78
78
  import { Mastra } from "@mastra/core";
79
79
  import { RequestContext } from "@mastra/core/request-context";
80
80
  import { testWeatherAgent } from "./agents/test-weather-agent";
@@ -99,13 +99,17 @@ export const mastra = new Mastra({
99
99
  });
100
100
  ```
101
101
 
102
- > See [Middleware](/docs/v1/server-db/middleware) for how to use server middleware.
102
+ :::info
103
+
104
+ Visit [Middleware](/docs/v1/server/middleware) for how to use server middleware.
105
+
106
+ :::
103
107
 
104
108
  ## Accessing values with agents
105
109
 
106
110
  You can access the `requestContext` argument from any supported configuration options in agents. These functions can be sync or `async`. Use the `.get()` method to read values from `requestContext`.
107
111
 
108
- ```typescript {7-8,15,18,21} title="src/mastra/agents/weather-agent.ts" showLineNumbers
112
+ ```typescript title="src/mastra/agents/weather-agent.ts"
109
113
  export type UserTier = {
110
114
  "user-tier": "enterprise" | "pro";
111
115
  };
@@ -116,32 +120,27 @@ export const weatherAgent = new Agent({
116
120
  instructions: async ({ requestContext }) => {
117
121
  const userTier = requestContext.get("user-tier") as UserTier["user-tier"];
118
122
 
119
- if (userTier === "enterprise") {
120
- // ...
121
- }
122
- // ...
123
- },
124
- model: ({ requestContext }) => {
125
- // ...
126
- },
127
- tools: ({ requestContext }) => {
128
- // ...
129
- },
130
- memory: ({ requestContext }) => {
131
- // ...
123
+ if (userTier === "enterprise") {}
132
124
  },
125
+ model: ({ requestContext }) => {},
126
+ tools: ({ requestContext }) => {},
127
+ memory: ({ requestContext }) => {},
133
128
  });
134
129
  ```
135
130
 
136
131
  You can also use `requestContext` with other options like `agents`, `workflows`, `scorers`, `inputProcessors`, and `outputProcessors`.
137
132
 
138
- > See [Agent](/reference/v1/agents/agent) for a full list of configuration options.
133
+ :::info
134
+
135
+ Visit [Agent](/reference/v1/agents/agent) for a full list of configuration options.
136
+
137
+ :::
139
138
 
140
139
  ## Accessing values from workflow steps
141
140
 
142
141
  You can access the `requestContext` argument from a workflow step's `execute` function. This function can be sync or async. Use the `.get()` method to read values from `requestContext`.
143
142
 
144
- ```typescript {7-8} title="src/mastra/workflows/weather-workflow.ts" showLineNumbers copy
143
+ ```typescript title="src/mastra/workflows/weather-workflow.ts"
145
144
  export type UserTier = {
146
145
  "user-tier": "enterprise" | "pro";
147
146
  };
@@ -151,43 +150,86 @@ const stepOne = createStep({
151
150
  execute: async ({ requestContext }) => {
152
151
  const userTier = requestContext.get("user-tier") as UserTier["user-tier"];
153
152
 
154
- if (userTier === "enterprise") {
155
- // ...
156
- }
157
- // ...
153
+ if (userTier === "enterprise") {}
158
154
  },
159
155
  });
160
156
  ```
161
157
 
162
- > See [createStep()](/reference/v1/workflows/step) for a full list of configuration options.
158
+ :::info
159
+
160
+ Visit [createStep()](/reference/v1/workflows/step) for a full list of configuration options.
161
+
162
+ :::
163
163
 
164
164
  ## Accessing values with tools
165
165
 
166
- You can access the `requestContext` argument from a tools `execute` function. This function is `async`. Use the `.get()` method to read values from `requestContext`.
166
+ You can access the `requestContext` argument from a tool's `execute` function. This function is `async`. Use the `.get()` method to read values from `requestContext`.
167
167
 
168
- ```typescript {7-8} title="src/mastra/tools/weather-tool.ts" showLineNumbers
168
+ ```typescript title="src/mastra/tools/weather-tool.ts"
169
169
  export type UserTier = {
170
170
  "user-tier": "enterprise" | "pro";
171
171
  };
172
172
 
173
173
  export const weatherTool = createTool({
174
174
  id: "weather-tool",
175
- execute: async ({ requestContext }) => {
176
- const userTier = requestContext.get("user-tier") as UserTier["user-tier"];
175
+ execute: async (inputData, context) => {
176
+ const userTier = context?.requestContext?.get("user-tier") as UserTier["user-tier"] | undefined;
177
177
 
178
- if (userTier === "enterprise") {
179
- // ...
180
- }
181
- // ...
178
+ if (userTier === "enterprise") {}
182
179
  },
183
180
  });
184
181
  ```
185
182
 
186
- > See [createTool()](/reference/v1/tools/create-tool) for a full list of configuration options.
183
+ :::info
184
+
185
+ Visit [createTool()](/reference/v1/tools/create-tool) for a full list of configuration options.
186
+
187
+ :::
188
+
189
+ ## TypeScript support
190
+
191
+ When you provide a type parameter to `RequestContext`, all methods are fully typed:
192
+
193
+ ```typescript
194
+ import { RequestContext } from "@mastra/core/request-context";
195
+
196
+ type MyContext = {
197
+ userId: string;
198
+ maxTokens: number;
199
+ isPremium: boolean;
200
+ };
201
+
202
+ const ctx = new RequestContext<MyContext>();
203
+
204
+ // set() enforces correct value types
205
+ ctx.set("userId", "user-123"); // ✓ valid
206
+ ctx.set("maxTokens", 4096); // ✓ valid
207
+ ctx.set("maxTokens", "wrong"); // ✗ TypeScript error: expected number
208
+
209
+ // get() returns the correct type automatically
210
+ const tokens = ctx.get("maxTokens"); // inferred as number
211
+ const id = ctx.get("userId"); // inferred as string
212
+
213
+ // keys() returns typed keys
214
+ for (const key of ctx.keys()) {
215
+ // key is "userId" | "maxTokens" | "isPremium"
216
+ }
217
+
218
+ // entries() supports type narrowing
219
+ for (const [key, value] of ctx.entries()) {
220
+ if (key === "maxTokens") {
221
+ // TypeScript knows value is number here
222
+ console.log(value.toFixed(2));
223
+ }
224
+ if (key === "userId") {
225
+ // TypeScript knows value is string here
226
+ console.log(value.toUpperCase());
227
+ }
228
+ }
229
+ ```
187
230
 
188
231
  ## Related
189
232
 
190
233
  - [Agent Request Context](/docs/v1/agents/overview#using-requestcontext)
191
234
  - [Workflow Request Context](../workflows/overview#using-requestcontext)
192
- - [Tool Request Context](../mcp/overview#using-requestcontext)
193
- - [Server Middleware](/docs/v1/server-db/middleware)
235
+ - [Server Middleware](/docs/v1/server/middleware)
@@ -1,6 +1,9 @@
1
1
  ---
2
- title: "Server Adapters | Server & DB"
2
+ title: "Server Adapters | Server"
3
3
  description: "Manually configure a Mastra server using Hono or Express adapters."
4
+ packages:
5
+ - "@mastra/express"
6
+ - "@mastra/hono"
4
7
  ---
5
8
 
6
9
  import Tabs from "@theme/Tabs";
@@ -8,26 +11,36 @@ import TabItem from "@theme/TabItem";
8
11
 
9
12
  # Server Adapters
10
13
 
11
- Server adapters let you run Mastra with your own HTTP server instead of the Hono server generated by `mastra build`. They provide more control over the server setup, including custom middleware ordering, authentication, logging, and deployment configuration, while still letting you integrate Mastra into any Node.js application without changing how agents or workflows execute.
14
+ Server adapters let you run Mastra with your own HTTP server instead of the Hono server generated by `mastra build`. They provide more control over the server setup, including custom middleware ordering, authentication, logging, and deployment configuration. You can still integrate Mastra into any Node.js application without changing how agents or workflows execute.
12
15
 
13
16
  ## When to use server adapters
14
17
 
15
- Use server adapters when you want Mastra’s endpoints added automatically to an existing application, when you need direct access to the server instance for custom configuration, or when your team prefers using Express instead of the Hono server created by `mastra build`.
18
+ - You want Mastra’s endpoints added automatically to an existing application
19
+ - You need direct access to the server instance for custom configuration
20
+ - Your team prefers using another server framework instead of the Hono server created by `mastra build`.
16
21
 
17
- :::info
22
+ :::tip
23
+
24
+ For deployments without custom server requirements, use `mastra build` instead. It configures server setup, registers middleware, and applies deployment settings based on your project configuration. See [Server Configuration](/docs/v1/server/mastra-server).
18
25
 
19
- For simple deployments without custom server requirements, use `mastra build` instead. It configures server setup, registers middleware, and applies deployment settings based on your project configuration. See [Server Configuration](/docs/v1/server-db/mastra-server).
26
+ If you want to use [Studio](/docs/v1/getting-started/studio) with your server adapter, use [`mastra studio`](/reference/v1/cli/mastra#mastra-studio) to only launch the Studio UI.
20
27
 
21
28
  :::
22
29
 
23
30
  ## Available adapters
24
31
 
25
- - [@mastra/express](/reference/v1/server/express-adapter): Express framework adapter.
26
- - [@mastra/hono](/reference/v1/server/hono-adapter): Hono framework adapter.
32
+ Mastra currently provides these official server adapters:
33
+
34
+ - [@mastra/express](/reference/v1/server/express-adapter)
35
+ - [@mastra/hono](/reference/v1/server/hono-adapter)
36
+ - [@mastra/fastify](/reference/v1/server/fastify-adapter)
37
+ - [@mastra/koa](/reference/v1/server/koa-adapter)
38
+
39
+ You can build your own adapter, read [custom adapters](/docs/v1/server/custom-adapters) for details.
27
40
 
28
41
  ## Installation
29
42
 
30
- Install the adapter for the framework you’re using.
43
+ Install the adapter for the framework of your choice.
31
44
 
32
45
  <Tabs>
33
46
  <TabItem value="express" label="Express">
@@ -40,21 +53,33 @@ npm install @mastra/express@beta
40
53
 
41
54
  ```bash
42
55
  npm install @mastra/hono@beta
56
+ ```
57
+ </TabItem>
58
+ <TabItem value="fastify" label="Fastify">
59
+
60
+ ```bash
61
+ npm install @mastra/fastify@beta
62
+ ```
63
+ </TabItem>
64
+ <TabItem value="koa" label="Koa">
65
+
66
+ ```bash
67
+ npm install @mastra/koa@beta
43
68
  ```
44
69
  </TabItem>
45
70
  </Tabs>
46
71
 
47
72
  ## Configuration
48
73
 
49
- Initialize your Express or Hono app as usual, then create a `MastraServer` by passing in the `app` and your main `mastra` instance from `src/mastra`. Calling `init()` automatically registers Mastra middleware and all available endpoints. You can continue adding your own routes as normal, either before or after `init()`, and they’ll run alongside Mastra’s endpoints.
74
+ Initialize your app as usual, then create a `MastraServer` by passing in the `app` and your main `mastra` instance from `src/mastra/index.ts`. Calling `init()` automatically registers Mastra middleware and all available endpoints. You can continue adding your own routes as normal, either before or after `init()`, and they’ll run alongside Mastra’s endpoints.
50
75
 
51
76
  <Tabs>
52
77
  <TabItem value="express" label="Express">
53
78
 
54
- ```typescript {8} title="express-server.ts" showLineNumbers
79
+ ```typescript {8} title="src/express-server.ts"
55
80
  import express from "express";
56
81
  import { MastraServer } from "@mastra/express";
57
- import { mastra } from "./mastra"; // src/mastra/index.ts
82
+ import { mastra } from "./mastra";
58
83
 
59
84
  const app = express();
60
85
  app.use(express.json());
@@ -68,14 +93,20 @@ app.listen(4111, () => {
68
93
  });
69
94
  ```
70
95
 
96
+ :::info
97
+
98
+ See the [Express Adapter](/reference/v1/server/express-adapter) documentation for full configuration options.
99
+
100
+ :::
101
+
71
102
  </TabItem>
72
103
  <TabItem value="hono" label="Hono">
73
104
 
74
- ```typescript {8} title="hono-server.ts" showLineNumbers
105
+ ```typescript {8} title="src/hono-server.ts"
75
106
  import { Hono } from "hono";
76
107
  import { serve } from "@hono/node-server";
77
108
  import { HonoBindings, HonoVariables, MastraServer } from "@mastra/hono";
78
- import { mastra } from "./mastra"; // src/mastra/index.ts
109
+ import { mastra } from "./mastra";
79
110
 
80
111
  const app = new Hono<{ Bindings: HonoBindings; Variables: HonoVariables }>();
81
112
 
@@ -88,11 +119,87 @@ serve({ fetch: app.fetch, port: 4111 }, () => {
88
119
  });
89
120
  ```
90
121
 
122
+ :::info
123
+
124
+ See the [Hono Adapter](/reference/v1/server/hono-adapter) documentation for full configuration options.
125
+
126
+ :::
127
+
91
128
  </TabItem>
92
- </Tabs>
129
+ <TabItem value="fastify" label="Fastify">
130
+
131
+ ```typescript {6} title="src/fastify-server.ts"
132
+ import Fastify from 'fastify';
133
+ import { MastraServer } from '@mastra/fastify';
134
+ import { mastra } from './mastra';
93
135
 
94
- > See the [Express Adapter](/reference/v1/server/express-adapter) or [Hono Adapter](/reference/v1/server/hono-adapter) docs for full configuration options.
136
+ const app = Fastify();
137
+ const server = new MastraServer({ app, mastra });
95
138
 
139
+ await server.init();
140
+
141
+ app.get('/health', async request => {
142
+ const mastraInstance = request.mastra;
143
+ const agents = Object.keys(mastraInstance.listAgents());
144
+ return { status: 'ok', agents };
145
+ });
146
+
147
+ const port = 4111;
148
+
149
+ app.listen({ port }, () => {
150
+ console.log(`Server running on http://localhost:${port}`);
151
+ console.log(`Try: curl http://localhost:${port}/api/agents`);
152
+ });
153
+ ```
154
+
155
+ :::info
156
+
157
+ See the [Fastify Adapter](/reference/v1/server/fastify-adapter) documentation for full configuration options.
158
+
159
+ :::
160
+
161
+ </TabItem>
162
+ <TabItem value="koa" label="Koa">
163
+
164
+ ```typescript {9} title="src/koa-server.ts"
165
+ import Koa from 'koa';
166
+ import bodyParser from 'koa-bodyparser';
167
+ import { MastraServer } from '@mastra/koa';
168
+ import { mastra } from './mastra';
169
+
170
+ const app = new Koa();
171
+ app.use(bodyParser()); // Required for body parsing
172
+
173
+ const server = new MastraServer({ app, mastra });
174
+
175
+ await server.init();
176
+
177
+ app.use(async (ctx, next) => {
178
+ if (ctx.path === '/health' && ctx.method === 'GET') {
179
+ const mastraInstance = ctx.state.mastra;
180
+ const agents = Object.keys(mastraInstance.listAgents());
181
+ ctx.body = { status: 'ok', agents };
182
+ return;
183
+ }
184
+ await next();
185
+ });
186
+
187
+ const port = 4111;
188
+
189
+ app.listen(port, () => {
190
+ console.log(`Server running on http://localhost:${port}`);
191
+ console.log(`Try: curl http://localhost:${port}/api/agents`);
192
+ });
193
+ ```
194
+
195
+ :::info
196
+
197
+ See the [Koa Adapter](/reference/v1/server/koa-adapter) documentation for full configuration options.
198
+
199
+ :::
200
+
201
+ </TabItem>
202
+ </Tabs>
96
203
 
97
204
  ## Initialization flow
98
205
 
@@ -106,7 +213,7 @@ Calling `init()` runs three steps in order. Understanding this flow helps when y
106
213
 
107
214
  For custom middleware ordering, call each method separately instead of `init()`. This is useful when you need middleware that runs before Mastra's context is set up, or when you need to insert logic between the initialization steps.
108
215
 
109
- ```typescript title="server.ts" copy showLineNumbers
216
+ ```typescript title="server.ts"
110
217
  const server = new MastraServer({ app, mastra });
111
218
 
112
219
  // Your middleware first
@@ -137,14 +244,17 @@ You can add your own routes to the app alongside Mastra's routes.
137
244
  - Routes added **before** `init()` won't have Mastra context available.
138
245
  - Routes added **after** `init()` have access to the Mastra context (the Mastra instance, request context, authenticated user, etc.).
139
246
 
140
- > See adding custom routes for [Express](/reference/v1/server/express-adapter#adding-custom-routes) and [Hono](/reference/v1/server/hono-adapter#adding-custom-routes) for more information.
247
+ :::info
141
248
 
249
+ Visit "Adding custom routes" for [Express](/reference/v1/server/express-adapter#adding-custom-routes) and [Hono](/reference/v1/server/hono-adapter#adding-custom-routes) for more information.
250
+
251
+ :::
142
252
 
143
253
  ## Route prefixes
144
254
 
145
- By default, Mastra routes are registered at `/api/agents`, `/api/workflows`, etc. Use the `prefix` option to change this, which is useful for API versioning or when integrating with an existing app that has its own `/api` routes.
255
+ By default, Mastra routes are registered at `/api/agents`, `/api/workflows`, etc. Use the `prefix` option to change this. This is useful for API versioning or when integrating with an existing app that has its own `/api` routes.
146
256
 
147
- ```typescript showLineNumbers copy
257
+ ```typescript
148
258
  const server = new MastraServer({
149
259
  app,
150
260
  mastra,
@@ -158,7 +268,7 @@ With this prefix, Mastra routes become `/api/v2/agents`, `/api/v2/workflows`, et
158
268
 
159
269
  Mastra can generate an OpenAPI specification for all registered routes. This is useful for documentation, client generation, or integration with API tools. Enable it by setting the `openapiPath` option:
160
270
 
161
- ```typescript showLineNumbers copy
271
+ ```typescript
162
272
  const server = new MastraServer({
163
273
  app,
164
274
  mastra,
@@ -181,7 +291,7 @@ This redaction happens at the HTTP boundary, so internal callbacks like `onStepF
181
291
 
182
292
  By default, redaction is enabled. Configure this behavior via `streamOptions`. Set `redact: false` only for internal services or debugging scenarios where you need access to the full request data in stream responses.
183
293
 
184
- ```typescript showLineNumbers copy
294
+ ```typescript
185
295
  const server = new MastraServer({
186
296
  app,
187
297
  mastra,
@@ -191,7 +301,11 @@ const server = new MastraServer({
191
301
  });
192
302
  ```
193
303
 
194
- > See [MastraServer](/reference/v1/server/mastra-server) for full configuration options.
304
+ :::info
305
+
306
+ See [MastraServer](/reference/v1/server/mastra-server) for full configuration options.
307
+
308
+ :::
195
309
 
196
310
  ## Per-route auth overrides
197
311
 
@@ -199,29 +313,36 @@ When authentication is configured on your Mastra instance, all routes require au
199
313
 
200
314
  Use `customRouteAuthConfig` to override authentication behavior for specific routes. Keys follow the format `METHOD:PATH` where method is `GET`, `POST`, `PUT`, `DELETE`, or `ALL`. Paths support wildcards (`*`) for matching multiple routes. Setting a value to `false` makes the route public, while `true` requires authentication.
201
315
 
202
- ```typescript showLineNumbers copy
316
+ ```typescript
203
317
  const server = new MastraServer({
204
318
  app,
205
319
  mastra,
206
320
  customRouteAuthConfig: new Map([
207
- ['GET:/api/health', false], // Public health check
208
- ['GET:/api/openapi.json', false], // Public API spec
209
- ['POST:/api/webhooks/*', false], // Public webhook endpoints
210
- ['POST:/api/admin/reset', true], // Require auth even if globally disabled
211
- ['ALL:/api/internal/*', true], // Protect all methods on internal routes
321
+ // Public health check
322
+ ['GET:/api/health', false],
323
+ // Public API spec
324
+ ['GET:/api/openapi.json', false],
325
+ // Public webhook endpoints
326
+ ['POST:/api/webhooks/*', false],
327
+ // Require auth even if globally disabled
328
+ ['POST:/api/admin/reset', true],
329
+ // Protect all methods on internal routes
330
+ ['ALL:/api/internal/*', true],
212
331
  ]),
213
332
  });
214
333
  ```
215
334
 
335
+ :::info
216
336
 
337
+ See [MastraServer](/reference/v1/server/mastra-server) for full configuration options.
217
338
 
218
- > See [MastraServer](/reference/v1/server/mastra-server) for full configuration options.
339
+ :::
219
340
 
220
341
  ## Accessing the app
221
342
 
222
343
  After creating the adapter, you may still need access to the underlying framework app. This is useful when passing it to a platform’s `serve` function or when adding routes from another module.
223
344
 
224
- ```typescript showLineNumbers copy
345
+ ```typescript
225
346
  // Via the MastraServer instance
226
347
  const app = server.getApp();
227
348
 
@@ -282,8 +403,8 @@ See [MCP](/docs/v1/mcp/overview) for configuration details and how to set up MCP
282
403
 
283
404
  - [Hono Adapter](/reference/v1/server/hono-adapter) - Hono-specific setup
284
405
  - [Express Adapter](/reference/v1/server/express-adapter) - Express-specific setup
285
- - [Custom Adapters](/docs/v1/server-db/custom-adapters) - Building adapters for other frameworks
286
- - [Server Configuration](/docs/v1/server-db/mastra-server) - Using `mastra build` instead
287
- - [Authentication](/docs/v1/auth) - Configuring auth for your server
406
+ - [Custom Adapters](/docs/v1/server/custom-adapters) - Building adapters for other frameworks
407
+ - [Server Configuration](/docs/v1/server/mastra-server) - Using `mastra build` instead
408
+ - [Authentication](/docs/v1/server/auth) - Configuring auth for your server
288
409
  - [MastraServer Reference](/reference/v1/server/mastra-server) - Full API reference
289
410
  - [createRoute() Reference](/reference/v1/server/create-route) - Creating type-safe custom routes
@@ -1,6 +1,8 @@
1
1
  ---
2
2
  title: "Streaming Events | Streaming"
3
3
  description: "Learn about the different types of streaming events in Mastra, including text deltas, tool calls, step events, and how to handle them in your applications."
4
+ packages:
5
+ - "@mastra/core"
4
6
  ---
5
7
 
6
8
  # Streaming Events
@@ -44,7 +46,7 @@ When using `agent.network()` for multi-agent collaboration, additional event typ
44
46
 
45
47
  Iterate over the `stream` with a `for await` loop to inspect all emitted event chunks.
46
48
 
47
- ```typescript {3,7} showLineNumbers copy
49
+ ```typescript
48
50
  const testAgent = mastra.getAgent("testAgent");
49
51
 
50
52
  const stream = await testAgent.stream([
@@ -56,7 +58,11 @@ for await (const chunk of stream) {
56
58
  }
57
59
  ```
58
60
 
59
- > See [Agent.stream()](/reference/v1/streaming/agents/stream) for more information.
61
+ :::info
62
+
63
+ Visit [Agent.stream()](/reference/v1/streaming/agents/stream) for more information.
64
+
65
+ :::
60
66
 
61
67
  ### Example agent output
62
68
 
@@ -91,7 +97,7 @@ Below is an example of events that may be emitted. Each event always includes a
91
97
 
92
98
  Iterate over the `stream` with a `for await` loop to inspect all emitted event chunks.
93
99
 
94
- ```typescript {5,11} showLineNumbers copy
100
+ ```typescript {5,11}
95
101
  const testWorkflow = mastra.getWorkflow("testWorkflow");
96
102
 
97
103
  const run = await testWorkflow.createRun();
@@ -136,7 +142,7 @@ Below is an example of events that may be emitted. Each event always includes a
136
142
 
137
143
  When using multi-agent collaboration with `agent.network()`, iterate over the stream to track how tasks are delegated and executed across agents, workflows, and tools.
138
144
 
139
- ```typescript {3,5} showLineNumbers copy
145
+ ```typescript {3,5}
140
146
  const networkAgent = mastra.getAgent("networkAgent");
141
147
 
142
148
  const networkStream = await networkAgent.network(
@@ -148,7 +154,11 @@ for await (const chunk of networkStream) {
148
154
  }
149
155
  ```
150
156
 
151
- > See [Agent.network()](/reference/v1/agents/network) for more information.
157
+ :::info
158
+
159
+ Visit [Agent.network()](/reference/v1/agents/network) for more information.
160
+
161
+ :::
152
162
 
153
163
  ### Example network output
154
164
 
@@ -195,14 +205,13 @@ Network streams emit events that track the orchestration flow. Each iteration be
195
205
  }
196
206
  }
197
207
  }
198
- // ...more events
199
208
  ```
200
209
 
201
210
  ### Filtering network events
202
211
 
203
212
  You can filter events by type to track specific aspects of the network execution:
204
213
 
205
- ```typescript {5-8,11-13,16-18} showLineNumbers copy
214
+ ```typescript {5-8,11-13,16-18}
206
215
  const networkStream = await networkAgent.network(
207
216
  "Analyze data and create visualization",
208
217
  );