@mastra/mcp-docs-server 1.0.0-beta.9 → 1.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (541) hide show
  1. package/.docs/organized/changelogs/%40internal%2Fchangeset-cli.md +3 -1
  2. package/.docs/organized/changelogs/%40internal%2Fexternal-types.md +3 -1
  3. package/.docs/organized/changelogs/%40internal%2Fplayground.md +60 -0
  4. package/.docs/organized/changelogs/%40internal%2Fstorage-test-utils.md +15 -15
  5. package/.docs/organized/changelogs/%40internal%2Ftypes-builder.md +3 -1
  6. package/.docs/organized/changelogs/%40mastra%2Fagent-builder.md +287 -287
  7. package/.docs/organized/changelogs/%40mastra%2Fai-sdk.md +302 -302
  8. package/.docs/organized/changelogs/%40mastra%2Fastra.md +53 -53
  9. package/.docs/organized/changelogs/%40mastra%2Fauth.md +38 -0
  10. package/.docs/organized/changelogs/%40mastra%2Fchroma.md +66 -66
  11. package/.docs/organized/changelogs/%40mastra%2Fclickhouse.md +522 -212
  12. package/.docs/organized/changelogs/%40mastra%2Fclient-js.md +239 -239
  13. package/.docs/organized/changelogs/%40mastra%2Fcloudflare-d1.md +439 -234
  14. package/.docs/organized/changelogs/%40mastra%2Fcloudflare.md +450 -211
  15. package/.docs/organized/changelogs/%40mastra%2Fcodemod.md +202 -0
  16. package/.docs/organized/changelogs/%40mastra%2Fconvex.md +448 -22
  17. package/.docs/organized/changelogs/%40mastra%2Fcore.md +348 -348
  18. package/.docs/organized/changelogs/%40mastra%2Fcouchbase.md +60 -60
  19. package/.docs/organized/changelogs/%40mastra%2Fdeployer-cloud.md +287 -287
  20. package/.docs/organized/changelogs/%40mastra%2Fdeployer-cloudflare.md +106 -106
  21. package/.docs/organized/changelogs/%40mastra%2Fdeployer-netlify.md +90 -90
  22. package/.docs/organized/changelogs/%40mastra%2Fdeployer-vercel.md +86 -86
  23. package/.docs/organized/changelogs/%40mastra%2Fdeployer.md +221 -221
  24. package/.docs/organized/changelogs/%40mastra%2Fduckdb.md +70 -0
  25. package/.docs/organized/changelogs/%40mastra%2Fdynamodb.md +403 -225
  26. package/.docs/organized/changelogs/%40mastra%2Felasticsearch.md +72 -0
  27. package/.docs/organized/changelogs/%40mastra%2Fevals.md +145 -145
  28. package/.docs/organized/changelogs/%40mastra%2Ffastembed.md +54 -0
  29. package/.docs/organized/changelogs/%40mastra%2Flance.md +456 -226
  30. package/.docs/organized/changelogs/%40mastra%2Flibsql.md +625 -229
  31. package/.docs/organized/changelogs/%40mastra%2Floggers.md +71 -71
  32. package/.docs/organized/changelogs/%40mastra%2Fmcp-docs-server.md +245 -245
  33. package/.docs/organized/changelogs/%40mastra%2Fmcp-registry-registry.md +28 -28
  34. package/.docs/organized/changelogs/%40mastra%2Fmcp.md +281 -281
  35. package/.docs/organized/changelogs/%40mastra%2Fmemory.md +354 -156
  36. package/.docs/organized/changelogs/%40mastra%2Fmongodb.md +545 -212
  37. package/.docs/organized/changelogs/%40mastra%2Fmssql.md +481 -202
  38. package/.docs/organized/changelogs/%40mastra%2Fopensearch.md +194 -194
  39. package/.docs/organized/changelogs/%40mastra%2Fpg.md +781 -235
  40. package/.docs/organized/changelogs/%40mastra%2Fpinecone.md +198 -198
  41. package/.docs/organized/changelogs/%40mastra%2Fplayground-ui.md +282 -282
  42. package/.docs/organized/changelogs/%40mastra%2Fqdrant.md +163 -163
  43. package/.docs/organized/changelogs/%40mastra%2Frag.md +310 -310
  44. package/.docs/organized/changelogs/%40mastra%2Freact.md +328 -237
  45. package/.docs/organized/changelogs/%40mastra%2Fs3vectors.md +64 -0
  46. package/.docs/organized/changelogs/%40mastra%2Fschema-compat.md +160 -0
  47. package/.docs/organized/changelogs/%40mastra%2Fserver.md +230 -230
  48. package/.docs/organized/changelogs/%40mastra%2Fturbopuffer.md +57 -57
  49. package/.docs/organized/changelogs/%40mastra%2Fupstash.md +479 -232
  50. package/.docs/organized/changelogs/%40mastra%2Fvectorize.md +53 -53
  51. package/.docs/organized/changelogs/%40mastra%2Fvoice-azure.md +45 -45
  52. package/.docs/organized/changelogs/%40mastra%2Fvoice-cloudflare.md +45 -45
  53. package/.docs/organized/changelogs/%40mastra%2Fvoice-deepgram.md +47 -47
  54. package/.docs/organized/changelogs/%40mastra%2Fvoice-elevenlabs.md +110 -110
  55. package/.docs/organized/changelogs/%40mastra%2Fvoice-gladia.md +15 -0
  56. package/.docs/organized/changelogs/%40mastra%2Fvoice-google-gemini-live.md +98 -0
  57. package/.docs/organized/changelogs/%40mastra%2Fvoice-google.md +54 -54
  58. package/.docs/organized/changelogs/%40mastra%2Fvoice-murf.md +46 -46
  59. package/.docs/organized/changelogs/%40mastra%2Fvoice-openai-realtime.md +93 -93
  60. package/.docs/organized/changelogs/%40mastra%2Fvoice-openai.md +47 -47
  61. package/.docs/organized/changelogs/%40mastra%2Fvoice-playai.md +45 -45
  62. package/.docs/organized/changelogs/%40mastra%2Fvoice-sarvam.md +45 -45
  63. package/.docs/organized/changelogs/%40mastra%2Fvoice-speechify.md +45 -45
  64. package/.docs/organized/changelogs/create-mastra.md +219 -219
  65. package/.docs/organized/changelogs/mastra.md +276 -276
  66. package/.docs/organized/code-examples/a2a.md +2 -2
  67. package/.docs/organized/code-examples/agent-v6.md +221 -0
  68. package/.docs/organized/code-examples/agui.md +4 -4
  69. package/.docs/organized/code-examples/ai-elements.md +3 -3
  70. package/.docs/organized/code-examples/ai-sdk-useChat.md +2 -2
  71. package/.docs/organized/code-examples/ai-sdk-v5.md +3 -3
  72. package/.docs/organized/code-examples/assistant-ui.md +5 -5
  73. package/.docs/organized/code-examples/bird-checker-with-express.md +1 -1
  74. package/.docs/organized/code-examples/bird-checker-with-nextjs-and-eval.md +2 -2
  75. package/.docs/organized/code-examples/bird-checker-with-nextjs.md +3 -3
  76. package/.docs/organized/code-examples/client-side-tools.md +4 -4
  77. package/.docs/organized/code-examples/crypto-chatbot.md +5 -5
  78. package/.docs/organized/code-examples/experimental-auth-weather-agent.md +1 -1
  79. package/.docs/organized/code-examples/fireworks-r1.md +2 -2
  80. package/.docs/organized/code-examples/heads-up-game.md +7 -7
  81. package/.docs/organized/code-examples/inngest.md +1075 -0
  82. package/.docs/organized/code-examples/mcp-configuration.md +1 -1
  83. package/.docs/organized/code-examples/mcp-server-adapters.md +2 -2
  84. package/.docs/organized/code-examples/memory-per-resource-example.md +3 -3
  85. package/.docs/organized/code-examples/memory-todo-agent.md +1 -1
  86. package/.docs/organized/code-examples/memory-with-context.md +1 -1
  87. package/.docs/organized/code-examples/memory-with-processors.md +1 -1
  88. package/.docs/organized/code-examples/openapi-spec-writer.md +3 -3
  89. package/.docs/organized/code-examples/quick-start.md +1 -5
  90. package/.docs/organized/code-examples/server-app-access.md +2 -2
  91. package/.docs/organized/code-examples/server-express-adapter.md +1 -1
  92. package/.docs/organized/code-examples/server-fastify-adapter.md +83 -0
  93. package/.docs/organized/code-examples/server-hono-adapter.md +2 -2
  94. package/.docs/organized/code-examples/server-koa-adapter.md +94 -0
  95. package/.docs/organized/code-examples/stock-price-tool.md +21 -2
  96. package/.docs/organized/code-examples/workflow-ai-recruiter.md +1 -1
  97. package/.docs/organized/code-examples/workflow-with-inline-steps.md +1 -1
  98. package/.docs/organized/code-examples/workflow-with-memory.md +1 -1
  99. package/.docs/organized/code-examples/workflow-with-separate-steps.md +1 -1
  100. package/.docs/organized/code-examples/workflow-with-suspend-resume.md +1 -1
  101. package/.docs/raw/agents/adding-voice.mdx +24 -6
  102. package/.docs/raw/agents/agent-approval.mdx +209 -12
  103. package/.docs/raw/agents/agent-memory.mdx +36 -32
  104. package/.docs/raw/agents/guardrails.mdx +105 -56
  105. package/.docs/raw/agents/network-approval.mdx +281 -0
  106. package/.docs/raw/agents/networks.mdx +69 -13
  107. package/.docs/raw/agents/overview.mdx +43 -25
  108. package/.docs/raw/agents/processors.mdx +234 -17
  109. package/.docs/raw/agents/structured-output.mdx +78 -8
  110. package/.docs/raw/agents/using-tools.mdx +67 -6
  111. package/.docs/raw/course/01-first-agent/07-creating-your-agent.md +1 -2
  112. package/.docs/raw/course/01-first-agent/12-connecting-tool-to-agent.md +1 -1
  113. package/.docs/raw/course/01-first-agent/16-adding-memory-to-agent.md +1 -2
  114. package/.docs/raw/course/02-agent-tools-mcp/05-updating-your-agent.md +1 -1
  115. package/.docs/raw/course/02-agent-tools-mcp/10-updating-agent-instructions-zapier.md +1 -1
  116. package/.docs/raw/course/02-agent-tools-mcp/16-updating-agent-instructions-github.md +1 -1
  117. package/.docs/raw/course/02-agent-tools-mcp/21-updating-agent-instructions-hackernews.md +1 -1
  118. package/.docs/raw/course/02-agent-tools-mcp/27-updating-agent-instructions-filesystem.md +1 -1
  119. package/.docs/raw/course/02-agent-tools-mcp/31-enhancing-memory-configuration.md +3 -3
  120. package/.docs/raw/course/03-agent-memory/04-creating-basic-memory-agent.md +1 -2
  121. package/.docs/raw/course/03-agent-memory/07-understanding-memory-threads.md +35 -0
  122. package/.docs/raw/course/03-agent-memory/08-configuring-conversation-history.md +1 -2
  123. package/.docs/raw/course/03-agent-memory/13-vector-store-configuration.md +1 -1
  124. package/.docs/raw/course/03-agent-memory/16-configuring-semantic-recall.md +4 -5
  125. package/.docs/raw/course/03-agent-memory/18-advanced-configuration-semantic-recall.md +1 -1
  126. package/.docs/raw/course/03-agent-memory/21-configuring-working-memory.md +3 -4
  127. package/.docs/raw/course/03-agent-memory/22-custom-working-memory-templates.md +3 -4
  128. package/.docs/raw/course/03-agent-memory/25-combining-memory-features.md +3 -4
  129. package/.docs/raw/course/03-agent-memory/27-creating-learning-assistant.md +3 -4
  130. package/.docs/raw/course/04-workflows/11-creating-an-ai-agent.md +2 -3
  131. package/.docs/raw/deployment/cloud-providers.mdx +22 -0
  132. package/.docs/raw/deployment/mastra-server.mdx +140 -0
  133. package/.docs/raw/deployment/monorepo.mdx +106 -42
  134. package/.docs/raw/deployment/overview.mdx +35 -48
  135. package/.docs/raw/deployment/web-framework.mdx +17 -19
  136. package/.docs/raw/deployment/workflow-runners.mdx +16 -0
  137. package/.docs/raw/evals/built-in-scorers.mdx +2 -0
  138. package/.docs/raw/evals/custom-scorers.mdx +60 -12
  139. package/.docs/raw/evals/overview.mdx +6 -6
  140. package/.docs/raw/evals/running-in-ci.mdx +4 -2
  141. package/.docs/raw/getting-started/manual-install.mdx +20 -20
  142. package/.docs/raw/getting-started/mcp-docs-server.mdx +59 -2
  143. package/.docs/raw/getting-started/project-structure.mdx +2 -2
  144. package/.docs/raw/getting-started/start.mdx +17 -1
  145. package/.docs/raw/getting-started/studio.mdx +6 -35
  146. package/.docs/raw/guides/agent-frameworks/ai-sdk.mdx +23 -33
  147. package/.docs/raw/guides/build-your-ui/ai-sdk-ui.mdx +1034 -80
  148. package/.docs/raw/guides/build-your-ui/assistant-ui.mdx +8 -8
  149. package/.docs/raw/guides/build-your-ui/copilotkit.mdx +32 -11
  150. package/.docs/raw/{deployment/cloud-providers → guides/deployment}/amazon-ec2.mdx +9 -9
  151. package/.docs/raw/{deployment/cloud-providers → guides/deployment}/aws-lambda.mdx +13 -16
  152. package/.docs/raw/{deployment/cloud-providers → guides/deployment}/azure-app-services.mdx +5 -7
  153. package/.docs/raw/{deployment/cloud-providers → guides/deployment}/cloudflare-deployer.mdx +8 -5
  154. package/.docs/raw/{deployment/cloud-providers → guides/deployment}/digital-ocean.mdx +18 -23
  155. package/.docs/raw/guides/deployment/index.mdx +32 -0
  156. package/.docs/raw/guides/deployment/inngest.mdx +673 -0
  157. package/.docs/raw/{deployment/cloud-providers → guides/deployment}/netlify-deployer.mdx +7 -3
  158. package/.docs/raw/{deployment/cloud-providers → guides/deployment}/vercel-deployer.mdx +8 -5
  159. package/.docs/raw/guides/getting-started/astro.mdx +292 -451
  160. package/.docs/raw/guides/getting-started/express.mdx +72 -153
  161. package/.docs/raw/guides/getting-started/hono.mdx +227 -0
  162. package/.docs/raw/guides/getting-started/next-js.mdx +173 -61
  163. package/.docs/raw/guides/getting-started/nuxt.mdx +505 -0
  164. package/.docs/raw/guides/getting-started/quickstart.mdx +5 -5
  165. package/.docs/raw/guides/getting-started/sveltekit.mdx +238 -409
  166. package/.docs/raw/guides/getting-started/vite-react.mdx +317 -147
  167. package/.docs/raw/guides/guide/ai-recruiter.mdx +10 -10
  168. package/.docs/raw/guides/guide/chef-michel.mdx +9 -11
  169. package/.docs/raw/guides/guide/notes-mcp-server.mdx +15 -15
  170. package/.docs/raw/guides/guide/research-assistant.mdx +20 -20
  171. package/.docs/raw/guides/guide/stock-agent.mdx +5 -5
  172. package/.docs/raw/guides/guide/web-search.mdx +38 -38
  173. package/.docs/raw/guides/guide/whatsapp-chat-bot.mdx +7 -7
  174. package/.docs/raw/guides/index.mdx +0 -1
  175. package/.docs/raw/guides/migrations/ai-sdk-v4-to-v5.mdx +2 -2
  176. package/.docs/raw/guides/migrations/upgrade-to-v1/agent.mdx +105 -4
  177. package/.docs/raw/guides/migrations/upgrade-to-v1/cli.mdx +15 -1
  178. package/.docs/raw/guides/migrations/upgrade-to-v1/client.mdx +170 -0
  179. package/.docs/raw/guides/migrations/upgrade-to-v1/deployment.mdx +42 -0
  180. package/.docs/raw/guides/migrations/upgrade-to-v1/mastra.mdx +0 -35
  181. package/.docs/raw/guides/migrations/upgrade-to-v1/memory.mdx +40 -3
  182. package/.docs/raw/guides/migrations/upgrade-to-v1/overview.mdx +17 -2
  183. package/.docs/raw/guides/migrations/upgrade-to-v1/processors.mdx +11 -0
  184. package/.docs/raw/guides/migrations/upgrade-to-v1/rag.mdx +47 -0
  185. package/.docs/raw/guides/migrations/upgrade-to-v1/storage.mdx +271 -25
  186. package/.docs/raw/guides/migrations/upgrade-to-v1/tracing.mdx +72 -17
  187. package/.docs/raw/guides/migrations/upgrade-to-v1/vectors.mdx +46 -1
  188. package/.docs/raw/guides/migrations/upgrade-to-v1/workflows.mdx +50 -7
  189. package/.docs/raw/guides/migrations/vnext-to-standard-apis.mdx +21 -23
  190. package/.docs/raw/index.mdx +2 -2
  191. package/.docs/raw/mastra-cloud/deployment.mdx +86 -0
  192. package/.docs/raw/mastra-cloud/observability.mdx +43 -0
  193. package/.docs/raw/mastra-cloud/overview.mdx +31 -0
  194. package/.docs/raw/mastra-cloud/setup.mdx +64 -0
  195. package/.docs/raw/mastra-cloud/studio.mdx +35 -0
  196. package/.docs/raw/mcp/overview.mdx +60 -25
  197. package/.docs/raw/mcp/publishing-mcp-server.mdx +7 -4
  198. package/.docs/raw/memory/memory-processors.mdx +17 -12
  199. package/.docs/raw/memory/message-history.mdx +72 -0
  200. package/.docs/raw/memory/overview.mdx +38 -76
  201. package/.docs/raw/memory/semantic-recall.mdx +65 -52
  202. package/.docs/raw/memory/storage.mdx +248 -0
  203. package/.docs/raw/memory/working-memory.mdx +24 -13
  204. package/.docs/raw/observability/logging.mdx +16 -15
  205. package/.docs/raw/observability/overview.mdx +27 -7
  206. package/.docs/raw/observability/tracing/bridges/otel.mdx +7 -4
  207. package/.docs/raw/observability/tracing/exporters/arize.mdx +61 -24
  208. package/.docs/raw/observability/tracing/exporters/braintrust.mdx +32 -22
  209. package/.docs/raw/observability/tracing/exporters/cloud.mdx +24 -5
  210. package/.docs/raw/observability/tracing/exporters/datadog.mdx +175 -0
  211. package/.docs/raw/observability/tracing/exporters/default.mdx +28 -7
  212. package/.docs/raw/observability/tracing/exporters/laminar.mdx +89 -0
  213. package/.docs/raw/observability/tracing/exporters/langfuse.mdx +31 -22
  214. package/.docs/raw/observability/tracing/exporters/langsmith.mdx +33 -3
  215. package/.docs/raw/observability/tracing/exporters/otel.mdx +194 -22
  216. package/.docs/raw/observability/tracing/exporters/posthog.mdx +32 -22
  217. package/.docs/raw/observability/tracing/exporters/sentry.mdx +198 -0
  218. package/.docs/raw/observability/tracing/overview.mdx +388 -108
  219. package/.docs/raw/observability/tracing/processors/sensitive-data-filter.mdx +27 -7
  220. package/.docs/raw/rag/chunking-and-embedding.mdx +22 -33
  221. package/.docs/raw/rag/graph-rag.mdx +223 -0
  222. package/.docs/raw/rag/overview.mdx +6 -3
  223. package/.docs/raw/rag/retrieval.mdx +53 -57
  224. package/.docs/raw/rag/vector-databases.mdx +55 -31
  225. package/.docs/raw/reference/agents/agent.mdx +17 -14
  226. package/.docs/raw/reference/agents/generate.mdx +172 -44
  227. package/.docs/raw/reference/agents/generateLegacy.mdx +5 -3
  228. package/.docs/raw/reference/agents/getDefaultGenerateOptions.mdx +5 -3
  229. package/.docs/raw/reference/agents/getDefaultOptions.mdx +5 -3
  230. package/.docs/raw/reference/agents/getDefaultStreamOptions.mdx +5 -3
  231. package/.docs/raw/reference/agents/getDescription.mdx +3 -1
  232. package/.docs/raw/reference/agents/getInstructions.mdx +5 -3
  233. package/.docs/raw/reference/agents/getLLM.mdx +5 -3
  234. package/.docs/raw/reference/agents/getMemory.mdx +5 -3
  235. package/.docs/raw/reference/agents/getModel.mdx +5 -3
  236. package/.docs/raw/reference/agents/getTools.mdx +4 -2
  237. package/.docs/raw/reference/agents/getVoice.mdx +4 -2
  238. package/.docs/raw/reference/agents/listAgents.mdx +4 -2
  239. package/.docs/raw/reference/agents/listScorers.mdx +5 -3
  240. package/.docs/raw/reference/agents/listTools.mdx +4 -2
  241. package/.docs/raw/reference/agents/listWorkflows.mdx +4 -2
  242. package/.docs/raw/reference/agents/network.mdx +113 -1
  243. package/.docs/raw/reference/ai-sdk/chat-route.mdx +6 -3
  244. package/.docs/raw/reference/ai-sdk/handle-chat-stream.mdx +4 -2
  245. package/.docs/raw/reference/ai-sdk/handle-network-stream.mdx +4 -2
  246. package/.docs/raw/reference/ai-sdk/handle-workflow-stream.mdx +5 -3
  247. package/.docs/raw/reference/ai-sdk/network-route.mdx +6 -3
  248. package/.docs/raw/reference/ai-sdk/to-ai-sdk-stream.mdx +10 -6
  249. package/.docs/raw/reference/ai-sdk/to-ai-sdk-v4-messages.mdx +130 -0
  250. package/.docs/raw/reference/ai-sdk/to-ai-sdk-v5-messages.mdx +110 -0
  251. package/.docs/raw/reference/ai-sdk/with-mastra.mdx +122 -0
  252. package/.docs/raw/reference/ai-sdk/workflow-route.mdx +7 -4
  253. package/.docs/raw/reference/auth/auth0.mdx +5 -3
  254. package/.docs/raw/reference/auth/clerk.mdx +5 -3
  255. package/.docs/raw/reference/auth/firebase.mdx +6 -5
  256. package/.docs/raw/reference/auth/jwt.mdx +5 -3
  257. package/.docs/raw/reference/auth/supabase.mdx +5 -3
  258. package/.docs/raw/reference/auth/workos.mdx +5 -3
  259. package/.docs/raw/reference/cli/create-mastra.mdx +12 -10
  260. package/.docs/raw/reference/cli/mastra.mdx +63 -15
  261. package/.docs/raw/reference/client-js/agents.mdx +77 -35
  262. package/.docs/raw/reference/client-js/error-handling.mdx +3 -3
  263. package/.docs/raw/reference/client-js/logs.mdx +2 -0
  264. package/.docs/raw/reference/client-js/mastra-client.mdx +4 -2
  265. package/.docs/raw/reference/client-js/memory.mdx +43 -1
  266. package/.docs/raw/reference/client-js/observability.mdx +2 -0
  267. package/.docs/raw/reference/client-js/telemetry.mdx +2 -0
  268. package/.docs/raw/reference/client-js/tools.mdx +2 -0
  269. package/.docs/raw/reference/client-js/vectors.mdx +2 -0
  270. package/.docs/raw/reference/client-js/workflows.mdx +47 -3
  271. package/.docs/raw/reference/configuration.mdx +761 -0
  272. package/.docs/raw/reference/core/addGateway.mdx +2 -0
  273. package/.docs/raw/reference/core/getAgent.mdx +3 -1
  274. package/.docs/raw/reference/core/getAgentById.mdx +3 -1
  275. package/.docs/raw/reference/core/getDeployer.mdx +3 -1
  276. package/.docs/raw/reference/core/getGateway.mdx +2 -0
  277. package/.docs/raw/reference/core/getGatewayById.mdx +2 -0
  278. package/.docs/raw/reference/core/getLogger.mdx +3 -1
  279. package/.docs/raw/reference/core/getMCPServer.mdx +3 -1
  280. package/.docs/raw/reference/core/getMCPServerById.mdx +3 -1
  281. package/.docs/raw/reference/core/getMemory.mdx +7 -3
  282. package/.docs/raw/reference/core/getScorer.mdx +2 -0
  283. package/.docs/raw/reference/core/getScorerById.mdx +2 -0
  284. package/.docs/raw/reference/core/getServer.mdx +6 -4
  285. package/.docs/raw/reference/core/getStorage.mdx +5 -3
  286. package/.docs/raw/reference/core/getStoredAgentById.mdx +6 -4
  287. package/.docs/raw/reference/core/getTelemetry.mdx +3 -1
  288. package/.docs/raw/reference/core/getVector.mdx +3 -1
  289. package/.docs/raw/reference/core/getWorkflow.mdx +3 -1
  290. package/.docs/raw/reference/core/listAgents.mdx +3 -1
  291. package/.docs/raw/reference/core/listGateways.mdx +2 -0
  292. package/.docs/raw/reference/core/listLogs.mdx +3 -1
  293. package/.docs/raw/reference/core/listLogsByRunId.mdx +3 -1
  294. package/.docs/raw/reference/core/listMCPServers.mdx +3 -1
  295. package/.docs/raw/reference/core/listMemory.mdx +8 -4
  296. package/.docs/raw/reference/core/listScorers.mdx +2 -0
  297. package/.docs/raw/reference/core/listStoredAgents.mdx +7 -5
  298. package/.docs/raw/reference/core/listVectors.mdx +3 -1
  299. package/.docs/raw/reference/core/listWorkflows.mdx +3 -1
  300. package/.docs/raw/reference/core/mastra-class.mdx +27 -20
  301. package/.docs/raw/reference/core/mastra-model-gateway.mdx +2 -0
  302. package/.docs/raw/reference/core/setLogger.mdx +3 -1
  303. package/.docs/raw/reference/core/setStorage.mdx +6 -4
  304. package/.docs/raw/reference/deployer/cloudflare.mdx +22 -53
  305. package/.docs/raw/reference/deployer/deployer.mdx +2 -1
  306. package/.docs/raw/reference/deployer/netlify.mdx +4 -1
  307. package/.docs/raw/reference/deployer/vercel.mdx +5 -4
  308. package/.docs/raw/reference/evals/answer-relevancy.mdx +4 -1
  309. package/.docs/raw/reference/evals/answer-similarity.mdx +4 -1
  310. package/.docs/raw/reference/evals/bias.mdx +4 -1
  311. package/.docs/raw/reference/evals/completeness.mdx +4 -1
  312. package/.docs/raw/reference/evals/content-similarity.mdx +4 -1
  313. package/.docs/raw/reference/evals/context-precision.mdx +4 -1
  314. package/.docs/raw/reference/evals/context-relevance.mdx +2 -0
  315. package/.docs/raw/reference/evals/create-scorer.mdx +11 -3
  316. package/.docs/raw/reference/evals/faithfulness.mdx +4 -1
  317. package/.docs/raw/reference/evals/hallucination.mdx +4 -1
  318. package/.docs/raw/reference/evals/keyword-coverage.mdx +4 -1
  319. package/.docs/raw/reference/evals/mastra-scorer.mdx +2 -0
  320. package/.docs/raw/reference/evals/noise-sensitivity.mdx +2 -0
  321. package/.docs/raw/reference/evals/prompt-alignment.mdx +9 -7
  322. package/.docs/raw/reference/evals/run-evals.mdx +3 -1
  323. package/.docs/raw/reference/evals/scorer-utils.mdx +3 -0
  324. package/.docs/raw/reference/evals/textual-difference.mdx +4 -1
  325. package/.docs/raw/reference/evals/tone-consistency.mdx +4 -1
  326. package/.docs/raw/reference/evals/tool-call-accuracy.mdx +25 -23
  327. package/.docs/raw/reference/evals/toxicity.mdx +4 -1
  328. package/.docs/raw/reference/index.mdx +2 -1
  329. package/.docs/raw/reference/logging/pino-logger.mdx +10 -8
  330. package/.docs/raw/reference/memory/clone-utilities.mdx +345 -0
  331. package/.docs/raw/reference/memory/cloneThread.mdx +237 -0
  332. package/.docs/raw/reference/memory/createThread.mdx +6 -4
  333. package/.docs/raw/reference/memory/deleteMessages.mdx +4 -2
  334. package/.docs/raw/reference/memory/getThreadById.mdx +3 -1
  335. package/.docs/raw/reference/memory/listThreads.mdx +187 -0
  336. package/.docs/raw/reference/memory/memory-class.mdx +27 -20
  337. package/.docs/raw/reference/memory/recall.mdx +6 -4
  338. package/.docs/raw/reference/observability/tracing/bridges/otel.mdx +6 -2
  339. package/.docs/raw/reference/observability/tracing/configuration.mdx +51 -0
  340. package/.docs/raw/reference/observability/tracing/exporters/arize.mdx +25 -6
  341. package/.docs/raw/reference/observability/tracing/exporters/braintrust.mdx +23 -2
  342. package/.docs/raw/reference/observability/tracing/exporters/cloud-exporter.mdx +10 -0
  343. package/.docs/raw/reference/observability/tracing/exporters/console-exporter.mdx +3 -0
  344. package/.docs/raw/reference/observability/tracing/exporters/datadog.mdx +172 -0
  345. package/.docs/raw/reference/observability/tracing/exporters/default-exporter.mdx +10 -0
  346. package/.docs/raw/reference/observability/tracing/exporters/laminar.mdx +139 -0
  347. package/.docs/raw/reference/observability/tracing/exporters/langfuse.mdx +26 -4
  348. package/.docs/raw/reference/observability/tracing/exporters/langsmith.mdx +10 -0
  349. package/.docs/raw/reference/observability/tracing/exporters/otel.mdx +51 -34
  350. package/.docs/raw/reference/observability/tracing/exporters/posthog.mdx +25 -4
  351. package/.docs/raw/reference/observability/tracing/exporters/sentry.mdx +224 -0
  352. package/.docs/raw/reference/observability/tracing/instances.mdx +2 -0
  353. package/.docs/raw/reference/observability/tracing/interfaces.mdx +20 -0
  354. package/.docs/raw/reference/observability/tracing/processors/sensitive-data-filter.mdx +2 -0
  355. package/.docs/raw/reference/observability/tracing/spans.mdx +2 -0
  356. package/.docs/raw/reference/processors/batch-parts-processor.mdx +4 -2
  357. package/.docs/raw/reference/processors/language-detector.mdx +6 -3
  358. package/.docs/raw/reference/processors/message-history-processor.mdx +5 -2
  359. package/.docs/raw/reference/processors/moderation-processor.mdx +6 -4
  360. package/.docs/raw/reference/processors/pii-detector.mdx +6 -4
  361. package/.docs/raw/reference/processors/processor-interface.mdx +326 -23
  362. package/.docs/raw/reference/processors/prompt-injection-detector.mdx +5 -3
  363. package/.docs/raw/reference/processors/semantic-recall-processor.mdx +7 -2
  364. package/.docs/raw/reference/processors/system-prompt-scrubber.mdx +5 -3
  365. package/.docs/raw/reference/processors/token-limiter-processor.mdx +62 -19
  366. package/.docs/raw/reference/processors/tool-call-filter.mdx +5 -3
  367. package/.docs/raw/reference/processors/unicode-normalizer.mdx +6 -3
  368. package/.docs/raw/reference/processors/working-memory-processor.mdx +6 -3
  369. package/.docs/raw/reference/rag/chunk.mdx +7 -6
  370. package/.docs/raw/reference/rag/database-config.mdx +8 -6
  371. package/.docs/raw/reference/rag/document.mdx +2 -0
  372. package/.docs/raw/reference/rag/embeddings.mdx +2 -0
  373. package/.docs/raw/reference/rag/extract-params.mdx +57 -3
  374. package/.docs/raw/reference/rag/graph-rag.mdx +2 -0
  375. package/.docs/raw/reference/rag/metadata-filters.mdx +27 -7
  376. package/.docs/raw/reference/rag/rerank.mdx +2 -0
  377. package/.docs/raw/reference/rag/rerankWithScorer.mdx +2 -0
  378. package/.docs/raw/reference/server/create-route.mdx +34 -18
  379. package/.docs/raw/reference/server/express-adapter.mdx +27 -51
  380. package/.docs/raw/reference/server/fastify-adapter.mdx +130 -0
  381. package/.docs/raw/reference/server/hono-adapter.mdx +27 -51
  382. package/.docs/raw/reference/server/koa-adapter.mdx +129 -0
  383. package/.docs/raw/reference/server/mastra-server.mdx +52 -34
  384. package/.docs/raw/reference/server/routes.mdx +73 -10
  385. package/.docs/raw/reference/storage/cloudflare-d1.mdx +10 -5
  386. package/.docs/raw/reference/storage/cloudflare.mdx +12 -2
  387. package/.docs/raw/reference/storage/composite.mdx +245 -0
  388. package/.docs/raw/reference/storage/convex.mdx +8 -6
  389. package/.docs/raw/reference/storage/dynamodb.mdx +134 -8
  390. package/.docs/raw/reference/storage/lance.mdx +9 -5
  391. package/.docs/raw/reference/storage/libsql.mdx +76 -54
  392. package/.docs/raw/reference/storage/mongodb.mdx +115 -16
  393. package/.docs/raw/reference/storage/mssql.mdx +11 -6
  394. package/.docs/raw/{server-db/storage.mdx → reference/storage/overview.mdx} +15 -111
  395. package/.docs/raw/reference/storage/postgresql.mdx +228 -83
  396. package/.docs/raw/reference/storage/upstash.mdx +78 -2
  397. package/.docs/raw/reference/streaming/ChunkType.mdx +31 -3
  398. package/.docs/raw/reference/streaming/agents/MastraModelOutput.mdx +67 -6
  399. package/.docs/raw/reference/streaming/agents/stream.mdx +48 -51
  400. package/.docs/raw/reference/streaming/agents/streamLegacy.mdx +5 -3
  401. package/.docs/raw/reference/streaming/workflows/observeStream.mdx +3 -1
  402. package/.docs/raw/reference/streaming/workflows/resumeStream.mdx +3 -1
  403. package/.docs/raw/reference/streaming/workflows/stream.mdx +37 -22
  404. package/.docs/raw/reference/streaming/workflows/timeTravelStream.mdx +6 -4
  405. package/.docs/raw/reference/templates/overview.mdx +3 -2
  406. package/.docs/raw/reference/tools/client.mdx +3 -0
  407. package/.docs/raw/reference/tools/create-tool.mdx +127 -5
  408. package/.docs/raw/reference/tools/document-chunker-tool.mdx +2 -0
  409. package/.docs/raw/reference/tools/graph-rag-tool.mdx +40 -3
  410. package/.docs/raw/reference/tools/mcp-client.mdx +110 -1
  411. package/.docs/raw/reference/tools/mcp-server.mdx +278 -24
  412. package/.docs/raw/reference/tools/vector-query-tool.mdx +68 -4
  413. package/.docs/raw/reference/vectors/astra.mdx +5 -3
  414. package/.docs/raw/reference/vectors/chroma.mdx +5 -3
  415. package/.docs/raw/reference/vectors/convex.mdx +14 -12
  416. package/.docs/raw/reference/vectors/couchbase.mdx +7 -5
  417. package/.docs/raw/reference/vectors/duckdb.mdx +12 -10
  418. package/.docs/raw/reference/vectors/elasticsearch.mdx +12 -4
  419. package/.docs/raw/reference/vectors/lance.mdx +6 -4
  420. package/.docs/raw/reference/vectors/libsql.mdx +66 -13
  421. package/.docs/raw/reference/vectors/mongodb.mdx +90 -10
  422. package/.docs/raw/reference/vectors/opensearch.mdx +30 -3
  423. package/.docs/raw/reference/vectors/pg.mdx +58 -6
  424. package/.docs/raw/reference/vectors/pinecone.mdx +23 -8
  425. package/.docs/raw/reference/vectors/qdrant.mdx +148 -4
  426. package/.docs/raw/reference/vectors/s3vectors.mdx +8 -6
  427. package/.docs/raw/reference/vectors/turbopuffer.mdx +6 -4
  428. package/.docs/raw/reference/vectors/upstash.mdx +60 -6
  429. package/.docs/raw/reference/vectors/vectorize.mdx +5 -3
  430. package/.docs/raw/reference/voice/azure.mdx +2 -0
  431. package/.docs/raw/reference/voice/cloudflare.mdx +2 -0
  432. package/.docs/raw/reference/voice/composite-voice.mdx +4 -0
  433. package/.docs/raw/reference/voice/deepgram.mdx +2 -0
  434. package/.docs/raw/reference/voice/elevenlabs.mdx +2 -0
  435. package/.docs/raw/reference/voice/google-gemini-live.mdx +3 -0
  436. package/.docs/raw/reference/voice/google.mdx +2 -0
  437. package/.docs/raw/reference/voice/mastra-voice.mdx +2 -0
  438. package/.docs/raw/reference/voice/murf.mdx +2 -0
  439. package/.docs/raw/reference/voice/openai-realtime.mdx +3 -0
  440. package/.docs/raw/reference/voice/openai.mdx +2 -0
  441. package/.docs/raw/reference/voice/playai.mdx +2 -0
  442. package/.docs/raw/reference/voice/sarvam.mdx +2 -0
  443. package/.docs/raw/reference/voice/speechify.mdx +2 -0
  444. package/.docs/raw/reference/voice/voice.addInstructions.mdx +3 -0
  445. package/.docs/raw/reference/voice/voice.addTools.mdx +3 -0
  446. package/.docs/raw/reference/voice/voice.answer.mdx +4 -0
  447. package/.docs/raw/reference/voice/voice.close.mdx +3 -0
  448. package/.docs/raw/reference/voice/voice.connect.mdx +5 -1
  449. package/.docs/raw/reference/voice/voice.events.mdx +2 -0
  450. package/.docs/raw/reference/voice/voice.getSpeakers.mdx +3 -0
  451. package/.docs/raw/reference/voice/voice.listen.mdx +6 -0
  452. package/.docs/raw/reference/voice/voice.off.mdx +2 -0
  453. package/.docs/raw/reference/voice/voice.on.mdx +5 -1
  454. package/.docs/raw/reference/voice/voice.send.mdx +4 -0
  455. package/.docs/raw/reference/voice/voice.speak.mdx +6 -0
  456. package/.docs/raw/reference/voice/voice.updateConfig.mdx +2 -0
  457. package/.docs/raw/reference/workflows/run-methods/cancel.mdx +55 -5
  458. package/.docs/raw/reference/workflows/run-methods/restart.mdx +3 -3
  459. package/.docs/raw/reference/workflows/run-methods/resume.mdx +6 -4
  460. package/.docs/raw/reference/workflows/run-methods/start.mdx +7 -5
  461. package/.docs/raw/reference/workflows/run-methods/startAsync.mdx +145 -0
  462. package/.docs/raw/reference/workflows/run-methods/timeTravel.mdx +10 -8
  463. package/.docs/raw/reference/workflows/run.mdx +11 -3
  464. package/.docs/raw/reference/workflows/step.mdx +56 -3
  465. package/.docs/raw/reference/workflows/workflow-methods/branch.mdx +3 -1
  466. package/.docs/raw/reference/workflows/workflow-methods/commit.mdx +3 -1
  467. package/.docs/raw/reference/workflows/workflow-methods/create-run.mdx +39 -2
  468. package/.docs/raw/reference/workflows/workflow-methods/dountil.mdx +3 -1
  469. package/.docs/raw/reference/workflows/workflow-methods/dowhile.mdx +3 -1
  470. package/.docs/raw/reference/workflows/workflow-methods/foreach.mdx +71 -4
  471. package/.docs/raw/reference/workflows/workflow-methods/map.mdx +9 -7
  472. package/.docs/raw/reference/workflows/workflow-methods/parallel.mdx +3 -1
  473. package/.docs/raw/reference/workflows/workflow-methods/sleep.mdx +4 -6
  474. package/.docs/raw/reference/workflows/workflow-methods/sleepUntil.mdx +4 -6
  475. package/.docs/raw/reference/workflows/workflow-methods/then.mdx +3 -1
  476. package/.docs/raw/reference/workflows/workflow.mdx +193 -2
  477. package/.docs/raw/{auth → server/auth}/auth0.mdx +40 -21
  478. package/.docs/raw/{auth → server/auth}/clerk.mdx +37 -16
  479. package/.docs/raw/{auth → server/auth}/firebase.mdx +47 -25
  480. package/.docs/raw/{auth → server/auth}/index.mdx +8 -6
  481. package/.docs/raw/{auth → server/auth}/jwt.mdx +22 -10
  482. package/.docs/raw/{auth → server/auth}/supabase.mdx +45 -25
  483. package/.docs/raw/{auth → server/auth}/workos.mdx +39 -20
  484. package/.docs/raw/{server-db → server}/custom-adapters.mdx +40 -24
  485. package/.docs/raw/{server-db → server}/custom-api-routes.mdx +6 -6
  486. package/.docs/raw/{server-db → server}/mastra-client.mdx +35 -38
  487. package/.docs/raw/server/mastra-server.mdx +86 -0
  488. package/.docs/raw/{server-db → server}/middleware.mdx +11 -9
  489. package/.docs/raw/{server-db → server}/request-context.mdx +85 -43
  490. package/.docs/raw/{server-db → server}/server-adapters.mdx +154 -33
  491. package/.docs/raw/streaming/events.mdx +16 -7
  492. package/.docs/raw/streaming/overview.mdx +30 -17
  493. package/.docs/raw/streaming/tool-streaming.mdx +8 -6
  494. package/.docs/raw/streaming/workflow-streaming.mdx +8 -8
  495. package/.docs/raw/tools-mcp/advanced-usage.mdx +4 -2
  496. package/.docs/raw/tools-mcp/mcp-overview.mdx +46 -12
  497. package/.docs/raw/tools-mcp/overview.mdx +14 -13
  498. package/.docs/raw/voice/overview.mdx +17 -2
  499. package/.docs/raw/voice/speech-to-speech.mdx +5 -0
  500. package/.docs/raw/voice/speech-to-text.mdx +4 -0
  501. package/.docs/raw/voice/text-to-speech.mdx +3 -0
  502. package/.docs/raw/workflows/agents-and-tools.mdx +70 -21
  503. package/.docs/raw/workflows/control-flow.mdx +369 -34
  504. package/.docs/raw/workflows/error-handling.mdx +192 -18
  505. package/.docs/raw/workflows/human-in-the-loop.mdx +8 -7
  506. package/.docs/raw/workflows/input-data-mapping.mdx +9 -7
  507. package/.docs/raw/workflows/overview.mdx +80 -34
  508. package/.docs/raw/workflows/snapshots.mdx +19 -45
  509. package/.docs/raw/workflows/suspend-and-resume.mdx +14 -14
  510. package/.docs/raw/workflows/time-travel.mdx +25 -21
  511. package/.docs/raw/workflows/workflow-state.mdx +7 -8
  512. package/CHANGELOG.md +260 -0
  513. package/README.md +36 -0
  514. package/dist/index.d.ts.map +1 -1
  515. package/dist/logger.d.ts +3 -0
  516. package/dist/logger.d.ts.map +1 -1
  517. package/dist/stdio.js +746 -49
  518. package/dist/tools/course.d.ts.map +1 -1
  519. package/dist/tools/embedded-docs.d.ts +276 -0
  520. package/dist/tools/embedded-docs.d.ts.map +1 -0
  521. package/package.json +9 -8
  522. package/.docs/organized/changelogs/%40internal%2Fai-sdk-v4.md +0 -1
  523. package/.docs/raw/deployment/building-mastra.mdx +0 -73
  524. package/.docs/raw/deployment/cloud-providers/index.mdx +0 -55
  525. package/.docs/raw/deployment/mastra-cloud/dashboard.mdx +0 -100
  526. package/.docs/raw/deployment/mastra-cloud/observability.mdx +0 -53
  527. package/.docs/raw/deployment/mastra-cloud/overview.mdx +0 -65
  528. package/.docs/raw/deployment/mastra-cloud/setting-up.mdx +0 -105
  529. package/.docs/raw/memory/conversation-history.mdx +0 -24
  530. package/.docs/raw/memory/storage/memory-with-libsql.mdx +0 -140
  531. package/.docs/raw/memory/storage/memory-with-mongodb.mdx +0 -150
  532. package/.docs/raw/memory/storage/memory-with-pg.mdx +0 -138
  533. package/.docs/raw/memory/storage/memory-with-upstash.mdx +0 -146
  534. package/.docs/raw/memory/threads-and-resources.mdx +0 -95
  535. package/.docs/raw/reference/core/setTelemetry.mdx +0 -36
  536. package/.docs/raw/reference/memory/listThreadsByResourceId.mdx +0 -110
  537. package/.docs/raw/reference/memory/query.mdx +0 -189
  538. package/.docs/raw/reference/workflows/workflow-methods/sendEvent.mdx +0 -70
  539. package/.docs/raw/reference/workflows/workflow-methods/waitForEvent.mdx +0 -66
  540. package/.docs/raw/server-db/mastra-server.mdx +0 -97
  541. package/.docs/raw/workflows/inngest-workflow.mdx +0 -363
@@ -1,26 +1,31 @@
1
1
  ---
2
2
  title: "Semantic Recall | Memory"
3
3
  description: "Learn how to use semantic recall in Mastra to retrieve relevant messages from past conversations using vector search and embeddings."
4
+ packages:
5
+ - "@mastra/core"
6
+ - "@mastra/fastembed"
7
+ - "@mastra/libsql"
8
+ - "@mastra/memory"
9
+ - "@mastra/pg"
4
10
  ---
5
11
 
6
12
  # Semantic Recall
7
13
 
8
14
  If you ask your friend what they did last weekend, they will search in their memory for events associated with "last weekend" and then tell you what they did. That's sort of like how semantic recall works in Mastra.
9
15
 
10
- > **📹 Watch**: What semantic recall is, how it works, and how to configure it in Mastra → [YouTube (5 minutes)](https://youtu.be/UVZtK8cK8xQ)
16
+ :::tip[Watch 📹]
17
+
18
+ What semantic recall is, how it works, and how to configure it in Mastra → [YouTube (5 minutes)](https://youtu.be/UVZtK8cK8xQ)
19
+
20
+ :::
11
21
 
12
22
  ## How Semantic Recall Works
13
23
 
14
- Semantic recall is RAG-based search that helps agents maintain context across longer interactions when messages are no longer within [recent conversation history](./conversation-history).
24
+ Semantic recall is RAG-based search that helps agents maintain context across longer interactions when messages are no longer within [recent message history](./message-history).
15
25
 
16
26
  It uses vector embeddings of messages for similarity search, integrates with various vector stores, and has configurable context windows around retrieved messages.
17
27
 
18
- <br />
19
- <img
20
- src="/img/semantic-recall.png"
21
- alt="Diagram showing Mastra Memory semantic recall"
22
- width={800}
23
- />
28
+ ![Diagram showing Mastra Memory semantic recall](/img/semantic-recall.png)
24
29
 
25
30
  When it's enabled, new messages are used to query a vector DB for semantically similar messages.
26
31
 
@@ -30,7 +35,7 @@ After getting a response from the LLM, all new messages (user, assistant, and to
30
35
 
31
36
  Semantic recall is enabled by default, so if you give your agent memory it will be included:
32
37
 
33
- ```typescript {8}
38
+ ```typescript {9}
34
39
  import { Agent } from "@mastra/core/agent";
35
40
  import { Memory } from "@mastra/memory";
36
41
 
@@ -43,33 +48,11 @@ const agent = new Agent({
43
48
  });
44
49
  ```
45
50
 
46
- ## Recall configuration
47
-
48
- The three main parameters that control semantic recall behavior are:
49
-
50
- 1. **topK**: How many semantically similar messages to retrieve
51
- 2. **messageRange**: How much surrounding context to include with each match
52
- 3. **scope**: Whether to search within the current thread or across all threads owned by a resource (the default is resource scope).
53
-
54
- ```typescript {5-7}
55
- const agent = new Agent({
56
- memory: new Memory({
57
- options: {
58
- semanticRecall: {
59
- topK: 3, // Retrieve 3 most similar messages
60
- messageRange: 2, // Include 2 messages before and after each match
61
- scope: "resource", // Search across all threads for this user (default setting if omitted)
62
- },
63
- },
64
- }),
65
- });
66
- ```
67
-
68
- ### Storage configuration
51
+ ## Storage configuration
69
52
 
70
53
  Semantic recall relies on a [storage and vector db](/reference/v1/memory/memory-class) to store messages and their embeddings.
71
54
 
72
- ```ts {8-17}
55
+ ```ts {8-16}
73
56
  import { Memory } from "@mastra/memory";
74
57
  import { Agent } from "@mastra/core/agent";
75
58
  import { LibSQLStore, LibSQLVector } from "@mastra/libsql";
@@ -84,20 +67,55 @@ const agent = new Agent({
84
67
  // this is the default vector db if omitted
85
68
  vector: new LibSQLVector({
86
69
  id: 'agent-vector',
87
- connectionUrl: "file:./local.db",
70
+ url: "file:./local.db",
88
71
  }),
89
72
  }),
90
73
  });
91
74
  ```
92
75
 
93
- **Storage/vector code Examples**:
76
+ Each vector store page below includes installation instructions, configuration parameters, and usage examples:
77
+
78
+ - [Astra](/reference/v1/vectors/astra)
79
+ - [Chroma](/reference/v1/vectors/chroma)
80
+ - [Cloudflare Vectorize](/reference/v1/vectors/vectorize)
81
+ - [Convex](/reference/v1/vectors/convex)
82
+ - [Couchbase](/reference/v1/vectors/couchbase)
83
+ - [DuckDB](/reference/v1/vectors/duckdb)
84
+ - [Elasticsearch](/reference/v1/vectors/elasticsearch)
85
+ - [LanceDB](/reference/v1/vectors/lance)
86
+ - [libSQL](/reference/v1/vectors/libsql)
87
+ - [MongoDB](/reference/v1/vectors/mongodb)
88
+ - [OpenSearch](/reference/v1/vectors/opensearch)
89
+ - [Pinecone](/reference/v1/vectors/pinecone)
90
+ - [PostgreSQL](/reference/v1/vectors/pg)
91
+ - [Qdrant](/reference/v1/vectors/qdrant)
92
+ - [S3 Vectors](/reference/v1/vectors/s3vectors)
93
+ - [Turbopuffer](/reference/v1/vectors/turbopuffer)
94
+ - [Upstash](/reference/v1/vectors/upstash)
95
+
96
+ ## Recall configuration
94
97
 
95
- - [LibSQL](/docs/v1/memory/storage/memory-with-libsql)
96
- - [MongoDB](/docs/v1/memory/storage/memory-with-mongodb)
97
- - [Postgres](/docs/v1/memory/storage/memory-with-pg)
98
- - [Upstash](/docs/v1/memory/storage/memory-with-upstash)
98
+ The three main parameters that control semantic recall behavior are:
99
99
 
100
- ### Embedder configuration
100
+ 1. **topK**: How many semantically similar messages to retrieve
101
+ 2. **messageRange**: How much surrounding context to include with each match
102
+ 3. **scope**: Whether to search within the current thread or across all threads owned by a resource (the default is resource scope).
103
+
104
+ ```typescript {5-7}
105
+ const agent = new Agent({
106
+ memory: new Memory({
107
+ options: {
108
+ semanticRecall: {
109
+ topK: 3, // Retrieve 3 most similar messages
110
+ messageRange: 2, // Include 2 messages before and after each match
111
+ scope: "resource", // Search across all threads for this user (default setting if omitted)
112
+ },
113
+ },
114
+ }),
115
+ });
116
+ ```
117
+
118
+ ## Embedder configuration
101
119
 
102
120
  Semantic recall relies on an [embedding model](/reference/v1/memory/memory-class) to convert messages into embeddings. Mastra supports embedding models through the model router using `provider/model` strings, or you can use any [embedding model](https://sdk.vercel.ai/docs/ai-sdk-core/embeddings) compatible with the AI SDK.
103
121
 
@@ -112,7 +130,6 @@ import { ModelRouterEmbeddingModel } from "@mastra/core/llm";
112
130
 
113
131
  const agent = new Agent({
114
132
  memory: new Memory({
115
- // ... other memory options
116
133
  embedder: new ModelRouterEmbeddingModel("openai/text-embedding-3-small"),
117
134
  }),
118
135
  });
@@ -136,7 +153,6 @@ import { ModelRouterEmbeddingModel } from "@mastra/core/llm";
136
153
 
137
154
  const agent = new Agent({
138
155
  memory: new Memory({
139
- // ... other memory options
140
156
  embedder: new ModelRouterEmbeddingModel("openai/text-embedding-3-small"),
141
157
  }),
142
158
  });
@@ -146,32 +162,31 @@ const agent = new Agent({
146
162
 
147
163
  To use FastEmbed (a local embedding model), install `@mastra/fastembed`:
148
164
 
149
- ```bash npm2yarn copy
165
+ ```bash npm2yarn
150
166
  npm install @mastra/fastembed@beta
151
167
  ```
152
168
 
153
169
  Then configure it in your memory:
154
170
 
155
- ```ts {3,8}
171
+ ```ts {3,7}
156
172
  import { Memory } from "@mastra/memory";
157
173
  import { Agent } from "@mastra/core/agent";
158
174
  import { fastembed } from "@mastra/fastembed";
159
175
 
160
176
  const agent = new Agent({
161
177
  memory: new Memory({
162
- // ... other memory options
163
178
  embedder: fastembed,
164
179
  }),
165
180
  });
166
181
  ```
167
182
 
168
- ### PostgreSQL Index Optimization
183
+ ## PostgreSQL Index Optimization
169
184
 
170
185
  When using PostgreSQL as your vector store, you can optimize semantic recall performance by configuring the vector index. This is particularly important for large-scale deployments with thousands of messages.
171
186
 
172
187
  PostgreSQL supports both IVFFlat and HNSW indexes. By default, Mastra creates an IVFFlat index, but HNSW indexes typically provide better performance, especially with OpenAI embeddings which use inner product distance.
173
188
 
174
- ```typescript {9-18}
189
+ ```typescript {18-23}
175
190
  import { Memory } from "@mastra/memory";
176
191
  import { PgStore, PgVector } from "@mastra/pg";
177
192
 
@@ -203,7 +218,7 @@ const agent = new Agent({
203
218
 
204
219
  For detailed information about index configuration options and performance tuning, see the [PgVector configuration guide](/reference/v1/vectors/pg#index-configuration-guide).
205
220
 
206
- ### Disabling
221
+ ## Disabling
207
222
 
208
223
  There is a performance impact to using semantic recall. New messages are converted into embeddings and used to query a vector database before new messages are sent to the LLM.
209
224
 
@@ -221,11 +236,9 @@ const agent = new Agent({
221
236
 
222
237
  You might want to disable semantic recall in scenarios like:
223
238
 
224
- - When conversation history provide sufficient context for the current conversation.
239
+ - When message history provides sufficient context for the current conversation.
225
240
  - In performance-sensitive applications, like realtime two-way audio, where the added latency of creating embeddings and running vector queries is noticeable.
226
241
 
227
242
  ## Viewing Recalled Messages
228
243
 
229
- When tracing is enabled, any messages retrieved via semantic recall will appear in the agents trace output, alongside recent conversation history (if configured).
230
-
231
- For more info on viewing message traces, see [Viewing Retrieved Messages](./overview#viewing-retrieved-messages).
244
+ When tracing is enabled, any messages retrieved via semantic recall will appear in the agent's trace output, alongside recent message history (if configured).
@@ -0,0 +1,248 @@
1
+ ---
2
+ title: "Storage | Memory"
3
+ description: Configure storage for Mastra's memory system to persist conversations, workflows, and traces.
4
+ packages:
5
+ - "@mastra/core"
6
+ - "@mastra/libsql"
7
+ - "@mastra/memory"
8
+ - "@mastra/pg"
9
+ - "@mastra/pinecone"
10
+ ---
11
+
12
+ # Storage
13
+
14
+ For Mastra to remember previous interactions, you must configure a storage adapter. Mastra is designed to work with your preferred database provider - choose from the [supported providers](#supported-providers) and pass it to your Mastra instance.
15
+
16
+
17
+ ```typescript title="src/mastra/index.ts"
18
+ import { Mastra } from "@mastra/core";
19
+ import { LibSQLStore } from "@mastra/libsql";
20
+
21
+ export const mastra = new Mastra({
22
+ storage: new LibSQLStore({
23
+ id: 'mastra-storage',
24
+ url: "file:./mastra.db",
25
+ }),
26
+ });
27
+ ```
28
+ On first interaction, Mastra automatically creates the necessary tables following the [core schema](/reference/v1/storage/overview#core-schema). This includes tables for messages, threads, resources, workflows, traces, and evaluation datasets.
29
+
30
+ ## Supported providers
31
+
32
+ Each provider page includes installation instructions, configuration parameters, and usage examples:
33
+
34
+ - [libSQL Storage](/reference/v1/storage/libsql)
35
+ - [PostgreSQL Storage](/reference/v1/storage/postgresql)
36
+ - [MongoDB Storage](/reference/v1/storage/mongodb)
37
+ - [Upstash Storage](/reference/v1/storage/upstash)
38
+ - [Cloudflare D1](/reference/v1/storage/cloudflare-d1)
39
+ - [Cloudflare Durable Objects](/reference/v1/storage/cloudflare)
40
+ - [Convex](/reference/v1/storage/convex)
41
+ - [DynamoDB](/reference/v1/storage/dynamodb)
42
+ - [LanceDB](/reference/v1/storage/lance)
43
+ - [Microsoft SQL Server](/reference/v1/storage/mssql)
44
+
45
+ :::tip
46
+ libSQL is the easiest way to get started because it doesn’t require running a separate database server
47
+ :::
48
+
49
+ ## Configuration scope
50
+
51
+ You can configure storage at two different scopes:
52
+
53
+ ### Instance-level storage
54
+
55
+ Add storage to your Mastra instance so all agents, workflows, observability traces and scores share the same memory provider:
56
+
57
+ ```typescript
58
+ import { Mastra } from "@mastra/core";
59
+ import { PostgresStore } from "@mastra/pg";
60
+
61
+ export const mastra = new Mastra({
62
+ storage: new PostgresStore({
63
+ id: 'mastra-storage',
64
+ connectionString: process.env.DATABASE_URL,
65
+ }),
66
+ });
67
+
68
+ // All agents automatically use this storage
69
+ const agent1 = new Agent({ id: "agent-1", memory: new Memory() });
70
+ const agent2 = new Agent({ id: "agent-2", memory: new Memory() });
71
+ ```
72
+
73
+ This is useful when all primitives share the same storage backend and have similar performance, scaling, and operational requirements.
74
+
75
+ #### Composite storage
76
+
77
+ Add storage to your Mastra instance using `MastraCompositeStore` and configure individual storage domains to use different storage providers.
78
+
79
+ ```typescript title="src/mastra/index.ts"
80
+ import { Mastra } from "@mastra/core";
81
+ import { MastraCompositeStore } from "@mastra/core/storage";
82
+ import { MemoryLibSQL } from "@mastra/libsql";
83
+ import { WorkflowsPG } from "@mastra/pg";
84
+ import { ObservabilityStorageClickhouse } from "@mastra/clickhouse";
85
+
86
+ export const mastra = new Mastra({
87
+ storage: new MastraCompositeStore({
88
+ id: "composite",
89
+ domains: {
90
+ memory: new MemoryLibSQL({ url: "file:./memory.db" }),
91
+ workflows: new WorkflowsPG({ connectionString: process.env.DATABASE_URL }),
92
+ observability: new ObservabilityStorageClickhouse({
93
+ url: process.env.CLICKHOUSE_URL,
94
+ username: process.env.CLICKHOUSE_USERNAME,
95
+ password: process.env.CLICKHOUSE_PASSWORD,
96
+ }),
97
+ },
98
+ }),
99
+ });
100
+ ```
101
+
102
+ This is useful when different types of data have different performance or operational requirements, such as low-latency storage for memory, durable storage for workflows, and high-throughput storage for observability.
103
+
104
+ :::info
105
+ See [Storage Domains](/reference/v1/storage/composite#storage-domains) for more information.
106
+ :::
107
+
108
+ ### Agent-level storage
109
+
110
+ Agent-level storage overrides storage configured at the instance-level. Add storage to a specific agent when you need data boundaries or compliance requirements:
111
+
112
+ ```typescript title="src/mastra/agents/memory-agent.ts"
113
+ import { Agent } from "@mastra/core/agent";
114
+ import { Memory } from "@mastra/memory";
115
+ import { PostgresStore } from "@mastra/pg";
116
+
117
+ export const agent = new Agent({
118
+ id: "agent",
119
+ memory: new Memory({
120
+ storage: new PostgresStore({
121
+ id: 'agent-storage',
122
+ connectionString: process.env.AGENT_DATABASE_URL,
123
+ }),
124
+ }),
125
+ });
126
+ ```
127
+
128
+ This is useful when different agents need to store data in separate databases for security, compliance, or organizational reasons.
129
+
130
+ :::warning[Mastra Cloud Store limitation]
131
+ Agent-level storage is not supported when using [Mastra Cloud Store](/docs/v1/mastra-cloud/deployment#using-mastra-cloud-store). If you use Mastra Cloud Store, configure storage on the Mastra instance instead. This limitation does not apply if you bring your own database.
132
+ :::
133
+
134
+ ## Threads and resources
135
+
136
+ Mastra organizes memory into threads using two identifiers:
137
+
138
+ - **Thread**: A conversation session containing a sequence of messages (e.g., `convo_123`)
139
+ - **Resource**: An identifier for the entity the thread belongs to, typically a user (e.g., `user_123`)
140
+
141
+ Both identifiers are required for agents to store and recall information:
142
+
143
+ ```typescript
144
+ const stream = await agent.stream("message for agent", {
145
+ memory: {
146
+ thread: "convo_123",
147
+ resource: "user_123",
148
+ },
149
+ });
150
+ ```
151
+
152
+ :::note
153
+ [Studio](/docs/v1/getting-started/studio) automatically generates a thread and resource ID for you. Remember to to pass these explicitly when calling `stream` or `generate` yourself.
154
+ :::
155
+
156
+ ### Thread and resource relationship
157
+
158
+ Each thread has an owner (its `resourceId`) that is set when the thread is created and cannot be changed. When you query a thread, you must use the correct owner's resource ID. Attempting to query a thread with a different resource ID will result in an error:
159
+
160
+ ```text
161
+ Thread with id <thread_id> is for resource with id <resource_a>
162
+ but resource <resource_b> was queried
163
+ ```
164
+
165
+ Note that while each thread has one owner, messages within that thread can have different `resourceId` values. This is used for message attribution and filtering (e.g., distinguishing between different agents in a multi-agent system, or filtering messages for analytics).
166
+
167
+ **Security:** Memory is a storage layer, not an authorization layer. Your application must implement access control before calling memory APIs. The `resourceId` parameter controls both validation and filtering - provide it to validate ownership and filter messages, or omit it for server-side access without validation.
168
+
169
+ To avoid accidentally reusing thread IDs across different owners, use UUIDs: `crypto.randomUUID()`
170
+
171
+ ### Thread title generation
172
+
173
+ Mastra can automatically generate descriptive thread titles based on the user's first message.
174
+
175
+ Use this option when implementing a ChatGPT-style chat interface to render a title alongside each thread in the conversation list (for example, in a sidebar) derived from the thread’s initial user message.
176
+
177
+ ```typescript
178
+ export const testAgent = new Agent({
179
+ id: "test-agent",
180
+ memory: new Memory({
181
+ options: {
182
+ generateTitle: true,
183
+ },
184
+ }),
185
+ });
186
+ ```
187
+
188
+ Title generation runs asynchronously after the agent responds and does not affect response time.
189
+
190
+ To optimize cost or behavior, provide a smaller `model` and custom `instructions`:
191
+
192
+ ```typescript
193
+ export const testAgent = new Agent({
194
+ id: "test-agent",
195
+ memory: new Memory({
196
+ options: {
197
+ generateTitle: {
198
+ model: "openai/gpt-4o-mini",
199
+ instructions: "Generate a concise title based on the user's first message",
200
+ },
201
+ },
202
+ }),
203
+ });
204
+ ```
205
+
206
+ ## Semantic recall
207
+
208
+ Semantic recall uses vector embeddings to retrieve relevant past messages based on meaning rather than recency. This requires a vector database instance, which can be configured at the instance or agent level.
209
+
210
+ The vector database doesn't have to be the same as your storage provider. For example, you might use PostgreSQL for storage and Pinecone for vectors:
211
+
212
+ ```typescript
213
+ import { Mastra } from "@mastra/core";
214
+ import { Agent } from "@mastra/core/agent";
215
+ import { Memory } from "@mastra/memory";
216
+ import { PostgresStore } from "@mastra/pg";
217
+ import { PineconeVector } from "@mastra/pinecone";
218
+
219
+ // Instance-level vector configuration
220
+ export const mastra = new Mastra({
221
+ storage: new PostgresStore({
222
+ id: 'mastra-storage',
223
+ connectionString: process.env.DATABASE_URL,
224
+ }),
225
+ });
226
+
227
+ // Agent-level vector configuration
228
+ export const agent = new Agent({
229
+ id: "agent",
230
+ memory: new Memory({
231
+ vector: new PineconeVector({
232
+ id: 'agent-vector',
233
+ apiKey: process.env.PINECONE_API_KEY,
234
+ }),
235
+ options: {
236
+ semanticRecall: {
237
+ topK: 5,
238
+ messageRange: 2,
239
+ },
240
+ },
241
+ }),
242
+ });
243
+ ```
244
+
245
+ We support all popular vector providers including [Pinecone](/reference/v1/vectors/pinecone), [Chroma](/reference/v1/vectors/chroma), [Qdrant](/reference/v1/vectors/qdrant), and many more.
246
+
247
+ For more information on configuring semantic recall, see the [Semantic Recall](./semantic-recall) documentation.
248
+
@@ -1,13 +1,20 @@
1
1
  ---
2
2
  title: "Working Memory | Memory"
3
3
  description: "Learn how to configure working memory in Mastra to store persistent user data, preferences."
4
+ packages:
5
+ - "@mastra/core"
6
+ - "@mastra/libsql"
7
+ - "@mastra/memory"
8
+ - "@mastra/mongodb"
9
+ - "@mastra/pg"
10
+ - "@mastra/upstash"
4
11
  ---
5
12
 
6
13
  import YouTube from "@site/src/components/YouTube-player";
7
14
 
8
15
  # Working Memory
9
16
 
10
- While [conversation history](/docs/v1/memory/conversation-history) and [semantic recall](./semantic-recall) help agents remember conversations, working memory allows them to maintain persistent information about users across interactions.
17
+ While [message history](/docs/v1/memory/message-history) and [semantic recall](./semantic-recall) help agents remember conversations, working memory allows them to maintain persistent information about users across interactions.
11
18
 
12
19
  Think of it as the agent's active thoughts or scratchpad – the key information they keep available about the user or task. It's similar to how a person would naturally remember someone's name, preferences, or important details during a conversation.
13
20
 
@@ -24,7 +31,7 @@ Working memory can persist at two different scopes:
24
31
 
25
32
  Here's a minimal example of setting up an agent with working memory:
26
33
 
27
- ```typescript {11-14}
34
+ ```typescript {11-15}
28
35
  import { Agent } from "@mastra/core/agent";
29
36
  import { Memory } from "@mastra/memory";
30
37
 
@@ -85,13 +92,15 @@ const memory = new Memory({
85
92
 
86
93
  ### Usage with Agents
87
94
 
88
- When using resource-scoped memory, make sure to pass the `resourceId` parameter:
95
+ When using resource-scoped memory, make sure to pass the `resource` parameter in the memory options:
89
96
 
90
97
  ```typescript
91
- // Resource-scoped memory requires resourceId
98
+ // Resource-scoped memory requires resource
92
99
  const response = await agent.generate("Hello!", {
93
- threadId: "conversation-123",
94
- resourceId: "user-alice-456", // Same user across different threads
100
+ memory: {
101
+ thread: "conversation-123",
102
+ resource: "user-alice-456", // Same user across different threads
103
+ },
95
104
  });
96
105
  ```
97
106
 
@@ -126,9 +135,9 @@ const memory = new Memory({
126
135
 
127
136
  Resource-scoped working memory requires specific storage adapters that support the `mastra_resources` table:
128
137
 
129
- ### Supported Storage Adapters
138
+ ### Supported Storage Adapters
130
139
 
131
- - **LibSQL** (`@mastra/libsql`)
140
+ - **libSQL** (`@mastra/libsql`)
132
141
  - **PostgreSQL** (`@mastra/pg`)
133
142
  - **Upstash** (`@mastra/upstash`)
134
143
  - **MongoDB** (`@mastra/mongodb`)
@@ -325,7 +334,7 @@ While agents typically update working memory through the `updateWorkingMemory` t
325
334
 
326
335
  When creating a thread, you can provide initial working memory through the metadata's `workingMemory` key:
327
336
 
328
- ```typescript title="src/app/medical-consultation.ts" showLineNumbers copy
337
+ ```typescript title="src/app/medical-consultation.ts"
329
338
  // Create a thread with initial working memory
330
339
  const thread = await memory.createThread({
331
340
  threadId: "thread-123",
@@ -344,8 +353,10 @@ const thread = await memory.createThread({
344
353
 
345
354
  // The agent will now have access to this information in all messages
346
355
  await agent.generate("What's my blood type?", {
347
- threadId: thread.id,
348
- resourceId: "user-456",
356
+ memory: {
357
+ thread: thread.id,
358
+ resource: "user-456",
359
+ },
349
360
  });
350
361
  // Response: "Your blood type is O+."
351
362
  ```
@@ -354,7 +365,7 @@ await agent.generate("What's my blood type?", {
354
365
 
355
366
  You can also update an existing thread's working memory:
356
367
 
357
- ```typescript title="src/app/medical-consultation.ts" showLineNumbers copy
368
+ ```typescript title="src/app/medical-consultation.ts"
358
369
  // Update thread metadata to add/modify working memory
359
370
  await memory.updateThread({
360
371
  id: "thread-123",
@@ -376,7 +387,7 @@ await memory.updateThread({
376
387
 
377
388
  Alternatively, use the `updateWorkingMemory` method directly:
378
389
 
379
- ```typescript title="src/app/medical-consultation.ts" showLineNumbers copy
390
+ ```typescript title="src/app/medical-consultation.ts"
380
391
  await memory.updateWorkingMemory({
381
392
  threadId: "thread-123",
382
393
  resourceId: "user-456", // Required for resource-scoped memory
@@ -1,24 +1,26 @@
1
1
  ---
2
2
  title: "Logging | Observability"
3
3
  description: Learn how to use logging in Mastra to monitor execution, capture application behavior, and improve the accuracy of AI applications.
4
+ packages:
5
+ - "@mastra/core"
6
+ - "@mastra/loggers"
4
7
  ---
5
8
 
6
9
  # Logging
7
10
 
8
11
  Mastra's logging system captures function execution, input data, and output responses in a structured format.
9
12
 
10
- When deploying to Mastra Cloud, logs are shown on the [Logs](/docs/v1/deployment/mastra-cloud/observability) page. In self-hosted or custom environments, logs can be directed to files or external services depending on the configured transports.
13
+ When deploying to Mastra Cloud, logs are shown on the [Logs](/docs/v1/mastra-cloud/observability) page. In self-hosted or custom environments, logs can be directed to files or external services depending on the configured transports.
11
14
 
12
15
  ## Configuring logs with PinoLogger
13
16
 
14
17
  When [initializing a new Mastra project](/guides/v1/getting-started/quickstart) using the CLI, `PinoLogger` is included by default.
15
18
 
16
- ```typescript title="src/mastra/index.ts" showLineNumbers copy
19
+ ```typescript title="src/mastra/index.ts"
17
20
  import { Mastra } from "@mastra/core/mastra";
18
21
  import { PinoLogger } from "@mastra/loggers";
19
22
 
20
23
  export const mastra = new Mastra({
21
- // ...
22
24
  logger: new PinoLogger({
23
25
  name: "Mastra",
24
26
  level: "info",
@@ -26,7 +28,11 @@ export const mastra = new Mastra({
26
28
  });
27
29
  ```
28
30
 
29
- > See the [PinoLogger](/reference/v1/logging/pino-logger) API reference for all available configuration options.
31
+ :::info
32
+
33
+ Visit [PinoLogger](/reference/v1/logging/pino-logger) for all available configuration options.
34
+
35
+ :::
30
36
 
31
37
  ## Customizing logs
32
38
 
@@ -36,14 +42,12 @@ Mastra provides access to a logger instance via the `mastra.getLogger()` method,
36
42
 
37
43
  Within a workflow step, access the logger via the `mastra` parameter inside the `execute` function. This allows you to log messages relevant to the step’s execution.
38
44
 
39
- ```typescript {8-9} title="src/mastra/workflows/test-workflow.ts" showLineNumbers copy
45
+ ```typescript {6-7} title="src/mastra/workflows/test-workflow.ts"
40
46
  import { createWorkflow, createStep } from "@mastra/core/workflows";
41
47
  import { z } from "zod";
42
48
 
43
49
  const step1 = createStep({
44
- //...
45
50
  execute: async ({ mastra }) => {
46
-
47
51
  const logger = mastra.getLogger();
48
52
  logger.info("workflow info log");
49
53
 
@@ -62,14 +66,13 @@ export const testWorkflow = createWorkflow({...})
62
66
 
63
67
  Similarly, tools have access to the logger instance via the `mastra` parameter. Use this to log tool specific activity during execution.
64
68
 
65
- ```typescript {8-9} title="src/mastra/tools/test-tool.ts" showLineNumbers copy
69
+ ```typescript {6-7} title="src/mastra/tools/test-tool.ts"
66
70
  import { createTool } from "@mastra/core/tools";
67
71
  import { z } from "zod";
68
72
 
69
73
  export const testTool = createTool({
70
- // ...
71
- execute: async ({ mastra }) => {
72
- const logger = mastra?.getLogger();
74
+ execute: async (inputData, context) => {
75
+ const logger = context?.mastra.getLogger();
73
76
  logger?.info("tool info log");
74
77
 
75
78
  return {
@@ -85,17 +88,15 @@ Logger methods accept an optional second argument for additional data. This can
85
88
 
86
89
  In this example, the log message includes an object with a key of `agent` and a value of the `testAgent` instance.
87
90
 
88
- ```typescript {11} title="src/mastra/workflows/test-workflow.ts" showLineNumbers copy
91
+ ```typescript {9} title="src/mastra/workflows/test-workflow.ts"
89
92
  import { createWorkflow, createStep } from "@mastra/core/workflows";
90
93
  import { z } from "zod";
91
94
 
92
95
  const step1 = createStep({
93
- //...
94
96
  execute: async ({ mastra }) => {
95
-
96
97
  const testAgent = mastra.getAgent("testAgent");
97
-
98
98
  const logger = mastra.getLogger();
99
+
99
100
  logger.info("workflow info log", { agent: testAgent });
100
101
 
101
102
  return {