@mastra/mcp-docs-server 1.2.15-alpha.9 → 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 (498) 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 +2 -2
  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/dynamic-workflows.md +1 -1
  52. package/.docs/docs/workflows/overview.md +2 -2
  53. package/.docs/docs/workflows/snapshots.md +12 -10
  54. package/.docs/docs/workflows/time-travel.md +2 -0
  55. package/.docs/docs/workspace/filesystem.md +15 -15
  56. package/.docs/docs/workspace/sandbox.md +17 -17
  57. package/.docs/docs/workspace/search.md +1 -1
  58. package/.docs/guides/agent-frameworks/ai-sdk.md +2 -2
  59. package/.docs/guides/deployment/mastra-workers.md +4 -2
  60. package/.docs/guides/getting-started/quickstart.md +3 -3
  61. package/.docs/guides/guide/signal-provider.md +1 -1
  62. package/.docs/guides/index.md +8 -8
  63. package/.docs/guides/voice/overview.md +55 -106
  64. package/.docs/guides/voice/speech-to-text.md +7 -7
  65. package/.docs/guides/voice/text-to-speech.md +9 -10
  66. package/.docs/{guides/build-your-ui → integrations/agentic-ui}/ai-sdk-ui.md +5 -5
  67. package/.docs/{guides/build-your-ui → integrations/agentic-ui}/assistant-ui.md +1 -1
  68. package/.docs/{guides/build-your-ui/copilotkit/overview.md → integrations/agentic-ui/copilotkit.md} +257 -4
  69. package/.docs/{docs/server → integrations}/auth/auth0.md +1 -1
  70. package/.docs/{docs/server → integrations}/auth/clerk.md +2 -2
  71. package/.docs/{docs/server → integrations}/auth/firebase.md +1 -1
  72. package/.docs/{docs/server → integrations}/auth/okta.md +24 -4
  73. package/.docs/{docs/server → integrations}/auth/supabase.md +2 -2
  74. package/.docs/{docs/server → integrations}/auth/workos.md +1 -1
  75. package/.docs/{docs/browser → integrations/browsers}/agent-browser.md +2 -2
  76. package/.docs/{docs/browser → integrations/browsers}/browser-viewer.md +3 -3
  77. package/.docs/{docs/browser → integrations/browsers}/firecrawl.md +2 -2
  78. package/.docs/{docs/browser → integrations/browsers}/stagehand.md +1 -1
  79. package/.docs/{docs/capabilities → integrations}/channels/discord.md +2 -2
  80. package/.docs/integrations/channels/github.md +103 -0
  81. package/.docs/{docs/capabilities → integrations}/channels/imessage.md +12 -4
  82. package/.docs/{docs/capabilities → integrations}/channels/slack.md +4 -4
  83. package/.docs/{docs/capabilities → integrations}/channels/teams.md +2 -2
  84. package/.docs/{docs/capabilities → integrations}/channels/telegram.md +2 -2
  85. package/.docs/{docs/capabilities → integrations}/channels/whatsapp.md +2 -2
  86. package/.docs/{reference/storage/dsql.md → integrations/databases/aurora-dsql.md} +1 -1
  87. package/.docs/{reference/storage → integrations/databases}/clickhouse.md +2 -2
  88. package/.docs/{reference/storage → integrations/databases}/cloudflare-d1.md +1 -1
  89. package/.docs/{reference/storage/cloudflare.md → integrations/databases/cloudflare-kv.md} +1 -1
  90. package/.docs/{reference/storage → integrations/databases}/convex.md +1 -1
  91. package/.docs/{reference/storage → integrations/databases}/duckdb.md +5 -5
  92. package/.docs/{reference/storage → integrations/databases}/dynamodb.md +1 -1
  93. package/.docs/{reference/storage/lance.md → integrations/databases/lancedb.md} +1 -1
  94. package/.docs/{reference/storage → integrations/databases}/libsql.md +2 -2
  95. package/.docs/{reference/storage → integrations/databases}/mongodb.md +1 -1
  96. package/.docs/{reference/storage → integrations/databases}/mssql.md +1 -1
  97. package/.docs/integrations/databases/neon.md +220 -0
  98. package/.docs/integrations/databases/oracledb.md +239 -0
  99. package/.docs/{reference/storage → integrations/databases}/postgresql.md +1 -1
  100. package/.docs/{reference/storage → integrations/databases}/redis.md +1 -1
  101. package/.docs/{reference/storage → integrations/databases}/spanner.md +1 -1
  102. package/.docs/{reference/storage → integrations/databases}/upstash.md +1 -1
  103. package/.docs/{guides/deployment → integrations/deploy}/amazon-ec2.md +1 -1
  104. package/.docs/{guides/deployment → integrations/deploy}/aws-bedrock-agentcore.md +1 -1
  105. package/.docs/{guides/deployment → integrations/deploy}/aws-lambda.md +2 -2
  106. package/.docs/{guides/deployment → integrations/deploy}/azure-app-services.md +2 -2
  107. package/.docs/{guides/deployment → integrations/deploy}/cloudflare.md +2 -2
  108. package/.docs/{guides/deployment → integrations/deploy}/digital-ocean.md +3 -3
  109. package/.docs/{guides/deployment → integrations/deploy}/kubernetes.md +2 -2
  110. package/.docs/{guides/deployment → integrations/deploy}/netlify.md +3 -3
  111. package/.docs/{guides/deployment → integrations/deploy}/vercel.md +3 -3
  112. package/.docs/{reference/workspace/s3-filesystem.md → integrations/file-storage/amazon-s3.md} +5 -5
  113. package/.docs/{reference/workspace/archil-filesystem.md → integrations/file-storage/archil.md} +3 -3
  114. package/.docs/{reference/workspace/azure-blob-filesystem.md → integrations/file-storage/azure-blob.md} +2 -2
  115. package/.docs/{reference/workspace/gcs-filesystem.md → integrations/file-storage/google-cloud-storage.md} +5 -5
  116. package/.docs/{reference/workspace/mesa-filesystem.md → integrations/file-storage/mesa.md} +2 -2
  117. package/.docs/{reference/workspace/files-sdk-filesystem.md → integrations/file-storage/vercel-files.md} +5 -5
  118. package/.docs/{guides/getting-started → integrations/frameworks}/astro.md +1 -1
  119. package/.docs/{guides/getting-started → integrations/frameworks}/electron.md +3 -3
  120. package/.docs/{guides/getting-started → integrations/frameworks}/next-js.md +2 -2
  121. package/.docs/{guides/getting-started → integrations/frameworks}/nuxt.md +1 -1
  122. package/.docs/{guides/getting-started → integrations/frameworks}/sveltekit.md +1 -1
  123. package/.docs/{guides/getting-started → integrations/frameworks}/vite-react.md +1 -1
  124. package/.docs/{docs/observability/integrations/exporters → integrations/observability}/arize.md +1 -1
  125. package/.docs/{docs/observability/integrations/exporters → integrations/observability}/arthur.md +1 -1
  126. package/.docs/{docs/observability/integrations/exporters → integrations/observability}/braintrust.md +1 -1
  127. package/.docs/{docs/observability/integrations/exporters → integrations/observability}/confident-ai.md +1 -1
  128. package/.docs/integrations/observability/datadog.md +538 -0
  129. package/.docs/{docs/observability/integrations/exporters → integrations/observability}/laminar.md +1 -1
  130. package/.docs/{docs/observability/integrations/exporters → integrations/observability}/langfuse.md +1 -1
  131. package/.docs/{docs/observability/integrations/exporters → integrations/observability}/langsmith.md +1 -1
  132. package/.docs/{docs/observability/integrations/exporters/otel.md → integrations/observability/opentelemetry.md} +278 -46
  133. package/.docs/{docs/observability/integrations/exporters → integrations/observability}/posthog.md +1 -1
  134. package/.docs/{docs/observability/integrations/exporters → integrations/observability}/sentry.md +1 -1
  135. package/.docs/{reference/workspace/apple-container-sandbox.md → integrations/sandboxes/apple-container.md} +1 -1
  136. package/.docs/{reference/workspace/daytona-sandbox.md → integrations/sandboxes/daytona.md} +23 -2
  137. package/.docs/{reference/workspace/docker-sandbox.md → integrations/sandboxes/docker.md} +1 -1
  138. package/.docs/{reference/workspace/e2b-sandbox.md → integrations/sandboxes/e2b.md} +3 -3
  139. package/.docs/{reference/workspace/modal-sandbox.md → integrations/sandboxes/modal.md} +2 -2
  140. package/.docs/{reference/workspace/railway-sandbox.md → integrations/sandboxes/railway.md} +8 -0
  141. package/.docs/{reference/workspace/vercel-sandbox.md → integrations/sandboxes/vercel.md} +141 -12
  142. package/.docs/{reference → integrations}/tools/brightdata.md +1 -1
  143. package/.docs/{reference → integrations}/tools/perplexity.md +1 -1
  144. package/.docs/{reference → integrations}/tools/tavily.md +1 -1
  145. package/.docs/{reference → integrations}/voice/aws-nova-sonic.md +1 -1
  146. package/.docs/{reference → integrations}/voice/cloudflare.md +3 -3
  147. package/.docs/{reference/voice/google-gemini-live.md → integrations/voice/google.md} +305 -30
  148. package/.docs/{reference/voice/inworld-realtime.md → integrations/voice/inworld.md} +163 -25
  149. package/.docs/{reference → integrations}/voice/livekit.md +437 -34
  150. package/.docs/{reference/voice/openai-realtime.md → integrations/voice/openai.md} +117 -20
  151. package/.docs/integrations.md +147 -0
  152. package/.docs/models/embeddings.md +3 -3
  153. package/.docs/models/environment-variables.md +1 -0
  154. package/.docs/models/gateways/custom-gateways.md +4 -0
  155. package/.docs/models/gateways/neon.md +1 -1
  156. package/.docs/models/gateways/netlify.md +1 -1
  157. package/.docs/models/gateways/openrouter.md +9 -3
  158. package/.docs/models/gateways/vercel.md +7 -4
  159. package/.docs/models/index.md +3 -3
  160. package/.docs/models/providers/302ai.md +1 -1
  161. package/.docs/models/providers/abacus.md +1 -1
  162. package/.docs/models/providers/abliteration-ai.md +1 -1
  163. package/.docs/models/providers/agentrouter.md +1 -1
  164. package/.docs/models/providers/ai-router.md +1 -1
  165. package/.docs/models/providers/aiand.md +1 -1
  166. package/.docs/models/providers/aki-io.md +1 -1
  167. package/.docs/models/providers/alibaba-cn.md +1 -1
  168. package/.docs/models/providers/alibaba-coding-plan-cn.md +1 -1
  169. package/.docs/models/providers/alibaba-coding-plan.md +1 -1
  170. package/.docs/models/providers/alibaba-token-plan-cn.md +1 -1
  171. package/.docs/models/providers/alibaba-token-plan.md +1 -1
  172. package/.docs/models/providers/alibaba.md +7 -5
  173. package/.docs/models/providers/ambient.md +2 -2
  174. package/.docs/models/providers/anyapi.md +1 -1
  175. package/.docs/models/providers/atomic-chat.md +1 -1
  176. package/.docs/models/providers/auriko.md +1 -1
  177. package/.docs/models/providers/bailing.md +1 -1
  178. package/.docs/models/providers/baseten.md +2 -2
  179. package/.docs/models/providers/berget.md +1 -1
  180. package/.docs/models/providers/blueclaw.md +1 -1
  181. package/.docs/models/providers/chutes.md +1 -1
  182. package/.docs/models/providers/clarifai.md +1 -1
  183. package/.docs/models/providers/claudinio.md +1 -1
  184. package/.docs/models/providers/cline-pass.md +1 -1
  185. package/.docs/models/providers/cloudferro-sherlock.md +1 -1
  186. package/.docs/models/providers/cloudflare-workers-ai.md +1 -1
  187. package/.docs/models/providers/coralbricks.md +75 -0
  188. package/.docs/models/providers/cortecs.md +3 -5
  189. package/.docs/models/providers/crof.md +1 -1
  190. package/.docs/models/providers/crossmodel.md +2 -3
  191. package/.docs/models/providers/daoxe.md +1 -1
  192. package/.docs/models/providers/databricks.md +1 -1
  193. package/.docs/models/providers/deepinfra.md +6 -5
  194. package/.docs/models/providers/digitalocean.md +5 -5
  195. package/.docs/models/providers/dinference.md +1 -1
  196. package/.docs/models/providers/drun.md +1 -1
  197. package/.docs/models/providers/ebcloud.md +1 -1
  198. package/.docs/models/providers/empiriolabs.md +3 -2
  199. package/.docs/models/providers/evroc.md +3 -4
  200. package/.docs/models/providers/fastrouter.md +1 -1
  201. package/.docs/models/providers/firepass.md +1 -1
  202. package/.docs/models/providers/fireworks-ai.md +1 -1
  203. package/.docs/models/providers/firmware.md +1 -1
  204. package/.docs/models/providers/freemodel.md +1 -1
  205. package/.docs/models/providers/friendli.md +1 -1
  206. package/.docs/models/providers/frogbot.md +1 -1
  207. package/.docs/models/providers/github-models.md +1 -1
  208. package/.docs/models/providers/gmicloud.md +1 -1
  209. package/.docs/models/providers/google.md +1 -1
  210. package/.docs/models/providers/greenpt.md +1 -1
  211. package/.docs/models/providers/helicone.md +1 -1
  212. package/.docs/models/providers/hetzner.md +8 -5
  213. package/.docs/models/providers/hpc-ai.md +1 -1
  214. package/.docs/models/providers/huggingface.md +1 -1
  215. package/.docs/models/providers/hyper.md +7 -7
  216. package/.docs/models/providers/iflowcn.md +1 -1
  217. package/.docs/models/providers/impossibl.md +1 -1
  218. package/.docs/models/providers/inception.md +1 -1
  219. package/.docs/models/providers/inceptron.md +1 -1
  220. package/.docs/models/providers/inference.md +1 -1
  221. package/.docs/models/providers/inferx.md +1 -1
  222. package/.docs/models/providers/infomaniak.md +1 -1
  223. package/.docs/models/providers/io-intelligence.md +1 -1
  224. package/.docs/models/providers/io-net.md +1 -1
  225. package/.docs/models/providers/jiekou.md +1 -1
  226. package/.docs/models/providers/kenari.md +1 -1
  227. package/.docs/models/providers/kilo.md +16 -11
  228. package/.docs/models/providers/kimi-for-coding.md +1 -1
  229. package/.docs/models/providers/kiro.md +1 -1
  230. package/.docs/models/providers/kuae-cloud-coding-plan.md +1 -1
  231. package/.docs/models/providers/lilac.md +1 -1
  232. package/.docs/models/providers/llama.md +1 -1
  233. package/.docs/models/providers/llmgateway.md +2 -7
  234. package/.docs/models/providers/llmtr.md +1 -1
  235. package/.docs/models/providers/lmstudio.md +1 -1
  236. package/.docs/models/providers/longcat.md +1 -1
  237. package/.docs/models/providers/lucidquery.md +1 -1
  238. package/.docs/models/providers/lynkr.md +1 -1
  239. package/.docs/models/providers/meganova.md +1 -1
  240. package/.docs/models/providers/meta.md +1 -1
  241. package/.docs/models/providers/minimax-cn-coding-plan.md +1 -1
  242. package/.docs/models/providers/minimax-cn.md +1 -1
  243. package/.docs/models/providers/minimax-coding-plan.md +1 -1
  244. package/.docs/models/providers/minimax.md +1 -1
  245. package/.docs/models/providers/mixlayer.md +1 -1
  246. package/.docs/models/providers/moark.md +1 -1
  247. package/.docs/models/providers/modal.md +1 -1
  248. package/.docs/models/providers/model-oracle-ai.md +1 -1
  249. package/.docs/models/providers/modelis.md +1 -1
  250. package/.docs/models/providers/modelscope.md +1 -1
  251. package/.docs/models/providers/moonshotai-cn.md +1 -1
  252. package/.docs/models/providers/moonshotai.md +1 -1
  253. package/.docs/models/providers/morph.md +1 -1
  254. package/.docs/models/providers/nano-gpt.md +8 -4
  255. package/.docs/models/providers/nearai.md +1 -1
  256. package/.docs/models/providers/nebius.md +3 -2
  257. package/.docs/models/providers/neuralwatt.md +1 -1
  258. package/.docs/models/providers/nova.md +1 -1
  259. package/.docs/models/providers/novita-ai.md +1 -1
  260. package/.docs/models/providers/nvidia.md +3 -2
  261. package/.docs/models/providers/ofox.md +4 -3
  262. package/.docs/models/providers/ollama-cloud.md +1 -1
  263. package/.docs/models/providers/opencode-go.md +1 -1
  264. package/.docs/models/providers/opencode.md +65 -64
  265. package/.docs/models/providers/orcarouter.md +1 -1
  266. package/.docs/models/providers/ovhcloud.md +1 -1
  267. package/.docs/models/providers/perplexity-agent.md +1 -1
  268. package/.docs/models/providers/pioneer.md +1 -1
  269. package/.docs/models/providers/poe.md +1 -1
  270. package/.docs/models/providers/poolside.md +1 -1
  271. package/.docs/models/providers/privatemode-ai.md +12 -10
  272. package/.docs/models/providers/qihang-ai.md +1 -1
  273. package/.docs/models/providers/qiniu-ai.md +1 -1
  274. package/.docs/models/providers/regolo-ai.md +26 -21
  275. package/.docs/models/providers/requesty.md +3 -3
  276. package/.docs/models/providers/routing-run.md +1 -1
  277. package/.docs/models/providers/sakana.md +1 -1
  278. package/.docs/models/providers/sarvam.md +1 -1
  279. package/.docs/models/providers/scaleway.md +1 -1
  280. package/.docs/models/providers/scx.md +1 -1
  281. package/.docs/models/providers/siliconflow-cn.md +1 -1
  282. package/.docs/models/providers/siliconflow.md +1 -1
  283. package/.docs/models/providers/snowflake-cortex.md +6 -2
  284. package/.docs/models/providers/stackit.md +1 -1
  285. package/.docs/models/providers/stepfun-ai-step-plan.md +1 -1
  286. package/.docs/models/providers/stepfun-ai.md +1 -1
  287. package/.docs/models/providers/stepfun-step-plan.md +1 -1
  288. package/.docs/models/providers/stepfun.md +1 -1
  289. package/.docs/models/providers/subconscious.md +1 -1
  290. package/.docs/models/providers/submodel.md +1 -1
  291. package/.docs/models/providers/synthetic.md +1 -1
  292. package/.docs/models/providers/tencent-coding-plan.md +1 -1
  293. package/.docs/models/providers/tencent-token-plan.md +1 -1
  294. package/.docs/models/providers/tencent-tokenhub.md +1 -1
  295. package/.docs/models/providers/tensorx.md +1 -1
  296. package/.docs/models/providers/the-grid-ai.md +1 -1
  297. package/.docs/models/providers/thinkingmachines.md +1 -1
  298. package/.docs/models/providers/tinfoil.md +2 -2
  299. package/.docs/models/providers/togetherai.md +1 -1
  300. package/.docs/models/providers/trustedrouter.md +1 -1
  301. package/.docs/models/providers/umans-ai-coding-plan.md +1 -1
  302. package/.docs/models/providers/umans-ai.md +1 -1
  303. package/.docs/models/providers/unorouter.md +1 -1
  304. package/.docs/models/providers/upstage.md +1 -1
  305. package/.docs/models/providers/venice.md +1 -1
  306. package/.docs/models/providers/vivgrid.md +1 -1
  307. package/.docs/models/providers/vultr.md +1 -1
  308. package/.docs/models/providers/wafer.ai.md +1 -1
  309. package/.docs/models/providers/wandb.md +3 -2
  310. package/.docs/models/providers/xiaomi-token-plan-ams.md +1 -1
  311. package/.docs/models/providers/xiaomi-token-plan-cn.md +1 -1
  312. package/.docs/models/providers/xiaomi-token-plan-sgp.md +1 -1
  313. package/.docs/models/providers/xiaomi.md +1 -1
  314. package/.docs/models/providers/xpersona.md +1 -1
  315. package/.docs/models/providers/zai-coding-plan.md +1 -1
  316. package/.docs/models/providers/zai.md +1 -1
  317. package/.docs/models/providers/zeldoc.md +8 -8
  318. package/.docs/models/providers/zenifra.md +1 -1
  319. package/.docs/models/providers/zenmux.md +1 -16
  320. package/.docs/models/providers/zhipuai-coding-plan.md +1 -1
  321. package/.docs/models/providers/zhipuai.md +1 -1
  322. package/.docs/models/providers.md +1 -0
  323. package/.docs/reference/agent-controller/agent-controller-class.md +35 -4
  324. package/.docs/reference/agent-controller/session.md +5 -3
  325. package/.docs/reference/agents/channels.md +2 -2
  326. package/.docs/reference/agents/durable-agent.md +2 -0
  327. package/.docs/reference/agents/generateLegacy.md +2 -2
  328. package/.docs/reference/agents/getDefaultOptions.md +1 -1
  329. package/.docs/reference/agents/getDefaultStreamOptions.md +1 -1
  330. package/.docs/reference/agents/inngest-agent.md +3 -1
  331. package/.docs/reference/agents/network.md +1 -1
  332. package/.docs/reference/ai-sdk/handle-network-stream.md +1 -1
  333. package/.docs/reference/ai-sdk/network-route.md +1 -1
  334. package/.docs/reference/auth/auth0.md +1 -1
  335. package/.docs/reference/auth/better-auth.md +1 -1
  336. package/.docs/reference/auth/clerk.md +1 -1
  337. package/.docs/reference/auth/firebase.md +1 -1
  338. package/.docs/reference/auth/google.md +1 -1
  339. package/.docs/reference/auth/okta.md +5 -1
  340. package/.docs/reference/auth/supabase.md +1 -1
  341. package/.docs/reference/auth/workos.md +1 -1
  342. package/.docs/reference/browser/agent-browser.md +2 -2
  343. package/.docs/reference/browser/browser-viewer.md +1 -1
  344. package/.docs/reference/browser/firecrawl-browser.md +1 -1
  345. package/.docs/reference/browser/mastra-browser.md +1 -1
  346. package/.docs/reference/browser/stagehand-browser.md +2 -2
  347. package/.docs/reference/channels/channel-provider.md +1 -1
  348. package/.docs/reference/channels/slack-provider.md +2 -2
  349. package/.docs/reference/cli/mastra.md +6 -6
  350. package/.docs/reference/client-js/agents.md +2 -1
  351. package/.docs/reference/client-js/workflows.md +3 -3
  352. package/.docs/reference/code-sdk/mount-agent-controller.md +1 -1
  353. package/.docs/reference/configuration.md +21 -27
  354. package/.docs/reference/core/addDynamicWorkflow.md +2 -2
  355. package/.docs/reference/core/addDynamicWorkflows.md +2 -2
  356. package/.docs/reference/core/getStorage.md +1 -1
  357. package/.docs/reference/core/getVector.md +2 -2
  358. package/.docs/reference/core/listVectors.md +2 -2
  359. package/.docs/reference/core/setStorage.md +1 -1
  360. package/.docs/reference/datasets/startExperiment.md +8 -0
  361. package/.docs/reference/file-based-agents/config.md +2 -0
  362. package/.docs/reference/file-based-agents/instructions.md +2 -0
  363. package/.docs/reference/file-based-agents/logger.md +2 -0
  364. package/.docs/reference/file-based-agents/memory.md +2 -0
  365. package/.docs/reference/file-based-agents/observability.md +2 -0
  366. package/.docs/reference/file-based-agents/processors.md +2 -0
  367. package/.docs/reference/file-based-agents/schedules.md +2 -0
  368. package/.docs/reference/file-based-agents/scorers.md +2 -0
  369. package/.docs/reference/file-based-agents/server.md +2 -0
  370. package/.docs/reference/file-based-agents/skills.md +2 -0
  371. package/.docs/reference/file-based-agents/storage.md +3 -1
  372. package/.docs/reference/file-based-agents/studio.md +3 -1
  373. package/.docs/reference/file-based-agents/subagents.md +2 -0
  374. package/.docs/reference/file-based-agents/tools.md +2 -0
  375. package/.docs/reference/file-based-agents/workflows.md +2 -0
  376. package/.docs/reference/file-based-agents/workspace.md +2 -0
  377. package/.docs/reference/index.md +29 -54
  378. package/.docs/{guides/getting-started → reference}/manual-install.md +2 -2
  379. package/.docs/{guides → reference}/migrations/ai-sdk-v4-to-v5.md +1 -1
  380. package/.docs/{guides → reference}/migrations/mastra-cloud.md +2 -2
  381. package/.docs/{guides → reference}/migrations/upgrade-to-v1/cli.md +1 -1
  382. package/.docs/{guides → reference}/migrations/upgrade-to-v1/memory.md +1 -1
  383. package/.docs/{guides → reference}/migrations/upgrade-to-v1/overview.md +41 -41
  384. package/.docs/{guides → reference}/migrations/upgrade-to-v1/tools.md +1 -1
  385. package/.docs/{guides → reference}/migrations/upgrade-to-v1/tracing.md +10 -10
  386. package/.docs/reference/observability/tracing/bridges/datadog.md +2 -2
  387. package/.docs/reference/observability/tracing/bridges/otel.md +2 -2
  388. package/.docs/reference/observability/tracing/exporters/arize.md +1 -1
  389. package/.docs/reference/observability/tracing/exporters/arthur.md +1 -1
  390. package/.docs/reference/observability/tracing/exporters/confident-ai.md +1 -1
  391. package/.docs/reference/observability/tracing/exporters/datadog.md +1 -1
  392. package/.docs/reference/observability/tracing/exporters/mastra-platform-exporter.md +12 -0
  393. package/.docs/reference/observability/tracing/exporters/otel.md +2 -2
  394. package/.docs/reference/processors/pii-detector.md +2 -0
  395. package/.docs/reference/processors/prompt-injection-detector.md +2 -0
  396. package/.docs/reference/processors/regex-filter-processor.md +20 -0
  397. package/.docs/reference/processors/response-cache.md +2 -0
  398. package/.docs/reference/processors/tool-search-processor.md +33 -1
  399. package/.docs/reference/pubsub/lease-provider.md +1 -1
  400. package/.docs/{guides → reference}/rag/chunking-and-embedding.md +16 -19
  401. package/.docs/reference/rag/database-config.md +1 -1
  402. package/.docs/{guides/rag/graph-rag.md → reference/rag/graph-rag-guide.md} +1 -1
  403. package/.docs/reference/rag/metadata-filters.md +13 -4
  404. package/.docs/{guides → reference}/rag/overview.md +2 -2
  405. package/.docs/{guides → reference}/rag/retrieval.md +18 -1
  406. package/.docs/{guides → reference}/rag/vector-databases.md +42 -1
  407. package/.docs/reference/schedules/overview.md +2 -0
  408. package/.docs/reference/server/create-route.md +27 -1
  409. package/.docs/reference/server/register-api-route.md +2 -0
  410. package/.docs/reference/signals/create-notification-inbox-tool.md +2 -0
  411. package/.docs/reference/signals/signal-provider.md +2 -0
  412. package/.docs/reference/signals/task-signal-provider.md +2 -0
  413. package/.docs/reference/signals/webhook-signal-provider.md +2 -0
  414. package/.docs/reference/storage/composite.md +4 -4
  415. package/.docs/reference/storage/retention.md +4 -4
  416. package/.docs/reference/streaming/ChunkType.md +3 -3
  417. package/.docs/reference/streaming/agents/stream.md +1 -1
  418. package/.docs/reference/streaming/agents/streamLegacy.md +3 -3
  419. package/.docs/reference/streaming/agents/streamUntilIdle.md +1 -1
  420. package/.docs/reference/tools/create-code-mode.md +3 -1
  421. package/.docs/reference/tools/isolated-vm-transport.md +1 -1
  422. package/.docs/reference/tools/mcp-client.md +51 -0
  423. package/.docs/reference/tools/mcp-server.md +1 -1
  424. package/.docs/reference/tools/quickjs-transport.md +92 -0
  425. package/.docs/reference/vectors/chroma.md +1 -1
  426. package/.docs/reference/vectors/convex.md +2 -2
  427. package/.docs/reference/vectors/oracledb.md +347 -0
  428. package/.docs/reference/workers/overview.md +10 -8
  429. package/.docs/reference/workflows/dynamic-workflow-definition.md +3 -1
  430. package/.docs/reference/workflows/run-methods/timeTravel.md +1 -0
  431. package/.docs/reference/workflows/workflow.md +18 -0
  432. package/.docs/reference/workspace/local-sandbox.md +1 -1
  433. package/.docs/reference/workspace/platform-filesystem.md +3 -3
  434. package/.docs/reference/workspace/platform-sandbox.md +11 -3
  435. package/.docs/reference/workspace/process-manager.md +3 -3
  436. package/.docs/reference/workspace/sandbox.md +10 -0
  437. package/CHANGELOG.md +90 -0
  438. package/dist/index.js +1 -1
  439. package/dist/{src-BZcgzbk9.js → src-D-W-bx5t.js} +2 -2
  440. package/dist/{src-BZcgzbk9.js.map → src-D-W-bx5t.js.map} +1 -1
  441. package/dist/stdio.js +1 -1
  442. package/package.json +6 -6
  443. package/.docs/docs/capabilities/channels/other-adapters.md +0 -68
  444. package/.docs/docs/observability/integrations/bridges/datadog.md +0 -219
  445. package/.docs/docs/observability/integrations/bridges/otel.md +0 -234
  446. package/.docs/docs/observability/integrations/exporters/datadog.md +0 -321
  447. package/.docs/guides/build-your-ui/copilotkit/channels.md +0 -86
  448. package/.docs/guides/build-your-ui/copilotkit/generative-ui.md +0 -174
  449. package/.docs/guides/guide/chef-michel.md +0 -211
  450. package/.docs/guides/guide/publishing-mcp-server.md +0 -137
  451. package/.docs/guides/guide/slack-assistant.md +0 -193
  452. package/.docs/guides/guide/stock-agent.md +0 -132
  453. package/.docs/guides/guide/web-search.md +0 -322
  454. package/.docs/guides/guide/whatsapp-chat-bot.md +0 -407
  455. package/.docs/guides/voice/realtime-voice.md +0 -430
  456. package/.docs/reference/voice/google.md +0 -290
  457. package/.docs/reference/voice/inworld.md +0 -137
  458. package/.docs/reference/voice/openai.md +0 -96
  459. package/.docs/reference/voice/playai.md +0 -82
  460. package/.docs/reference/workspace/vercel-serverless.md +0 -128
  461. /package/.docs/{guides/concepts → docs/guides}/multi-agent-systems.md +0 -0
  462. /package/.docs/{guides/concepts → docs/guides}/streaming.md +0 -0
  463. /package/.docs/{guides/build-your-ui → integrations/agentic-ui}/openui.md +0 -0
  464. /package/.docs/{docs/server → integrations}/auth/better-auth.md +0 -0
  465. /package/.docs/{docs/server → integrations}/auth/google.md +0 -0
  466. /package/.docs/{guides/deployment → integrations/deploy}/inngest.md +0 -0
  467. /package/.docs/{guides/deployment → integrations/deploy}/temporal.md +0 -0
  468. /package/.docs/{reference/workspace/agentfs-filesystem.md → integrations/file-storage/agentfs.md} +0 -0
  469. /package/.docs/{reference/workspace/google-drive-filesystem.md → integrations/file-storage/google-drive.md} +0 -0
  470. /package/.docs/{guides/getting-started → integrations/frameworks}/express.md +0 -0
  471. /package/.docs/{guides/getting-started → integrations/frameworks}/hono.md +0 -0
  472. /package/.docs/{guides/getting-started → integrations/frameworks}/nestjs.md +0 -0
  473. /package/.docs/{reference/workspace/agentcore-runtime-sandbox.md → integrations/sandboxes/agentcore.md} +0 -0
  474. /package/.docs/{reference/workspace/blaxel-sandbox.md → integrations/sandboxes/blaxel.md} +0 -0
  475. /package/.docs/{guides/guide → integrations/tools}/firecrawl.md +0 -0
  476. /package/.docs/{reference → integrations}/voice/azure.md +0 -0
  477. /package/.docs/{reference → integrations}/voice/deepgram.md +0 -0
  478. /package/.docs/{reference → integrations}/voice/elevenlabs.md +0 -0
  479. /package/.docs/{reference → integrations}/voice/mistral.md +0 -0
  480. /package/.docs/{reference → integrations}/voice/murf.md +0 -0
  481. /package/.docs/{reference → integrations}/voice/sarvam.md +0 -0
  482. /package/.docs/{reference → integrations}/voice/speechify.md +0 -0
  483. /package/.docs/{reference/voice/xai-realtime.md → integrations/voice/xai.md} +0 -0
  484. /package/.docs/{guides → reference}/migrations/agentnetwork.md +0 -0
  485. /package/.docs/{guides → reference}/migrations/network-to-supervisor.md +0 -0
  486. /package/.docs/{guides → reference}/migrations/upgrade-to-v1/agent.md +0 -0
  487. /package/.docs/{guides → reference}/migrations/upgrade-to-v1/client.md +0 -0
  488. /package/.docs/{guides → reference}/migrations/upgrade-to-v1/deployment.md +0 -0
  489. /package/.docs/{guides → reference}/migrations/upgrade-to-v1/evals.md +0 -0
  490. /package/.docs/{guides → reference}/migrations/upgrade-to-v1/mastra.md +0 -0
  491. /package/.docs/{guides → reference}/migrations/upgrade-to-v1/mcp.md +0 -0
  492. /package/.docs/{guides → reference}/migrations/upgrade-to-v1/processors.md +0 -0
  493. /package/.docs/{guides → reference}/migrations/upgrade-to-v1/rag.md +0 -0
  494. /package/.docs/{guides → reference}/migrations/upgrade-to-v1/storage.md +0 -0
  495. /package/.docs/{guides → reference}/migrations/upgrade-to-v1/vectors.md +0 -0
  496. /package/.docs/{guides → reference}/migrations/upgrade-to-v1/voice.md +0 -0
  497. /package/.docs/{guides → reference}/migrations/upgrade-to-v1/workflows.md +0 -0
  498. /package/.docs/{guides → reference}/migrations/vnext-to-standard-apis.md +0 -0
@@ -2,7 +2,7 @@
2
2
 
3
3
  # IsolatedVmCodeModeTransport
4
4
 
5
- > **Beta:** This feature is in beta. Breaking changes may occur without a major version bump until the API is stable.
5
+ > **Beta:** Breaking changes may occur without a major version bump until the API is stable.
6
6
 
7
7
  The `IsolatedVmCodeModeTransport` class runs [Code mode](https://mastra.ai/docs/agents/code-mode) programs in an in-process V8 isolate, backed by [isolated-vm](https://github.com/laverdet/isolated-vm). The isolate is the execution boundary, so no workspace sandbox is required: the program has no filesystem, network, process, or module access. Its only capabilities are the `external_*` functions, which call back into the real tools on the host.
8
8
 
@@ -244,6 +244,57 @@ const res = await agent.stream(prompt, {
244
244
  })
245
245
  ```
246
246
 
247
+ ### `listToolDefinitions()`
248
+
249
+ Returns every server's tools as plain, serializable definitions, grouped by server name and keyed by the server's own tool name (without the `serverName_toolName` namespacing that `listTools()` applies).
250
+
251
+ Unlike `listTools()`, the result contains no functions or references to a live client, so it can be passed through `JSON.stringify` and cached in Redis, a database, or a build artifact. Each definition holds the data from the MCP `tools/list` response (name, description, input schema, output schema, annotations, and `_meta`), plus the server name, version, and instructions captured at discovery time.
252
+
253
+ ```typescript
254
+ const definitions = await mcp.listToolDefinitions()
255
+
256
+ await cache.set('mcp-tools', JSON.stringify(definitions))
257
+ ```
258
+
259
+ ### `listToolDefinitionsWithErrors()`
260
+
261
+ Like `listToolDefinitions()`, but also returns per-server errors for servers that failed to connect. Use this when caching a catalog, so you don't persist a partial manifest that omits a server that was down at discovery time.
262
+
263
+ ```typescript
264
+ const { definitions, errors } = await mcp.listToolDefinitionsWithErrors()
265
+
266
+ if (Object.keys(errors).length === 0) {
267
+ await cache.set('mcp-tools', JSON.stringify(definitions))
268
+ }
269
+ ```
270
+
271
+ ### `toolFromDefinition()`
272
+
273
+ Rebuilds a single executable tool from a cached definition. No connection is opened here. The client connects lazily, the first time the tool is executed.
274
+
275
+ The returned tool behaves exactly like one from `listTools()`, with the same strict-mode metadata, approval policy, structured content handling, tool error handling, and reconnect behavior.
276
+
277
+ ```typescript
278
+ const definitions = JSON.parse(await cache.get('mcp-tools'))
279
+
280
+ const tool = await mcp.toolFromDefinition({
281
+ serverName: 'weather',
282
+ definition: definitions.weather.getForecast,
283
+ })
284
+ ```
285
+
286
+ ### `toolsFromDefinitions()`
287
+
288
+ Rebuilds an entire cached catalog into a namespaced tool map, without connecting. This is the cached counterpart to `listTools()`. It produces the same `serverName_toolName` keys, so you can reconstruct an agent's tool map on a cold start, and connections only open for the servers whose tools are actually called.
289
+
290
+ Servers present in the catalog but no longer configured on the client are skipped, so a stale cached manifest degrades gracefully.
291
+
292
+ ```typescript
293
+ const definitions = JSON.parse(await cache.get('mcp-tools'))
294
+
295
+ new Agent({ id: 'agent', tools: await mcp.toolsFromDefinitions({ definitions }) })
296
+ ```
297
+
247
298
  ### `getServerInstructions()`
248
299
 
249
300
  Returns the instructions currently known for each configured MCP server. Servers that haven't connected yet, or don't advertise instructions, return `undefined`.
@@ -929,7 +929,7 @@ Notification methods (`resources.notifyListChanged()`, `prompts.notifyListChange
929
929
 
930
930
  ## Examples
931
931
 
932
- For practical examples of setting up and deploying an MCPServer, see the [Publishing an MCP Server guide](https://mastra.ai/guides/guide/publishing-mcp-server).
932
+ For a practical example of packaging a stdio server, see [Publish a stdio server package](https://mastra.ai/docs/mcp/overview).
933
933
 
934
934
  The example at the beginning of this page also demonstrates how to instantiate `MCPServer` with both tools and agents.
935
935
 
@@ -0,0 +1,92 @@
1
+ > Discover all available pages from the documentation index: https://mastra.ai/llms.txt
2
+
3
+ # QuickJsCodeModeTransport
4
+
5
+ > **Beta:** Breaking changes may occur without a major version bump until the API is stable.
6
+
7
+ The `QuickJsCodeModeTransport` class runs [Code mode](https://mastra.ai/docs/agents/code-mode) programs in an in-process [QuickJS](https://bellard.org/quickjs/) runtime compiled to WebAssembly. The runtime is the execution boundary, so no workspace sandbox is required: the program has no filesystem, network, process, or module access. Its only capabilities are the `external_*` functions, which call back into the real tools on the host.
8
+
9
+ Unlike [`IsolatedVmCodeModeTransport`](https://mastra.ai/reference/tools/isolated-vm-transport), this transport installs no native binaries and needs no Node.js flags, so it runs on serverless platforms that disallow both. The tradeoff is speed: see [Choosing a transport](#choosing-a-transport).
10
+
11
+ ## Installation
12
+
13
+ **npm**:
14
+
15
+ ```bash
16
+ npm install @mastra/quickjs
17
+ ```
18
+
19
+ **pnpm**:
20
+
21
+ ```bash
22
+ pnpm add @mastra/quickjs
23
+ ```
24
+
25
+ **Yarn**:
26
+
27
+ ```bash
28
+ yarn add @mastra/quickjs
29
+ ```
30
+
31
+ **Bun**:
32
+
33
+ ```bash
34
+ bun add @mastra/quickjs
35
+ ```
36
+
37
+ The package contains the WebAssembly module, so installing it copies files and runs nothing else.
38
+
39
+ ## Usage
40
+
41
+ Pass the transport as the second argument to `createCodeMode()`. No `sandbox` is needed:
42
+
43
+ ```typescript
44
+ import { createCodeMode } from '@mastra/core/tools'
45
+ import { QuickJsCodeModeTransport } from '@mastra/quickjs'
46
+
47
+ const { tool, instructions } = createCodeMode(
48
+ { tools: { getTopProducts, getProductRatings } },
49
+ new QuickJsCodeModeTransport({ memoryLimitMb: 128 }),
50
+ )
51
+ ```
52
+
53
+ ## Constructor parameters
54
+
55
+ **options** (`QuickJsCodeModeTransportOptions`): Configuration for the QuickJS runtime.
56
+
57
+ **options.memoryLimitMb** (`number`): Runtime heap limit in MiB. A program that exceeds the limit is terminated and the tool returns an error result.
58
+
59
+ **options.maxStackSizeBytes** (`number`): Runtime stack limit in bytes. A program that exceeds the limit, usually through runaway recursion, is terminated and the tool returns an error result.
60
+
61
+ **options.module** (`QuickJSWASMModule`): A preloaded QuickJS WebAssembly module. Supply one to control when the module is loaded, or to share a single module across transports. Loaded on first run when omitted.
62
+
63
+ ## Choosing a transport
64
+
65
+ All three transports enforce the same allow-list, tool validation, and tracing on the host. They differ in what the program itself can reach and what the host has to provide.
66
+
67
+ | | `StdioCodeModeTransport` | `IsolatedVmCodeModeTransport` | `QuickJsCodeModeTransport` |
68
+ | ------------------- | ------------------------------ | -------------------------------------------- | --------------------------- |
69
+ | Isolation boundary | Workspace sandbox | V8 isolate | QuickJS WebAssembly runtime |
70
+ | Requires a sandbox | Yes | No | No |
71
+ | Native binary | Node.js runtime in the sandbox | Yes | No |
72
+ | Node.js flags | None | `--no-node-snapshot` on Node.js 20 and later | None |
73
+ | Runs in the browser | No | No | Yes |
74
+ | Execution speed | Fastest | Fast | Slowest |
75
+
76
+ Choose `QuickJsCodeModeTransport` when the host can't install native addons or set Node.js flags, which is common on serverless platforms. Choose `IsolatedVmCodeModeTransport` when the host allows both and programs do heavy computation.
77
+
78
+ The speed difference is in the program body, not the tool calls. QuickJS interprets rather than JIT-compiles, so a compute-heavy loop can run tens of times slower than in a V8 isolate, while a program that mostly awaits `external_*` calls performs about the same because the time goes to the tools. Code Mode programs are usually the second kind.
79
+
80
+ ## How it works
81
+
82
+ Each run creates a fresh QuickJS runtime with its own heap. TypeScript is stripped on the host with [ts-blank-space](https://github.com/bloomberg/ts-blank-space), which erases type annotations without a native compiler, then the program is evaluated inside the runtime. Every `external_*` call crosses the boundary as JSON strings in both directions, so no host object references leak into model-authored code.
83
+
84
+ An `external_*` call returns a pending promise to the program and hands control straight back to the host, so many calls can be in flight at once and `Promise.all` behaves as expected.
85
+
86
+ The `timeout` configured on `createCodeMode()` applies to both asynchronous hangs and synchronous infinite loops, and the runtime is disposed after every run.
87
+
88
+ ## Related
89
+
90
+ - [Code mode](https://mastra.ai/docs/agents/code-mode)
91
+ - [createCodeMode() reference](https://mastra.ai/reference/tools/create-code-mode)
92
+ - [IsolatedVmCodeModeTransport reference](https://mastra.ai/reference/tools/isolated-vm-transport)
@@ -4,7 +4,7 @@
4
4
 
5
5
  The ChromaVector class provides vector search using [Chroma](https://docs.trychroma.com/docs/overview/getting-started), an open-source embedding database. It offers efficient vector search with metadata filtering and hybrid search capabilities.
6
6
 
7
- > **Info:**
7
+ > **Note:**
8
8
  >
9
9
  > **Chroma Cloud**
10
10
  >
@@ -36,7 +36,7 @@ bun add @mastra/convex@latest
36
36
 
37
37
  ## Convex setup
38
38
 
39
- Before using `ConvexVector`, you need to set up the Convex schema and storage handler. See [Convex Storage Setup](https://mastra.ai/reference/storage/convex) for setup instructions.
39
+ Before using `ConvexVector`, you need to set up the Convex schema and storage handler. See [Convex Storage Setup](https://mastra.ai/integrations/databases/convex) for setup instructions.
40
40
 
41
41
  ## Constructor options
42
42
 
@@ -419,6 +419,6 @@ Use an external vector database when you need runtime-defined index creation at
419
419
 
420
420
  ## Related
421
421
 
422
- - [Convex Storage](https://mastra.ai/reference/storage/convex)
422
+ - [Convex Storage](https://mastra.ai/integrations/databases/convex)
423
423
  - [Metadata Filters](https://mastra.ai/reference/rag/metadata-filters)
424
424
  - [Convex Documentation](https://docs.convex.dev/)
@@ -0,0 +1,347 @@
1
+ > Discover all available pages from the documentation index: https://mastra.ai/llms.txt
2
+
3
+ # OracleDB vector store
4
+
5
+ `OracleVector` stores embeddings in Oracle Database `VECTOR` columns and exposes them through Mastra's vector interface. Each logical Mastra vector index is mapped to an Oracle vector table through a registry table, while metadata is stored as Oracle JSON for structured filtering.
6
+
7
+ ## Installation
8
+
9
+ **npm**:
10
+
11
+ ```bash
12
+ npm install @mastra/oracledb@latest
13
+ ```
14
+
15
+ **pnpm**:
16
+
17
+ ```bash
18
+ pnpm add @mastra/oracledb@latest
19
+ ```
20
+
21
+ **Yarn**:
22
+
23
+ ```bash
24
+ yarn add @mastra/oracledb@latest
25
+ ```
26
+
27
+ **Bun**:
28
+
29
+ ```bash
30
+ bun add @mastra/oracledb@latest
31
+ ```
32
+
33
+ ## Usage
34
+
35
+ ```ts
36
+ import { OracleVector } from '@mastra/oracledb'
37
+
38
+ const vector = new OracleVector({
39
+ id: 'oracle-vector',
40
+ user: process.env.ORACLE_DATABASE_USER,
41
+ password: process.env.ORACLE_DATABASE_PASSWORD,
42
+ connectString: process.env.ORACLE_DATABASE_CONNECT_STRING,
43
+ })
44
+
45
+ await vector.createIndex({
46
+ indexName: 'memory_messages',
47
+ dimension: 1536,
48
+ metric: 'cosine',
49
+ })
50
+
51
+ await vector.upsert({
52
+ indexName: 'memory_messages',
53
+ vectors: [embedding],
54
+ metadata: [{ resource_id: 'user-1', thread_id: 'thread-1' }],
55
+ })
56
+
57
+ const results = await vector.query({
58
+ indexName: 'memory_messages',
59
+ queryVector,
60
+ topK: 5,
61
+ filter: { resource_id: 'user-1' },
62
+ })
63
+ ```
64
+
65
+ By default, `OracleVector` uses exact search with no approximate vector index. Configure IVF or HNSW when your dataset and latency requirements need approximate search.
66
+
67
+ ## Constructor options
68
+
69
+ Pass Oracle connection options (`user`, `password`, `connectString`, `pool`, wallet options, or `externalAuth`) directly, or pass `poolManager` to share the pool used by `OracleStore`. The vector-specific options are:
70
+
71
+ **id** (`string`): Unique identifier for this vector store instance.
72
+
73
+ **poolManager** (`OraclePoolManager`): Shared Oracle pool manager. Use this to share one Oracle pool with OracleStore.
74
+
75
+ **schemaName** (`string`): Oracle schema name used to qualify the vector registry and vector tables.
76
+
77
+ **tablePrefix** (`string`): Prefix used for physical Oracle vector tables. (Default: `'MASTRA_VEC'`)
78
+
79
+ **registryTableName** (`string`): Oracle table used to map Mastra logical index names to physical vector tables. (Default: `'MASTRA_VECTOR_INDEXES'`)
80
+
81
+ **defaultIndexConfig** (`OracleVectorIndexConfig`): Default Oracle vector index configuration. (Default: `{ type: 'none', accuracy: 95 }`)
82
+
83
+ **defaultMetadataIndexes** (`string[]`): Metadata fields to index automatically when vector tables are created. (Default: `['thread_id', 'resource_id', 'message_id', 'source_id']`)
84
+
85
+ **defaultVectorFormat** (`'vector' | 'bit' | 'int8'`): Default Oracle vector format for dense, binary, and int8 embeddings. (Default: `'vector'`)
86
+
87
+ **upsertBatchSize** (`number`): Number of vectors sent per Oracle executeMany call. The full upsert commits once after all batches succeed. (Default: `200`)
88
+
89
+ ## Constructor examples
90
+
91
+ ### Shared pool with OracleStore
92
+
93
+ ```ts
94
+ import { OracleStore, OracleVector } from '@mastra/oracledb'
95
+
96
+ const storage = new OracleStore({ id: 'oracle-storage', user, password, connectString })
97
+
98
+ const vector = new OracleVector({
99
+ id: 'oracle-vector',
100
+ poolManager: storage.getPoolManager(),
101
+ })
102
+ ```
103
+
104
+ For Autonomous Database and mTLS connections, pass `walletLocation`, `walletPassword`, and `configDir` in the same constructor.
105
+
106
+ ## Methods
107
+
108
+ ### `createIndex()`
109
+
110
+ Creates the registry row, physical Oracle vector table, metadata indexes, and optionally an Oracle vector index.
111
+
112
+ **indexName** (`string`): Logical Mastra index name. The provider maps this to a valid Oracle table name internally.
113
+
114
+ **dimension** (`number`): Vector dimension. This must match the embedding model output size.
115
+
116
+ **metric** (`'cosine' | 'euclidean' | 'dotproduct' | 'hamming' | 'jaccard'`): Distance metric for similarity search. Binary vectors support hamming and jaccard. (Default: `cosine`)
117
+
118
+ **vectorFormat** (`'vector' | 'bit' | 'int8'`): Oracle vector storage format. (Default: `vector`)
119
+
120
+ **indexConfig** (`OracleVectorIndexConfig`): Oracle vector index configuration. none means exact search with no approximate vector index. (Default: `{ type: 'none', accuracy: 95 }`)
121
+
122
+ **buildIndex** (`boolean`): Whether to build the Oracle vector index when indexConfig.type is ivf or hnsw. (Default: `true`)
123
+
124
+ **metadataIndexes** (`string[]`): Metadata field names to index for faster JSON metadata filtering.
125
+
126
+ #### `OracleVectorIndexConfig`
127
+
128
+ **type** (`'none' | 'ivf' | 'hnsw'`): Oracle vector index type. (Default: `'none'`)
129
+
130
+ **accuracy** (`number`): Target accuracy for approximate vector search. (Default: `95`)
131
+
132
+ **ivf.neighborPartitions** (`number`): Oracle IVF neighbor partitions setting.
133
+
134
+ **hnsw\.neighbors** (`number`): Oracle HNSW neighbor setting.
135
+
136
+ **hnsw\.efConstruction** (`number`): Oracle HNSW build-time construction setting.
137
+
138
+ #### Index configuration
139
+
140
+ ```ts
141
+ await vector.createIndex({
142
+ indexName: 'support_articles',
143
+ dimension: 1536,
144
+ metric: 'cosine',
145
+ indexConfig: {
146
+ type: 'ivf',
147
+ accuracy: 95,
148
+ ivf: {
149
+ neighborPartitions: 32,
150
+ },
151
+ },
152
+ })
153
+ ```
154
+
155
+ The default is `indexConfig: { type: 'none' }`, which uses exact search and requires no approximate index tuning. Use IVF or HNSW only when your data volume and latency requirements justify approximate search. HNSW is configured with `indexConfig: { type: 'hnsw', hnsw: { neighbors, efConstruction } }` and requires Oracle Vector Pool memory, which `configureVectorMemory()` can allocate for local or self-managed databases.
156
+
157
+ ### `upsert()`
158
+
159
+ **indexName** (`string`): Name of the index to upsert vectors into.
160
+
161
+ **vectors** (`number[][]`): Array of embedding vectors.
162
+
163
+ **metadata** (`Record<string, any>[]`): Metadata stored as Oracle JSON. Must align by position with vectors.
164
+
165
+ **ids** (`string[]`): Optional vector IDs. IDs are generated when omitted.
166
+
167
+ ### `query()`
168
+
169
+ **indexName** (`string`): Name of the index to query.
170
+
171
+ **queryVector** (`number[]`): Query vector.
172
+
173
+ **topK** (`number`): Number of results to return. (Default: `10`)
174
+
175
+ **filter** (`Record<string, any>`): Mastra metadata filter translated to Oracle JSON predicates.
176
+
177
+ **includeVector** (`boolean`): Whether to include the vector in each result. (Default: `false`)
178
+
179
+ **minScore** (`number`): Minimum similarity score threshold. (Default: `-1`)
180
+
181
+ **queryMode** (`'exact' | 'approx'`): Oracle query mode. Exact search is used by default when no approximate vector index is configured.
182
+
183
+ **targetAccuracy** (`number`): Target accuracy for approximate Oracle vector queries.
184
+
185
+ ### `listIndexes()`
186
+
187
+ Returns the logical Mastra index names recorded in the Oracle vector registry table.
188
+
189
+ ### `describeIndex()`
190
+
191
+ Returns Oracle index metadata, including the physical table name, dimension, vector count, metric, index type, vector format, and configured accuracy.
192
+
193
+ ### `deleteIndex()`
194
+
195
+ Deletes the Oracle vector table and removes the registry entry for the logical index.
196
+
197
+ ### `updateVector()`
198
+
199
+ Update vectors by ID or metadata filter. Either `id` or `filter` must be provided, but not both. The `update` object may include `vector`, `metadata`, or both.
200
+
201
+ ```ts
202
+ await vector.updateVector({
203
+ indexName: 'support_articles',
204
+ id: 'doc-1',
205
+ update: { metadata: { status: 'reviewed' } },
206
+ })
207
+ ```
208
+
209
+ ### `deleteVector()`
210
+
211
+ Deletes a single vector by ID.
212
+
213
+ ### `deleteVectors()`
214
+
215
+ Deletes multiple vectors by IDs or by metadata filter. Either `ids` or `filter` must be provided, but not both.
216
+
217
+ ### `buildIndex()`
218
+
219
+ Builds an Oracle vector index for an existing logical index. If the resolved index type is `none`, this method is a no-op.
220
+
221
+ ### `rebuildIndex()`
222
+
223
+ Drops and recreates the Oracle vector index for an existing logical index, typically after changing approximate-index tuning.
224
+
225
+ ### Index diagnostics
226
+
227
+ Use `getIndexStatus({ indexName })` to inspect Oracle catalog status, and `indexAccuracyQuery({ indexName, queryVector, topK, targetAccuracy })` to run `DBMS_VECTOR.INDEX_ACCURACY_QUERY` for approximate indexes.
228
+
229
+ ### `configureVectorMemory()`
230
+
231
+ Allocates Oracle Vector Pool memory, which HNSW indexes require. This calls `ALTER SYSTEM SET VECTOR_MEMORY_SIZE`, so it requires a privileged connection such as `SYSDBA` or `SYSTEM`.
232
+
233
+ **size** (`string`): Vector pool size, as an integer optionally followed by K, M, or G (for example "512M").
234
+
235
+ **scope** (`'MEMORY' | 'SPFILE' | 'BOTH'`): Oracle ALTER SYSTEM scope. Use 'SPFILE' or 'BOTH' so the setting survives a database restart. (Default: `'MEMORY'`)
236
+
237
+ ### `disconnect()`
238
+
239
+ Closes the Oracle pool when `OracleVector` created the pool manager. If you provide `pool` or `poolManager`, you own that lifecycle.
240
+
241
+ ## Metadata filters
242
+
243
+ `OracleVector` accepts Mastra's standard metadata filter syntax. Filters are translated into Oracle JSON predicates with bound values:
244
+
245
+ - scalar comparisons use `JSON_VALUE`
246
+ - array, existence, and element-match checks use `JSON_EXISTS`
247
+ - regex filters use `REGEXP_LIKE`
248
+ - string contains filters use case-insensitive `LIKE`
249
+
250
+ ```ts
251
+ const results = await vector.query({
252
+ indexName: 'memory_messages',
253
+ queryVector,
254
+ topK: 5,
255
+ filter: {
256
+ resource_id: 'user-1',
257
+ tags: { $contains: 'support' },
258
+ score: { $gte: 0.8 },
259
+ $or: [{ source: 'docs' }, { source: 'tickets' }],
260
+ },
261
+ })
262
+ ```
263
+
264
+ Metadata is stored as native Oracle JSON, so the rows are also readable directly with standard Oracle JDBC tools such as DBeaver and SQL Developer.
265
+
266
+ Use `ORACLEDB_PROMPT` when an agent should generate Oracle-compatible metadata filters for `createVectorQueryTool()`:
267
+
268
+ ```ts
269
+ import { Agent } from '@mastra/core/agent'
270
+ import { createVectorQueryTool } from '@mastra/rag'
271
+ import { fastembed } from '@mastra/fastembed'
272
+ import { ORACLEDB_PROMPT } from '@mastra/oracledb'
273
+
274
+ const vectorQueryTool = createVectorQueryTool({
275
+ vectorStoreName: 'oracle',
276
+ indexName: 'support_articles',
277
+ model: fastembed,
278
+ enableFilter: true,
279
+ })
280
+
281
+ export const ragAgent = new Agent({
282
+ id: 'oracle-rag-agent',
283
+ name: 'Oracle RAG Agent',
284
+ model: 'openai/gpt-5.6-sol',
285
+ instructions: `
286
+ Use the retrieval tool when you need source context.
287
+ Available metadata fields: resource_id, thread_id, source, category, tags.
288
+ ${ORACLEDB_PROMPT}
289
+ `,
290
+ tools: { vectorQueryTool },
291
+ })
292
+ ```
293
+
294
+ ## Response types
295
+
296
+ Query results are returned in this format:
297
+
298
+ ```ts
299
+ interface QueryResult {
300
+ id: string
301
+ score: number
302
+ metadata: Record<string, any>
303
+ vector?: number[]
304
+ }
305
+ ```
306
+
307
+ ## Usage example
308
+
309
+ ```ts
310
+ import { Agent } from '@mastra/core/agent'
311
+ import { Memory } from '@mastra/memory'
312
+ import { fastembed } from '@mastra/fastembed'
313
+ import { OracleStore, OracleVector } from '@mastra/oracledb'
314
+
315
+ const storage = new OracleStore({
316
+ id: 'oracle-storage',
317
+ user: process.env.ORACLE_DATABASE_USER,
318
+ password: process.env.ORACLE_DATABASE_PASSWORD,
319
+ connectString: process.env.ORACLE_DATABASE_CONNECT_STRING,
320
+ })
321
+
322
+ const vector = new OracleVector({
323
+ id: 'oracle-vector',
324
+ poolManager: storage.getPoolManager(),
325
+ })
326
+
327
+ export const oracleAgent = new Agent({
328
+ id: 'oracle-agent',
329
+ name: 'Oracle Agent',
330
+ instructions: 'You are an assistant with OracleDB-backed memory and semantic recall.',
331
+ model: 'openai/gpt-5.6-sol',
332
+ memory: new Memory({
333
+ storage,
334
+ vector,
335
+ embedder: fastembed,
336
+ options: {
337
+ semanticRecall: { topK: 3, messageRange: 2 },
338
+ },
339
+ }),
340
+ })
341
+ ```
342
+
343
+ ## Related
344
+
345
+ - [OracleDB storage](https://mastra.ai/integrations/databases/oracledb)
346
+ - [Metadata Filters](https://mastra.ai/reference/rag/metadata-filters)
347
+ - [Vector databases](https://mastra.ai/reference/rag/vector-databases)
@@ -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
  For usage patterns and deployment topologies, see [Workers](https://mastra.ai/docs/deployment/workers).
6
8
 
7
9
  ## Environment variables
@@ -75,13 +77,13 @@ Executes background tool calls dispatched by agents.
75
77
 
76
78
  A deployment running all worker types requires a storage backend that implements the `workflows`, `backgroundTasks`, and `schedules` domains. The `schedules` domain is specifically required by the SchedulerWorker. If you don't use scheduled workflows, backends without it can still support orchestration and background tasks. The following backends support all three:
77
79
 
78
- | Backend | Package |
79
- | ---------- | ---------------------------------------------------------------- |
80
- | PostgreSQL | [`@mastra/pg`](https://mastra.ai/reference/storage/postgresql) |
81
- | LibSQL | [`@mastra/libsql`](https://mastra.ai/reference/storage/libsql) |
82
- | MySQL | `@mastra/mysql` |
83
- | MongoDB | [`@mastra/mongodb`](https://mastra.ai/reference/storage/mongodb) |
84
- | Spanner | [`@mastra/spanner`](https://mastra.ai/reference/storage/spanner) |
85
- | Convex | [`@mastra/convex`](https://mastra.ai/reference/storage/convex) |
80
+ | Backend | Package |
81
+ | ---------- | --------------------------------------------------------------------- |
82
+ | PostgreSQL | [`@mastra/pg`](https://mastra.ai/integrations/databases/postgresql) |
83
+ | LibSQL | [`@mastra/libsql`](https://mastra.ai/integrations/databases/libsql) |
84
+ | MySQL | `@mastra/mysql` |
85
+ | MongoDB | [`@mastra/mongodb`](https://mastra.ai/integrations/databases/mongodb) |
86
+ | Spanner | [`@mastra/spanner`](https://mastra.ai/integrations/databases/spanner) |
87
+ | Convex | [`@mastra/convex`](https://mastra.ai/integrations/databases/convex) |
86
88
 
87
89
  Other storage backends (Upstash, DynamoDB, Cloudflare D1, ClickHouse, Redis) support workflows and some worker features, but are missing the `schedules` domain. They can still be used for orchestration and background task workers if you don't deploy the scheduler.
@@ -2,7 +2,7 @@
2
2
 
3
3
  # Dynamic workflow definition
4
4
 
5
- > **Beta:** Dynamic workflows are in beta. Breaking changes may occur without a major version bump until the API is stable.
5
+ > **Beta:** Breaking changes may occur without a major version bump until the API is stable.
6
6
 
7
7
  A dynamic workflow definition is a JSON-compatible `DynamicWorkflowGraph` accepted by [`Mastra.addDynamicWorkflow()`](https://mastra.ai/reference/core/addDynamicWorkflow), the stored-workflow server routes, and the Client SDK workflows API.
8
8
 
@@ -132,6 +132,8 @@ Tool entries accept the same optional `description` and `options` fields as agen
132
132
 
133
133
  A `mapping` entry reshapes data. Its `mapConfig` is a JSON string that encodes an object. Each key becomes a key in the step output, and each descriptor defines one source.
134
134
 
135
+ When you call [`Mastra.addDynamicWorkflow()`](https://mastra.ai/reference/core/addDynamicWorkflow) directly, `mapConfig` also accepts the object itself. Mastra encodes it to a JSON string before registering and storing the definition, so the persisted row is the same either way. A stored definition always carries the JSON string form.
136
+
135
137
  | Descriptor | Description |
136
138
  | -------------------------------------- | ----------------------------------------- |
137
139
  | `{ "value": ... }` | A constant JSON value |
@@ -150,6 +150,7 @@ const result = await run.timeTravel({
150
150
  - When re-executing a workflow, the workflow loads the existing snapshot from storage (if available)
151
151
  - Step results before the target step are reconstructed from the snapshot or provided context
152
152
  - Execution begins from the specified step with the provided or reconstructed input data
153
+ - If a step that precedes the target in the current workflow definition has no recorded entry in the snapshot (for example, the step was renamed since the run was recorded, or the run never reached it), `timeTravel` rejects with a descriptive error before anything executes and the stored snapshot is left unchanged
153
154
  - The workflow continues to completion from that point forward
154
155
  - Time travel can be used on workflows that haven't been run yet by providing custom context or input data for the step to start from.
155
156
 
@@ -127,6 +127,24 @@ export const testWorkflow = createWorkflow({
127
127
 
128
128
  **options.pruneSnapshot** (`(params: { snapshot: WorkflowRunState; workflowStatus: WorkflowRunStatus }) => WorkflowRunState`): Optional hook to transform the workflow snapshot immediately before it is persisted. Must return JSON-serializable data and preserve everything the workflow needs to resume (suspended step suspendPayloads, suspendedPaths, executionPath, etc.). Used internally by agent runs to keep snapshots minimal; user workflows persist full snapshots by default.
129
129
 
130
+ **options.onStart** (`(info: WorkflowStartCallbackInfo) => void | Promise<void>`): Callback awaited before a run starts executing, and before any step runs. Fires only on initial start, not on resume, restart, or time travel. Unlike onFinish and onError, errors thrown here are propagated: they reject the start() or stream() call and the run never executes, so this can be used as a pre-flight gate such as a quota check. The run record created by createRun() stays at status pending.
131
+
132
+ **options.onStart.runId** (`string`): The workflow run ID
133
+
134
+ **options.onStart.workflowId** (`string`): The workflow identifier
135
+
136
+ **options.onStart.resourceId** (`string`): Resource or user identifier for multi-tenant scenarios
137
+
138
+ **options.onStart.getInitData** (`() => any`): Returns the initial workflow input data
139
+
140
+ **options.onStart.state** (`Record<string, any>`): The initial workflow state
141
+
142
+ **options.onStart.requestContext** (`RequestContext`): The request context for the run
143
+
144
+ **options.onStart.mastra** (`Mastra`): The Mastra instance, when the workflow is registered
145
+
146
+ **options.onStart.logger** (`IMastraLogger`): The Mastra logger
147
+
130
148
  **options.onFinish** (`(result: WorkflowFinishCallbackResult) => void | Promise<void>`): Callback invoked when workflow completes with any status (success, failed, suspended, tripwire). Receives the workflow result including status, output, error, and step results. Errors thrown in this callback are caught and logged, not propagated.
131
149
 
132
150
  **options.onFinish.status** (`WorkflowRunStatus`): The workflow status: 'success', 'failed', 'suspended', or 'tripwire'
@@ -64,7 +64,7 @@ Configuration options for native OS sandboxing (used with `isolation: 'seatbelt'
64
64
 
65
65
  **readWritePaths** (`string[]`): Additional paths to allow read-write access beyond the workspace directory.
66
66
 
67
- **seatbeltProfilePath** (`string`): Path to a custom seatbelt profile file (macOS only). If the file exists, it's used; if not, a default profile is generated and written to this path.
67
+ **seatbeltProfilePath** (`string`): Path to a custom seatbelt profile file (macOS only). If you wrote the file, it's used exactly as written: Mastra doesn't add mounted paths to it, so the profile must already allow every path you mount. If the file doesn't exist, a default profile is generated and written to this path, and that generated profile allows mounted paths. Mastra marks the profiles it generates, so a later run regenerates them instead of reading them back as your own. To edit a generated profile and keep your edits, delete its marker comment: the file then counts as yours, and mounted paths are no longer added to it.
68
68
 
69
69
  **bwrapArgs** (`string[]`): Additional arguments to pass to bwrap (Linux only).
70
70
 
@@ -4,9 +4,9 @@
4
4
 
5
5
  Stores files in a Mastra Platform workspace bucket. Each Mastra Platform environment can have one bucket, and `PlatformFilesystem` gives agents `read`, `write`, `list`, `delete`, and `move` operations against it.
6
6
 
7
- Related providers: [`S3Filesystem`](https://mastra.ai/reference/workspace/s3-filesystem) for direct S3 access, [`LocalFilesystem`](https://mastra.ai/reference/workspace/local-filesystem) for local directories.
7
+ Related providers: [`S3Filesystem`](https://mastra.ai/integrations/file-storage/amazon-s3) for direct S3 access, [`LocalFilesystem`](https://mastra.ai/reference/workspace/local-filesystem) for local directories.
8
8
 
9
- > **Info:** For interface details, see [WorkspaceFilesystem interface](https://mastra.ai/reference/workspace/filesystem).
9
+ > **Note:** For interface details, see [WorkspaceFilesystem interface](https://mastra.ai/reference/workspace/filesystem).
10
10
 
11
11
  ## Installation
12
12
 
@@ -181,5 +181,5 @@ try {
181
181
  ## Related
182
182
 
183
183
  - [PlatformSandbox reference](https://mastra.ai/reference/workspace/platform-sandbox)
184
- - [S3Filesystem reference](https://mastra.ai/reference/workspace/s3-filesystem)
184
+ - [S3Filesystem reference](https://mastra.ai/integrations/file-storage/amazon-s3)
185
185
  - [WorkspaceFilesystem interface](https://mastra.ai/reference/workspace/filesystem)