@mastra/mcp-docs-server 1.2.15-alpha.7 → 1.2.15

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 (504) hide show
  1. package/.docs/docs/agents/agent-approval.md +14 -0
  2. package/.docs/docs/agents/code-mode.md +17 -2
  3. package/.docs/docs/agents/networks.md +2 -2
  4. package/.docs/docs/agents/overview.md +2 -2
  5. package/.docs/docs/agents/processors.md +3 -3
  6. package/.docs/docs/agents/using-tools.md +1 -1
  7. package/.docs/docs/browser/overview.md +8 -8
  8. package/.docs/docs/browser/recording.md +4 -4
  9. package/.docs/docs/capabilities/{channels/overview.md → channels.md} +70 -7
  10. package/.docs/docs/capabilities/subagents.md +6 -3
  11. package/.docs/docs/datasets/running-experiments.md +49 -0
  12. package/.docs/docs/deployment/cloud-providers.md +9 -9
  13. package/.docs/docs/deployment/overview.md +9 -9
  14. package/.docs/docs/deployment/sandbox.md +3 -3
  15. package/.docs/docs/deployment/web-framework.md +6 -6
  16. package/.docs/docs/deployment/workers.md +1 -1
  17. package/.docs/docs/deployment/workflow-runners.md +2 -2
  18. package/.docs/docs/getting-started/develop.md +1 -1
  19. package/.docs/docs/harness/agent-controller.md +45 -4
  20. package/.docs/docs/harness/overview.md +2 -4
  21. package/.docs/docs/index.md +8 -8
  22. package/.docs/docs/long-running-agents/durable-agents.md +3 -3
  23. package/.docs/docs/long-running-agents/goals.md +1 -1
  24. package/.docs/docs/long-running-agents/schedules.md +1 -1
  25. package/.docs/docs/long-running-agents/signal-providers.md +3 -16
  26. package/.docs/docs/long-running-agents/signals.md +2 -2
  27. package/.docs/docs/mastra-platform/database.md +2 -2
  28. package/.docs/docs/mastra-platform/deploy.md +27 -0
  29. package/.docs/docs/mastra-platform/server.md +1 -1
  30. package/.docs/docs/mastra-platform/trace-intelligence.md +9 -13
  31. package/.docs/docs/mcp/overview.md +42 -0
  32. package/.docs/docs/memory/memory-processors.md +5 -5
  33. package/.docs/docs/memory/message-history.md +3 -3
  34. package/.docs/docs/memory/multi-user-threads.md +1 -1
  35. package/.docs/docs/memory/observational-memory.md +2 -2
  36. package/.docs/docs/memory/semantic-recall.md +2 -1
  37. package/.docs/docs/memory/working-memory.md +1 -0
  38. package/.docs/docs/observability/integrations/exporters/mastra-platform.md +1 -1
  39. package/.docs/docs/observability/integrations/exporters/mastra-storage.md +16 -15
  40. package/.docs/docs/observability/integrations/overview.md +3 -3
  41. package/.docs/docs/server/auth/fga.md +1 -1
  42. package/.docs/docs/server/auth/simple-auth.md +1 -1
  43. package/.docs/docs/server/auth/workers.md +2 -0
  44. package/.docs/docs/server/auth.md +10 -8
  45. package/.docs/docs/server/custom-adapters.md +1 -1
  46. package/.docs/docs/server/custom-api-routes.md +35 -0
  47. package/.docs/docs/server/mastra-client.md +13 -13
  48. package/.docs/docs/server/mastra-server.md +1 -1
  49. package/.docs/docs/storage/overview.md +14 -12
  50. package/.docs/docs/studio/observability.md +1 -1
  51. package/.docs/docs/workflows/agents-and-tools.md +2 -2
  52. package/.docs/docs/workflows/{stored-workflows.md → dynamic-workflows.md} +24 -24
  53. package/.docs/docs/workflows/overview.md +2 -2
  54. package/.docs/docs/workflows/snapshots.md +12 -10
  55. package/.docs/docs/workflows/time-travel.md +2 -0
  56. package/.docs/docs/workspace/filesystem.md +15 -15
  57. package/.docs/docs/workspace/sandbox.md +17 -17
  58. package/.docs/docs/workspace/search.md +1 -1
  59. package/.docs/guides/agent-frameworks/ai-sdk.md +2 -2
  60. package/.docs/guides/deployment/mastra-workers.md +4 -2
  61. package/.docs/guides/getting-started/quickstart.md +3 -3
  62. package/.docs/guides/guide/signal-provider.md +1 -1
  63. package/.docs/guides/index.md +8 -8
  64. package/.docs/guides/voice/overview.md +55 -106
  65. package/.docs/guides/voice/speech-to-text.md +7 -7
  66. package/.docs/guides/voice/text-to-speech.md +9 -10
  67. package/.docs/{guides/build-your-ui → integrations/agentic-ui}/ai-sdk-ui.md +5 -5
  68. package/.docs/{guides/build-your-ui → integrations/agentic-ui}/assistant-ui.md +1 -1
  69. package/.docs/{guides/build-your-ui/copilotkit/overview.md → integrations/agentic-ui/copilotkit.md} +257 -4
  70. package/.docs/{docs/server → integrations}/auth/auth0.md +1 -1
  71. package/.docs/{docs/server → integrations}/auth/clerk.md +2 -2
  72. package/.docs/{docs/server → integrations}/auth/firebase.md +1 -1
  73. package/.docs/{docs/server → integrations}/auth/okta.md +24 -4
  74. package/.docs/{docs/server → integrations}/auth/supabase.md +2 -2
  75. package/.docs/{docs/server → integrations}/auth/workos.md +1 -1
  76. package/.docs/{docs/browser → integrations/browsers}/agent-browser.md +2 -2
  77. package/.docs/{docs/browser → integrations/browsers}/browser-viewer.md +3 -3
  78. package/.docs/{docs/browser → integrations/browsers}/firecrawl.md +2 -2
  79. package/.docs/{docs/browser → integrations/browsers}/stagehand.md +1 -1
  80. package/.docs/{docs/capabilities → integrations}/channels/discord.md +2 -2
  81. package/.docs/integrations/channels/github.md +103 -0
  82. package/.docs/{docs/capabilities → integrations}/channels/imessage.md +12 -4
  83. package/.docs/{docs/capabilities → integrations}/channels/slack.md +4 -4
  84. package/.docs/{docs/capabilities → integrations}/channels/teams.md +2 -2
  85. package/.docs/{docs/capabilities → integrations}/channels/telegram.md +2 -2
  86. package/.docs/{docs/capabilities → integrations}/channels/whatsapp.md +2 -2
  87. package/.docs/{reference/storage/dsql.md → integrations/databases/aurora-dsql.md} +1 -1
  88. package/.docs/{reference/storage → integrations/databases}/clickhouse.md +2 -2
  89. package/.docs/{reference/storage → integrations/databases}/cloudflare-d1.md +1 -1
  90. package/.docs/{reference/storage/cloudflare.md → integrations/databases/cloudflare-kv.md} +1 -1
  91. package/.docs/{reference/storage → integrations/databases}/convex.md +1 -1
  92. package/.docs/{reference/storage → integrations/databases}/duckdb.md +5 -5
  93. package/.docs/{reference/storage → integrations/databases}/dynamodb.md +1 -1
  94. package/.docs/{reference/storage/lance.md → integrations/databases/lancedb.md} +1 -1
  95. package/.docs/{reference/storage → integrations/databases}/libsql.md +2 -2
  96. package/.docs/{reference/storage → integrations/databases}/mongodb.md +1 -1
  97. package/.docs/{reference/storage → integrations/databases}/mssql.md +1 -1
  98. package/.docs/integrations/databases/neon.md +220 -0
  99. package/.docs/integrations/databases/oracledb.md +239 -0
  100. package/.docs/{reference/storage → integrations/databases}/postgresql.md +1 -1
  101. package/.docs/{reference/storage → integrations/databases}/redis.md +1 -1
  102. package/.docs/{reference/storage → integrations/databases}/spanner.md +1 -1
  103. package/.docs/{reference/storage → integrations/databases}/upstash.md +1 -1
  104. package/.docs/{guides/deployment → integrations/deploy}/amazon-ec2.md +1 -1
  105. package/.docs/{guides/deployment → integrations/deploy}/aws-bedrock-agentcore.md +1 -1
  106. package/.docs/{guides/deployment → integrations/deploy}/aws-lambda.md +2 -2
  107. package/.docs/{guides/deployment → integrations/deploy}/azure-app-services.md +2 -2
  108. package/.docs/{guides/deployment → integrations/deploy}/cloudflare.md +2 -2
  109. package/.docs/{guides/deployment → integrations/deploy}/digital-ocean.md +3 -3
  110. package/.docs/{guides/deployment → integrations/deploy}/kubernetes.md +2 -2
  111. package/.docs/{guides/deployment → integrations/deploy}/netlify.md +3 -3
  112. package/.docs/{guides/deployment → integrations/deploy}/vercel.md +3 -3
  113. package/.docs/{reference/workspace/s3-filesystem.md → integrations/file-storage/amazon-s3.md} +5 -5
  114. package/.docs/{reference/workspace/archil-filesystem.md → integrations/file-storage/archil.md} +3 -3
  115. package/.docs/{reference/workspace/azure-blob-filesystem.md → integrations/file-storage/azure-blob.md} +2 -2
  116. package/.docs/{reference/workspace/gcs-filesystem.md → integrations/file-storage/google-cloud-storage.md} +5 -5
  117. package/.docs/{reference/workspace/mesa-filesystem.md → integrations/file-storage/mesa.md} +2 -2
  118. package/.docs/{reference/workspace/files-sdk-filesystem.md → integrations/file-storage/vercel-files.md} +5 -5
  119. package/.docs/{guides/getting-started → integrations/frameworks}/astro.md +1 -1
  120. package/.docs/{guides/getting-started → integrations/frameworks}/electron.md +3 -3
  121. package/.docs/{guides/getting-started → integrations/frameworks}/next-js.md +2 -2
  122. package/.docs/{guides/getting-started → integrations/frameworks}/nuxt.md +1 -1
  123. package/.docs/{guides/getting-started → integrations/frameworks}/sveltekit.md +1 -1
  124. package/.docs/{guides/getting-started → integrations/frameworks}/vite-react.md +1 -1
  125. package/.docs/{docs/observability/integrations/exporters → integrations/observability}/arize.md +1 -1
  126. package/.docs/{docs/observability/integrations/exporters → integrations/observability}/arthur.md +1 -1
  127. package/.docs/{docs/observability/integrations/exporters → integrations/observability}/braintrust.md +1 -1
  128. package/.docs/{docs/observability/integrations/exporters → integrations/observability}/confident-ai.md +1 -1
  129. package/.docs/integrations/observability/datadog.md +538 -0
  130. package/.docs/{docs/observability/integrations/exporters → integrations/observability}/laminar.md +1 -1
  131. package/.docs/{docs/observability/integrations/exporters → integrations/observability}/langfuse.md +1 -1
  132. package/.docs/{docs/observability/integrations/exporters → integrations/observability}/langsmith.md +1 -1
  133. package/.docs/{docs/observability/integrations/exporters/otel.md → integrations/observability/opentelemetry.md} +278 -46
  134. package/.docs/{docs/observability/integrations/exporters → integrations/observability}/posthog.md +1 -1
  135. package/.docs/{docs/observability/integrations/exporters → integrations/observability}/sentry.md +1 -1
  136. package/.docs/{reference/workspace/apple-container-sandbox.md → integrations/sandboxes/apple-container.md} +1 -1
  137. package/.docs/{reference/workspace/daytona-sandbox.md → integrations/sandboxes/daytona.md} +23 -2
  138. package/.docs/{reference/workspace/docker-sandbox.md → integrations/sandboxes/docker.md} +1 -1
  139. package/.docs/{reference/workspace/e2b-sandbox.md → integrations/sandboxes/e2b.md} +3 -3
  140. package/.docs/{reference/workspace/modal-sandbox.md → integrations/sandboxes/modal.md} +2 -2
  141. package/.docs/{reference/workspace/railway-sandbox.md → integrations/sandboxes/railway.md} +8 -0
  142. package/.docs/{reference/workspace/vercel-sandbox.md → integrations/sandboxes/vercel.md} +141 -12
  143. package/.docs/{reference → integrations}/tools/brightdata.md +1 -1
  144. package/.docs/{reference → integrations}/tools/perplexity.md +1 -1
  145. package/.docs/{reference → integrations}/tools/tavily.md +1 -1
  146. package/.docs/{reference → integrations}/voice/aws-nova-sonic.md +1 -1
  147. package/.docs/{reference → integrations}/voice/cloudflare.md +3 -3
  148. package/.docs/{reference/voice/google-gemini-live.md → integrations/voice/google.md} +305 -30
  149. package/.docs/{reference/voice/inworld-realtime.md → integrations/voice/inworld.md} +163 -25
  150. package/.docs/{reference → integrations}/voice/livekit.md +437 -34
  151. package/.docs/{reference/voice/openai-realtime.md → integrations/voice/openai.md} +117 -20
  152. package/.docs/integrations.md +147 -0
  153. package/.docs/models/embeddings.md +3 -3
  154. package/.docs/models/environment-variables.md +1 -0
  155. package/.docs/models/gateways/custom-gateways.md +4 -0
  156. package/.docs/models/gateways/neon.md +1 -1
  157. package/.docs/models/gateways/netlify.md +1 -1
  158. package/.docs/models/gateways/openrouter.md +9 -3
  159. package/.docs/models/gateways/vercel.md +7 -4
  160. package/.docs/models/index.md +3 -3
  161. package/.docs/models/providers/302ai.md +1 -1
  162. package/.docs/models/providers/abacus.md +1 -1
  163. package/.docs/models/providers/abliteration-ai.md +1 -1
  164. package/.docs/models/providers/agentrouter.md +1 -1
  165. package/.docs/models/providers/ai-router.md +1 -1
  166. package/.docs/models/providers/aiand.md +1 -1
  167. package/.docs/models/providers/aki-io.md +1 -1
  168. package/.docs/models/providers/alibaba-cn.md +1 -1
  169. package/.docs/models/providers/alibaba-coding-plan-cn.md +1 -1
  170. package/.docs/models/providers/alibaba-coding-plan.md +1 -1
  171. package/.docs/models/providers/alibaba-token-plan-cn.md +1 -1
  172. package/.docs/models/providers/alibaba-token-plan.md +1 -1
  173. package/.docs/models/providers/alibaba.md +7 -5
  174. package/.docs/models/providers/ambient.md +2 -2
  175. package/.docs/models/providers/anyapi.md +1 -1
  176. package/.docs/models/providers/atomic-chat.md +1 -1
  177. package/.docs/models/providers/auriko.md +1 -1
  178. package/.docs/models/providers/bailing.md +1 -1
  179. package/.docs/models/providers/baseten.md +2 -2
  180. package/.docs/models/providers/berget.md +1 -1
  181. package/.docs/models/providers/blueclaw.md +1 -1
  182. package/.docs/models/providers/chutes.md +1 -1
  183. package/.docs/models/providers/clarifai.md +1 -1
  184. package/.docs/models/providers/claudinio.md +1 -1
  185. package/.docs/models/providers/cline-pass.md +1 -1
  186. package/.docs/models/providers/cloudferro-sherlock.md +1 -1
  187. package/.docs/models/providers/cloudflare-workers-ai.md +1 -1
  188. package/.docs/models/providers/coralbricks.md +75 -0
  189. package/.docs/models/providers/cortecs.md +3 -5
  190. package/.docs/models/providers/crof.md +1 -1
  191. package/.docs/models/providers/crossmodel.md +2 -3
  192. package/.docs/models/providers/daoxe.md +1 -1
  193. package/.docs/models/providers/databricks.md +1 -1
  194. package/.docs/models/providers/deepinfra.md +6 -5
  195. package/.docs/models/providers/digitalocean.md +5 -5
  196. package/.docs/models/providers/dinference.md +1 -1
  197. package/.docs/models/providers/drun.md +1 -1
  198. package/.docs/models/providers/ebcloud.md +1 -1
  199. package/.docs/models/providers/empiriolabs.md +3 -2
  200. package/.docs/models/providers/evroc.md +3 -4
  201. package/.docs/models/providers/fastrouter.md +1 -1
  202. package/.docs/models/providers/firepass.md +1 -1
  203. package/.docs/models/providers/fireworks-ai.md +1 -1
  204. package/.docs/models/providers/firmware.md +1 -1
  205. package/.docs/models/providers/freemodel.md +1 -1
  206. package/.docs/models/providers/friendli.md +1 -1
  207. package/.docs/models/providers/frogbot.md +1 -1
  208. package/.docs/models/providers/github-models.md +1 -1
  209. package/.docs/models/providers/gmicloud.md +1 -1
  210. package/.docs/models/providers/google.md +1 -1
  211. package/.docs/models/providers/greenpt.md +1 -1
  212. package/.docs/models/providers/helicone.md +1 -1
  213. package/.docs/models/providers/hetzner.md +8 -5
  214. package/.docs/models/providers/hpc-ai.md +1 -1
  215. package/.docs/models/providers/huggingface.md +1 -1
  216. package/.docs/models/providers/hyper.md +7 -7
  217. package/.docs/models/providers/iflowcn.md +1 -1
  218. package/.docs/models/providers/impossibl.md +1 -1
  219. package/.docs/models/providers/inception.md +1 -1
  220. package/.docs/models/providers/inceptron.md +1 -1
  221. package/.docs/models/providers/inference.md +1 -1
  222. package/.docs/models/providers/inferx.md +1 -1
  223. package/.docs/models/providers/infomaniak.md +1 -1
  224. package/.docs/models/providers/io-intelligence.md +1 -1
  225. package/.docs/models/providers/io-net.md +1 -1
  226. package/.docs/models/providers/jiekou.md +1 -1
  227. package/.docs/models/providers/kenari.md +1 -1
  228. package/.docs/models/providers/kilo.md +16 -11
  229. package/.docs/models/providers/kimi-for-coding.md +1 -1
  230. package/.docs/models/providers/kiro.md +1 -1
  231. package/.docs/models/providers/kuae-cloud-coding-plan.md +1 -1
  232. package/.docs/models/providers/lilac.md +1 -1
  233. package/.docs/models/providers/llama.md +1 -1
  234. package/.docs/models/providers/llmgateway.md +2 -7
  235. package/.docs/models/providers/llmtr.md +1 -1
  236. package/.docs/models/providers/lmstudio.md +1 -1
  237. package/.docs/models/providers/longcat.md +1 -1
  238. package/.docs/models/providers/lucidquery.md +1 -1
  239. package/.docs/models/providers/lynkr.md +1 -1
  240. package/.docs/models/providers/meganova.md +1 -1
  241. package/.docs/models/providers/meta.md +1 -1
  242. package/.docs/models/providers/minimax-cn-coding-plan.md +1 -1
  243. package/.docs/models/providers/minimax-cn.md +1 -1
  244. package/.docs/models/providers/minimax-coding-plan.md +1 -1
  245. package/.docs/models/providers/minimax.md +1 -1
  246. package/.docs/models/providers/mixlayer.md +1 -1
  247. package/.docs/models/providers/moark.md +1 -1
  248. package/.docs/models/providers/modal.md +1 -1
  249. package/.docs/models/providers/model-oracle-ai.md +1 -1
  250. package/.docs/models/providers/modelis.md +1 -1
  251. package/.docs/models/providers/modelscope.md +1 -1
  252. package/.docs/models/providers/moonshotai-cn.md +1 -1
  253. package/.docs/models/providers/moonshotai.md +1 -1
  254. package/.docs/models/providers/morph.md +1 -1
  255. package/.docs/models/providers/nano-gpt.md +8 -4
  256. package/.docs/models/providers/nearai.md +1 -1
  257. package/.docs/models/providers/nebius.md +3 -2
  258. package/.docs/models/providers/neuralwatt.md +1 -1
  259. package/.docs/models/providers/nova.md +1 -1
  260. package/.docs/models/providers/novita-ai.md +1 -1
  261. package/.docs/models/providers/nvidia.md +3 -2
  262. package/.docs/models/providers/ofox.md +4 -3
  263. package/.docs/models/providers/ollama-cloud.md +1 -1
  264. package/.docs/models/providers/opencode-go.md +1 -1
  265. package/.docs/models/providers/opencode.md +65 -64
  266. package/.docs/models/providers/orcarouter.md +1 -1
  267. package/.docs/models/providers/ovhcloud.md +1 -1
  268. package/.docs/models/providers/perplexity-agent.md +1 -1
  269. package/.docs/models/providers/pioneer.md +1 -1
  270. package/.docs/models/providers/poe.md +1 -1
  271. package/.docs/models/providers/poolside.md +1 -1
  272. package/.docs/models/providers/privatemode-ai.md +12 -10
  273. package/.docs/models/providers/qihang-ai.md +1 -1
  274. package/.docs/models/providers/qiniu-ai.md +1 -1
  275. package/.docs/models/providers/regolo-ai.md +26 -21
  276. package/.docs/models/providers/requesty.md +3 -3
  277. package/.docs/models/providers/routing-run.md +1 -1
  278. package/.docs/models/providers/sakana.md +1 -1
  279. package/.docs/models/providers/sarvam.md +1 -1
  280. package/.docs/models/providers/scaleway.md +1 -1
  281. package/.docs/models/providers/scx.md +1 -1
  282. package/.docs/models/providers/siliconflow-cn.md +1 -1
  283. package/.docs/models/providers/siliconflow.md +1 -1
  284. package/.docs/models/providers/snowflake-cortex.md +6 -2
  285. package/.docs/models/providers/stackit.md +1 -1
  286. package/.docs/models/providers/stepfun-ai-step-plan.md +1 -1
  287. package/.docs/models/providers/stepfun-ai.md +1 -1
  288. package/.docs/models/providers/stepfun-step-plan.md +1 -1
  289. package/.docs/models/providers/stepfun.md +1 -1
  290. package/.docs/models/providers/subconscious.md +1 -1
  291. package/.docs/models/providers/submodel.md +1 -1
  292. package/.docs/models/providers/synthetic.md +1 -1
  293. package/.docs/models/providers/tencent-coding-plan.md +1 -1
  294. package/.docs/models/providers/tencent-token-plan.md +1 -1
  295. package/.docs/models/providers/tencent-tokenhub.md +1 -1
  296. package/.docs/models/providers/tensorx.md +1 -1
  297. package/.docs/models/providers/the-grid-ai.md +1 -1
  298. package/.docs/models/providers/thinkingmachines.md +1 -1
  299. package/.docs/models/providers/tinfoil.md +2 -2
  300. package/.docs/models/providers/togetherai.md +1 -1
  301. package/.docs/models/providers/trustedrouter.md +1 -1
  302. package/.docs/models/providers/umans-ai-coding-plan.md +1 -1
  303. package/.docs/models/providers/umans-ai.md +1 -1
  304. package/.docs/models/providers/unorouter.md +1 -1
  305. package/.docs/models/providers/upstage.md +1 -1
  306. package/.docs/models/providers/venice.md +1 -1
  307. package/.docs/models/providers/vivgrid.md +1 -1
  308. package/.docs/models/providers/vultr.md +1 -1
  309. package/.docs/models/providers/wafer.ai.md +1 -1
  310. package/.docs/models/providers/wandb.md +3 -2
  311. package/.docs/models/providers/xiaomi-token-plan-ams.md +1 -1
  312. package/.docs/models/providers/xiaomi-token-plan-cn.md +1 -1
  313. package/.docs/models/providers/xiaomi-token-plan-sgp.md +1 -1
  314. package/.docs/models/providers/xiaomi.md +1 -1
  315. package/.docs/models/providers/xpersona.md +1 -1
  316. package/.docs/models/providers/zai-coding-plan.md +1 -1
  317. package/.docs/models/providers/zai.md +1 -1
  318. package/.docs/models/providers/zeldoc.md +8 -8
  319. package/.docs/models/providers/zenifra.md +1 -1
  320. package/.docs/models/providers/zenmux.md +1 -16
  321. package/.docs/models/providers/zhipuai-coding-plan.md +1 -1
  322. package/.docs/models/providers/zhipuai.md +1 -1
  323. package/.docs/models/providers.md +1 -0
  324. package/.docs/reference/agent-controller/agent-controller-class.md +35 -4
  325. package/.docs/reference/agent-controller/session.md +5 -3
  326. package/.docs/reference/agents/channels.md +2 -2
  327. package/.docs/reference/agents/durable-agent.md +2 -0
  328. package/.docs/reference/agents/generateLegacy.md +2 -2
  329. package/.docs/reference/agents/getDefaultOptions.md +1 -1
  330. package/.docs/reference/agents/getDefaultStreamOptions.md +1 -1
  331. package/.docs/reference/agents/inngest-agent.md +3 -1
  332. package/.docs/reference/agents/network.md +1 -1
  333. package/.docs/reference/ai-sdk/handle-network-stream.md +1 -1
  334. package/.docs/reference/ai-sdk/network-route.md +1 -1
  335. package/.docs/reference/auth/auth0.md +1 -1
  336. package/.docs/reference/auth/better-auth.md +1 -1
  337. package/.docs/reference/auth/clerk.md +1 -1
  338. package/.docs/reference/auth/firebase.md +1 -1
  339. package/.docs/reference/auth/google.md +1 -1
  340. package/.docs/reference/auth/okta.md +5 -1
  341. package/.docs/reference/auth/supabase.md +1 -1
  342. package/.docs/reference/auth/workos.md +1 -1
  343. package/.docs/reference/browser/agent-browser.md +2 -2
  344. package/.docs/reference/browser/browser-viewer.md +1 -1
  345. package/.docs/reference/browser/firecrawl-browser.md +1 -1
  346. package/.docs/reference/browser/mastra-browser.md +1 -1
  347. package/.docs/reference/browser/stagehand-browser.md +2 -2
  348. package/.docs/reference/channels/channel-provider.md +1 -1
  349. package/.docs/reference/channels/slack-provider.md +2 -2
  350. package/.docs/reference/cli/mastra.md +6 -6
  351. package/.docs/reference/client-js/agents.md +2 -1
  352. package/.docs/reference/client-js/workflows.md +21 -21
  353. package/.docs/reference/code-sdk/mount-agent-controller.md +1 -1
  354. package/.docs/reference/configuration.md +21 -27
  355. package/.docs/reference/core/{addStoredWorkflow.md → addDynamicWorkflow.md} +10 -10
  356. package/.docs/reference/core/{addStoredWorkflows.md → addDynamicWorkflows.md} +9 -9
  357. package/.docs/reference/core/getStorage.md +1 -1
  358. package/.docs/reference/core/getVector.md +2 -2
  359. package/.docs/reference/core/listVectors.md +2 -2
  360. package/.docs/reference/core/setStorage.md +1 -1
  361. package/.docs/reference/datasets/startExperiment.md +8 -0
  362. package/.docs/reference/editor/tool-provider.md +26 -1
  363. package/.docs/reference/file-based-agents/config.md +2 -0
  364. package/.docs/reference/file-based-agents/instructions.md +2 -0
  365. package/.docs/reference/file-based-agents/logger.md +2 -0
  366. package/.docs/reference/file-based-agents/memory.md +2 -0
  367. package/.docs/reference/file-based-agents/observability.md +2 -0
  368. package/.docs/reference/file-based-agents/processors.md +2 -0
  369. package/.docs/reference/file-based-agents/schedules.md +2 -0
  370. package/.docs/reference/file-based-agents/scorers.md +2 -0
  371. package/.docs/reference/file-based-agents/server.md +2 -0
  372. package/.docs/reference/file-based-agents/skills.md +2 -0
  373. package/.docs/reference/file-based-agents/storage.md +3 -1
  374. package/.docs/reference/file-based-agents/studio.md +3 -1
  375. package/.docs/reference/file-based-agents/subagents.md +2 -0
  376. package/.docs/reference/file-based-agents/tools.md +2 -0
  377. package/.docs/reference/file-based-agents/workflows.md +2 -0
  378. package/.docs/reference/file-based-agents/workspace.md +2 -0
  379. package/.docs/reference/index.md +32 -57
  380. package/.docs/{guides/getting-started → reference}/manual-install.md +2 -2
  381. package/.docs/{guides → reference}/migrations/ai-sdk-v4-to-v5.md +1 -1
  382. package/.docs/{guides → reference}/migrations/mastra-cloud.md +2 -2
  383. package/.docs/{guides → reference}/migrations/upgrade-to-v1/cli.md +1 -1
  384. package/.docs/{guides → reference}/migrations/upgrade-to-v1/memory.md +1 -1
  385. package/.docs/{guides → reference}/migrations/upgrade-to-v1/overview.md +41 -41
  386. package/.docs/{guides → reference}/migrations/upgrade-to-v1/tools.md +1 -1
  387. package/.docs/{guides → reference}/migrations/upgrade-to-v1/tracing.md +10 -10
  388. package/.docs/reference/observability/tracing/bridges/datadog.md +2 -2
  389. package/.docs/reference/observability/tracing/bridges/otel.md +2 -2
  390. package/.docs/reference/observability/tracing/exporters/arize.md +1 -1
  391. package/.docs/reference/observability/tracing/exporters/arthur.md +1 -1
  392. package/.docs/reference/observability/tracing/exporters/confident-ai.md +1 -1
  393. package/.docs/reference/observability/tracing/exporters/datadog.md +1 -1
  394. package/.docs/reference/observability/tracing/exporters/mastra-platform-exporter.md +12 -0
  395. package/.docs/reference/observability/tracing/exporters/otel.md +2 -2
  396. package/.docs/reference/processors/pii-detector.md +2 -0
  397. package/.docs/reference/processors/prompt-injection-detector.md +2 -0
  398. package/.docs/reference/processors/regex-filter-processor.md +20 -0
  399. package/.docs/reference/processors/response-cache.md +2 -0
  400. package/.docs/reference/processors/tool-search-processor.md +33 -1
  401. package/.docs/reference/pubsub/lease-provider.md +1 -1
  402. package/.docs/{guides → reference}/rag/chunking-and-embedding.md +16 -19
  403. package/.docs/reference/rag/database-config.md +1 -1
  404. package/.docs/{guides/rag/graph-rag.md → reference/rag/graph-rag-guide.md} +1 -1
  405. package/.docs/reference/rag/metadata-filters.md +13 -4
  406. package/.docs/{guides → reference}/rag/overview.md +2 -2
  407. package/.docs/{guides → reference}/rag/retrieval.md +18 -1
  408. package/.docs/{guides → reference}/rag/vector-databases.md +42 -1
  409. package/.docs/reference/schedules/overview.md +2 -0
  410. package/.docs/reference/server/create-route.md +27 -1
  411. package/.docs/reference/server/register-api-route.md +2 -0
  412. package/.docs/reference/server/routes.md +9 -9
  413. package/.docs/reference/signals/create-notification-inbox-tool.md +2 -0
  414. package/.docs/reference/signals/signal-provider.md +2 -0
  415. package/.docs/reference/signals/task-signal-provider.md +2 -0
  416. package/.docs/reference/signals/webhook-signal-provider.md +2 -0
  417. package/.docs/reference/storage/composite.md +4 -4
  418. package/.docs/reference/storage/overview.md +9 -9
  419. package/.docs/reference/storage/retention.md +5 -5
  420. package/.docs/reference/streaming/ChunkType.md +3 -3
  421. package/.docs/reference/streaming/agents/stream.md +1 -1
  422. package/.docs/reference/streaming/agents/streamLegacy.md +3 -3
  423. package/.docs/reference/streaming/agents/streamUntilIdle.md +1 -1
  424. package/.docs/reference/tools/create-code-mode.md +3 -1
  425. package/.docs/reference/tools/isolated-vm-transport.md +1 -1
  426. package/.docs/reference/tools/mcp-client.md +51 -0
  427. package/.docs/reference/tools/mcp-server.md +1 -1
  428. package/.docs/reference/tools/quickjs-transport.md +92 -0
  429. package/.docs/reference/vectors/chroma.md +1 -1
  430. package/.docs/reference/vectors/convex.md +2 -2
  431. package/.docs/reference/vectors/oracledb.md +347 -0
  432. package/.docs/reference/workers/overview.md +10 -8
  433. package/.docs/reference/workflows/{stored-workflow-definition.md → dynamic-workflow-definition.md} +9 -7
  434. package/.docs/reference/workflows/run-methods/timeTravel.md +1 -0
  435. package/.docs/reference/workflows/workflow-methods/agent.md +3 -3
  436. package/.docs/reference/workflows/workflow-methods/tool.md +3 -3
  437. package/.docs/reference/workflows/workflow.md +18 -0
  438. package/.docs/reference/workspace/local-sandbox.md +1 -1
  439. package/.docs/reference/workspace/platform-filesystem.md +3 -3
  440. package/.docs/reference/workspace/platform-sandbox.md +11 -3
  441. package/.docs/reference/workspace/process-manager.md +3 -3
  442. package/.docs/reference/workspace/sandbox.md +10 -0
  443. package/CHANGELOG.md +97 -0
  444. package/dist/index.js +1 -1
  445. package/dist/{src-BZcgzbk9.js → src-D-W-bx5t.js} +2 -2
  446. package/dist/{src-BZcgzbk9.js.map → src-D-W-bx5t.js.map} +1 -1
  447. package/dist/stdio.js +1 -1
  448. package/package.json +6 -6
  449. package/.docs/docs/capabilities/channels/other-adapters.md +0 -68
  450. package/.docs/docs/observability/integrations/bridges/datadog.md +0 -219
  451. package/.docs/docs/observability/integrations/bridges/otel.md +0 -234
  452. package/.docs/docs/observability/integrations/exporters/datadog.md +0 -321
  453. package/.docs/guides/build-your-ui/copilotkit/channels.md +0 -86
  454. package/.docs/guides/build-your-ui/copilotkit/generative-ui.md +0 -174
  455. package/.docs/guides/guide/chef-michel.md +0 -211
  456. package/.docs/guides/guide/publishing-mcp-server.md +0 -137
  457. package/.docs/guides/guide/slack-assistant.md +0 -193
  458. package/.docs/guides/guide/stock-agent.md +0 -132
  459. package/.docs/guides/guide/web-search.md +0 -322
  460. package/.docs/guides/guide/whatsapp-chat-bot.md +0 -407
  461. package/.docs/guides/voice/realtime-voice.md +0 -430
  462. package/.docs/reference/voice/google.md +0 -290
  463. package/.docs/reference/voice/inworld.md +0 -137
  464. package/.docs/reference/voice/openai.md +0 -96
  465. package/.docs/reference/voice/playai.md +0 -82
  466. package/.docs/reference/workspace/vercel-serverless.md +0 -128
  467. /package/.docs/{guides/concepts → docs/guides}/multi-agent-systems.md +0 -0
  468. /package/.docs/{guides/concepts → docs/guides}/streaming.md +0 -0
  469. /package/.docs/{guides/build-your-ui → integrations/agentic-ui}/openui.md +0 -0
  470. /package/.docs/{docs/server → integrations}/auth/better-auth.md +0 -0
  471. /package/.docs/{docs/server → integrations}/auth/google.md +0 -0
  472. /package/.docs/{guides/deployment → integrations/deploy}/inngest.md +0 -0
  473. /package/.docs/{guides/deployment → integrations/deploy}/temporal.md +0 -0
  474. /package/.docs/{reference/workspace/agentfs-filesystem.md → integrations/file-storage/agentfs.md} +0 -0
  475. /package/.docs/{reference/workspace/google-drive-filesystem.md → integrations/file-storage/google-drive.md} +0 -0
  476. /package/.docs/{guides/getting-started → integrations/frameworks}/express.md +0 -0
  477. /package/.docs/{guides/getting-started → integrations/frameworks}/hono.md +0 -0
  478. /package/.docs/{guides/getting-started → integrations/frameworks}/nestjs.md +0 -0
  479. /package/.docs/{reference/workspace/agentcore-runtime-sandbox.md → integrations/sandboxes/agentcore.md} +0 -0
  480. /package/.docs/{reference/workspace/blaxel-sandbox.md → integrations/sandboxes/blaxel.md} +0 -0
  481. /package/.docs/{guides/guide → integrations/tools}/firecrawl.md +0 -0
  482. /package/.docs/{reference → integrations}/voice/azure.md +0 -0
  483. /package/.docs/{reference → integrations}/voice/deepgram.md +0 -0
  484. /package/.docs/{reference → integrations}/voice/elevenlabs.md +0 -0
  485. /package/.docs/{reference → integrations}/voice/mistral.md +0 -0
  486. /package/.docs/{reference → integrations}/voice/murf.md +0 -0
  487. /package/.docs/{reference → integrations}/voice/sarvam.md +0 -0
  488. /package/.docs/{reference → integrations}/voice/speechify.md +0 -0
  489. /package/.docs/{reference/voice/xai-realtime.md → integrations/voice/xai.md} +0 -0
  490. /package/.docs/{guides → reference}/migrations/agentnetwork.md +0 -0
  491. /package/.docs/{guides → reference}/migrations/network-to-supervisor.md +0 -0
  492. /package/.docs/{guides → reference}/migrations/upgrade-to-v1/agent.md +0 -0
  493. /package/.docs/{guides → reference}/migrations/upgrade-to-v1/client.md +0 -0
  494. /package/.docs/{guides → reference}/migrations/upgrade-to-v1/deployment.md +0 -0
  495. /package/.docs/{guides → reference}/migrations/upgrade-to-v1/evals.md +0 -0
  496. /package/.docs/{guides → reference}/migrations/upgrade-to-v1/mastra.md +0 -0
  497. /package/.docs/{guides → reference}/migrations/upgrade-to-v1/mcp.md +0 -0
  498. /package/.docs/{guides → reference}/migrations/upgrade-to-v1/processors.md +0 -0
  499. /package/.docs/{guides → reference}/migrations/upgrade-to-v1/rag.md +0 -0
  500. /package/.docs/{guides → reference}/migrations/upgrade-to-v1/storage.md +0 -0
  501. /package/.docs/{guides → reference}/migrations/upgrade-to-v1/vectors.md +0 -0
  502. /package/.docs/{guides → reference}/migrations/upgrade-to-v1/voice.md +0 -0
  503. /package/.docs/{guides → reference}/migrations/upgrade-to-v1/workflows.md +0 -0
  504. /package/.docs/{guides → reference}/migrations/vnext-to-standard-apis.md +0 -0
@@ -153,14 +153,14 @@ You can open [Studio](https://mastra.ai/docs/studio/overview) immediately, which
153
153
 
154
154
  Add Mastra to an existing project, or create a new app with your preferred framework:
155
155
 
156
- - [Next.js](https://mastra.ai/guides/getting-started/next-js)
157
- - [React](https://mastra.ai/guides/getting-started/vite-react)
158
- - [Astro](https://mastra.ai/guides/getting-started/astro)
159
- - [Express](https://mastra.ai/guides/getting-started/express)
160
- - [SvelteKit](https://mastra.ai/guides/getting-started/sveltekit)
161
- - [Hono](https://mastra.ai/guides/getting-started/hono)
162
-
163
- For other frameworks, see the [framework integration guides](https://mastra.ai/guides/getting-started/next-js).
156
+ - [Next.js](https://mastra.ai/integrations/frameworks/next-js)
157
+ - [React](https://mastra.ai/integrations/frameworks/vite-react)
158
+ - [Astro](https://mastra.ai/integrations/frameworks/astro)
159
+ - [Express](https://mastra.ai/integrations/frameworks/express)
160
+ - [SvelteKit](https://mastra.ai/integrations/frameworks/sveltekit)
161
+ - [Hono](https://mastra.ai/integrations/frameworks/hono)
162
+
163
+ For other frameworks, see the [framework integration guides](https://mastra.ai/integrations/frameworks/next-js).
164
164
 
165
165
  ## Templates
166
166
 
@@ -4,7 +4,7 @@
4
4
 
5
5
  **Added in:** `@mastra/core@1.45.0`
6
6
 
7
- > **Warning:** Durable agents are currently in **beta**. APIs may change in future releases.
7
+ > **Beta:** Breaking changes may occur without a major version bump until the API is stable.
8
8
 
9
9
  A durable agent wraps a regular [`Agent`](https://mastra.ai/docs/agents/overview) so the agentic loop runs inside a workflow. Events flow through [PubSub](https://mastra.ai/docs/server/pubsub), which means a client can disconnect and reconnect without missing chunks. The run state is persisted, so it survives process restarts.
10
10
 
@@ -15,7 +15,7 @@ Use a durable agent when any of the following apply:
15
15
  - The client may drop and reconnect mid-stream (mobile, spotty networks, long-running calls).
16
16
  - The agentic loop may outlive a single HTTP request (background research, multi-step tool use).
17
17
  - You need an observe/reconnect API where a second client picks up a stream that a first client started.
18
- - You want [Inngest-powered execution](https://mastra.ai/guides/deployment/inngest) with step memoization, retries, and monitoring.
18
+ - You want [Inngest-powered execution](https://mastra.ai/integrations/deploy/inngest) with step memoization, retries, and monitoring.
19
19
 
20
20
  For short-lived, request-scoped calls where the client stays connected, a regular `Agent` with `stream()` or `generate()` is simpler.
21
21
 
@@ -268,6 +268,6 @@ Mastra doesn't provide a distributed lease or lock yet. In multi-replica deploym
268
268
  - [DurableAgent reference](https://mastra.ai/reference/agents/durable-agent)
269
269
  - [`createInngestAgent()` reference](https://mastra.ai/reference/agents/inngest-agent)
270
270
  - [Background tasks](https://mastra.ai/docs/long-running-agents/background-tasks)
271
- - [Inngest deployment guide](https://mastra.ai/guides/deployment/inngest)
271
+ - [Inngest deployment guide](https://mastra.ai/integrations/deploy/inngest)
272
272
  - [Agent overview](https://mastra.ai/docs/agents/overview)
273
273
  - [Worker overview](https://mastra.ai/docs/deployment/workers)
@@ -4,7 +4,7 @@
4
4
 
5
5
  **Added in:** `@mastra/core@1.42.0`
6
6
 
7
- > **Beta:** The Goals feature is in beta stage and subject to breaking changes in minor versions until it graduates from its beta status.
7
+ > **Beta:** Breaking changes may occur without a major version bump until the API is stable.
8
8
 
9
9
  A goal is a durable, thread-scoped objective: a standing instruction the agent keeps working toward across loop iterations until a judge model decides it's satisfied or a run budget is exhausted.
10
10
 
@@ -4,7 +4,7 @@
4
4
 
5
5
  **Added in:** `@mastra/core@1.50.0`
6
6
 
7
- > **Beta:** This feature is in beta. Breaking changes may occur without a major version bump until the API is stable.
7
+ > **Beta:** Breaking changes may occur without a major version bump until the API is stable.
8
8
 
9
9
  A schedule runs an agent on a cron cadence. On each fire, Mastra sends a prompt to the agent, either as a [signal](https://mastra.ai/docs/long-running-agents/signals) into a thread or as a threadless [`agent.generate()`](https://mastra.ai/reference/agents/generate) run. Use schedules for recurring agent work such as daily summaries, periodic checks, or scheduled nudges into a conversation.
10
10
 
@@ -4,7 +4,7 @@
4
4
 
5
5
  **Added in:** `@mastra/core@1.39.0`
6
6
 
7
- > **Beta:** This feature is in beta. Breaking changes may occur without a major version bump until the API is stable.
7
+ > **Beta:** Breaking changes may occur without a major version bump until the API is stable.
8
8
 
9
9
  A signal provider monitors an external source, such as GitHub, Slack, continuous integration (CI), or your own API, and pushes [notification signals](https://mastra.ai/docs/long-running-agents/signals) into subscribed agent threads.
10
10
 
@@ -45,7 +45,7 @@ export const supportAgent = new Agent({
45
45
  })
46
46
  ```
47
47
 
48
- > **Note:** Notification delivery requires a storage adapter with notification support, such as [libSQL](https://mastra.ai/reference/storage/libsql), [PostgreSQL](https://mastra.ai/reference/storage/postgresql), or [MongoDB](https://mastra.ai/reference/storage/mongodb). Configure storage on the Mastra instance so `notify()` can store notification records.
48
+ > **Note:** Notification delivery requires a storage adapter with notification support, such as [libSQL](https://mastra.ai/integrations/databases/libsql), [PostgreSQL](https://mastra.ai/integrations/databases/postgresql), or [MongoDB](https://mastra.ai/integrations/databases/mongodb). Configure storage on the Mastra instance so `notify()` can store notification records.
49
49
 
50
50
  ## Quickstart
51
51
 
@@ -200,20 +200,7 @@ A provider can support more than event ingestion. Add only the capabilities your
200
200
  - **Lifecycle hooks:** Override [`start()`](https://mastra.ai/reference/signals/signal-provider) for async setup and [`stop()`](https://mastra.ai/reference/signals/signal-provider) for cleanup. Call `super.stop()` when overriding `stop()` so the base provider can stop polling and clear its registry.
201
201
  - **Processors and tools:** Return processors from [`getInputProcessors()`](https://mastra.ai/reference/signals/signal-provider) or [`getOutputProcessors()`](https://mastra.ai/reference/signals/signal-provider), and return agent-callable tools from [`getTools()`](https://mastra.ai/reference/signals/signal-provider).
202
202
 
203
- The `@mastra/github-signals` package is a production signal provider that watches GitHub pull requests and notifies threads about comments, review state, continuous integration status, and merges. Use it as a reference for polling, durable subscriptions, tools, processors, and lifecycle hooks.
204
-
205
- ```typescript
206
- import { Agent } from '@mastra/core/agent'
207
- import { GithubSignals } from '@mastra/github-signals'
208
-
209
- export const devAgent = new Agent({
210
- id: 'dev-agent',
211
- name: 'Dev Agent',
212
- instructions: 'Help triage pull request activity.',
213
- model: 'openai/gpt-5.6-sol',
214
- signals: [new GithubSignals()],
215
- })
216
- ```
203
+ For a production provider that watches GitHub pull requests, see the [GitHub Channels integration](https://mastra.ai/integrations/channels/github).
217
204
 
218
205
  ## Related
219
206
 
@@ -4,7 +4,7 @@
4
4
 
5
5
  **Added in:** `@mastra/core@1.39.0`
6
6
 
7
- > **Beta:** This feature is in beta. Breaking changes may occur without a major version bump until the API is stable.
7
+ > **Beta:** Breaking changes may occur without a major version bump until the API is stable.
8
8
 
9
9
  Signals are a way to interact with an agent through a thread. Instead of starting every interaction with `agent.stream()`, subscribe to a thread and send messages or signals. Mastra either wakes the agent when the thread is idle or drops input into the running agent loop, or alternatively queues input for the next turn.
10
10
 
@@ -147,7 +147,7 @@ Use XML-safe `tagName` and attribute names. They can contain letters, numbers, s
147
147
 
148
148
  #### Storage support
149
149
 
150
- Notification inbox storage is available in the storage adapters that support richer memory and signal workflows: [libSQL](https://mastra.ai/reference/storage/libsql), [PostgreSQL](https://mastra.ai/reference/storage/postgresql), and [MongoDB](https://mastra.ai/reference/storage/mongodb). These adapters expose notification records through `getStore('notifications')`.
150
+ Notification inbox storage is available in the storage adapters that support richer memory and signal workflows: [libSQL](https://mastra.ai/integrations/databases/libsql), [PostgreSQL](https://mastra.ai/integrations/databases/postgresql), and [MongoDB](https://mastra.ai/integrations/databases/mongodb). These adapters expose notification records through `getStore('notifications')`.
151
151
 
152
152
  ### Send processor context
153
153
 
@@ -99,7 +99,7 @@ When a database is `ready`, the provider has finished provisioning and the platf
99
99
 
100
100
  ### Turso (LibSQL)
101
101
 
102
- Turso exposes two environment variables: `TURSO_DATABASE_URL` and `TURSO_AUTH_TOKEN`. The following example connects a [LibSQLStore](https://mastra.ai/reference/storage/libsql) using those variables.
102
+ Turso exposes two environment variables: `TURSO_DATABASE_URL` and `TURSO_AUTH_TOKEN`. The following example connects a [LibSQLStore](https://mastra.ai/integrations/databases/libsql) using those variables.
103
103
 
104
104
  ```ts
105
105
  import { LibSQLStore } from '@mastra/libsql'
@@ -139,7 +139,7 @@ bun add @mastra/libsql@latest
139
139
 
140
140
  ### PostgreSQL
141
141
 
142
- PostgreSQL exposes a single `DATABASE_URL` connection string. The following example connects a [PostgresStore](https://mastra.ai/reference/storage/postgresql) using that variable.
142
+ PostgreSQL exposes a single `DATABASE_URL` connection string. The following example connects a [PostgresStore](https://mastra.ai/integrations/databases/postgresql) using that variable.
143
143
 
144
144
  ```ts
145
145
  import { PostgresStore } from '@mastra/pg'
@@ -132,6 +132,33 @@ mastra deploy --env staging --env-file .env.staging
132
132
 
133
133
  To change variables on a running service without a redeploy, update them in the dashboard and run [`mastra env restart`](https://mastra.ai/reference/cli/mastra).
134
134
 
135
+ ## Private npm packages
136
+
137
+ Projects that depend on packages from a private registry install them during the deploy using the standard `NPM_TOKEN` contract.
138
+
139
+ 1. Store a read-only registry token as `NPM_TOKEN` on the project or environment through the dashboard.
140
+
141
+ 2. Commit a token-free `.npmrc` that points your scope at the registry and reads the token from the environment:
142
+
143
+ ```ini
144
+ @your-org:registry=https://npm.pkg.github.com
145
+ //npm.pkg.github.com/:_authToken=${NPM_TOKEN}
146
+ ```
147
+
148
+ Keep the `${NPM_TOKEN}` reference literal. The package manager resolves it at install time, so the token itself never lands in your repository.
149
+
150
+ 3. Deploy as usual:
151
+
152
+ ```bash
153
+ mastra deploy
154
+ ```
155
+
156
+ In a monorepo, a `.npmrc` in your project directory takes precedence over one at the repository root.
157
+
158
+ `NPM_TOKEN` is available during dependency installation. Mastra redacts its value from the Mastra source-build logs that it streams. The generated Dockerfile receives it as a build argument, so the runtime image stays free of the token. `NPM_TOKEN` is also injected into the running service as a regular environment variable, so treat it as a secret your application can read.
159
+
160
+ Projects without a private-registry `.npmrc` need no changes. When your `.npmrc` references `${NPM_TOKEN}`, set the variable or the dependency install fails.
161
+
135
162
  ## Project resolution
136
163
 
137
164
  Every deploy resolves its target project in this order:
@@ -8,7 +8,7 @@ You get a stable API endpoint, environment variable management, custom domain su
8
8
 
9
9
  > **Note:** `mastra server deploy` is the earlier split deploy path. New projects should use the unified [`mastra deploy`](https://mastra.ai/docs/mastra-platform/deploy) command, which adds preflight validation, environments, and CLI-managed databases.
10
10
 
11
- > **Note:** Server deploy provisions hosted storage automatically. If you override storage with [LibSQLStore](https://mastra.ai/reference/storage/libsql) and a file URL, switch to a remotely hosted database because Mastra platform uses an ephemeral filesystem.
11
+ > **Note:** Server deploy provisions hosted storage automatically. If you override storage with [LibSQLStore](https://mastra.ai/integrations/databases/libsql) and a file URL, switch to a remotely hosted database because Mastra platform uses an ephemeral filesystem.
12
12
 
13
13
  ## Quickstart
14
14
 
@@ -56,12 +56,9 @@ The flow chart connects themes in adjacent trace signal columns:
56
56
 
57
57
  The flow shows association, not causation or execution order. For example, a ribbon between a Goal and an Outcome means that both themes occurred in the same traces. It doesn't show that the goal caused the outcome.
58
58
 
59
- ### Distributions, Other, and Noise
59
+ ### Other and Noise
60
60
 
61
- The cards below the flow show each trace signal's theme distribution:
62
-
63
- - **Trace count**: The number of distinct traces assigned to a theme in the selected snapshot.
64
- - **Stage share**: The percentage of analyzed traces for that trace signal assigned to the theme.
61
+ Each node shows its trace count: the number of distinct traces assigned to that theme in the selected snapshot. A theme's details also state its share, for example "28 of 70 traces in this snapshot (40%)".
65
62
 
66
63
  Studio shows the most common themes for each trace signal type. It may combine smaller themes into **Other** to preserve totals without overcrowding the chart.
67
64
 
@@ -69,26 +66,25 @@ Studio shows the most common themes for each trace signal type. It may combine s
69
66
 
70
67
  ### Snapshots
71
68
 
72
- A snapshot is a moving analysis window over a set of traces. Snapshots can overlap, so don't add their trace counts together. Compare trace count and stage share together because traffic volume can change between windows.
69
+ A snapshot is a moving analysis window over a set of traces. Snapshots can overlap, so don't add their trace counts together. Compare a theme's trace count and its share of the snapshot together because traffic volume can change between windows.
73
70
 
74
71
  A theme can persist, disappear, split, merge, or return across snapshots. Treat theme names and descriptions as generated summaries, not fixed taxonomies.
75
72
 
76
73
  ## Use the Trace Intelligence page
77
74
 
78
75
  1. Use the **Agent** selector to switch between agents with available analysis. An agent doesn't appear until its first themes are ready.
79
- 2. Select a theme in the flow to filter every column to traces containing that theme.
80
- 3. Select **View theme details** to inspect its description, trace count, stage share, generated examples, and history.
76
+ 2. Select a theme in the flow to open its details and filter every column to traces containing that theme.
77
+ 3. The details panel shows the theme's description, its share of the snapshot, paged example summaries, and a trend of its trace count over time.
81
78
  4. Select **Clear filter** to restore the complete flow.
82
79
 
83
80
  You can also:
84
81
 
85
- - Select a theme in a distribution card to open its details and generated example summaries.
86
- - Select **Noise** in a distribution card to inspect its distribution and generated example summaries.
87
- - Drag the distribution cards to reorder the trace signal columns and see a different relationship perspective.
82
+ - Select **Noise** in the flow to inspect its share and generated example summaries.
83
+ - Drag the column headers above the chart to reorder the trace signal columns and see a different relationship perspective.
88
84
  - Use the timeline to select a snapshot, or select **Play** to watch themes change over time.
89
- - Open a theme's history to see whether it persisted and how its coverage changed.
85
+ - Switch to **Compare** to see which themes grew, shrank, entered the range, or left the range between two points in time, or **Lifelines** to follow each theme's share across the whole selected range.
90
86
 
91
- Filtering the flow by a theme is unavailable for snapshots with more than 2,000 traces. Choose another snapshot or clear the active filter to return to the full flow. Theme and Noise details remain available from the distribution cards.
87
+ Filtering the flow by a theme is unavailable for snapshots with more than 2,000 traces. Selecting a theme still opens its details there without filtering the flow.
92
88
 
93
89
  ## Troubleshooting
94
90
 
@@ -202,6 +202,48 @@ export const mastra = new Mastra({
202
202
 
203
203
  Visit the [`MCPServer` reference](https://mastra.ai/reference/tools/mcp-server) for prompts, resources, transports, and other server options.
204
204
 
205
+ ### Publish a stdio server package
206
+
207
+ Package a server that uses the standard input/output (stdio) transport when you want clients to run it locally through a command such as `npx`. Create a separate executable entry point that starts the server:
208
+
209
+ ```typescript
210
+ #!/usr/bin/env node
211
+ import { mcpServer } from './server'
212
+
213
+ mcpServer.startStdio().catch(error => {
214
+ console.error('Failed to start MCP server:', error)
215
+ process.exit(1)
216
+ })
217
+ ```
218
+
219
+ Build the entry point as an executable Node.js file, then point the package's `bin` field to that output. Include the built file in the published package and keep the shebang as its first line:
220
+
221
+ ```json
222
+ {
223
+ "bin": {
224
+ "my-mcp-server": "dist/stdio.js"
225
+ },
226
+ "files": ["dist"]
227
+ }
228
+ ```
229
+
230
+ After publishing the package, configure clients to run it by package name:
231
+
232
+ ```typescript
233
+ import { MCPClient } from '@mastra/mcp'
234
+
235
+ const mcpClient = new MCPClient({
236
+ servers: {
237
+ myServer: {
238
+ command: 'npx',
239
+ args: ['-y', '@your-org/my-mcp-server@1.0.0'],
240
+ },
241
+ },
242
+ })
243
+ ```
244
+
245
+ Visit the [npm package publishing documentation](https://docs.npmjs.com/creating-and-publishing-scoped-public-packages) for package naming, authentication, and publication commands.
246
+
205
247
  ## Build MCP Apps
206
248
 
207
249
  The [MCP Apps extension](https://github.com/modelcontextprotocol/ext-apps) lets MCP tools serve interactive HTML interfaces through `ui://` resources. Mastra Studio renders these apps in sandboxed iframes on tool pages and in agent chat.
@@ -313,11 +313,11 @@ Both scenarios are safe - guardrails prevent inappropriate content from being pe
313
313
 
314
314
  Some storage providers enforce record size limits that base64-encoded file attachments can exceed:
315
315
 
316
- | Provider | Record size limit |
317
- | ------------------------------------------------------------------ | ----------------- |
318
- | [DynamoDB](https://mastra.ai/reference/storage/dynamodb) | 400 KB |
319
- | [Convex](https://mastra.ai/reference/storage/convex) | 1 MiB |
320
- | [Cloudflare D1](https://mastra.ai/reference/storage/cloudflare-d1) | 1 MiB |
316
+ | Provider | Record size limit |
317
+ | ----------------------------------------------------------------------- | ----------------- |
318
+ | [DynamoDB](https://mastra.ai/integrations/databases/dynamodb) | 400 KB |
319
+ | [Convex](https://mastra.ai/integrations/databases/convex) | 1 MiB |
320
+ | [Cloudflare D1](https://mastra.ai/integrations/databases/cloudflare-d1) | 1 MiB |
321
321
 
322
322
  PostgreSQL, MongoDB, and libSQL have higher limits and are usually unaffected.
323
323
 
@@ -6,13 +6,13 @@ Message history is the most basic and important form of memory. It gives the LLM
6
6
 
7
7
  You can also retrieve message history to display past conversations in your UI.
8
8
 
9
- > **Info:** Each message belongs to a thread (the conversation) and a resource (the user or entity it's associated with). See [Threads and resources](#threads-and-resources) for more detail.
9
+ > **Note:** Each message belongs to a thread (the conversation) and a resource (the user or entity it's associated with). See [Threads and resources](#threads-and-resources) for more detail.
10
10
 
11
11
  > **Warning:** When you use memory with a client application, send **only the new message** from the client instead of the full conversation history.
12
12
  >
13
13
  > Sending the full history is redundant because Mastra loads messages from storage, and it can cause message ordering bugs when client-side timestamps conflict with stored timestamps.
14
14
  >
15
- > For an AI SDK example, see [Using Mastra Memory](https://mastra.ai/guides/build-your-ui/ai-sdk-ui).
15
+ > For an AI SDK example, see [Using Mastra Memory](https://mastra.ai/integrations/agentic-ui/ai-sdk-ui).
16
16
 
17
17
  ## Threads and resources
18
18
 
@@ -113,7 +113,7 @@ await agent.stream('Hello', {
113
113
  })
114
114
  ```
115
115
 
116
- > **Info:** Threads and messages are created automatically when you call `agent.generate()` or `agent.stream()`, but you can also create them manually with [`createThread()`](https://mastra.ai/reference/memory/createThread) and [`saveMessages()`](https://mastra.ai/reference/memory/memory-class).
116
+ > **Note:** Threads and messages are created automatically when you call `agent.generate()` or `agent.stream()`, but you can also create them manually with [`createThread()`](https://mastra.ai/reference/memory/createThread) and [`saveMessages()`](https://mastra.ai/reference/memory/memory-class).
117
117
 
118
118
  You can use this history in two ways:
119
119
 
@@ -156,7 +156,7 @@ const memory = new Memory({
156
156
  })
157
157
  ```
158
158
 
159
- OM requires a storage adapter that supports it: `@mastra/libsql`, `@mastra/pg`, or `@mastra/mongodb`.
159
+ OM requires a storage adapter that supports it: `@mastra/libsql`, `@mastra/pg`, `@mastra/mongodb`, or `@mastra/oracledb`.
160
160
 
161
161
  > **Note:** If you switch the Observer to a weaker model and see facts collapse to a generic `User`, use [`observation.instruction`](https://mastra.ai/reference/memory/observational-memory) to teach the Observer how to read the `<turn>` tag.
162
162
 
@@ -92,9 +92,9 @@ See [configuration options](https://mastra.ai/reference/memory/observational-mem
92
92
  >
93
93
  > Observational memory still relies on stored conversation history. Sending the full history is redundant and can cause message ordering bugs when client-side timestamps conflict with stored timestamps.
94
94
  >
95
- > For an AI SDK example, see [Using Mastra Memory](https://mastra.ai/guides/build-your-ui/ai-sdk-ui).
95
+ > For an AI SDK example, see [Using Mastra Memory](https://mastra.ai/integrations/agentic-ui/ai-sdk-ui).
96
96
 
97
- > **Note:** OM currently only supports `@mastra/pg`, `@mastra/libsql`, `@mastra/mysql`, `@mastra/mongodb`, and `@mastra/convex` storage adapters. It uses background agents for managing memory. When no model is set, the default model is `google/gemini-2.5-flash`.
97
+ > **Note:** OM currently only supports `@mastra/pg`, `@mastra/libsql`, `@mastra/mysql`, `@mastra/mongodb`, `@mastra/convex`, and `@mastra/oracledb` storage adapters. It uses background agents for managing memory. When no model is set, the default model is `google/gemini-2.5-flash`.
98
98
 
99
99
  ## Temporal gap markers
100
100
 
@@ -148,6 +148,7 @@ Each vector store page below includes installation instructions, configuration p
148
148
  - [libSQL](https://mastra.ai/reference/vectors/libsql)
149
149
  - [MongoDB](https://mastra.ai/reference/vectors/mongodb)
150
150
  - [OpenSearch](https://mastra.ai/reference/vectors/opensearch)
151
+ - [OracleDB](https://mastra.ai/reference/vectors/oracledb)
151
152
  - [Pinecone](https://mastra.ai/reference/vectors/pinecone)
152
153
  - [PostgreSQL](https://mastra.ai/reference/vectors/pg)
153
154
  - [Qdrant](https://mastra.ai/reference/vectors/qdrant)
@@ -180,7 +181,7 @@ const agent = new Agent({
180
181
  })
181
182
  ```
182
183
 
183
- > **Note:** `scope: 'resource'` is supported by the LibSQL, PostgreSQL, MongoDB, and Upstash storage adapters.
184
+ > **Note:** `scope: 'resource'` is supported by the LibSQL, OracleDB, PostgreSQL, MongoDB, and Upstash storage adapters.
184
185
 
185
186
  ### Metadata filtering
186
187
 
@@ -129,6 +129,7 @@ Resource-scoped working memory requires specific storage adapters that support t
129
129
 
130
130
  - **libSQL** (`@mastra/libsql`)
131
131
  - **PostgreSQL** (`@mastra/pg`)
132
+ - **OracleDB** (`@mastra/oracledb`)
132
133
  - **Upstash** (`@mastra/upstash`)
133
134
  - **MongoDB** (`@mastra/mongodb`)
134
135
 
@@ -186,7 +186,7 @@ When you deploy with Mastra Studio, set **Deployment → Service Name** to a sta
186
186
 
187
187
  ## Performance
188
188
 
189
- > **Info:** MastraPlatformExporter uses batching to optimize network usage. Events are buffered and sent in batches, reducing overhead while maintaining near real-time visibility.
189
+ > **Note:** MastraPlatformExporter uses batching to optimize network usage. Events are buffered and sent in batches, reducing overhead while maintaining near real-time visibility.
190
190
 
191
191
  ### Batching behavior
192
192
 
@@ -6,7 +6,7 @@ The `MastraStorageExporter` persists traces to your configured storage backend,
6
6
 
7
7
  > **Note:** `MastraStorageExporter` was previously called `DefaultExporter`. The original `DefaultExporter` class is still exported from `@mastra/observability` for backward compatibility, but it's deprecated. New code should use `MastraStorageExporter`.
8
8
 
9
- > **Production Observability:** Observability data can quickly overwhelm general-purpose databases in production. For high-traffic applications, route the observability storage domain to [ClickHouse](https://mastra.ai/reference/storage/clickhouse) through [composite storage](https://mastra.ai/reference/storage/composite). See [Production Recommendations](#production-recommendations) for details.
9
+ > **Production Observability:** Observability data can quickly overwhelm general-purpose databases in production. For high-traffic applications, route the observability storage domain to [ClickHouse](https://mastra.ai/integrations/databases/clickhouse) through [composite storage](https://mastra.ai/reference/storage/composite). See [Production Recommendations](#production-recommendations) for details.
10
10
 
11
11
  ## Configuration
12
12
 
@@ -116,24 +116,25 @@ If you set the strategy to `'auto'`, the `MastraStorageExporter` automatically s
116
116
 
117
117
  ### Providers with Observability Support
118
118
 
119
- | Storage Provider | Preferred Strategy | Supported Strategies | Recommended Use |
120
- | ---------------------------------------------------------------- | ------------------ | ------------------------------- | ------------------------------------- |
121
- | **[ClickHouse](https://mastra.ai/reference/storage/clickhouse)** | insert-only | insert-only | Production (high-volume) |
122
- | **[PostgreSQL](https://mastra.ai/reference/storage/postgresql)** | batch-with-updates | batch-with-updates, insert-only | Production (low volume) |
123
- | **[MSSQL](https://mastra.ai/reference/storage/mssql)** | batch-with-updates | batch-with-updates, insert-only | Production (low volume) |
124
- | **[MongoDB](https://mastra.ai/reference/storage/mongodb)** | batch-with-updates | batch-with-updates, insert-only | Production (low volume) |
125
- | **[libSQL](https://mastra.ai/reference/storage/libsql)** | batch-with-updates | batch-with-updates, insert-only | Default storage, good for development |
119
+ | Storage Provider | Preferred Strategy | Supported Strategies | Recommended Use |
120
+ | --------------------------------------------------------------------- | ------------------ | ------------------------------- | ------------------------------------- |
121
+ | **[ClickHouse](https://mastra.ai/integrations/databases/clickhouse)** | insert-only | insert-only | Production (high-volume) |
122
+ | **[PostgreSQL](https://mastra.ai/integrations/databases/postgresql)** | batch-with-updates | batch-with-updates, insert-only | Production (low volume) |
123
+ | **[MSSQL](https://mastra.ai/integrations/databases/mssql)** | batch-with-updates | batch-with-updates, insert-only | Production (low volume) |
124
+ | **[MongoDB](https://mastra.ai/integrations/databases/mongodb)** | batch-with-updates | batch-with-updates, insert-only | Production (low volume) |
125
+ | **[OracleDB](https://mastra.ai/integrations/databases/oracledb)** | batch-with-updates | batch-with-updates, insert-only | Production (low volume) |
126
+ | **[libSQL](https://mastra.ai/integrations/databases/libsql)** | batch-with-updates | batch-with-updates, insert-only | Default storage, good for development |
126
127
 
127
128
  ### Providers without Observability Support
128
129
 
129
130
  The following storage providers **don't support** the observability domain. If you're using one of these providers and need observability, use [composite storage](https://mastra.ai/reference/storage/composite) to route observability data to a supported provider:
130
131
 
131
- - [Convex](https://mastra.ai/reference/storage/convex)
132
- - [DynamoDB](https://mastra.ai/reference/storage/dynamodb)
133
- - [Cloudflare D1](https://mastra.ai/reference/storage/cloudflare-d1)
134
- - [Cloudflare Durable Objects](https://mastra.ai/reference/storage/cloudflare)
135
- - [Upstash](https://mastra.ai/reference/storage/upstash)
136
- - [LanceDB](https://mastra.ai/reference/storage/lance)
132
+ - [Convex](https://mastra.ai/integrations/databases/convex)
133
+ - [DynamoDB](https://mastra.ai/integrations/databases/dynamodb)
134
+ - [Cloudflare D1](https://mastra.ai/integrations/databases/cloudflare-d1)
135
+ - [Cloudflare Durable Objects](https://mastra.ai/integrations/databases/cloudflare-kv)
136
+ - [Upstash](https://mastra.ai/integrations/databases/upstash)
137
+ - [LanceDB](https://mastra.ai/integrations/databases/lancedb)
137
138
 
138
139
  ### Strategy Benefits
139
140
 
@@ -147,7 +148,7 @@ Observability data grows quickly in production environments. A single agent inte
147
148
 
148
149
  ### Recommended: ClickHouse for High-Volume Production
149
150
 
150
- [ClickHouse](https://mastra.ai/reference/storage/clickhouse) is a columnar database designed for high-volume analytics workloads. It's the recommended choice for production observability because:
151
+ [ClickHouse](https://mastra.ai/integrations/databases/clickhouse) is a columnar database designed for high-volume analytics workloads. It's the recommended choice for production observability because:
151
152
 
152
153
  - **Optimized for writes**: Handles millions of inserts per second
153
154
  - **Efficient compression**: Reduces storage costs for trace data
@@ -30,8 +30,8 @@ Exporters send observability data to a destination:
30
30
 
31
31
  Bridges connect Mastra to an existing distributed tracing context:
32
32
 
33
- - [OpenTelemetry bridge](https://mastra.ai/docs/observability/integrations/bridges/otel): Integrate Mastra with an existing OpenTelemetry trace.
34
- - [Datadog bridge](https://mastra.ai/docs/observability/integrations/bridges/datadog): Send Mastra traces to Datadog and its LLM Observability product.
33
+ - [OpenTelemetry bridge](https://mastra.ai/integrations/observability/opentelemetry): Integrate Mastra with an existing OpenTelemetry trace.
34
+ - [Datadog bridge](https://mastra.ai/integrations/observability/datadog): Send Mastra traces to Datadog and its LLM Observability product.
35
35
 
36
36
  ## Processors
37
37
 
@@ -44,4 +44,4 @@ Processors transform or redact spans before export:
44
44
  - [Configuration](https://mastra.ai/docs/observability/overview)
45
45
  - [Tracing](https://mastra.ai/docs/observability/tracing/overview)
46
46
  - [Mastra Storage](https://mastra.ai/docs/observability/integrations/exporters/mastra-storage)
47
- - [OpenTelemetry bridge](https://mastra.ai/docs/observability/integrations/bridges/otel)
47
+ - [OpenTelemetry bridge](https://mastra.ai/integrations/observability/opentelemetry)
@@ -300,4 +300,4 @@ The actor signal is trusted input, so construct it server-side:
300
300
 
301
301
  - [`IFGAProvider` reference](https://mastra.ai/reference/auth/fga)
302
302
  - [Authentication overview](https://mastra.ai/docs/server/auth)
303
- - [WorkOS authentication](https://mastra.ai/docs/server/auth/workos)
303
+ - [WorkOS authentication](https://mastra.ai/integrations/auth/workos)
@@ -171,4 +171,4 @@ SimpleAuth is designed for simplicity, not production security:
171
171
  - No cryptographic verification
172
172
  - All tokens must be known at startup
173
173
 
174
- For production applications, consider using [JWT](https://mastra.ai/docs/server/auth/jwt), [Clerk](https://mastra.ai/docs/server/auth/clerk), [Auth0](https://mastra.ai/docs/server/auth/auth0), or another identity provider.
174
+ For production applications, consider using [JWT](https://mastra.ai/docs/server/auth/jwt), [Clerk](https://mastra.ai/integrations/auth/clerk), [Auth0](https://mastra.ai/integrations/auth/auth0), or another identity provider.
@@ -2,6 +2,8 @@
2
2
 
3
3
  # Workers
4
4
 
5
+ > **Beta:** Breaking changes may occur without a major version bump until the API is stable.
6
+
5
7
  When workers run in separate processes from the API, they communicate over HTTP. The orchestration worker calls the API's step execution endpoint to run workflow steps on the API server. Push-mode PubSub brokers (like Google Cloud Pub/Sub in push mode) can also deliver events directly to the API's event endpoint. This is a distinct integration path from pull-mode workers, which pull events from the broker themselves. Both HTTP endpoints require authentication when an auth provider is configured.
6
8
 
7
9
  ## How it works
@@ -17,6 +17,8 @@ Authentication is optional. If no auth is configured, all routes and Studio are
17
17
 
18
18
  See [Custom API Routes](https://mastra.ai/docs/server/custom-api-routes) for controlling authentication on custom endpoints. Visit the [Studio Auth docs](https://mastra.ai/docs/studio/auth) for more on securing your Studio deployment.
19
19
 
20
+ > **Warning:** The default auth configuration protects `/api/*` and treats `/api`, `/api/auth/*` as public. When you set a custom `server.apiPrefix`, those defaults no longer match and built-in routes fall outside the protected pattern. Update `server.auth.protected` and `server.auth.public` to reference your new prefix.
21
+
20
22
  > **Note:** Authentication for Studio is currently supported by the following providers: Simple Auth, JWT, WorkOS, Better Auth, and Google.
21
23
 
22
24
  ## Available providers
@@ -28,14 +30,14 @@ See [Custom API Routes](https://mastra.ai/docs/server/custom-api-routes) for con
28
30
 
29
31
  ### Third-party integrations
30
32
 
31
- - [Auth0](https://mastra.ai/docs/server/auth/auth0)
32
- - [Better Auth](https://mastra.ai/docs/server/auth/better-auth)
33
- - [Clerk](https://mastra.ai/docs/server/auth/clerk)
34
- - [Firebase](https://mastra.ai/docs/server/auth/firebase)
35
- - [Google](https://mastra.ai/docs/server/auth/google)
36
- - [Okta](https://mastra.ai/docs/server/auth/okta)
37
- - [Supabase](https://mastra.ai/docs/server/auth/supabase)
38
- - [WorkOS](https://mastra.ai/docs/server/auth/workos)
33
+ - [Auth0](https://mastra.ai/integrations/auth/auth0)
34
+ - [Better Auth](https://mastra.ai/integrations/auth/better-auth)
35
+ - [Clerk](https://mastra.ai/integrations/auth/clerk)
36
+ - [Firebase](https://mastra.ai/integrations/auth/firebase)
37
+ - [Google](https://mastra.ai/integrations/auth/google)
38
+ - [Okta](https://mastra.ai/integrations/auth/okta)
39
+ - [Supabase](https://mastra.ai/integrations/auth/supabase)
40
+ - [WorkOS](https://mastra.ai/integrations/auth/workos)
39
41
 
40
42
  ### Advanced
41
43
 
@@ -6,7 +6,7 @@ Create a custom adapter when the prebuilt server adapters (Hono, Express, Fastif
6
6
 
7
7
  A custom adapter translates between Mastra's route definitions and your framework's routing system. You'll implement methods that register middleware, handle requests, and send responses using your framework's APIs.
8
8
 
9
- > **Info:** Use any of these prebuilt server adapters:
9
+ > **Note:** Use any of these prebuilt server adapters:
10
10
  >
11
11
  > - [@mastra/hono](https://mastra.ai/reference/server/hono-adapter)
12
12
  > - [@mastra/express](https://mastra.ai/reference/server/express-adapter)
@@ -35,6 +35,41 @@ curl http://localhost:4111/my-custom-route
35
35
 
36
36
  Each route's handler receives the Hono `Context`. Within the handler you can access the `Mastra` instance to fetch or call agents and workflows.
37
37
 
38
+ ## Schema validation
39
+
40
+ Use [`createRoute()`](https://mastra.ai/reference/server/create-route) in `apiRoutes` to parse and validate path parameters, query parameters, and request bodies with Zod. The schemas also infer the handler parameters and generate OpenAPI metadata.
41
+
42
+ ```typescript
43
+ import { Mastra } from '@mastra/core'
44
+ import { createRoute } from '@mastra/server/server-adapter'
45
+ import { z } from 'zod'
46
+
47
+ const createItemRoute = createRoute({
48
+ method: 'POST',
49
+ path: '/items',
50
+ responseType: 'json',
51
+ bodySchema: z.object({
52
+ name: z.string().min(1),
53
+ }),
54
+ responseSchema: z.object({
55
+ id: z.string(),
56
+ name: z.string(),
57
+ }),
58
+ handler: async ({ name }) => ({
59
+ id: crypto.randomUUID(),
60
+ name,
61
+ }),
62
+ })
63
+
64
+ export const mastra = new Mastra({
65
+ server: {
66
+ apiRoutes: [createItemRoute],
67
+ },
68
+ })
69
+ ```
70
+
71
+ By default, Mastra returns a `400` response when validation fails. The `onValidationError` callback can override the status and response body. Validated values and the `Mastra` server context are passed directly to the handler.
72
+
38
73
  ## Middleware
39
74
 
40
75
  To add route-specific middleware pass a `middleware` array when calling `registerApiRoute()`.