@mastra/mcp-docs-server 1.0.0-beta.1 → 1.0.0-beta.10

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 (491) hide show
  1. package/.docs/organized/changelogs/%40internal%2Fchangeset-cli.md +1 -15
  2. package/.docs/organized/changelogs/%40internal%2Fexternal-types.md +1 -7
  3. package/.docs/organized/changelogs/%40internal%2Fstorage-test-utils.md +201 -1
  4. package/.docs/organized/changelogs/%40internal%2Ftypes-builder.md +1 -55
  5. package/.docs/organized/changelogs/%40mastra%2Fagent-builder.md +201 -1
  6. package/.docs/organized/changelogs/%40mastra%2Fai-sdk.md +250 -50
  7. package/.docs/organized/changelogs/%40mastra%2Fastra.md +201 -1
  8. package/.docs/organized/changelogs/%40mastra%2Fauth.md +6 -0
  9. package/.docs/organized/changelogs/%40mastra%2Fchroma.md +201 -1
  10. package/.docs/organized/changelogs/%40mastra%2Fclickhouse.md +201 -1
  11. package/.docs/organized/changelogs/%40mastra%2Fclient-js.md +201 -1
  12. package/.docs/organized/changelogs/%40mastra%2Fcloudflare-d1.md +201 -1
  13. package/.docs/organized/changelogs/%40mastra%2Fcloudflare.md +201 -1
  14. package/.docs/organized/changelogs/%40mastra%2Fcodemod.md +26 -0
  15. package/.docs/organized/changelogs/%40mastra%2Fconvex.md +89 -0
  16. package/.docs/organized/changelogs/%40mastra%2Fcore.md +393 -193
  17. package/.docs/organized/changelogs/%40mastra%2Fcouchbase.md +201 -1
  18. package/.docs/organized/changelogs/%40mastra%2Fdeployer-cloud.md +201 -1
  19. package/.docs/organized/changelogs/%40mastra%2Fdeployer-cloudflare.md +201 -1
  20. package/.docs/organized/changelogs/%40mastra%2Fdeployer-netlify.md +201 -1
  21. package/.docs/organized/changelogs/%40mastra%2Fdeployer-vercel.md +201 -1
  22. package/.docs/organized/changelogs/%40mastra%2Fdeployer.md +201 -1
  23. package/.docs/organized/changelogs/%40mastra%2Fduckdb.md +42 -0
  24. package/.docs/organized/changelogs/%40mastra%2Fdynamodb.md +201 -1
  25. package/.docs/organized/changelogs/%40mastra%2Felasticsearch.md +61 -0
  26. package/.docs/organized/changelogs/%40mastra%2Fevals.md +201 -1
  27. package/.docs/organized/changelogs/%40mastra%2Flance.md +201 -1
  28. package/.docs/organized/changelogs/%40mastra%2Flibsql.md +201 -1
  29. package/.docs/organized/changelogs/%40mastra%2Floggers.md +201 -1
  30. package/.docs/organized/changelogs/%40mastra%2Fmcp-docs-server.md +201 -1
  31. package/.docs/organized/changelogs/%40mastra%2Fmcp-registry-registry.md +201 -1
  32. package/.docs/organized/changelogs/%40mastra%2Fmcp.md +201 -1
  33. package/.docs/organized/changelogs/%40mastra%2Fmemory.md +201 -1
  34. package/.docs/organized/changelogs/%40mastra%2Fmongodb.md +201 -1
  35. package/.docs/organized/changelogs/%40mastra%2Fmssql.md +201 -1
  36. package/.docs/organized/changelogs/%40mastra%2Fopensearch.md +201 -1
  37. package/.docs/organized/changelogs/%40mastra%2Fpg.md +201 -1
  38. package/.docs/organized/changelogs/%40mastra%2Fpinecone.md +201 -1
  39. package/.docs/organized/changelogs/%40mastra%2Fplayground-ui.md +234 -34
  40. package/.docs/organized/changelogs/%40mastra%2Fqdrant.md +201 -1
  41. package/.docs/organized/changelogs/%40mastra%2Frag.md +201 -1
  42. package/.docs/organized/changelogs/%40mastra%2Freact.md +128 -1
  43. package/.docs/organized/changelogs/%40mastra%2Fs3vectors.md +18 -0
  44. package/.docs/organized/changelogs/%40mastra%2Fschema-compat.md +42 -0
  45. package/.docs/organized/changelogs/%40mastra%2Fserver.md +244 -44
  46. package/.docs/organized/changelogs/%40mastra%2Fturbopuffer.md +201 -1
  47. package/.docs/organized/changelogs/%40mastra%2Fupstash.md +201 -1
  48. package/.docs/organized/changelogs/%40mastra%2Fvectorize.md +201 -1
  49. package/.docs/organized/changelogs/%40mastra%2Fvoice-azure.md +201 -1
  50. package/.docs/organized/changelogs/%40mastra%2Fvoice-cloudflare.md +201 -1
  51. package/.docs/organized/changelogs/%40mastra%2Fvoice-deepgram.md +201 -1
  52. package/.docs/organized/changelogs/%40mastra%2Fvoice-elevenlabs.md +201 -1
  53. package/.docs/organized/changelogs/%40mastra%2Fvoice-gladia.md +92 -1
  54. package/.docs/organized/changelogs/%40mastra%2Fvoice-google-gemini-live.md +67 -1
  55. package/.docs/organized/changelogs/%40mastra%2Fvoice-google.md +201 -1
  56. package/.docs/organized/changelogs/%40mastra%2Fvoice-murf.md +201 -1
  57. package/.docs/organized/changelogs/%40mastra%2Fvoice-openai-realtime.md +201 -1
  58. package/.docs/organized/changelogs/%40mastra%2Fvoice-openai.md +201 -1
  59. package/.docs/organized/changelogs/%40mastra%2Fvoice-playai.md +201 -1
  60. package/.docs/organized/changelogs/%40mastra%2Fvoice-sarvam.md +201 -1
  61. package/.docs/organized/changelogs/%40mastra%2Fvoice-speechify.md +201 -1
  62. package/.docs/organized/changelogs/create-mastra.md +201 -1
  63. package/.docs/organized/changelogs/mastra.md +201 -1
  64. package/.docs/organized/code-examples/agui.md +1 -0
  65. package/.docs/organized/code-examples/ai-elements.md +2 -2
  66. package/.docs/organized/code-examples/ai-sdk-useChat.md +2 -2
  67. package/.docs/organized/code-examples/ai-sdk-v5.md +3 -2
  68. package/.docs/organized/code-examples/assistant-ui.md +2 -2
  69. package/.docs/organized/code-examples/bird-checker-with-express.md +1 -1
  70. package/.docs/organized/code-examples/bird-checker-with-nextjs-and-eval.md +2 -2
  71. package/.docs/organized/code-examples/bird-checker-with-nextjs.md +2 -2
  72. package/.docs/organized/code-examples/client-side-tools.md +1 -1
  73. package/.docs/organized/code-examples/crypto-chatbot.md +2 -2
  74. package/.docs/organized/code-examples/fireworks-r1.md +1 -1
  75. package/.docs/organized/code-examples/heads-up-game.md +1 -1
  76. package/.docs/organized/code-examples/mcp-configuration.md +0 -3
  77. package/.docs/organized/code-examples/mcp-server-adapters.md +720 -0
  78. package/.docs/organized/code-examples/memory-per-resource-example.md +1 -1
  79. package/.docs/organized/code-examples/memory-with-processors.md +1 -1
  80. package/.docs/organized/code-examples/openapi-spec-writer.md +1 -1
  81. package/.docs/organized/code-examples/processors-with-ai-sdk.md +14 -0
  82. package/.docs/organized/code-examples/quick-start.md +2 -2
  83. package/.docs/organized/code-examples/server-app-access.md +342 -0
  84. package/.docs/organized/code-examples/server-express-adapter.md +87 -0
  85. package/.docs/organized/code-examples/server-hono-adapter.md +85 -0
  86. package/.docs/organized/code-examples/stock-price-tool.md +1 -21
  87. package/.docs/organized/code-examples/workflow-ai-recruiter.md +1 -1
  88. package/.docs/organized/code-examples/workflow-with-inline-steps.md +1 -1
  89. package/.docs/organized/code-examples/workflow-with-memory.md +1 -1
  90. package/.docs/organized/code-examples/workflow-with-separate-steps.md +1 -1
  91. package/.docs/organized/code-examples/workflow-with-suspend-resume.md +1 -1
  92. package/.docs/raw/agents/adding-voice.mdx +56 -10
  93. package/.docs/raw/agents/agent-approval.mdx +189 -0
  94. package/.docs/raw/agents/agent-memory.mdx +1 -1
  95. package/.docs/raw/agents/guardrails.mdx +27 -24
  96. package/.docs/raw/agents/networks.mdx +3 -3
  97. package/.docs/raw/agents/overview.mdx +18 -167
  98. package/.docs/raw/agents/processors.mdx +279 -0
  99. package/.docs/raw/agents/structured-output.mdx +224 -0
  100. package/.docs/raw/agents/using-tools.mdx +14 -14
  101. package/.docs/raw/auth/auth0.mdx +1 -1
  102. package/.docs/raw/auth/clerk.mdx +1 -1
  103. package/.docs/raw/auth/firebase.mdx +1 -1
  104. package/.docs/raw/auth/index.mdx +1 -1
  105. package/.docs/raw/auth/jwt.mdx +1 -1
  106. package/.docs/raw/auth/supabase.mdx +1 -1
  107. package/.docs/raw/auth/workos.mdx +1 -1
  108. package/.docs/raw/community/contributing-templates.mdx +1 -1
  109. package/.docs/raw/community/discord.mdx +2 -2
  110. package/.docs/raw/community/licensing.mdx +1 -1
  111. package/.docs/raw/course/01-first-agent/05-running-playground.md +5 -5
  112. package/.docs/raw/course/01-first-agent/09-testing-your-agent.md +3 -3
  113. package/.docs/raw/course/01-first-agent/13-testing-your-tool.md +3 -3
  114. package/.docs/raw/course/01-first-agent/17-testing-memory.md +2 -2
  115. package/.docs/raw/course/04-workflows/07-using-playground.md +1 -1
  116. package/.docs/raw/deployment/{server-deployment.mdx → building-mastra.mdx} +4 -4
  117. package/.docs/raw/deployment/cloud-providers/amazon-ec2.mdx +2 -2
  118. package/.docs/raw/deployment/cloud-providers/aws-lambda.mdx +3 -3
  119. package/.docs/raw/deployment/cloud-providers/azure-app-services.mdx +2 -2
  120. package/.docs/raw/deployment/{serverless-platforms → cloud-providers}/cloudflare-deployer.mdx +1 -1
  121. package/.docs/raw/deployment/cloud-providers/digital-ocean.mdx +2 -2
  122. package/.docs/raw/deployment/cloud-providers/index.mdx +26 -29
  123. package/.docs/raw/deployment/{serverless-platforms → cloud-providers}/netlify-deployer.mdx +45 -14
  124. package/.docs/raw/deployment/{serverless-platforms → cloud-providers}/vercel-deployer.mdx +1 -1
  125. package/.docs/raw/{mastra-cloud → deployment/mastra-cloud}/dashboard.mdx +3 -3
  126. package/.docs/raw/deployment/mastra-cloud/observability.mdx +53 -0
  127. package/.docs/raw/{mastra-cloud → deployment/mastra-cloud}/overview.mdx +3 -3
  128. package/.docs/raw/{mastra-cloud → deployment/mastra-cloud}/setting-up.mdx +4 -4
  129. package/.docs/raw/deployment/monorepo.mdx +3 -3
  130. package/.docs/raw/deployment/overview.mdx +7 -7
  131. package/.docs/raw/deployment/web-framework.mdx +6 -6
  132. package/.docs/raw/evals/{off-the-shelf-scorers.mdx → built-in-scorers.mdx} +17 -15
  133. package/.docs/raw/evals/custom-scorers.mdx +4 -6
  134. package/.docs/raw/evals/overview.mdx +5 -6
  135. package/.docs/raw/evals/running-in-ci.mdx +2 -4
  136. package/.docs/raw/getting-started/{installation.mdx → manual-install.mdx} +6 -80
  137. package/.docs/raw/getting-started/mcp-docs-server.mdx +6 -6
  138. package/.docs/raw/getting-started/project-structure.mdx +2 -2
  139. package/.docs/raw/getting-started/start.mdx +72 -0
  140. package/.docs/raw/getting-started/studio.mdx +8 -6
  141. package/.docs/raw/guides/agent-frameworks/ai-sdk.mdx +147 -0
  142. package/.docs/raw/guides/build-your-ui/ai-sdk-ui.mdx +627 -0
  143. package/.docs/raw/{frameworks/agentic-uis → guides/build-your-ui}/assistant-ui.mdx +71 -19
  144. package/.docs/raw/guides/build-your-ui/copilotkit.mdx +206 -0
  145. package/.docs/raw/{frameworks/web-frameworks → guides/getting-started}/astro.mdx +24 -26
  146. package/.docs/raw/{frameworks/servers → guides/getting-started}/express.mdx +4 -5
  147. package/.docs/raw/guides/{quickstarts/nextjs.mdx → getting-started/next-js.mdx} +26 -25
  148. package/.docs/raw/guides/getting-started/quickstart.mdx +97 -0
  149. package/.docs/raw/{frameworks/web-frameworks → guides/getting-started}/sveltekit.mdx +24 -26
  150. package/.docs/raw/{frameworks/web-frameworks → guides/getting-started}/vite-react.mdx +7 -7
  151. package/.docs/raw/guides/guide/ai-recruiter.mdx +2 -3
  152. package/.docs/raw/guides/guide/chef-michel.mdx +2 -3
  153. package/.docs/raw/guides/guide/notes-mcp-server.mdx +2 -2
  154. package/.docs/raw/guides/guide/research-assistant.mdx +7 -8
  155. package/.docs/raw/guides/guide/stock-agent.mdx +4 -6
  156. package/.docs/raw/guides/guide/web-search.mdx +12 -10
  157. package/.docs/raw/guides/guide/whatsapp-chat-bot.mdx +421 -0
  158. package/.docs/raw/guides/index.mdx +3 -35
  159. package/.docs/raw/guides/migrations/agentnetwork.mdx +4 -4
  160. package/.docs/raw/guides/migrations/ai-sdk-v4-to-v5.mdx +119 -0
  161. package/.docs/raw/guides/migrations/upgrade-to-v1/agent.mdx +51 -1
  162. package/.docs/raw/guides/migrations/upgrade-to-v1/client.mdx +42 -2
  163. package/.docs/raw/guides/migrations/upgrade-to-v1/evals.mdx +31 -1
  164. package/.docs/raw/guides/migrations/upgrade-to-v1/mastra.mdx +27 -3
  165. package/.docs/raw/guides/migrations/upgrade-to-v1/mcp.mdx +1 -1
  166. package/.docs/raw/guides/migrations/upgrade-to-v1/memory.mdx +28 -0
  167. package/.docs/raw/guides/migrations/upgrade-to-v1/overview.mdx +25 -3
  168. package/.docs/raw/guides/migrations/upgrade-to-v1/storage.mdx +80 -0
  169. package/.docs/raw/guides/migrations/upgrade-to-v1/tools.mdx +68 -3
  170. package/.docs/raw/guides/migrations/upgrade-to-v1/vectors.mdx +25 -1
  171. package/.docs/raw/guides/migrations/upgrade-to-v1/workflows.mdx +174 -1
  172. package/.docs/raw/guides/migrations/vnext-to-standard-apis.mdx +2 -2
  173. package/.docs/raw/index.mdx +3 -3
  174. package/.docs/raw/mcp/overview.mdx +358 -0
  175. package/.docs/raw/mcp/publishing-mcp-server.mdx +139 -0
  176. package/.docs/raw/memory/conversation-history.mdx +1 -1
  177. package/.docs/raw/memory/memory-processors.mdx +265 -80
  178. package/.docs/raw/memory/overview.mdx +2 -2
  179. package/.docs/raw/memory/semantic-recall.mdx +9 -9
  180. package/.docs/raw/memory/storage/memory-with-libsql.mdx +3 -8
  181. package/.docs/raw/memory/storage/memory-with-mongodb.mdx +150 -0
  182. package/.docs/raw/memory/storage/memory-with-pg.mdx +3 -8
  183. package/.docs/raw/memory/storage/memory-with-upstash.mdx +3 -8
  184. package/.docs/raw/memory/threads-and-resources.mdx +4 -4
  185. package/.docs/raw/memory/working-memory.mdx +16 -8
  186. package/.docs/raw/{logging.mdx → observability/logging.mdx} +7 -7
  187. package/.docs/raw/observability/overview.mdx +3 -4
  188. package/.docs/raw/observability/tracing/bridges/otel.mdx +200 -0
  189. package/.docs/raw/observability/tracing/exporters/arize.mdx +37 -1
  190. package/.docs/raw/observability/tracing/exporters/braintrust.mdx +20 -1
  191. package/.docs/raw/observability/tracing/exporters/cloud.mdx +2 -2
  192. package/.docs/raw/observability/tracing/exporters/default.mdx +1 -1
  193. package/.docs/raw/observability/tracing/exporters/langfuse.mdx +84 -1
  194. package/.docs/raw/observability/tracing/exporters/langsmith.mdx +13 -1
  195. package/.docs/raw/observability/tracing/exporters/otel.mdx +123 -25
  196. package/.docs/raw/observability/tracing/exporters/posthog.mdx +127 -0
  197. package/.docs/raw/observability/tracing/overview.mdx +80 -9
  198. package/.docs/raw/observability/tracing/processors/sensitive-data-filter.mdx +1 -2
  199. package/.docs/raw/rag/chunking-and-embedding.mdx +16 -17
  200. package/.docs/raw/rag/overview.mdx +4 -3
  201. package/.docs/raw/rag/retrieval.mdx +44 -39
  202. package/.docs/raw/rag/vector-databases.mdx +94 -3
  203. package/.docs/raw/reference/agents/agent.mdx +8 -12
  204. package/.docs/raw/reference/agents/generate.mdx +67 -99
  205. package/.docs/raw/reference/agents/generateLegacy.mdx +3 -3
  206. package/.docs/raw/reference/agents/getDefaultGenerateOptions.mdx +1 -1
  207. package/.docs/raw/reference/agents/getDefaultOptions.mdx +1 -1
  208. package/.docs/raw/reference/agents/getDefaultStreamOptions.mdx +1 -1
  209. package/.docs/raw/reference/agents/getDescription.mdx +1 -1
  210. package/.docs/raw/reference/agents/getInstructions.mdx +1 -1
  211. package/.docs/raw/reference/agents/getLLM.mdx +2 -2
  212. package/.docs/raw/reference/agents/getMemory.mdx +1 -1
  213. package/.docs/raw/reference/agents/getModel.mdx +1 -1
  214. package/.docs/raw/reference/agents/getTools.mdx +69 -0
  215. package/.docs/raw/reference/agents/getVoice.mdx +1 -1
  216. package/.docs/raw/reference/agents/listAgents.mdx +1 -1
  217. package/.docs/raw/reference/agents/listScorers.mdx +1 -1
  218. package/.docs/raw/reference/agents/listTools.mdx +2 -2
  219. package/.docs/raw/reference/agents/listWorkflows.mdx +1 -1
  220. package/.docs/raw/reference/agents/network.mdx +33 -72
  221. package/.docs/raw/reference/ai-sdk/chat-route.mdx +127 -0
  222. package/.docs/raw/reference/ai-sdk/handle-chat-stream.mdx +117 -0
  223. package/.docs/raw/reference/ai-sdk/handle-network-stream.mdx +64 -0
  224. package/.docs/raw/reference/ai-sdk/handle-workflow-stream.mdx +116 -0
  225. package/.docs/raw/reference/ai-sdk/network-route.mdx +99 -0
  226. package/.docs/raw/reference/ai-sdk/to-ai-sdk-stream.mdx +289 -0
  227. package/.docs/raw/reference/ai-sdk/with-mastra.mdx +119 -0
  228. package/.docs/raw/reference/ai-sdk/workflow-route.mdx +110 -0
  229. package/.docs/raw/reference/auth/auth0.mdx +1 -1
  230. package/.docs/raw/reference/auth/clerk.mdx +1 -1
  231. package/.docs/raw/reference/auth/firebase.mdx +1 -1
  232. package/.docs/raw/reference/auth/jwt.mdx +1 -1
  233. package/.docs/raw/reference/auth/supabase.mdx +1 -1
  234. package/.docs/raw/reference/auth/workos.mdx +1 -1
  235. package/.docs/raw/reference/cli/create-mastra.mdx +1 -1
  236. package/.docs/raw/reference/cli/mastra.mdx +19 -6
  237. package/.docs/raw/reference/client-js/agents.mdx +252 -68
  238. package/.docs/raw/reference/client-js/error-handling.mdx +1 -1
  239. package/.docs/raw/reference/client-js/logs.mdx +1 -1
  240. package/.docs/raw/reference/client-js/mastra-client.mdx +4 -4
  241. package/.docs/raw/reference/client-js/memory.mdx +48 -2
  242. package/.docs/raw/reference/client-js/observability.mdx +1 -1
  243. package/.docs/raw/reference/client-js/telemetry.mdx +1 -1
  244. package/.docs/raw/reference/client-js/tools.mdx +1 -1
  245. package/.docs/raw/reference/client-js/vectors.mdx +1 -1
  246. package/.docs/raw/reference/client-js/workflows.mdx +93 -64
  247. package/.docs/raw/reference/core/addGateway.mdx +59 -0
  248. package/.docs/raw/reference/core/getAgent.mdx +1 -1
  249. package/.docs/raw/reference/core/getAgentById.mdx +1 -1
  250. package/.docs/raw/reference/core/getDeployer.mdx +1 -1
  251. package/.docs/raw/reference/core/getGateway.mdx +59 -0
  252. package/.docs/raw/reference/core/getGatewayById.mdx +62 -0
  253. package/.docs/raw/reference/core/getLogger.mdx +2 -2
  254. package/.docs/raw/reference/core/getMCPServer.mdx +2 -2
  255. package/.docs/raw/reference/core/getMCPServerById.mdx +2 -2
  256. package/.docs/raw/reference/core/getMemory.mdx +73 -0
  257. package/.docs/raw/reference/core/getScorer.mdx +1 -1
  258. package/.docs/raw/reference/core/getScorerById.mdx +1 -1
  259. package/.docs/raw/reference/core/getServer.mdx +2 -2
  260. package/.docs/raw/reference/core/getStorage.mdx +1 -1
  261. package/.docs/raw/reference/core/getStoredAgentById.mdx +183 -0
  262. package/.docs/raw/reference/core/getTelemetry.mdx +1 -1
  263. package/.docs/raw/reference/core/getVector.mdx +1 -1
  264. package/.docs/raw/reference/core/getWorkflow.mdx +1 -1
  265. package/.docs/raw/reference/core/listAgents.mdx +1 -1
  266. package/.docs/raw/reference/core/listGateways.mdx +53 -0
  267. package/.docs/raw/reference/core/listLogs.mdx +2 -2
  268. package/.docs/raw/reference/core/listLogsByRunId.mdx +2 -2
  269. package/.docs/raw/reference/core/listMCPServers.mdx +2 -2
  270. package/.docs/raw/reference/core/listMemory.mdx +70 -0
  271. package/.docs/raw/reference/core/listScorers.mdx +1 -1
  272. package/.docs/raw/reference/core/listStoredAgents.mdx +151 -0
  273. package/.docs/raw/reference/core/listVectors.mdx +1 -1
  274. package/.docs/raw/reference/core/listWorkflows.mdx +1 -1
  275. package/.docs/raw/reference/core/mastra-class.mdx +17 -1
  276. package/.docs/raw/reference/core/mastra-model-gateway.mdx +227 -0
  277. package/.docs/raw/reference/core/setLogger.mdx +2 -2
  278. package/.docs/raw/reference/core/setStorage.mdx +1 -1
  279. package/.docs/raw/reference/core/setTelemetry.mdx +2 -2
  280. package/.docs/raw/reference/deployer/cloudflare.mdx +1 -1
  281. package/.docs/raw/reference/deployer/deployer.mdx +1 -1
  282. package/.docs/raw/reference/deployer/netlify.mdx +2 -3
  283. package/.docs/raw/reference/deployer/vercel.mdx +1 -1
  284. package/.docs/raw/reference/evals/answer-relevancy.mdx +29 -99
  285. package/.docs/raw/reference/evals/answer-similarity.mdx +13 -259
  286. package/.docs/raw/reference/evals/bias.mdx +30 -88
  287. package/.docs/raw/reference/evals/completeness.mdx +32 -91
  288. package/.docs/raw/reference/evals/content-similarity.mdx +29 -89
  289. package/.docs/raw/reference/evals/context-precision.mdx +29 -131
  290. package/.docs/raw/reference/evals/context-relevance.mdx +12 -12
  291. package/.docs/raw/reference/evals/create-scorer.mdx +1 -1
  292. package/.docs/raw/reference/evals/faithfulness.mdx +29 -102
  293. package/.docs/raw/reference/evals/hallucination.mdx +29 -104
  294. package/.docs/raw/reference/evals/keyword-coverage.mdx +29 -108
  295. package/.docs/raw/reference/evals/mastra-scorer.mdx +1 -1
  296. package/.docs/raw/reference/evals/noise-sensitivity.mdx +12 -12
  297. package/.docs/raw/reference/evals/prompt-alignment.mdx +16 -16
  298. package/.docs/raw/reference/evals/run-evals.mdx +1 -1
  299. package/.docs/raw/reference/evals/scorer-utils.mdx +362 -0
  300. package/.docs/raw/reference/evals/textual-difference.mdx +28 -101
  301. package/.docs/raw/reference/evals/tone-consistency.mdx +26 -99
  302. package/.docs/raw/reference/evals/tool-call-accuracy.mdx +8 -8
  303. package/.docs/raw/reference/evals/toxicity.mdx +30 -93
  304. package/.docs/raw/reference/index.mdx +1 -0
  305. package/.docs/raw/reference/logging/pino-logger.mdx +2 -2
  306. package/.docs/raw/reference/memory/createThread.mdx +1 -1
  307. package/.docs/raw/reference/memory/deleteMessages.mdx +1 -1
  308. package/.docs/raw/reference/memory/getThreadById.mdx +1 -1
  309. package/.docs/raw/reference/memory/listThreadsByResourceId.mdx +1 -1
  310. package/.docs/raw/reference/memory/memory-class.mdx +6 -8
  311. package/.docs/raw/reference/memory/query.mdx +1 -1
  312. package/.docs/raw/reference/memory/recall.mdx +1 -1
  313. package/.docs/raw/reference/observability/tracing/bridges/otel.mdx +177 -0
  314. package/.docs/raw/reference/observability/tracing/configuration.mdx +1 -5
  315. package/.docs/raw/reference/observability/tracing/exporters/arize.mdx +30 -1
  316. package/.docs/raw/reference/observability/tracing/exporters/braintrust.mdx +1 -1
  317. package/.docs/raw/reference/observability/tracing/exporters/cloud-exporter.mdx +1 -1
  318. package/.docs/raw/reference/observability/tracing/exporters/console-exporter.mdx +1 -1
  319. package/.docs/raw/reference/observability/tracing/exporters/default-exporter.mdx +1 -1
  320. package/.docs/raw/reference/observability/tracing/exporters/langfuse.mdx +44 -1
  321. package/.docs/raw/reference/observability/tracing/exporters/langsmith.mdx +18 -2
  322. package/.docs/raw/reference/observability/tracing/exporters/otel.mdx +34 -44
  323. package/.docs/raw/reference/observability/tracing/exporters/posthog.mdx +132 -0
  324. package/.docs/raw/reference/observability/tracing/instances.mdx +1 -5
  325. package/.docs/raw/reference/observability/tracing/interfaces.mdx +30 -5
  326. package/.docs/raw/reference/observability/tracing/processors/sensitive-data-filter.mdx +1 -1
  327. package/.docs/raw/reference/observability/tracing/spans.mdx +1 -5
  328. package/.docs/raw/reference/processors/batch-parts-processor.mdx +2 -2
  329. package/.docs/raw/reference/processors/language-detector.mdx +11 -4
  330. package/.docs/raw/reference/processors/message-history-processor.mdx +131 -0
  331. package/.docs/raw/reference/processors/moderation-processor.mdx +13 -6
  332. package/.docs/raw/reference/processors/pii-detector.mdx +13 -6
  333. package/.docs/raw/reference/processors/processor-interface.mdx +502 -0
  334. package/.docs/raw/reference/processors/prompt-injection-detector.mdx +11 -4
  335. package/.docs/raw/reference/processors/semantic-recall-processor.mdx +197 -0
  336. package/.docs/raw/reference/processors/system-prompt-scrubber.mdx +4 -5
  337. package/.docs/raw/reference/processors/token-limiter-processor.mdx +3 -3
  338. package/.docs/raw/reference/processors/tool-call-filter.mdx +125 -0
  339. package/.docs/raw/reference/processors/unicode-normalizer.mdx +2 -2
  340. package/.docs/raw/reference/processors/working-memory-processor.mdx +221 -0
  341. package/.docs/raw/reference/rag/chunk.mdx +1 -1
  342. package/.docs/raw/reference/rag/database-config.mdx +1 -1
  343. package/.docs/raw/reference/rag/document.mdx +1 -1
  344. package/.docs/raw/reference/rag/embeddings.mdx +6 -6
  345. package/.docs/raw/reference/rag/extract-params.mdx +1 -1
  346. package/.docs/raw/reference/rag/graph-rag.mdx +1 -1
  347. package/.docs/raw/reference/rag/metadata-filters.mdx +1 -1
  348. package/.docs/raw/reference/rag/rerank.mdx +2 -3
  349. package/.docs/raw/reference/rag/rerankWithScorer.mdx +1 -2
  350. package/.docs/raw/reference/server/create-route.mdx +328 -0
  351. package/.docs/raw/reference/server/express-adapter.mdx +260 -0
  352. package/.docs/raw/reference/server/hono-adapter.mdx +242 -0
  353. package/.docs/raw/reference/server/mastra-server.mdx +345 -0
  354. package/.docs/raw/reference/server/routes.mdx +250 -0
  355. package/.docs/raw/reference/storage/cloudflare-d1.mdx +38 -1
  356. package/.docs/raw/reference/storage/cloudflare.mdx +1 -1
  357. package/.docs/raw/reference/storage/convex.mdx +164 -0
  358. package/.docs/raw/reference/storage/dynamodb.mdx +1 -1
  359. package/.docs/raw/reference/storage/lance.mdx +34 -1
  360. package/.docs/raw/reference/storage/libsql.mdx +38 -1
  361. package/.docs/raw/reference/storage/mongodb.mdx +40 -1
  362. package/.docs/raw/reference/storage/mssql.mdx +38 -1
  363. package/.docs/raw/reference/storage/postgresql.mdx +38 -1
  364. package/.docs/raw/reference/storage/upstash.mdx +1 -1
  365. package/.docs/raw/reference/streaming/ChunkType.mdx +2 -2
  366. package/.docs/raw/reference/streaming/agents/MastraModelOutput.mdx +1 -1
  367. package/.docs/raw/reference/streaming/agents/stream.mdx +68 -95
  368. package/.docs/raw/reference/streaming/agents/streamLegacy.mdx +1 -1
  369. package/.docs/raw/reference/streaming/workflows/observeStream.mdx +8 -10
  370. package/.docs/raw/reference/streaming/workflows/{resumeStreamVNext.mdx → resumeStream.mdx} +51 -11
  371. package/.docs/raw/reference/streaming/workflows/stream.mdx +84 -25
  372. package/.docs/raw/reference/streaming/workflows/timeTravelStream.mdx +170 -0
  373. package/.docs/raw/reference/templates/overview.mdx +2 -5
  374. package/.docs/raw/reference/tools/client.mdx +2 -3
  375. package/.docs/raw/reference/tools/create-tool.mdx +135 -4
  376. package/.docs/raw/reference/tools/document-chunker-tool.mdx +1 -1
  377. package/.docs/raw/reference/tools/graph-rag-tool.mdx +7 -7
  378. package/.docs/raw/reference/tools/mcp-client.mdx +131 -23
  379. package/.docs/raw/reference/tools/mcp-server.mdx +56 -8
  380. package/.docs/raw/reference/tools/vector-query-tool.mdx +16 -17
  381. package/.docs/raw/reference/vectors/astra.mdx +1 -1
  382. package/.docs/raw/reference/vectors/chroma.mdx +82 -2
  383. package/.docs/raw/reference/vectors/convex.mdx +429 -0
  384. package/.docs/raw/reference/vectors/couchbase.mdx +25 -18
  385. package/.docs/raw/reference/vectors/duckdb.mdx +462 -0
  386. package/.docs/raw/reference/vectors/elasticsearch.mdx +310 -0
  387. package/.docs/raw/reference/vectors/lance.mdx +39 -23
  388. package/.docs/raw/reference/vectors/libsql.mdx +36 -3
  389. package/.docs/raw/reference/vectors/mongodb.mdx +36 -3
  390. package/.docs/raw/reference/vectors/opensearch.mdx +38 -17
  391. package/.docs/raw/reference/vectors/pg.mdx +44 -37
  392. package/.docs/raw/reference/vectors/pinecone.mdx +70 -3
  393. package/.docs/raw/reference/vectors/qdrant.mdx +37 -2
  394. package/.docs/raw/reference/vectors/s3vectors.mdx +1 -1
  395. package/.docs/raw/reference/vectors/turbopuffer.mdx +75 -1
  396. package/.docs/raw/reference/vectors/upstash.mdx +1 -1
  397. package/.docs/raw/reference/vectors/vectorize.mdx +1 -1
  398. package/.docs/raw/reference/voice/azure.mdx +96 -81
  399. package/.docs/raw/reference/voice/cloudflare.mdx +1 -1
  400. package/.docs/raw/reference/voice/composite-voice.mdx +72 -29
  401. package/.docs/raw/reference/voice/deepgram.mdx +1 -1
  402. package/.docs/raw/reference/voice/elevenlabs.mdx +1 -1
  403. package/.docs/raw/reference/voice/google-gemini-live.mdx +1 -1
  404. package/.docs/raw/reference/voice/google.mdx +160 -21
  405. package/.docs/raw/reference/voice/mastra-voice.mdx +1 -1
  406. package/.docs/raw/reference/voice/murf.mdx +1 -1
  407. package/.docs/raw/reference/voice/openai-realtime.mdx +3 -3
  408. package/.docs/raw/reference/voice/openai.mdx +1 -1
  409. package/.docs/raw/reference/voice/playai.mdx +1 -1
  410. package/.docs/raw/reference/voice/sarvam.mdx +1 -1
  411. package/.docs/raw/reference/voice/speechify.mdx +1 -1
  412. package/.docs/raw/reference/voice/voice.addInstructions.mdx +3 -4
  413. package/.docs/raw/reference/voice/voice.addTools.mdx +2 -2
  414. package/.docs/raw/reference/voice/voice.answer.mdx +2 -2
  415. package/.docs/raw/reference/voice/voice.close.mdx +2 -2
  416. package/.docs/raw/reference/voice/voice.connect.mdx +2 -2
  417. package/.docs/raw/reference/voice/voice.events.mdx +1 -1
  418. package/.docs/raw/reference/voice/voice.getSpeakers.mdx +1 -1
  419. package/.docs/raw/reference/voice/voice.listen.mdx +87 -53
  420. package/.docs/raw/reference/voice/voice.off.mdx +2 -2
  421. package/.docs/raw/reference/voice/voice.on.mdx +2 -2
  422. package/.docs/raw/reference/voice/voice.send.mdx +2 -2
  423. package/.docs/raw/reference/voice/voice.speak.mdx +76 -41
  424. package/.docs/raw/reference/voice/voice.updateConfig.mdx +2 -2
  425. package/.docs/raw/reference/workflows/run-methods/cancel.mdx +1 -1
  426. package/.docs/raw/reference/workflows/run-methods/restart.mdx +142 -0
  427. package/.docs/raw/reference/workflows/run-methods/resume.mdx +45 -1
  428. package/.docs/raw/reference/workflows/run-methods/start.mdx +48 -4
  429. package/.docs/raw/reference/workflows/run-methods/timeTravel.mdx +310 -0
  430. package/.docs/raw/reference/workflows/run.mdx +28 -6
  431. package/.docs/raw/reference/workflows/step.mdx +65 -1
  432. package/.docs/raw/reference/workflows/workflow-methods/branch.mdx +1 -1
  433. package/.docs/raw/reference/workflows/workflow-methods/commit.mdx +1 -1
  434. package/.docs/raw/reference/workflows/workflow-methods/create-run.mdx +1 -1
  435. package/.docs/raw/reference/workflows/workflow-methods/dountil.mdx +1 -1
  436. package/.docs/raw/reference/workflows/workflow-methods/dowhile.mdx +1 -1
  437. package/.docs/raw/reference/workflows/workflow-methods/foreach.mdx +1 -1
  438. package/.docs/raw/reference/workflows/workflow-methods/map.mdx +1 -1
  439. package/.docs/raw/reference/workflows/workflow-methods/parallel.mdx +1 -1
  440. package/.docs/raw/reference/workflows/workflow-methods/sendEvent.mdx +1 -1
  441. package/.docs/raw/reference/workflows/workflow-methods/sleep.mdx +1 -1
  442. package/.docs/raw/reference/workflows/workflow-methods/sleepUntil.mdx +1 -1
  443. package/.docs/raw/reference/workflows/workflow-methods/then.mdx +1 -1
  444. package/.docs/raw/reference/workflows/workflow-methods/waitForEvent.mdx +1 -1
  445. package/.docs/raw/reference/workflows/workflow.mdx +21 -2
  446. package/.docs/raw/server-db/custom-adapters.mdx +386 -0
  447. package/.docs/raw/server-db/custom-api-routes.mdx +6 -6
  448. package/.docs/raw/server-db/mastra-client.mdx +3 -4
  449. package/.docs/raw/server-db/{production-server.mdx → mastra-server.mdx} +16 -8
  450. package/.docs/raw/server-db/middleware.mdx +31 -31
  451. package/.docs/raw/server-db/request-context.mdx +3 -4
  452. package/.docs/raw/server-db/server-adapters.mdx +312 -0
  453. package/.docs/raw/server-db/storage.mdx +12 -1
  454. package/.docs/raw/streaming/events.mdx +1 -1
  455. package/.docs/raw/streaming/overview.mdx +27 -16
  456. package/.docs/raw/streaming/tool-streaming.mdx +58 -19
  457. package/.docs/raw/streaming/workflow-streaming.mdx +6 -12
  458. package/.docs/raw/tools-mcp/advanced-usage.mdx +2 -3
  459. package/.docs/raw/tools-mcp/mcp-overview.mdx +4 -6
  460. package/.docs/raw/tools-mcp/overview.mdx +1 -1
  461. package/.docs/raw/voice/overview.mdx +88 -41
  462. package/.docs/raw/voice/speech-to-speech.mdx +5 -5
  463. package/.docs/raw/voice/speech-to-text.mdx +2 -3
  464. package/.docs/raw/voice/text-to-speech.mdx +2 -3
  465. package/.docs/raw/workflows/agents-and-tools.mdx +43 -5
  466. package/.docs/raw/workflows/control-flow.mdx +186 -1
  467. package/.docs/raw/workflows/error-handling.mdx +5 -4
  468. package/.docs/raw/workflows/human-in-the-loop.mdx +160 -213
  469. package/.docs/raw/workflows/inngest-workflow.mdx +1 -1
  470. package/.docs/raw/workflows/input-data-mapping.mdx +1 -1
  471. package/.docs/raw/workflows/overview.mdx +67 -47
  472. package/.docs/raw/workflows/snapshots.mdx +5 -3
  473. package/.docs/raw/workflows/suspend-and-resume.mdx +121 -204
  474. package/.docs/raw/workflows/time-travel.mdx +313 -0
  475. package/.docs/raw/workflows/workflow-state.mdx +190 -0
  476. package/CHANGELOG.md +81 -0
  477. package/dist/{chunk-5NJC7NRO.js → chunk-4CM2BQNP.js} +24 -4
  478. package/dist/prepare-docs/package-changes.d.ts.map +1 -1
  479. package/dist/prepare-docs/prepare.js +1 -1
  480. package/dist/stdio.js +17 -19
  481. package/package.json +11 -15
  482. package/.docs/raw/deployment/serverless-platforms/index.mdx +0 -58
  483. package/.docs/raw/frameworks/agentic-uis/ai-sdk.mdx +0 -688
  484. package/.docs/raw/frameworks/agentic-uis/cedar-os.mdx +0 -123
  485. package/.docs/raw/frameworks/agentic-uis/copilotkit.mdx +0 -382
  486. package/.docs/raw/frameworks/agentic-uis/openrouter.mdx +0 -179
  487. package/.docs/raw/frameworks/web-frameworks/next-js.mdx +0 -379
  488. package/.docs/raw/getting-started/templates.mdx +0 -73
  489. package/.docs/raw/mastra-cloud/observability.mdx +0 -51
  490. package/.docs/raw/reference/streaming/workflows/observeStreamVNext.mdx +0 -47
  491. package/.docs/raw/reference/streaming/workflows/streamVNext.mdx +0 -153
@@ -0,0 +1,170 @@
1
+ ---
2
+ title: "Reference: Run.timeTravelStream() | Streaming"
3
+ description: Documentation for the `Run.timeTravelStream()` method for streaming workflow time travel execution.
4
+ ---
5
+
6
+ # Run.timeTravelStream()
7
+
8
+ The `.timeTravelStream()` method re-executes a workflow starting from any specific step with streaming events. This allows you to receive real-time updates during time travel execution while maintaining full visibility into each step's progress.
9
+
10
+ ## Usage example
11
+
12
+ ```typescript showLineNumbers copy
13
+ const run = await workflow.createRun();
14
+
15
+ const output = run.timeTravelStream({
16
+ step: "step2",
17
+ inputData: { value: 10 },
18
+ });
19
+
20
+ // Process events as they arrive
21
+ for await (const event of output.fullStream) {
22
+ console.log(event.type, event.payload);
23
+ }
24
+
25
+ // Get the final result
26
+ const result = await output.result;
27
+ ```
28
+
29
+ ## Parameters
30
+
31
+ All parameters are the same as [`Run.timeTravel()`](../../workflows/run-methods/timeTravel#parameters). See the [timeTravel reference](../../workflows/run-methods/timeTravel#parameters) for detailed parameter documentation.
32
+
33
+ ## Returns
34
+
35
+ <PropertiesTable
36
+ content={[
37
+ {
38
+ name: "output",
39
+ type: "WorkflowRunOutput<WorkflowResult<TState, TInput, TOutput, TSteps>>",
40
+ description:
41
+ "An object containing both the stream and result promise",
42
+ },
43
+ {
44
+ name: "output.fullStream",
45
+ type: "ReadableStream<WorkflowStreamEvent>",
46
+ description:
47
+ "A readable stream that emits workflow events as execution progresses",
48
+ },
49
+ {
50
+ name: "output.result",
51
+ type: "Promise<WorkflowResult<TState, TInput, TOutput, TSteps>>",
52
+ description:
53
+ "A promise that resolves to the final workflow execution result",
54
+ },
55
+ {
56
+ name: "output.traceId",
57
+ type: "string",
58
+ isOptional: true,
59
+ description:
60
+ "The trace ID associated with this execution when Tracing is enabled",
61
+ },
62
+ ]}
63
+ />
64
+
65
+ ## Stream events
66
+
67
+ The stream emits various workflow events during execution:
68
+
69
+ - `workflow-step-start`: Emitted when a step begins execution
70
+ - `workflow-step-finish`: Emitted when a step completes successfully
71
+ - `workflow-step-error`: Emitted when a step encounters an error
72
+ - `workflow-step-suspended`: Emitted when a step suspends
73
+ - Additional events depending on step types (agents, tools, etc.)
74
+
75
+ ## Extended usage examples
76
+
77
+ ### Processing events during time travel
78
+
79
+ ```typescript showLineNumbers copy
80
+ const run = await workflow.createRun();
81
+
82
+ const output = run.timeTravelStream({
83
+ step: "step2",
84
+ inputData: { value: 10 },
85
+ });
86
+
87
+ for await (const event of output.fullStream) {
88
+ switch (event.type) {
89
+ case "workflow-step-start":
90
+ console.log(`Starting step: ${event.payload.stepName}`);
91
+ break;
92
+ case "workflow-step-finish":
93
+ console.log(`Completed step: ${event.payload.stepName}`);
94
+ break;
95
+ case "workflow-step-error":
96
+ console.error(`Error in step: ${event.payload.stepName}`, event.payload.error);
97
+ break;
98
+ }
99
+ }
100
+
101
+ const result = await output.result;
102
+ console.log("Time travel completed:", result);
103
+ ```
104
+
105
+ ### Time travel stream with context
106
+
107
+ ```typescript showLineNumbers copy
108
+ const output = run.timeTravelStream({
109
+ step: "step2",
110
+ context: {
111
+ step1: {
112
+ status: "success",
113
+ payload: { value: 0 },
114
+ output: { step1Result: 2 },
115
+ startedAt: Date.now(),
116
+ endedAt: Date.now(),
117
+ },
118
+ },
119
+ });
120
+
121
+ for await (const event of output.fullStream) {
122
+ // Handle events
123
+ console.log(event);
124
+ }
125
+
126
+ const result = await output.result;
127
+ ```
128
+
129
+ ### Time travel stream with nested workflows
130
+
131
+ ```typescript showLineNumbers copy
132
+ const output = run.timeTravelStream({
133
+ step: ["nestedWorkflow", "step3"],
134
+ inputData: { value: 10 },
135
+ nestedStepsContext: {
136
+ nestedWorkflow: {
137
+ step2: {
138
+ status: "success",
139
+ payload: { step1Result: 2 },
140
+ output: { step2Result: 3 },
141
+ startedAt: Date.now(),
142
+ endedAt: Date.now(),
143
+ },
144
+ },
145
+ },
146
+ });
147
+
148
+ for await (const event of output.fullStream) {
149
+ console.log(event.type, event.payload);
150
+ }
151
+
152
+ const result = await output.result;
153
+ ```
154
+
155
+ ## Notes
156
+
157
+ - The stream closes automatically when time travel execution completes or encounters an error
158
+ - You can process events from the stream while the workflow is still executing
159
+ - The `result` promise resolves only after all steps have completed
160
+ - Stream events follow the same format as regular workflow streaming
161
+ - Time travel streaming requires storage to be configured since it relies on persisted workflow snapshots
162
+
163
+ ## Related
164
+
165
+ - [Run.timeTravel()](../../workflows/run-methods/timeTravel)
166
+ - [Time Travel](/docs/v1/workflows/time-travel)
167
+ - [Workflow Streaming](/docs/v1/streaming/workflow-streaming)
168
+ - [Run.stream()](./stream)
169
+ - [Run.resumeStream()](./resumeStream)
170
+
@@ -1,5 +1,5 @@
1
1
  ---
2
- title: "Reference: LLM provider API keys (choose one or more) | Templates | Mastra Docs"
2
+ title: "Reference: LLM provider API keys (choose one or more) | Templates"
3
3
  description: "Complete guide to creating, using, and contributing Mastra templates"
4
4
  ---
5
5
 
@@ -118,13 +118,10 @@ We recommend using OpenAI, Anthropic, or Google model providers for templates. C
118
118
 
119
119
  ```typescript title="src/mastra/agents/example-agent.ts"
120
120
  import { Agent } from "@mastra/core/agent";
121
- import { openai } from "@ai-sdk/openai";
122
- // Or use: import { anthropic } from '@ai-sdk/anthropic';
123
- // Or use: import { google } from '@ai-sdk/google';
124
121
 
125
122
  const agent = new Agent({
126
123
  name: "example-agent",
127
- model: openai("gpt-4"), // or anthropic('') or google('')
124
+ model: "openai/gpt-5.1", // or other provider strings
128
125
  instructions: "Your agent instructions here",
129
126
  // ... other configuration
130
127
  });
@@ -1,5 +1,5 @@
1
1
  ---
2
- title: "Reference: MastraMCPClient (Deprecated) | Tools & MCP | Mastra Docs"
2
+ title: "Reference: MastraMCPClient (Deprecated) | Tools & MCP"
3
3
  description: API Reference for MastraMCPClient - A client implementation for the Model Context Protocol.
4
4
  ---
5
5
 
@@ -230,7 +230,6 @@ Returns an object mapping tool names to their corresponding Mastra tool implemen
230
230
  ```typescript
231
231
  import { Agent } from "@mastra/core/agent";
232
232
  import { MastraMCPClient } from "@mastra/mcp";
233
- import { openai } from "@ai-sdk/openai";
234
233
 
235
234
  // Initialize the MCP client using mcp/fetch as an example https://hub.docker.com/r/mcp/fetch
236
235
  // Visit https://github.com/docker/mcp-servers for other reference docker mcp servers
@@ -250,7 +249,7 @@ const agent = new Agent({
250
249
  name: "Fetch agent",
251
250
  instructions:
252
251
  "You are able to fetch data from URLs on demand and discuss the response data with the user.",
253
- model: openai("gpt-4o-mini"),
252
+ model: "openai/gpt-5.1",
254
253
  });
255
254
 
256
255
  try {
@@ -1,5 +1,5 @@
1
1
  ---
2
- title: "Reference: createTool() | Tools & MCP | Mastra Docs"
2
+ title: "Reference: createTool() | Tools & MCP"
3
3
  description: Documentation for the `createTool()` function in Mastra, used to define custom tools for agents.
4
4
  ---
5
5
 
@@ -131,6 +131,34 @@ export const tool = createTool({
131
131
  },
132
132
  ],
133
133
  },
134
+ {
135
+ name: "onInputStart",
136
+ type: "function",
137
+ description:
138
+ "Optional callback invoked when the tool call input streaming begins. Receives `toolCallId`, `messages`, and `abortSignal`.",
139
+ isOptional: true,
140
+ },
141
+ {
142
+ name: "onInputDelta",
143
+ type: "function",
144
+ description:
145
+ "Optional callback invoked for each incremental chunk of input text as it streams in. Receives `inputTextDelta`, `toolCallId`, `messages`, and `abortSignal`.",
146
+ isOptional: true,
147
+ },
148
+ {
149
+ name: "onInputAvailable",
150
+ type: "function",
151
+ description:
152
+ "Optional callback invoked when the complete tool input is available and parsed. Receives the validated `input` object, `toolCallId`, `messages`, and `abortSignal`.",
153
+ isOptional: true,
154
+ },
155
+ {
156
+ name: "onOutput",
157
+ type: "function",
158
+ description:
159
+ "Optional callback invoked after the tool has successfully executed and returned output. Receives the tool's `output`, `toolCallId`, `messages`, and `abortSignal`.",
160
+ isOptional: true,
161
+ },
134
162
  ]}
135
163
  />
136
164
 
@@ -149,9 +177,112 @@ The `createTool()` function returns a `Tool` object.
149
177
  ]}
150
178
  />
151
179
 
180
+ ## Tool Lifecycle Hooks
181
+
182
+ Tools support lifecycle hooks that allow you to monitor and react to different stages of tool execution. These hooks are particularly useful for logging, analytics, validation, and real-time updates during streaming.
183
+
184
+ ### Available Hooks
185
+
186
+ #### onInputStart
187
+
188
+ Called when tool call input streaming begins, before any input data is received.
189
+
190
+ ```typescript
191
+ export const tool = createTool({
192
+ id: "example-tool",
193
+ description: "Example tool with hooks",
194
+ onInputStart: ({ toolCallId, messages, abortSignal }) => {
195
+ console.log(`Tool ${toolCallId} input streaming started`);
196
+ },
197
+ // ... other properties
198
+ });
199
+ ```
200
+
201
+ #### onInputDelta
202
+
203
+ Called for each incremental chunk of input text as it streams in. Useful for showing real-time progress or parsing partial JSON.
204
+
205
+ ```typescript
206
+ export const tool = createTool({
207
+ id: "example-tool",
208
+ description: "Example tool with hooks",
209
+ onInputDelta: ({ inputTextDelta, toolCallId, messages, abortSignal }) => {
210
+ console.log(`Received input chunk: ${inputTextDelta}`);
211
+ },
212
+ // ... other properties
213
+ });
214
+ ```
215
+
216
+ #### onInputAvailable
217
+
218
+ Called when the complete tool input is available and has been parsed and validated against the `inputSchema`.
219
+
220
+ ```typescript
221
+ export const tool = createTool({
222
+ id: "example-tool",
223
+ description: "Example tool with hooks",
224
+ inputSchema: z.object({
225
+ city: z.string(),
226
+ }),
227
+ onInputAvailable: ({ input, toolCallId, messages, abortSignal }) => {
228
+ console.log(`Tool received complete input:`, input);
229
+ // input is fully typed based on inputSchema
230
+ },
231
+ // ... other properties
232
+ });
233
+ ```
234
+
235
+ #### onOutput
236
+
237
+ Called after the tool has successfully executed and returned output. Useful for logging results, triggering follow-up actions, or analytics.
238
+
239
+ ```typescript
240
+ export const tool = createTool({
241
+ id: "example-tool",
242
+ description: "Example tool with hooks",
243
+ outputSchema: z.object({
244
+ result: z.string(),
245
+ }),
246
+ execute: async (input) => {
247
+ return { result: "Success" };
248
+ },
249
+ onOutput: ({ output, toolCallId, toolName, abortSignal }) => {
250
+ console.log(`${toolName} execution completed:`, output);
251
+ // output is fully typed based on outputSchema
252
+ },
253
+ });
254
+ ```
255
+
256
+ ### Hook Execution Order
257
+
258
+ For a typical streaming tool call, the hooks are invoked in this order:
259
+
260
+ 1. **onInputStart** - Input streaming begins
261
+ 2. **onInputDelta** - Called multiple times as chunks arrive
262
+ 3. **onInputAvailable** - Complete input is parsed and validated
263
+ 4. Tool's **execute** function runs
264
+ 5. **onOutput** - Tool has completed successfully
265
+
266
+ ### Hook Parameters
267
+
268
+ All hooks receive a parameter object with these common properties:
269
+
270
+ - `toolCallId` (string): Unique identifier for this specific tool call
271
+ - `abortSignal` (AbortSignal): Signal for detecting if the operation should be cancelled
272
+
273
+ Additionally:
274
+ - `onInputStart`, `onInputDelta`, and `onInputAvailable` receive `messages` (array): The conversation messages at the time of the tool call
275
+ - `onInputDelta` receives `inputTextDelta` (string): The incremental text chunk
276
+ - `onInputAvailable` receives `input`: The validated input data (typed according to `inputSchema`)
277
+ - `onOutput` receives `output`: The tool's return value (typed according to `outputSchema`) and `toolName` (string): The name of the tool
278
+
279
+ ### Error Handling
280
+
281
+ Hook errors are caught and logged automatically, but do not prevent tool execution from continuing. If a hook throws an error, it will be logged to the console but will not fail the tool call.
282
+
152
283
  ## Related
153
284
 
154
- - [Tools Overview](/docs/v1/tools-mcp/overview)
285
+ - [MCP Overview](/docs/v1/mcp/overview)
155
286
  - [Using Tools with Agents](/docs/v1/agents/using-tools)
156
- - [Tool Request Context](/docs/v1/tools-mcp/overview#using-requestcontext)
157
- - [Advanced Tool Usage](/docs/v1/tools-mcp/advanced-usage)
287
+ - [Tool Streaming](/docs/v1/streaming/tool-streaming)
288
+ - [Request Context](/docs/v1/server-db/request-context#accessing-values-with-tools)
@@ -1,5 +1,5 @@
1
1
  ---
2
- title: "Reference: createDocumentChunkerTool() | Tools & MCP | Mastra Docs"
2
+ title: "Reference: createDocumentChunkerTool() | Tools & MCP"
3
3
  description: Documentation for the Document Chunker Tool in Mastra, which splits documents into smaller chunks for efficient processing and retrieval.
4
4
  ---
5
5
 
@@ -1,5 +1,5 @@
1
1
  ---
2
- title: "Reference: createGraphRAGTool() | Tools & MCP | Mastra Docs"
2
+ title: "Reference: createGraphRAGTool() | Tools & MCP"
3
3
  description: Documentation for the Graph RAG Tool in Mastra, which enhances RAG by building a graph of semantic relationships between documents.
4
4
  ---
5
5
 
@@ -10,13 +10,13 @@ The `createGraphRAGTool()` creates a tool that enhances RAG by building a graph
10
10
  ## Usage Example
11
11
 
12
12
  ```typescript
13
- import { openai } from "@ai-sdk/openai";
14
13
  import { createGraphRAGTool } from "@mastra/rag";
14
+ import { ModelRouterEmbeddingModel } from "@mastra/core/llm";
15
15
 
16
16
  const graphTool = createGraphRAGTool({
17
17
  vectorStoreName: "pinecone",
18
18
  indexName: "docs",
19
- model: openai.embedding("text-embedding-3-small"),
19
+ model: new ModelRouterEmbeddingModel("openai/text-embedding-3-small"),
20
20
  graphOptions: {
21
21
  dimension: 1536,
22
22
  threshold: 0.7,
@@ -193,7 +193,7 @@ The default description focuses on:
193
193
  const graphTool = createGraphRAGTool({
194
194
  vectorStoreName: "pinecone",
195
195
  indexName: "docs",
196
- model: openai.embedding("text-embedding-3-small"),
196
+ model: new ModelRouterEmbeddingModel("openai/text-embedding-3-small"),
197
197
  graphOptions: {
198
198
  dimension: 1536,
199
199
  threshold: 0.8, // Higher similarity threshold
@@ -209,7 +209,7 @@ const graphTool = createGraphRAGTool({
209
209
  const graphTool = createGraphRAGTool({
210
210
  vectorStoreName: "pinecone",
211
211
  indexName: "docs",
212
- model: openai.embedding("text-embedding-3-small"),
212
+ model: "openai/text-embedding-3-small ",
213
213
  description:
214
214
  "Analyze document relationships to find complex patterns and connections in our company's historical data",
215
215
  });
@@ -223,7 +223,7 @@ This example shows how to customize the tool description for a specific use case
223
223
  const graphTool = createGraphRAGTool({
224
224
  vectorStoreName: "pinecone",
225
225
  indexName: "docs",
226
- model: openai.embedding("text-embedding-3-small"),
226
+ model: "openai/text-embedding-3-small ",
227
227
  });
228
228
  ```
229
229
 
@@ -254,7 +254,7 @@ const response = await agent.generate(
254
254
  For more information on request context, please see:
255
255
 
256
256
  - [Agent Request Context](/docs/v1/server-db/request-context)
257
- - [Tool Request Context](/docs/v1/tools-mcp/overview#using-requestcontext)
257
+ - [Request Context](/docs/v1/server-db/request-context#accessing-values-with-tools)
258
258
 
259
259
  ## Related
260
260
 
@@ -1,5 +1,5 @@
1
1
  ---
2
- title: "Reference: MCPClient | Tools & MCP | Mastra Docs"
2
+ title: "Reference: MCPClient | Tools & MCP"
3
3
  description: API Reference for MCPClient - A class for managing multiple Model Context Protocol servers and their tools.
4
4
  ---
5
5
 
@@ -99,6 +99,13 @@ Each server in the `servers` map is configured using the `MastraMCPServerDefinit
99
99
  description:
100
100
  "For SSE fallback: Custom fetch configuration for SSE connections. Required when using custom headers with SSE.",
101
101
  },
102
+ {
103
+ name: "fetch",
104
+ type: "FetchLike",
105
+ isOptional: true,
106
+ description:
107
+ "For HTTP servers: Custom fetch implementation used for all network requests. When provided, this function will be used for all HTTP requests, allowing you to add dynamic authentication headers (e.g., refreshing bearer tokens), customize request behavior per-request, or intercept and modify requests/responses. When `fetch` is provided, `requestInit`, `eventSourceInit`, and `authProvider` become optional, as you can handle these concerns within your custom fetch function.",
108
+ },
102
109
  {
103
110
  name: "logger",
104
111
  type: "LogHandler",
@@ -291,23 +298,6 @@ mcpClient.resources.onListChanged("myWeatherServer", () => {
291
298
  });
292
299
  ```
293
300
 
294
- ### `prompts` Property
295
-
296
- The `MCPClient` instance has a `prompts` property that provides access to prompt-related operations.
297
-
298
- ```typescript
299
- const mcpClient = new MCPClient({
300
- /* ...servers configuration... */
301
- });
302
-
303
- // Access prompt methods via mcpClient.prompts
304
- const allPromptsByServer = await mcpClient.prompts.list();
305
- const { prompt, messages } = await mcpClient.prompts.get({
306
- serverName: "myWeatherServer",
307
- name: "current",
308
- });
309
- ```
310
-
311
301
  ### `elicitation` Property
312
302
 
313
303
  The `MCPClient` instance has an `elicitation` property that provides access to elicitation-related operations. Elicitation allows MCP servers to request structured information from users.
@@ -451,6 +441,23 @@ await mcpClient.elicitation.onRequest("interactiveServer", async (request) => {
451
441
  });
452
442
  ```
453
443
 
444
+ ### `prompts` Property
445
+
446
+ The `MCPClient` instance has a `prompts` property that provides access to prompt-related operations.
447
+
448
+ ```typescript
449
+ const mcpClient = new MCPClient({
450
+ /* ...servers configuration... */
451
+ });
452
+
453
+ // Access prompt methods via mcpClient.prompts
454
+ const allPromptsByServer = await mcpClient.prompts.list();
455
+ const { prompt, messages } = await mcpClient.prompts.get({
456
+ serverName: "myWeatherServer",
457
+ name: "current",
458
+ });
459
+ ```
460
+
454
461
  #### `prompts.list()`
455
462
 
456
463
  Retrieves all available prompts from all connected MCP servers, grouped by server name.
@@ -516,6 +523,63 @@ mcpClient.prompts.onListChanged("myWeatherServer", () => {
516
523
  });
517
524
  ```
518
525
 
526
+ ### `progress` Property
527
+
528
+ The `MCPClient` instance has a `progress` property for subscribing to progress notifications emitted by MCP servers while tools execute.
529
+
530
+ ```typescript
531
+ const mcpClient = new MCPClient({
532
+ servers: {
533
+ myServer: {
534
+ url: new URL('http://localhost:4111/api/mcp/myServer/mcp'),
535
+ // Enabled by default; set to false to disable
536
+ enableProgressTracking: true,
537
+ },
538
+ },
539
+ });
540
+
541
+ // Subscribe to progress updates for a specific server
542
+ await mcpClient.progress.onUpdate('myServer', (params) => {
543
+ console.log('📊 Progress:', params.progress, '/', params.total);
544
+ if (params.message) console.log('Message:', params.message);
545
+ if (params.progressToken) console.log('Token:', params.progressToken);
546
+ });
547
+ ```
548
+
549
+ #### `progress.onUpdate(serverName: string, handler)`
550
+
551
+ Registers a handler function to receive progress updates from the specified server.
552
+
553
+ ```typescript
554
+ async onUpdate(
555
+ serverName: string,
556
+ handler: (params: {
557
+ progressToken: string;
558
+ progress: number;
559
+ total?: number;
560
+ message?: string;
561
+ }) => void,
562
+ ): Promise<void>
563
+ ```
564
+
565
+ Notes:
566
+
567
+ - When `enableProgressTracking` is true (default), tool calls include a `progressToken` so you can correlate updates to a specific run.
568
+ - If you pass a `runId` when executing a tool, it will be used as the `progressToken`.
569
+
570
+ To disable progress tracking for a server:
571
+
572
+ ```typescript
573
+ const mcpClient = new MCPClient({
574
+ servers: {
575
+ myServer: {
576
+ url: new URL('http://localhost:4111/api/mcp/myServer/mcp'),
577
+ enableProgressTracking: false,
578
+ },
579
+ },
580
+ });
581
+ ```
582
+
519
583
  ## Elicitation
520
584
 
521
585
  Elicitation is a feature that allows MCP servers to request structured information from users. When a server needs additional data, it can send an elicitation request that the client handles by prompting the user. A common example is during a tool call.
@@ -632,7 +696,6 @@ For tools where you have a single connection to the MCP server for you entire ap
632
696
  ```typescript
633
697
  import { MCPClient } from "@mastra/mcp";
634
698
  import { Agent } from "@mastra/core/agent";
635
- import { openai } from "@ai-sdk/openai";
636
699
 
637
700
  const mcp = new MCPClient({
638
701
  servers: {
@@ -657,7 +720,7 @@ const mcp = new MCPClient({
657
720
  const agent = new Agent({
658
721
  name: "Multi-tool Agent",
659
722
  instructions: "You have access to multiple tool servers.",
660
- model: openai("gpt-4"),
723
+ model: "openai/gpt-5.1",
661
724
  tools: await mcp.listTools(),
662
725
  });
663
726
 
@@ -707,13 +770,12 @@ When you need a new MCP connection for each user, use `listToolsets()` and add t
707
770
  ```typescript
708
771
  import { Agent } from "@mastra/core/agent";
709
772
  import { MCPClient } from "@mastra/mcp";
710
- import { openai } from "@ai-sdk/openai";
711
773
 
712
774
  // Create the agent first, without any tools
713
775
  const agent = new Agent({
714
776
  name: "Multi-tool Agent",
715
777
  instructions: "You help users check stocks and weather.",
716
- model: openai("gpt-4"),
778
+ model: "openai/gpt-5.1",
717
779
  });
718
780
 
719
781
  // Later, configure MCP with user-specific settings
@@ -799,11 +861,40 @@ MCPClient handles server connections gracefully:
799
861
  2. Graceful server shutdown to prevent error messages during development
800
862
  3. Proper cleanup of resources when disconnecting
801
863
 
864
+ ## Using Custom Fetch for Dynamic Authentication
865
+
866
+ For HTTP servers, you can provide a custom `fetch` function to handle dynamic authentication, request interception, or other custom behavior. This is particularly useful when you need to refresh tokens on each request or customize request behavior.
867
+
868
+ When `fetch` is provided, `requestInit`, `eventSourceInit`, and `authProvider` become optional, as you can handle these concerns within your custom fetch function.
869
+
870
+ ```typescript
871
+ const mcpClient = new MCPClient({
872
+ servers: {
873
+ apiServer: {
874
+ url: new URL("https://api.example.com/mcp"),
875
+ fetch: async (url, init) => {
876
+ // Refresh token on each request
877
+ const token = await getAuthToken(); // Your token refresh logic
878
+
879
+ return fetch(url, {
880
+ ...init,
881
+ headers: {
882
+ ...init?.headers,
883
+ Authorization: `Bearer ${token}`,
884
+ },
885
+ });
886
+ },
887
+ },
888
+ },
889
+ });
890
+ ```
891
+
802
892
  ## Using SSE Request Headers
803
893
 
804
- When using the legacy SSE MCP transport, you must configure both `requestInit` and `eventSourceInit` due to a bug in the MCP SDK:
894
+ When using the legacy SSE MCP transport, you must configure both `requestInit` and `eventSourceInit` due to a bug in the MCP SDK. Alternatively, you can use a custom `fetch` function which will be automatically used for both POST requests and SSE connections:
805
895
 
806
896
  ```ts
897
+ // Option 1: Using requestInit and eventSourceInit (required for SSE)
807
898
  const sseClient = new MCPClient({
808
899
  servers: {
809
900
  exampleServer: {
@@ -828,6 +919,23 @@ const sseClient = new MCPClient({
828
919
  },
829
920
  },
830
921
  });
922
+
923
+ // Option 2: Using custom fetch (simpler, works for both Streamable HTTP and SSE)
924
+ const sseClientWithFetch = new MCPClient({
925
+ servers: {
926
+ exampleServer: {
927
+ url: new URL("https://your-mcp-server.com/sse"),
928
+ fetch: async (url, init) => {
929
+ const headers = new Headers(init?.headers || {});
930
+ headers.set("Authorization", "Bearer your-token");
931
+ return fetch(url, {
932
+ ...init,
933
+ headers,
934
+ });
935
+ },
936
+ },
937
+ },
938
+ });
831
939
  ```
832
940
 
833
941
  ## Related Information