@mastra/mcp-docs-server 0.13.39 → 1.0.0-beta.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (480) hide show
  1. package/.docs/organized/changelogs/%40internal%2Fai-sdk-v4.md +1 -0
  2. package/.docs/organized/changelogs/%40internal%2Fchangeset-cli.md +0 -10
  3. package/.docs/organized/changelogs/%40internal%2Fexternal-types.md +0 -10
  4. package/.docs/organized/changelogs/%40internal%2Fstorage-test-utils.md +36 -36
  5. package/.docs/organized/changelogs/%40internal%2Ftypes-builder.md +0 -10
  6. package/.docs/organized/changelogs/%40mastra%2Fagent-builder.md +70 -70
  7. package/.docs/organized/changelogs/%40mastra%2Fai-sdk.md +40 -40
  8. package/.docs/organized/changelogs/%40mastra%2Fastra.md +19 -19
  9. package/.docs/organized/changelogs/%40mastra%2Fauth.md +4 -14
  10. package/.docs/organized/changelogs/%40mastra%2Fchroma.md +18 -18
  11. package/.docs/organized/changelogs/%40mastra%2Fclickhouse.md +199 -199
  12. package/.docs/organized/changelogs/%40mastra%2Fclient-js.md +223 -223
  13. package/.docs/organized/changelogs/%40mastra%2Fcloudflare-d1.md +190 -190
  14. package/.docs/organized/changelogs/%40mastra%2Fcloudflare.md +199 -199
  15. package/.docs/organized/changelogs/%40mastra%2Fcodemod.md +7 -0
  16. package/.docs/organized/changelogs/%40mastra%2Fcore.md +214 -214
  17. package/.docs/organized/changelogs/%40mastra%2Fcouchbase.md +16 -16
  18. package/.docs/organized/changelogs/%40mastra%2Fdeployer-cloud.md +74 -74
  19. package/.docs/organized/changelogs/%40mastra%2Fdeployer-cloudflare.md +67 -67
  20. package/.docs/organized/changelogs/%40mastra%2Fdeployer-netlify.md +70 -70
  21. package/.docs/organized/changelogs/%40mastra%2Fdeployer-vercel.md +67 -67
  22. package/.docs/organized/changelogs/%40mastra%2Fdeployer.md +209 -209
  23. package/.docs/organized/changelogs/%40mastra%2Fdynamodb.md +191 -191
  24. package/.docs/organized/changelogs/%40mastra%2Fevals.md +34 -34
  25. package/.docs/organized/changelogs/%40mastra%2Ffastembed.md +5 -13
  26. package/.docs/organized/changelogs/%40mastra%2Flance.md +182 -182
  27. package/.docs/organized/changelogs/%40mastra%2Flibsql.md +199 -199
  28. package/.docs/organized/changelogs/%40mastra%2Floggers.md +20 -20
  29. package/.docs/organized/changelogs/%40mastra%2Fmcp-docs-server.md +58 -58
  30. package/.docs/organized/changelogs/%40mastra%2Fmcp-registry-registry.md +20 -20
  31. package/.docs/organized/changelogs/%40mastra%2Fmcp.md +65 -65
  32. package/.docs/organized/changelogs/%40mastra%2Fmemory.md +228 -228
  33. package/.docs/organized/changelogs/%40mastra%2Fmongodb.md +199 -199
  34. package/.docs/organized/changelogs/%40mastra%2Fmssql.md +206 -206
  35. package/.docs/organized/changelogs/%40mastra%2Fopensearch.md +19 -19
  36. package/.docs/organized/changelogs/%40mastra%2Fpg.md +197 -197
  37. package/.docs/organized/changelogs/%40mastra%2Fpinecone.md +16 -16
  38. package/.docs/organized/changelogs/%40mastra%2Fplayground-ui.md +217 -217
  39. package/.docs/organized/changelogs/%40mastra%2Fqdrant.md +16 -16
  40. package/.docs/organized/changelogs/%40mastra%2Frag.md +61 -61
  41. package/.docs/organized/changelogs/%40mastra%2Freact.md +70 -70
  42. package/.docs/organized/changelogs/%40mastra%2Fs3vectors.md +9 -17
  43. package/.docs/organized/changelogs/%40mastra%2Fschema-compat.md +6 -30
  44. package/.docs/organized/changelogs/%40mastra%2Fserver.md +206 -206
  45. package/.docs/organized/changelogs/%40mastra%2Fturbopuffer.md +16 -16
  46. package/.docs/organized/changelogs/%40mastra%2Fupstash.md +190 -190
  47. package/.docs/organized/changelogs/%40mastra%2Fvectorize.md +18 -18
  48. package/.docs/organized/changelogs/%40mastra%2Fvoice-azure.md +21 -21
  49. package/.docs/organized/changelogs/%40mastra%2Fvoice-cloudflare.md +20 -20
  50. package/.docs/organized/changelogs/%40mastra%2Fvoice-deepgram.md +20 -20
  51. package/.docs/organized/changelogs/%40mastra%2Fvoice-elevenlabs.md +20 -20
  52. package/.docs/organized/changelogs/%40mastra%2Fvoice-gladia.md +20 -20
  53. package/.docs/organized/changelogs/%40mastra%2Fvoice-google-gemini-live.md +56 -56
  54. package/.docs/organized/changelogs/%40mastra%2Fvoice-google.md +20 -20
  55. package/.docs/organized/changelogs/%40mastra%2Fvoice-murf.md +20 -20
  56. package/.docs/organized/changelogs/%40mastra%2Fvoice-openai-realtime.md +56 -56
  57. package/.docs/organized/changelogs/%40mastra%2Fvoice-openai.md +20 -20
  58. package/.docs/organized/changelogs/%40mastra%2Fvoice-playai.md +20 -20
  59. package/.docs/organized/changelogs/%40mastra%2Fvoice-sarvam.md +20 -20
  60. package/.docs/organized/changelogs/%40mastra%2Fvoice-speechify.md +20 -20
  61. package/.docs/organized/changelogs/create-mastra.md +33 -33
  62. package/.docs/organized/changelogs/mastra.md +86 -86
  63. package/.docs/organized/code-examples/a2a.md +4 -2
  64. package/.docs/organized/code-examples/agui.md +12 -9
  65. package/.docs/organized/code-examples/ai-sdk-useChat.md +12 -18
  66. package/.docs/organized/code-examples/ai-sdk-v5.md +4 -2
  67. package/.docs/organized/code-examples/bird-checker-with-express.md +5 -4
  68. package/.docs/organized/code-examples/bird-checker-with-nextjs-and-eval.md +4 -3
  69. package/.docs/organized/code-examples/bird-checker-with-nextjs.md +4 -3
  70. package/.docs/organized/code-examples/client-side-tools.md +1 -0
  71. package/.docs/organized/code-examples/crypto-chatbot.md +1 -1
  72. package/.docs/organized/code-examples/experimental-auth-weather-agent.md +8 -177
  73. package/.docs/organized/code-examples/fireworks-r1.md +2 -2
  74. package/.docs/organized/code-examples/heads-up-game.md +10 -7
  75. package/.docs/organized/code-examples/mcp-configuration.md +5 -3
  76. package/.docs/organized/code-examples/mcp-registry-registry.md +3 -2
  77. package/.docs/organized/code-examples/memory-per-resource-example.md +4 -2
  78. package/.docs/organized/code-examples/memory-todo-agent.md +1 -0
  79. package/.docs/organized/code-examples/memory-with-context.md +2 -1
  80. package/.docs/organized/code-examples/memory-with-libsql.md +4 -2
  81. package/.docs/organized/code-examples/memory-with-mongodb.md +4 -2
  82. package/.docs/organized/code-examples/memory-with-pg.md +4 -2
  83. package/.docs/organized/code-examples/memory-with-processors.md +13 -8
  84. package/.docs/organized/code-examples/memory-with-upstash.md +5 -3
  85. package/.docs/organized/code-examples/openapi-spec-writer.md +32 -41
  86. package/.docs/organized/code-examples/quick-start.md +5 -32
  87. package/.docs/organized/code-examples/stock-price-tool.md +6 -5
  88. package/.docs/organized/code-examples/weather-agent.md +21 -16
  89. package/.docs/organized/code-examples/workflow-ai-recruiter.md +3 -2
  90. package/.docs/organized/code-examples/workflow-with-inline-steps.md +9 -12
  91. package/.docs/organized/code-examples/workflow-with-memory.md +16 -15
  92. package/.docs/organized/code-examples/workflow-with-separate-steps.md +2 -2
  93. package/.docs/organized/code-examples/workflow-with-suspend-resume.md +3 -2
  94. package/.docs/raw/agents/adding-voice.mdx +27 -22
  95. package/.docs/raw/agents/agent-memory.mdx +23 -15
  96. package/.docs/raw/agents/guardrails.mdx +33 -12
  97. package/.docs/raw/agents/networks.mdx +8 -4
  98. package/.docs/raw/agents/overview.mdx +21 -15
  99. package/.docs/raw/agents/using-tools.mdx +11 -8
  100. package/.docs/raw/auth/auth0.mdx +8 -8
  101. package/.docs/raw/auth/clerk.mdx +6 -6
  102. package/.docs/raw/auth/firebase.mdx +8 -8
  103. package/.docs/raw/auth/index.mdx +6 -6
  104. package/.docs/raw/auth/jwt.mdx +6 -6
  105. package/.docs/raw/auth/supabase.mdx +7 -7
  106. package/.docs/raw/auth/workos.mdx +8 -8
  107. package/.docs/raw/community/contributing-templates.mdx +3 -3
  108. package/.docs/raw/community/discord.mdx +1 -1
  109. package/.docs/raw/course/01-first-agent/08-exporting-your-agent.md +2 -1
  110. package/.docs/raw/course/01-first-agent/16-adding-memory-to-agent.md +2 -1
  111. package/.docs/raw/course/02-agent-tools-mcp/31-enhancing-memory-configuration.md +2 -0
  112. package/.docs/raw/course/03-agent-memory/04-creating-basic-memory-agent.md +1 -0
  113. package/.docs/raw/course/03-agent-memory/10-storage-configuration.md +2 -3
  114. package/.docs/raw/course/03-agent-memory/13-vector-store-configuration.md +2 -0
  115. package/.docs/raw/course/03-agent-memory/16-configuring-semantic-recall.md +2 -0
  116. package/.docs/raw/course/03-agent-memory/18-advanced-configuration-semantic-recall.md +1 -0
  117. package/.docs/raw/course/03-agent-memory/21-configuring-working-memory.md +2 -0
  118. package/.docs/raw/course/03-agent-memory/22-custom-working-memory-templates.md +1 -0
  119. package/.docs/raw/course/03-agent-memory/25-combining-memory-features.md +1 -0
  120. package/.docs/raw/course/03-agent-memory/27-creating-learning-assistant.md +1 -0
  121. package/.docs/raw/course/04-workflows/08-running-workflows-programmatically.md +2 -2
  122. package/.docs/raw/deployment/cloud-providers/amazon-ec2.mdx +5 -5
  123. package/.docs/raw/deployment/cloud-providers/aws-lambda.mdx +7 -5
  124. package/.docs/raw/deployment/cloud-providers/azure-app-services.mdx +3 -3
  125. package/.docs/raw/deployment/cloud-providers/digital-ocean.mdx +4 -4
  126. package/.docs/raw/deployment/cloud-providers/index.mdx +11 -8
  127. package/.docs/raw/deployment/monorepo.mdx +2 -2
  128. package/.docs/raw/deployment/overview.mdx +2 -2
  129. package/.docs/raw/deployment/server-deployment.mdx +2 -10
  130. package/.docs/raw/deployment/serverless-platforms/cloudflare-deployer.mdx +4 -4
  131. package/.docs/raw/deployment/serverless-platforms/index.mdx +10 -7
  132. package/.docs/raw/deployment/serverless-platforms/netlify-deployer.mdx +4 -4
  133. package/.docs/raw/deployment/serverless-platforms/vercel-deployer.mdx +4 -4
  134. package/.docs/raw/deployment/web-framework.mdx +8 -8
  135. package/.docs/raw/{scorers → evals}/custom-scorers.mdx +6 -6
  136. package/.docs/raw/evals/off-the-shelf-scorers.mdx +50 -0
  137. package/.docs/raw/{scorers → evals}/overview.mdx +8 -8
  138. package/.docs/raw/evals/running-in-ci.mdx +113 -0
  139. package/.docs/raw/frameworks/agentic-uis/ai-sdk.mdx +22 -21
  140. package/.docs/raw/frameworks/agentic-uis/copilotkit.mdx +8 -8
  141. package/.docs/raw/frameworks/agentic-uis/openrouter.mdx +3 -0
  142. package/.docs/raw/frameworks/servers/express.mdx +10 -9
  143. package/.docs/raw/frameworks/web-frameworks/astro.mdx +6 -6
  144. package/.docs/raw/frameworks/web-frameworks/next-js.mdx +3 -3
  145. package/.docs/raw/frameworks/web-frameworks/sveltekit.mdx +4 -4
  146. package/.docs/raw/frameworks/web-frameworks/vite-react.mdx +2 -2
  147. package/.docs/raw/getting-started/installation.mdx +13 -12
  148. package/.docs/raw/getting-started/mcp-docs-server.mdx +1 -1
  149. package/.docs/raw/getting-started/project-structure.mdx +4 -4
  150. package/.docs/raw/getting-started/studio.mdx +8 -8
  151. package/.docs/raw/getting-started/templates.mdx +1 -1
  152. package/.docs/raw/guides/guide/ai-recruiter.mdx +264 -0
  153. package/.docs/raw/guides/guide/chef-michel.mdx +271 -0
  154. package/.docs/raw/guides/guide/notes-mcp-server.mdx +450 -0
  155. package/.docs/raw/guides/guide/research-assistant.mdx +389 -0
  156. package/.docs/raw/guides/guide/stock-agent.mdx +185 -0
  157. package/.docs/raw/guides/guide/web-search.mdx +291 -0
  158. package/.docs/raw/guides/index.mdx +43 -0
  159. package/.docs/raw/guides/migrations/agentnetwork.mdx +114 -0
  160. package/.docs/raw/guides/migrations/upgrade-to-v1/_template.mdx +50 -0
  161. package/.docs/raw/guides/migrations/upgrade-to-v1/agent.mdx +265 -0
  162. package/.docs/raw/guides/migrations/upgrade-to-v1/cli.mdx +48 -0
  163. package/.docs/raw/guides/migrations/upgrade-to-v1/client.mdx +153 -0
  164. package/.docs/raw/guides/migrations/upgrade-to-v1/evals.mdx +230 -0
  165. package/.docs/raw/guides/migrations/upgrade-to-v1/mastra.mdx +171 -0
  166. package/.docs/raw/guides/migrations/upgrade-to-v1/mcp.mdx +114 -0
  167. package/.docs/raw/guides/migrations/upgrade-to-v1/memory.mdx +241 -0
  168. package/.docs/raw/guides/migrations/upgrade-to-v1/overview.mdx +83 -0
  169. package/.docs/raw/guides/migrations/upgrade-to-v1/processors.mdx +62 -0
  170. package/.docs/raw/guides/migrations/upgrade-to-v1/storage.mdx +270 -0
  171. package/.docs/raw/guides/migrations/upgrade-to-v1/tools.mdx +115 -0
  172. package/.docs/raw/guides/migrations/upgrade-to-v1/tracing.mdx +280 -0
  173. package/.docs/raw/guides/migrations/upgrade-to-v1/vectors.mdx +23 -0
  174. package/.docs/raw/guides/migrations/upgrade-to-v1/voice.mdx +39 -0
  175. package/.docs/raw/guides/migrations/upgrade-to-v1/workflows.mdx +178 -0
  176. package/.docs/raw/guides/migrations/vnext-to-standard-apis.mdx +367 -0
  177. package/.docs/raw/index.mdx +9 -9
  178. package/.docs/raw/{observability/logging.mdx → logging.mdx} +4 -4
  179. package/.docs/raw/mastra-cloud/dashboard.mdx +2 -2
  180. package/.docs/raw/mastra-cloud/observability.mdx +6 -6
  181. package/.docs/raw/mastra-cloud/overview.mdx +2 -2
  182. package/.docs/raw/mastra-cloud/setting-up.mdx +4 -4
  183. package/.docs/raw/memory/conversation-history.mdx +1 -0
  184. package/.docs/raw/memory/memory-processors.mdx +4 -3
  185. package/.docs/raw/memory/overview.mdx +9 -5
  186. package/.docs/raw/memory/semantic-recall.mdx +12 -7
  187. package/.docs/raw/memory/storage/memory-with-libsql.mdx +10 -5
  188. package/.docs/raw/memory/storage/memory-with-pg.mdx +9 -4
  189. package/.docs/raw/memory/storage/memory-with-upstash.mdx +9 -4
  190. package/.docs/raw/memory/threads-and-resources.mdx +11 -13
  191. package/.docs/raw/memory/working-memory.mdx +30 -14
  192. package/.docs/raw/observability/overview.mdx +13 -30
  193. package/.docs/raw/observability/{ai-tracing → tracing}/exporters/arize.mdx +10 -18
  194. package/.docs/raw/observability/{ai-tracing → tracing}/exporters/braintrust.mdx +7 -16
  195. package/.docs/raw/observability/{ai-tracing → tracing}/exporters/cloud.mdx +11 -17
  196. package/.docs/raw/observability/{ai-tracing → tracing}/exporters/default.mdx +16 -20
  197. package/.docs/raw/observability/{ai-tracing → tracing}/exporters/langfuse.mdx +7 -16
  198. package/.docs/raw/observability/{ai-tracing → tracing}/exporters/langsmith.mdx +7 -16
  199. package/.docs/raw/observability/{ai-tracing → tracing}/exporters/otel.mdx +9 -18
  200. package/.docs/raw/observability/{ai-tracing → tracing}/overview.mdx +107 -142
  201. package/.docs/raw/observability/{ai-tracing → tracing}/processors/sensitive-data-filter.mdx +14 -13
  202. package/.docs/raw/rag/chunking-and-embedding.mdx +5 -5
  203. package/.docs/raw/rag/overview.mdx +3 -13
  204. package/.docs/raw/rag/retrieval.mdx +24 -12
  205. package/.docs/raw/rag/vector-databases.mdx +7 -1
  206. package/.docs/raw/reference/agents/agent.mdx +33 -28
  207. package/.docs/raw/reference/agents/generate.mdx +10 -10
  208. package/.docs/raw/reference/agents/generateLegacy.mdx +8 -8
  209. package/.docs/raw/reference/agents/getDefaultGenerateOptions.mdx +21 -15
  210. package/.docs/raw/reference/agents/getDefaultOptions.mdx +69 -0
  211. package/.docs/raw/reference/agents/getDefaultStreamOptions.mdx +22 -16
  212. package/.docs/raw/reference/agents/getDescription.mdx +1 -1
  213. package/.docs/raw/reference/agents/getInstructions.mdx +8 -8
  214. package/.docs/raw/reference/agents/getLLM.mdx +9 -9
  215. package/.docs/raw/reference/agents/getMemory.mdx +9 -9
  216. package/.docs/raw/reference/agents/getModel.mdx +10 -10
  217. package/.docs/raw/reference/agents/getVoice.mdx +8 -8
  218. package/.docs/raw/reference/agents/listAgents.mdx +9 -9
  219. package/.docs/raw/reference/agents/listScorers.mdx +7 -7
  220. package/.docs/raw/reference/agents/listTools.mdx +7 -7
  221. package/.docs/raw/reference/agents/listWorkflows.mdx +7 -7
  222. package/.docs/raw/reference/agents/network.mdx +11 -10
  223. package/.docs/raw/reference/auth/auth0.mdx +4 -4
  224. package/.docs/raw/reference/auth/clerk.mdx +4 -4
  225. package/.docs/raw/reference/auth/firebase.mdx +6 -6
  226. package/.docs/raw/reference/auth/jwt.mdx +4 -4
  227. package/.docs/raw/reference/auth/supabase.mdx +4 -4
  228. package/.docs/raw/reference/auth/workos.mdx +4 -4
  229. package/.docs/raw/reference/cli/mastra.mdx +7 -7
  230. package/.docs/raw/reference/client-js/agents.mdx +6 -2
  231. package/.docs/raw/reference/client-js/mastra-client.mdx +7 -7
  232. package/.docs/raw/reference/client-js/memory.mdx +24 -16
  233. package/.docs/raw/reference/client-js/observability.mdx +11 -11
  234. package/.docs/raw/reference/client-js/workflows.mdx +6 -34
  235. package/.docs/raw/reference/core/getAgent.mdx +1 -1
  236. package/.docs/raw/reference/core/getAgentById.mdx +1 -1
  237. package/.docs/raw/reference/core/getDeployer.mdx +2 -2
  238. package/.docs/raw/reference/core/getLogger.mdx +2 -2
  239. package/.docs/raw/reference/core/getMCPServer.mdx +31 -15
  240. package/.docs/raw/reference/core/getMCPServerById.mdx +81 -0
  241. package/.docs/raw/reference/core/getScorer.mdx +3 -3
  242. package/.docs/raw/reference/core/getScorerById.mdx +79 -0
  243. package/.docs/raw/reference/core/getServer.mdx +2 -2
  244. package/.docs/raw/reference/core/getStorage.mdx +2 -2
  245. package/.docs/raw/reference/core/getTelemetry.mdx +2 -2
  246. package/.docs/raw/reference/core/getVector.mdx +2 -2
  247. package/.docs/raw/reference/core/getWorkflow.mdx +1 -1
  248. package/.docs/raw/reference/core/listAgents.mdx +1 -1
  249. package/.docs/raw/reference/core/listLogs.mdx +2 -2
  250. package/.docs/raw/reference/core/listLogsByRunId.mdx +2 -2
  251. package/.docs/raw/reference/core/listMCPServers.mdx +65 -0
  252. package/.docs/raw/reference/core/listScorers.mdx +3 -3
  253. package/.docs/raw/reference/core/listVectors.mdx +36 -0
  254. package/.docs/raw/reference/core/listWorkflows.mdx +6 -6
  255. package/.docs/raw/reference/core/mastra-class.mdx +3 -2
  256. package/.docs/raw/reference/core/setLogger.mdx +2 -2
  257. package/.docs/raw/reference/core/setStorage.mdx +3 -2
  258. package/.docs/raw/reference/core/setTelemetry.mdx +2 -2
  259. package/.docs/raw/reference/deployer/cloudflare.mdx +2 -2
  260. package/.docs/raw/reference/deployer/deployer.mdx +0 -6
  261. package/.docs/raw/reference/deployer/netlify.mdx +2 -2
  262. package/.docs/raw/reference/deployer/vercel.mdx +3 -3
  263. package/.docs/raw/reference/evals/answer-relevancy.mdx +164 -126
  264. package/.docs/raw/reference/{scorers → evals}/answer-similarity.mdx +27 -27
  265. package/.docs/raw/reference/evals/bias.mdx +149 -115
  266. package/.docs/raw/reference/evals/completeness.mdx +148 -117
  267. package/.docs/raw/reference/evals/content-similarity.mdx +126 -113
  268. package/.docs/raw/reference/evals/context-precision.mdx +290 -133
  269. package/.docs/raw/reference/{scorers → evals}/context-relevance.mdx +6 -6
  270. package/.docs/raw/reference/{scorers → evals}/create-scorer.mdx +11 -11
  271. package/.docs/raw/reference/evals/faithfulness.mdx +163 -121
  272. package/.docs/raw/reference/evals/hallucination.mdx +159 -132
  273. package/.docs/raw/reference/evals/keyword-coverage.mdx +169 -125
  274. package/.docs/raw/reference/{scorers → evals}/mastra-scorer.mdx +5 -5
  275. package/.docs/raw/reference/{scorers → evals}/noise-sensitivity.mdx +9 -9
  276. package/.docs/raw/reference/evals/prompt-alignment.mdx +604 -182
  277. package/.docs/raw/reference/{scorers/run-experiment.mdx → evals/run-evals.mdx} +17 -18
  278. package/.docs/raw/reference/evals/textual-difference.mdx +149 -117
  279. package/.docs/raw/reference/evals/tone-consistency.mdx +149 -125
  280. package/.docs/raw/reference/{scorers → evals}/tool-call-accuracy.mdx +8 -6
  281. package/.docs/raw/reference/evals/toxicity.mdx +152 -96
  282. package/.docs/raw/reference/{observability/logging → logging}/pino-logger.mdx +2 -2
  283. package/.docs/raw/reference/memory/createThread.mdx +5 -5
  284. package/.docs/raw/reference/memory/deleteMessages.mdx +7 -7
  285. package/.docs/raw/reference/memory/getThreadById.mdx +4 -4
  286. package/.docs/raw/reference/memory/listThreadsByResourceId.mdx +110 -0
  287. package/.docs/raw/reference/memory/memory-class.mdx +13 -9
  288. package/.docs/raw/reference/memory/query.mdx +58 -57
  289. package/.docs/raw/reference/memory/recall.mdx +185 -0
  290. package/.docs/raw/reference/observability/tracing/configuration.mdx +245 -0
  291. package/.docs/raw/reference/observability/{ai-tracing → tracing}/exporters/arize.mdx +13 -13
  292. package/.docs/raw/reference/observability/{ai-tracing → tracing}/exporters/braintrust.mdx +11 -8
  293. package/.docs/raw/reference/observability/{ai-tracing → tracing}/exporters/cloud-exporter.mdx +21 -19
  294. package/.docs/raw/reference/observability/{ai-tracing → tracing}/exporters/console-exporter.mdx +49 -17
  295. package/.docs/raw/reference/observability/{ai-tracing → tracing}/exporters/default-exporter.mdx +42 -41
  296. package/.docs/raw/reference/observability/{ai-tracing → tracing}/exporters/langfuse.mdx +10 -7
  297. package/.docs/raw/reference/observability/{ai-tracing → tracing}/exporters/langsmith.mdx +10 -7
  298. package/.docs/raw/reference/observability/{ai-tracing → tracing}/exporters/otel.mdx +5 -5
  299. package/.docs/raw/reference/observability/tracing/instances.mdx +168 -0
  300. package/.docs/raw/reference/observability/{ai-tracing → tracing}/interfaces.mdx +115 -89
  301. package/.docs/raw/reference/observability/{ai-tracing → tracing}/processors/sensitive-data-filter.mdx +3 -3
  302. package/.docs/raw/reference/observability/{ai-tracing/span.mdx → tracing/spans.mdx} +59 -41
  303. package/.docs/raw/reference/processors/batch-parts-processor.mdx +1 -1
  304. package/.docs/raw/reference/processors/language-detector.mdx +1 -1
  305. package/.docs/raw/reference/processors/moderation-processor.mdx +1 -1
  306. package/.docs/raw/reference/processors/pii-detector.mdx +1 -1
  307. package/.docs/raw/reference/processors/prompt-injection-detector.mdx +1 -1
  308. package/.docs/raw/reference/processors/system-prompt-scrubber.mdx +1 -1
  309. package/.docs/raw/reference/processors/token-limiter-processor.mdx +1 -1
  310. package/.docs/raw/reference/processors/unicode-normalizer.mdx +1 -1
  311. package/.docs/raw/reference/rag/chunk.mdx +1 -8
  312. package/.docs/raw/reference/rag/database-config.mdx +7 -7
  313. package/.docs/raw/reference/rag/metadata-filters.mdx +14 -11
  314. package/.docs/raw/reference/storage/libsql.mdx +2 -0
  315. package/.docs/raw/reference/storage/mssql.mdx +5 -0
  316. package/.docs/raw/reference/storage/postgresql.mdx +6 -0
  317. package/.docs/raw/reference/storage/upstash.mdx +1 -0
  318. package/.docs/raw/reference/streaming/agents/stream.mdx +12 -12
  319. package/.docs/raw/reference/streaming/agents/streamLegacy.mdx +8 -8
  320. package/.docs/raw/reference/streaming/workflows/observeStream.mdx +3 -3
  321. package/.docs/raw/reference/streaming/workflows/observeStreamVNext.mdx +3 -3
  322. package/.docs/raw/reference/streaming/workflows/resumeStreamVNext.mdx +6 -6
  323. package/.docs/raw/reference/streaming/workflows/stream.mdx +10 -10
  324. package/.docs/raw/reference/streaming/workflows/streamVNext.mdx +11 -11
  325. package/.docs/raw/reference/templates/overview.mdx +2 -2
  326. package/.docs/raw/reference/tools/create-tool.mdx +52 -35
  327. package/.docs/raw/reference/tools/graph-rag-tool.mdx +15 -15
  328. package/.docs/raw/reference/tools/mcp-client.mdx +1 -1
  329. package/.docs/raw/reference/tools/mcp-server.mdx +119 -35
  330. package/.docs/raw/reference/tools/vector-query-tool.mdx +27 -26
  331. package/.docs/raw/reference/vectors/libsql.mdx +1 -0
  332. package/.docs/raw/reference/vectors/pg.mdx +3 -0
  333. package/.docs/raw/reference/vectors/upstash.mdx +1 -0
  334. package/.docs/raw/reference/voice/google-gemini-live.mdx +1 -1
  335. package/.docs/raw/reference/voice/voice.addTools.mdx +3 -3
  336. package/.docs/raw/reference/workflows/run-methods/cancel.mdx +4 -4
  337. package/.docs/raw/reference/workflows/run-methods/resume.mdx +14 -14
  338. package/.docs/raw/reference/workflows/run-methods/start.mdx +17 -17
  339. package/.docs/raw/reference/workflows/run.mdx +1 -8
  340. package/.docs/raw/reference/workflows/step.mdx +5 -5
  341. package/.docs/raw/reference/workflows/workflow-methods/branch.mdx +2 -2
  342. package/.docs/raw/reference/workflows/workflow-methods/commit.mdx +1 -1
  343. package/.docs/raw/reference/workflows/workflow-methods/create-run.mdx +7 -13
  344. package/.docs/raw/reference/workflows/workflow-methods/dountil.mdx +1 -1
  345. package/.docs/raw/reference/workflows/workflow-methods/dowhile.mdx +1 -1
  346. package/.docs/raw/reference/workflows/workflow-methods/foreach.mdx +1 -1
  347. package/.docs/raw/reference/workflows/workflow-methods/map.mdx +5 -0
  348. package/.docs/raw/reference/workflows/workflow-methods/parallel.mdx +1 -1
  349. package/.docs/raw/reference/workflows/workflow-methods/sendEvent.mdx +2 -2
  350. package/.docs/raw/reference/workflows/workflow-methods/sleep.mdx +1 -1
  351. package/.docs/raw/reference/workflows/workflow-methods/sleepUntil.mdx +1 -1
  352. package/.docs/raw/reference/workflows/workflow-methods/then.mdx +1 -1
  353. package/.docs/raw/reference/workflows/workflow-methods/waitForEvent.mdx +1 -1
  354. package/.docs/raw/reference/workflows/workflow.mdx +1 -1
  355. package/.docs/raw/server-db/custom-api-routes.mdx +2 -2
  356. package/.docs/raw/server-db/mastra-client.mdx +19 -18
  357. package/.docs/raw/server-db/middleware.mdx +7 -7
  358. package/.docs/raw/server-db/production-server.mdx +4 -4
  359. package/.docs/raw/server-db/{runtime-context.mdx → request-context.mdx} +46 -45
  360. package/.docs/raw/server-db/storage.mdx +29 -21
  361. package/.docs/raw/streaming/events.mdx +3 -3
  362. package/.docs/raw/streaming/overview.mdx +5 -5
  363. package/.docs/raw/streaming/tool-streaming.mdx +18 -17
  364. package/.docs/raw/streaming/workflow-streaming.mdx +1 -1
  365. package/.docs/raw/tools-mcp/advanced-usage.mdx +5 -4
  366. package/.docs/raw/tools-mcp/mcp-overview.mdx +32 -19
  367. package/.docs/raw/tools-mcp/overview.mdx +11 -11
  368. package/.docs/raw/voice/overview.mdx +63 -43
  369. package/.docs/raw/voice/speech-to-speech.mdx +5 -3
  370. package/.docs/raw/voice/speech-to-text.mdx +9 -8
  371. package/.docs/raw/voice/text-to-speech.mdx +12 -11
  372. package/.docs/raw/workflows/agents-and-tools.mdx +9 -5
  373. package/.docs/raw/workflows/control-flow.mdx +3 -3
  374. package/.docs/raw/workflows/error-handling.mdx +2 -21
  375. package/.docs/raw/workflows/human-in-the-loop.mdx +7 -4
  376. package/.docs/raw/workflows/inngest-workflow.mdx +2 -2
  377. package/.docs/raw/workflows/input-data-mapping.mdx +107 -0
  378. package/.docs/raw/workflows/overview.mdx +17 -16
  379. package/.docs/raw/workflows/snapshots.mdx +13 -11
  380. package/.docs/raw/workflows/suspend-and-resume.mdx +23 -15
  381. package/CHANGELOG.md +52 -57
  382. package/README.md +11 -2
  383. package/dist/{chunk-TUAHUTTB.js → chunk-5NJC7NRO.js} +3 -0
  384. package/dist/index.d.ts.map +1 -1
  385. package/dist/prepare-docs/copy-raw.d.ts.map +1 -1
  386. package/dist/prepare-docs/prepare.js +1 -1
  387. package/dist/prompts/migration.d.ts +6 -0
  388. package/dist/prompts/migration.d.ts.map +1 -0
  389. package/dist/stdio.js +402 -30
  390. package/dist/tools/migration.d.ts +40 -0
  391. package/dist/tools/migration.d.ts.map +1 -0
  392. package/package.json +8 -12
  393. package/.docs/organized/changelogs/%40mastra%2Fcloud.md +0 -302
  394. package/.docs/raw/observability/nextjs-tracing.mdx +0 -109
  395. package/.docs/raw/observability/otel-tracing.mdx +0 -189
  396. package/.docs/raw/reference/agents/getScorers.mdx +0 -69
  397. package/.docs/raw/reference/agents/getTools.mdx +0 -69
  398. package/.docs/raw/reference/agents/getWorkflows.mdx +0 -69
  399. package/.docs/raw/reference/client-js/workflows-legacy.mdx +0 -143
  400. package/.docs/raw/reference/core/getAgents.mdx +0 -35
  401. package/.docs/raw/reference/core/getLogs.mdx +0 -96
  402. package/.docs/raw/reference/core/getLogsByRunId.mdx +0 -87
  403. package/.docs/raw/reference/core/getMCPServers.mdx +0 -36
  404. package/.docs/raw/reference/core/getMemory.mdx +0 -36
  405. package/.docs/raw/reference/core/getScorerByName.mdx +0 -78
  406. package/.docs/raw/reference/core/getScorers.mdx +0 -43
  407. package/.docs/raw/reference/core/getVectors.mdx +0 -36
  408. package/.docs/raw/reference/core/getWorkflows.mdx +0 -45
  409. package/.docs/raw/reference/evals/context-position.mdx +0 -197
  410. package/.docs/raw/reference/evals/context-relevancy.mdx +0 -196
  411. package/.docs/raw/reference/evals/contextual-recall.mdx +0 -196
  412. package/.docs/raw/reference/evals/summarization.mdx +0 -212
  413. package/.docs/raw/reference/legacyWorkflows/after.mdx +0 -89
  414. package/.docs/raw/reference/legacyWorkflows/afterEvent.mdx +0 -79
  415. package/.docs/raw/reference/legacyWorkflows/commit.mdx +0 -33
  416. package/.docs/raw/reference/legacyWorkflows/createRun.mdx +0 -76
  417. package/.docs/raw/reference/legacyWorkflows/else.mdx +0 -68
  418. package/.docs/raw/reference/legacyWorkflows/events.mdx +0 -305
  419. package/.docs/raw/reference/legacyWorkflows/execute.mdx +0 -110
  420. package/.docs/raw/reference/legacyWorkflows/if.mdx +0 -108
  421. package/.docs/raw/reference/legacyWorkflows/resume.mdx +0 -158
  422. package/.docs/raw/reference/legacyWorkflows/resumeWithEvent.mdx +0 -133
  423. package/.docs/raw/reference/legacyWorkflows/snapshots.mdx +0 -207
  424. package/.docs/raw/reference/legacyWorkflows/start.mdx +0 -87
  425. package/.docs/raw/reference/legacyWorkflows/step-class.mdx +0 -100
  426. package/.docs/raw/reference/legacyWorkflows/step-condition.mdx +0 -137
  427. package/.docs/raw/reference/legacyWorkflows/step-function.mdx +0 -93
  428. package/.docs/raw/reference/legacyWorkflows/step-options.mdx +0 -69
  429. package/.docs/raw/reference/legacyWorkflows/step-retries.mdx +0 -196
  430. package/.docs/raw/reference/legacyWorkflows/suspend.mdx +0 -70
  431. package/.docs/raw/reference/legacyWorkflows/then.mdx +0 -72
  432. package/.docs/raw/reference/legacyWorkflows/until.mdx +0 -168
  433. package/.docs/raw/reference/legacyWorkflows/watch.mdx +0 -124
  434. package/.docs/raw/reference/legacyWorkflows/while.mdx +0 -168
  435. package/.docs/raw/reference/legacyWorkflows/workflow.mdx +0 -234
  436. package/.docs/raw/reference/memory/getThreadsByResourceId.mdx +0 -79
  437. package/.docs/raw/reference/memory/getThreadsByResourceIdPaginated.mdx +0 -110
  438. package/.docs/raw/reference/observability/ai-tracing/ai-tracing.mdx +0 -185
  439. package/.docs/raw/reference/observability/ai-tracing/configuration.mdx +0 -238
  440. package/.docs/raw/reference/observability/otel-tracing/otel-config.mdx +0 -117
  441. package/.docs/raw/reference/observability/otel-tracing/providers/arize-ax.mdx +0 -81
  442. package/.docs/raw/reference/observability/otel-tracing/providers/arize-phoenix.mdx +0 -121
  443. package/.docs/raw/reference/observability/otel-tracing/providers/braintrust.mdx +0 -40
  444. package/.docs/raw/reference/observability/otel-tracing/providers/dash0.mdx +0 -40
  445. package/.docs/raw/reference/observability/otel-tracing/providers/index.mdx +0 -20
  446. package/.docs/raw/reference/observability/otel-tracing/providers/keywordsai.mdx +0 -73
  447. package/.docs/raw/reference/observability/otel-tracing/providers/laminar.mdx +0 -41
  448. package/.docs/raw/reference/observability/otel-tracing/providers/langfuse.mdx +0 -84
  449. package/.docs/raw/reference/observability/otel-tracing/providers/langsmith.mdx +0 -48
  450. package/.docs/raw/reference/observability/otel-tracing/providers/langwatch.mdx +0 -43
  451. package/.docs/raw/reference/observability/otel-tracing/providers/new-relic.mdx +0 -40
  452. package/.docs/raw/reference/observability/otel-tracing/providers/signoz.mdx +0 -40
  453. package/.docs/raw/reference/observability/otel-tracing/providers/traceloop.mdx +0 -40
  454. package/.docs/raw/reference/scorers/answer-relevancy.mdx +0 -227
  455. package/.docs/raw/reference/scorers/bias.mdx +0 -228
  456. package/.docs/raw/reference/scorers/completeness.mdx +0 -214
  457. package/.docs/raw/reference/scorers/content-similarity.mdx +0 -197
  458. package/.docs/raw/reference/scorers/context-precision.mdx +0 -352
  459. package/.docs/raw/reference/scorers/faithfulness.mdx +0 -241
  460. package/.docs/raw/reference/scorers/hallucination.mdx +0 -252
  461. package/.docs/raw/reference/scorers/keyword-coverage.mdx +0 -229
  462. package/.docs/raw/reference/scorers/prompt-alignment.mdx +0 -668
  463. package/.docs/raw/reference/scorers/textual-difference.mdx +0 -203
  464. package/.docs/raw/reference/scorers/tone-consistency.mdx +0 -211
  465. package/.docs/raw/reference/scorers/toxicity.mdx +0 -228
  466. package/.docs/raw/reference/workflows/run-methods/watch.mdx +0 -73
  467. package/.docs/raw/scorers/evals-old-api/custom-eval.mdx +0 -24
  468. package/.docs/raw/scorers/evals-old-api/overview.mdx +0 -106
  469. package/.docs/raw/scorers/evals-old-api/running-in-ci.mdx +0 -85
  470. package/.docs/raw/scorers/evals-old-api/textual-evals.mdx +0 -58
  471. package/.docs/raw/scorers/off-the-shelf-scorers.mdx +0 -50
  472. package/.docs/raw/workflows-legacy/control-flow.mdx +0 -774
  473. package/.docs/raw/workflows-legacy/dynamic-workflows.mdx +0 -239
  474. package/.docs/raw/workflows-legacy/error-handling.mdx +0 -187
  475. package/.docs/raw/workflows-legacy/nested-workflows.mdx +0 -360
  476. package/.docs/raw/workflows-legacy/overview.mdx +0 -182
  477. package/.docs/raw/workflows-legacy/runtime-variables.mdx +0 -156
  478. package/.docs/raw/workflows-legacy/steps.mdx +0 -115
  479. package/.docs/raw/workflows-legacy/suspend-and-resume.mdx +0 -406
  480. package/.docs/raw/workflows-legacy/variables.mdx +0 -318
@@ -0,0 +1,291 @@
1
+ ---
2
+ title: "Guide: Building an Agent that can search the web | Mastra Guide"
3
+ description: "A step-by-step guide to creating an agent that can search the web."
4
+ ---
5
+
6
+ import Steps from "@site/src/components/Steps";
7
+ import StepItem from "@site/src/components/StepItem";
8
+ import Tabs from "@theme/Tabs";
9
+ import TabItem from "@theme/TabItem";
10
+
11
+ # Building an Agent that can search the web
12
+
13
+ When building a web search agent, you have two main strategies to consider:
14
+
15
+ 1. **Native search tools from the LLM**: Certain language models offer integrated web search capabilities that work out of the box.
16
+ 2. **Implement a custom search tool**: Develop your own integration with a search provider's API to handle queries and retrieve results.
17
+
18
+ ## Prerequisites
19
+
20
+ - Node.js `v22.13.0` or later installed
21
+ - An API key from a supported [Model Provider](/models/v1)
22
+ - An existing Mastra project (Follow the [installation guide](/docs/v1/getting-started/installation) to set up a new project)
23
+
24
+ ## Using native search tools
25
+
26
+ Some LLM providers include built-in web search capabilities that can be used directly without additional API integrations. OpenAI's GPT-4o-mini and Google's Gemini 2.5 Flash both offer native search tools that the model can invoke during generation.
27
+
28
+ <Steps>
29
+
30
+ <StepItem title="Install dependencies">
31
+
32
+ Install dependencies
33
+
34
+ <Tabs>
35
+ <TabItem value="openai" label="Open AI">
36
+ ```bash copy
37
+ npm install @ai-sdk/openai
38
+ ```
39
+ </TabItem>
40
+ <TabItem value="gemini" label="Gemini">
41
+ ```bash copy
42
+ npm install @ai-sdk/google
43
+ ```
44
+ </TabItem>
45
+ </Tabs>
46
+
47
+ </StepItem>
48
+
49
+ <StepItem title="Define the Agent">
50
+
51
+ Create a new file `src/mastra/agents/searchAgent.ts` and define your agent:
52
+
53
+ <Tabs>
54
+ <TabItem value="openai" label="Open AI">
55
+
56
+ ```ts copy title="src/mastra/agents/searchAgent.ts"
57
+ import { Agent } from "@mastra/core/agent";
58
+
59
+ export const searchAgent = new Agent({
60
+ id: "search-agent",
61
+ name: "Search Agent",
62
+ instructions:
63
+ "You are a search agent that can search the web for information.",
64
+ model: 'openai/gpt-4o-mini',
65
+ });
66
+ ```
67
+
68
+ </TabItem>
69
+ <TabItem value="gemini" label="Gemini">
70
+
71
+ ```ts copy title="src/mastra/agents/searchAgent.ts"
72
+ import { Agent } from "@mastra/core/agent";
73
+
74
+ export const searchAgent = new Agent({
75
+ id: "search-agent",
76
+ name: "Search Agent",
77
+ instructions:
78
+ "You are a search agent that can search the web for information.",
79
+ model: 'google/gemini-2.5-flash',
80
+ });
81
+ ```
82
+
83
+ </TabItem>
84
+
85
+ </Tabs>
86
+
87
+ </StepItem>
88
+
89
+ <StepItem title="Setup the tool">
90
+
91
+ Setup the tool:
92
+
93
+ <Tabs>
94
+ <TabItem value="openai" label="Open AI">
95
+
96
+ ```ts copy title="src/mastra/agents/searchAgent.ts" {9-11}
97
+ import { openai } from "@ai-sdk/openai";
98
+ import { Agent } from "@mastra/core/agent";
99
+
100
+ export const searchAgent = new Agent({
101
+ id: "search-agent",
102
+ name: "Search Agent",
103
+ instructions:
104
+ "You are a search agent that can search the web for information.",
105
+ model: 'openai/gpt-4o-mini',
106
+ tools: {
107
+ webSearch: openai.tools.webSearch()
108
+ }
109
+ });
110
+ ```
111
+
112
+ </TabItem>
113
+ <TabItem value="gemini" label="Gemini">
114
+
115
+ ```ts copy title="src/mastra/agents/searchAgent.ts" {9-11}
116
+ import { google } from "@ai-sdk/google";
117
+ import { Agent } from "@mastra/core/agent";
118
+
119
+ export const searchAgent = new Agent({
120
+ id: "search-agent",
121
+ name: "Search Agent",
122
+ instructions:
123
+ "You are a search agent that can search the web for information.",
124
+ model: 'google/gemini-2.5-flash',
125
+ tools: {
126
+ webSearch: google.tools.googleSearch()
127
+ }
128
+ });
129
+ ```
130
+
131
+ </TabItem>
132
+
133
+ </Tabs>
134
+
135
+ </StepItem>
136
+
137
+ <StepItem title="Register the Agent with Mastra">
138
+
139
+ In your `src/mastra/index.ts` file, register the agent:
140
+
141
+ ```ts copy title="src/mastra/index.ts" {2, 5}
142
+ import { Mastra } from "@mastra/core";
143
+ import { searchAgent } from "./agents/searchAgent";
144
+
145
+ export const mastra = new Mastra({
146
+ agents: { searchAgent },
147
+ });
148
+ ```
149
+
150
+ </StepItem>
151
+
152
+ <StepItem title="Test your agent">
153
+
154
+ You can test your agent with [Studio](/docs/v1/getting-started/studio) using the `mastra dev` command:
155
+
156
+ ```bash copy
157
+ mastra dev
158
+ ```
159
+
160
+ Inside Studio navigate to the **"Search Agent"** and ask it: "What happened last week in AI news?"
161
+
162
+ </StepItem>
163
+
164
+ </Steps>
165
+
166
+ ## Using Search APIs
167
+
168
+ For more control over search behavior, you can integrate external search APIs as custom tools. [Exa](https://exa.ai/) is a search engine built specifically for AI applications, offering semantic search, configurable filters (category, domain, date range), and the ability to retrieve full page contents. The search API is wrapped in a Mastra tool that defines the input schema, output format, and execution logic.
169
+
170
+ <Steps>
171
+
172
+ <StepItem title="Install dependencies">
173
+
174
+ Install dependencies
175
+
176
+ ```bash copy
177
+ npm install exa-js
178
+ ```
179
+
180
+ </StepItem>
181
+
182
+ <StepItem title="Define the Agent">
183
+
184
+ Create a new file `src/mastra/agents/searchAgent.ts` and define your agent:
185
+
186
+ ```ts copy title="src/mastra/agents/searchAgent.ts"
187
+ import { Agent } from "@mastra/core/agent";
188
+
189
+ export const searchAgent = new Agent({
190
+ id: "search-agent",
191
+ name: "Search Agent",
192
+ instructions:
193
+ "You are a search agent that can search the web for information.",
194
+ model: "openai/gpt-4o-mini",
195
+ });
196
+ ```
197
+
198
+ </StepItem>
199
+
200
+ <StepItem title="Setup the tool">
201
+
202
+ Setup the tool
203
+
204
+ ```ts copy title="src/mastra/tools/searchTool.ts"
205
+ import { createTool } from "@mastra/core/tools";
206
+ import z from "zod";
207
+ import Exa from "exa-js";
208
+
209
+ export const exa = new Exa(process.env.EXA_API_KEY);
210
+
211
+ export const webSearch = createTool({
212
+ id: "exa-web-search",
213
+ description: "Search the web",
214
+ inputSchema: z.object({
215
+ query: z.string().min(1).max(50).describe("The search query"),
216
+ }),
217
+ outputSchema: z.array(
218
+ z.object({
219
+ title: z.string().nullable(),
220
+ url: z.string(),
221
+ content: z.string(),
222
+ publishedDate: z.string().optional(),
223
+ }),
224
+ ),
225
+ execute: async (inputData) => {
226
+ const { results } = await exa.searchAndContents(inputData.query, {
227
+ livecrawl: "always",
228
+ numResults: 2,
229
+ });
230
+
231
+ return results.map((result) => ({
232
+ title: result.title,
233
+ url: result.url,
234
+ content: result.text.slice(0, 500),
235
+ publishedDate: result.publishedDate,
236
+ }));
237
+ },
238
+ });
239
+ ```
240
+
241
+ </StepItem>
242
+
243
+ <StepItem title="Add to your Agent">
244
+
245
+ Add to your Agent
246
+
247
+ ```ts copy title="src/mastra/agents/searchAgent.ts"
248
+ import { webSearch } from "./tools/searchTool";
249
+
250
+ export const searchAgent = new Agent({
251
+ id: "search-agent",
252
+ name: "Search Agent",
253
+ instructions:
254
+ "You are a search agent that can search the web for information.",
255
+ model: "openai/gpt-4o-mini",
256
+ tools: {
257
+ webSearch,
258
+ },
259
+ });
260
+ ```
261
+
262
+ </StepItem>
263
+
264
+ <StepItem title="Register the Agent with Mastra">
265
+
266
+ In your `src/mastra/index.ts` file, register the agent:
267
+
268
+ ```ts copy title="src/mastra/index.ts" {2, 5}
269
+ import { Mastra } from "@mastra/core";
270
+ import { searchAgent } from "./agents/searchAgent";
271
+
272
+ export const mastra = new Mastra({
273
+ agents: { searchAgent },
274
+ });
275
+ ```
276
+
277
+ </StepItem>
278
+
279
+ <StepItem title="Test your agent">
280
+
281
+ You can test your agent with [Studio](/docs/v1/getting-started/studio) using the `mastra dev` command:
282
+
283
+ ```bash copy
284
+ mastra dev
285
+ ```
286
+
287
+ Inside Studio navigate to the **"Search Agent"** and ask it: "What happened last week in AI news?"
288
+
289
+ </StepItem>
290
+
291
+ </Steps>
@@ -0,0 +1,43 @@
1
+ ---
2
+ title: "Overview"
3
+ description: "Guides on building with Mastra"
4
+ ---
5
+
6
+ import { CardGrid, CardGridItem } from "@site/src/components/CardGrid";
7
+
8
+ # Guides
9
+
10
+ While examples show quick implementations and docs explain specific features, these guides are a bit longer and designed to demonstrate core Mastra concepts:
11
+
12
+ <CardGrid>
13
+ <CardGridItem
14
+ title="AI Recruiter"
15
+ description="Create a workflow that processes candidate resumes and conducts interviews, demonstrating branching logic and LLM integration in Mastra workflows."
16
+ href="/guides/v1/guide/ai-recruiter"
17
+ />
18
+ <CardGridItem
19
+ title="Chef Assistant"
20
+ description="Build an AI chef agent that helps users cook meals with available ingredients, showing how to create interactive agents with custom tools."
21
+ href="/guides/v1/guide/chef-michel"
22
+ />
23
+ <CardGridItem
24
+ title="Research Assistant"
25
+ description="Develop an AI research assistant that analyzes academic papers using Retrieval Augmented Generation (RAG), demonstrating document processing and question answering."
26
+ href="/guides/v1/guide/research-assistant"
27
+ />
28
+ <CardGridItem
29
+ title="Stock Agent"
30
+ description="Implement a simple agent that fetches stock prices, illustrating the basics of creating tools and integrating them with Mastra agents."
31
+ href="/guides/v1/guide/stock-agent"
32
+ />
33
+ <CardGridItem
34
+ title="Notes MCP Server"
35
+ description="Build an AI notes assistant that helps users manage their notes, showing how to create interactive agents with custom tools."
36
+ href="/guides/v1/guide/notes-mcp-server"
37
+ />
38
+ <CardGridItem
39
+ title="Web Search"
40
+ description="A step-by-step guide to creating an agent that can search the web."
41
+ href="/guides/v1/guide/web-search"
42
+ />
43
+ </CardGrid>
@@ -0,0 +1,114 @@
1
+ ---
2
+ title: "Migration: AgentNetwork to .network() | Migration Guide"
3
+ description: "Learn how to migrate from AgentNetwork primitives to .network() in Mastra."
4
+ ---
5
+
6
+ # Migrate from AgentNetwork to `.network()`
7
+
8
+ As of `v0.20.0` for `@mastra/core`, the following changes apply.
9
+
10
+ ### Upgrade from AI SDK v4 to v5
11
+
12
+ - Bump all your model provider packages by a major version.
13
+
14
+ :::note
15
+
16
+ This will ensure that they are all v5 models now.
17
+
18
+ :::
19
+
20
+ ### Memory is required
21
+
22
+ - Memory is now required for the agent network to function properly.
23
+
24
+ :::note
25
+
26
+ You must configure memory for the agent.
27
+
28
+ :::
29
+
30
+ ## Migration paths
31
+
32
+ If you were using the `AgentNetwork` primitive, you can replace the `AgentNetwork` with `Agent`.
33
+
34
+ Before:
35
+
36
+ ```typescript
37
+ import { AgentNetwork } from "@mastra/core/network";
38
+
39
+ const agent = new AgentNetwork({
40
+ name: "agent-network",
41
+ agents: [agent1, agent2],
42
+ tools: { tool1, tool2 },
43
+ model: openai("gpt-4o"),
44
+ instructions:
45
+ "You are a network agent that can help users with a variety of tasks.",
46
+ });
47
+
48
+ await agent.stream("Find me the weather in Tokyo.");
49
+ ```
50
+
51
+ After:
52
+
53
+ ```typescript
54
+ import { Agent } from "@mastra/core/agent";
55
+ import { Memory } from "@mastra/memory";
56
+
57
+ const memory = new Memory();
58
+
59
+ const agent = new Agent({
60
+ id: "agent-network",
61
+ name: "agent-network",
62
+ agents: { agent1, agent2 },
63
+ tools: { tool1, tool2 },
64
+ model: openai("gpt-4o"),
65
+ instructions:
66
+ "You are a network agent that can help users with a variety of tasks.",
67
+ memory,
68
+ });
69
+
70
+ await agent.network("Find me the weather in Tokyo.");
71
+ ```
72
+
73
+ If you were using the `NewAgentNetwork` primitive, you can replace the `NewAgentNetwork` with `Agent`.
74
+
75
+ Before:
76
+
77
+ ```typescript
78
+ import { NewAgentNetwork } from "@mastra/core/network/vnext";
79
+
80
+ const agent = new NewAgentNetwork({
81
+ id: "agent-network",
82
+ name: "agent-network",
83
+ agents: { agent1, agent2 },
84
+ workflows: { workflow1 },
85
+ tools: { tool1, tool2 },
86
+ model: openai("gpt-4o"),
87
+ instructions:
88
+ "You are a network agent that can help users with a variety of tasks.",
89
+ });
90
+
91
+ await agent.loop("Find me the weather in Tokyo.");
92
+ ```
93
+
94
+ After:
95
+
96
+ ```typescript
97
+ import { Agent } from "@mastra/core/agent";
98
+ import { Memory } from "@mastra/memory";
99
+
100
+ const memory = new Memory();
101
+
102
+ const agent = new Agent({
103
+ name: "agent-network",
104
+ agents: { agent1, agent2 },
105
+ workflows: { workflow1 },
106
+ tools: { tool1, tool2 },
107
+ model: openai("gpt-4o"),
108
+ instructions:
109
+ "You are a network agent that can help users with a variety of tasks.",
110
+ memory,
111
+ });
112
+
113
+ await agent.network("Find me the weather in Tokyo.");
114
+ ```
@@ -0,0 +1,50 @@
1
+ This template is a styleguide on how to populate individual migration guides. Use this as guidance on how to structure files in this directory. You're not allowed to deviate from this structure.
2
+
3
+ Follow the `.cursor/rules/writing-documentation.mdc` instructions on how to write the prose content.
4
+
5
+ After you found all the changes that need to be documented, you should group them in two big groups: "Changed" and "Removed".
6
+
7
+ Example:
8
+
9
+ ```md
10
+ ## Changed
11
+
12
+ ## Removed
13
+ ```
14
+
15
+ All changes MUST go under these two sections.
16
+
17
+ Each change (be it "changed" or "removed") should be a h3 heading. You must follow that format exactly.
18
+
19
+ Example:
20
+
21
+ ```md
22
+ ## Changed
23
+
24
+ ### `oldFunction` to `newFunction`
25
+ ```
26
+
27
+ Now that the headings are in place, you need to follow an EXACT structure for each change. You're not allowed to deviate from this structure.
28
+
29
+ Provide a brief description of the change in one or two sentences. Next, explain in one sentence why it was changed.
30
+
31
+ The third element of each change has to be the explanation how to migrate existing code to the new version. Keep it concise but clear, try not to cut too much information. Afterwards a code block MUST be provided using the "diff" syntax. Inside the code block you need to show a "before" and "after" example of the code that needs to be changed with that diff syntax.
32
+
33
+ Example:
34
+
35
+ ````md
36
+ ## Changed
37
+
38
+ ### `oldFunction` to `newFunction`
39
+
40
+ The `oldFunction` has been renamed to `newFunction`. This change improves clarity and consistency across the API.
41
+
42
+ To migrate, replace all instances of `oldFunction` with `newFunction` in your codebase.
43
+
44
+ ```diff
45
+ - const result = oldFunction(args);
46
+ + const result = newFunction(args);
47
+ ```
48
+ ````
49
+
50
+ If the migration requires more steps than just a simple find-and-replace, you can add additional explanation before the code block. If it requires multiple steps, use a numbered list to explain each step clearly.