@mastra/mcp-docs-server 1.2.17-alpha.9 → 1.2.18-alpha.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 (258) hide show
  1. package/.docs/course/02-agent-tools-mcp/32-conclusion.md +1 -1
  2. package/.docs/docs/agents/code-mode.md +3 -3
  3. package/.docs/docs/agents/guardrails.md +1 -1
  4. package/.docs/docs/agents/{agent-approval.md → human-in-the-loop.md} +5 -5
  5. package/.docs/docs/agents/networks.md +3 -3
  6. package/.docs/docs/agents/overview.md +7 -7
  7. package/.docs/docs/agents/processors.md +3 -3
  8. package/.docs/docs/agents/{using-tools.md → tools.md} +7 -7
  9. package/.docs/docs/{server/auth → auth}/custom-auth-provider.md +1 -1
  10. package/.docs/docs/{server/auth → auth}/fga.md +27 -1
  11. package/.docs/docs/{server/auth.md → auth/overview.md} +4 -4
  12. package/.docs/docs/{server/auth → auth}/simple-auth.md +1 -1
  13. package/.docs/docs/{server/auth → auth}/workers.md +2 -2
  14. package/.docs/docs/{capabilities/channels.md → channels.md} +2 -2
  15. package/.docs/docs/{agents → connections}/a2a.md +2 -2
  16. package/.docs/docs/{agents → connections}/acp.md +18 -6
  17. package/.docs/docs/{mcp/overview.md → connections/mcp.md} +1 -1
  18. package/.docs/docs/connections/overview.md +5 -5
  19. package/.docs/docs/{agents → connections}/sdk-agents.md +3 -1
  20. package/.docs/docs/deployment/cloud-providers.md +1 -0
  21. package/.docs/docs/deployment/mastra-server.md +2 -2
  22. package/.docs/docs/deployment/overview.md +2 -1
  23. package/.docs/docs/deployment/sandbox.md +3 -3
  24. package/.docs/docs/deployment/workers.md +4 -4
  25. package/.docs/docs/guides/context-engineering.md +297 -0
  26. package/.docs/docs/guides/multi-agent-systems.md +7 -7
  27. package/.docs/docs/guides/streaming.md +1 -1
  28. package/.docs/docs/harness/agent-controller.md +5 -3
  29. package/.docs/docs/{long-running-agents → harness}/background-tasks.md +5 -5
  30. package/.docs/docs/{long-running-agents → harness}/durable-agents.md +18 -2
  31. package/.docs/docs/{long-running-agents → harness}/goals.md +6 -6
  32. package/.docs/docs/harness/overview.md +11 -10
  33. package/.docs/docs/{long-running-agents → harness}/schedules.md +5 -5
  34. package/.docs/docs/{long-running-agents → harness}/signal-providers.md +4 -4
  35. package/.docs/docs/mastra-platform/deploy.md +1 -1
  36. package/.docs/docs/mastra-platform/overview.md +1 -1
  37. package/.docs/docs/mastra-platform/server.md +1 -1
  38. package/.docs/docs/memory/message-history.md +1 -1
  39. package/.docs/docs/memory/overview.md +4 -4
  40. package/.docs/docs/memory/working-memory.md +1 -1
  41. package/.docs/docs/observability/integrations/exporters/mastra-storage.md +1 -1
  42. package/.docs/docs/{workspace → sandbox}/filesystem.md +2 -2
  43. package/.docs/docs/{workspace → sandbox}/lsp.md +3 -3
  44. package/.docs/docs/{workspace/sandbox.md → sandbox/overview.md} +4 -3
  45. package/.docs/docs/{workspace → sandbox}/search.md +2 -2
  46. package/.docs/docs/{workspace → sandbox}/skills.md +5 -5
  47. package/.docs/docs/server/custom-api-routes.md +2 -2
  48. package/.docs/docs/server/mastra-client.md +2 -2
  49. package/.docs/docs/server/{mastra-server.md → overview.md} +3 -3
  50. package/.docs/docs/server/pubsub.md +2 -2
  51. package/.docs/docs/server/server-adapters.md +4 -4
  52. package/.docs/docs/{agents/skills.md → skills.md} +4 -4
  53. package/.docs/docs/{storage/overview.md → storage.md} +2 -1
  54. package/.docs/docs/studio/auth.md +4 -4
  55. package/.docs/docs/studio/overview.md +2 -2
  56. package/.docs/docs/{capabilities/subagents.md → subagents.md} +35 -5
  57. package/.docs/docs/workflows/agents-and-tools.md +1 -1
  58. package/.docs/docs/workflows/control-flow.md +0 -4
  59. package/.docs/docs/workflows/human-in-the-loop.md +0 -4
  60. package/.docs/docs/workflows/overview.md +1 -1
  61. package/.docs/docs/workflows/scheduled-workflows.md +2 -2
  62. package/.docs/docs/workflows/snapshots.md +1 -1
  63. package/.docs/docs/workflows/suspend-and-resume.md +0 -4
  64. package/.docs/integrations/agentic-ui/ai-sdk-ui.md +1 -1
  65. package/.docs/integrations/agentic-ui/copilotkit.md +1 -1
  66. package/.docs/integrations/auth/google.md +2 -2
  67. package/.docs/integrations/auth/workos.md +1 -1
  68. package/.docs/integrations/browsers/agent-browser.md +2 -2
  69. package/.docs/integrations/browsers/browser-viewer.md +6 -6
  70. package/.docs/integrations/browsers/firecrawl.md +1 -1
  71. package/.docs/integrations/browsers/stagehand.md +2 -2
  72. package/.docs/integrations/channels/discord.md +2 -2
  73. package/.docs/integrations/channels/github.md +1 -1
  74. package/.docs/integrations/channels/imessage.md +4 -4
  75. package/.docs/integrations/channels/slack.md +5 -5
  76. package/.docs/integrations/channels/teams.md +2 -2
  77. package/.docs/integrations/channels/telegram.md +2 -2
  78. package/.docs/integrations/channels/whatsapp.md +2 -2
  79. package/.docs/integrations/databases/postgresql.md +1 -0
  80. package/.docs/integrations/deploy/amazon-ec2.md +2 -2
  81. package/.docs/integrations/deploy/aws-lambda.md +3 -3
  82. package/.docs/integrations/deploy/azure-app-services.md +2 -2
  83. package/.docs/integrations/deploy/cloudflare.md +2 -2
  84. package/.docs/integrations/deploy/digital-ocean.md +3 -3
  85. package/.docs/integrations/deploy/kubernetes.md +11 -11
  86. package/.docs/integrations/deploy/netlify.md +3 -3
  87. package/.docs/integrations/deploy/render.md +389 -0
  88. package/.docs/integrations/deploy/vercel.md +2 -2
  89. package/.docs/integrations/file-storage/amazon-s3.md +1 -1
  90. package/.docs/integrations/file-storage/azure-blob.md +1 -1
  91. package/.docs/integrations/file-storage/google-cloud-storage.md +1 -1
  92. package/.docs/integrations/file-storage/mesa.md +2 -2
  93. package/.docs/integrations/file-storage/vercel-files.md +1 -1
  94. package/.docs/integrations/frameworks/astro.md +6 -2
  95. package/.docs/integrations/frameworks/electron.md +1 -1
  96. package/.docs/integrations/frameworks/express.md +1 -1
  97. package/.docs/integrations/frameworks/hono.md +1 -1
  98. package/.docs/integrations/frameworks/nestjs.md +1 -1
  99. package/.docs/integrations/frameworks/next-js.md +6 -2
  100. package/.docs/integrations/frameworks/nuxt.md +1 -1
  101. package/.docs/integrations/frameworks/sveltekit.md +1 -1
  102. package/.docs/integrations/frameworks/vite-react.md +6 -2
  103. package/.docs/integrations/sandboxes/agentcore.md +1 -1
  104. package/.docs/integrations/sandboxes/apple-container.md +1 -1
  105. package/.docs/integrations/sandboxes/cloudflare-sandbox.md +118 -0
  106. package/.docs/integrations/sandboxes/daytona.md +1 -1
  107. package/.docs/integrations/sandboxes/docker.md +4 -3
  108. package/.docs/integrations/sandboxes/e2b.md +1 -1
  109. package/.docs/integrations/sandboxes/modal.md +1 -1
  110. package/.docs/integrations/sandboxes/railway.md +11 -0
  111. package/.docs/integrations.md +4 -0
  112. package/.docs/models/environment-variables.md +9 -2
  113. package/.docs/models/gateways/merge-gateway.md +212 -0
  114. package/.docs/models/gateways/openrouter.md +3 -1
  115. package/.docs/models/gateways/vercel.md +22 -1
  116. package/.docs/models/gateways.md +1 -0
  117. package/.docs/models/index.md +1 -1
  118. package/.docs/models/providers/alibaba-token-plan-cn.md +2 -1
  119. package/.docs/models/providers/alibaba-token-plan.md +2 -1
  120. package/.docs/models/providers/ambient.md +2 -2
  121. package/.docs/models/providers/amd.md +73 -0
  122. package/.docs/models/providers/arcee.md +79 -0
  123. package/.docs/models/providers/baseten.md +1 -1
  124. package/.docs/models/providers/cerebras.md +2 -3
  125. package/.docs/models/providers/chutes.md +2 -1
  126. package/.docs/models/providers/cloudflare-workers-ai.md +3 -2
  127. package/.docs/models/providers/cortecs.md +2 -1
  128. package/.docs/models/providers/crof.md +1 -1
  129. package/.docs/models/providers/crossmodel.md +3 -2
  130. package/.docs/models/providers/deepinfra.md +5 -1
  131. package/.docs/models/providers/digitalocean.md +3 -2
  132. package/.docs/models/providers/echo.md +73 -0
  133. package/.docs/models/providers/edenai.md +26 -11
  134. package/.docs/models/providers/empiriolabs.md +11 -1
  135. package/.docs/models/providers/hetzner.md +6 -8
  136. package/.docs/models/providers/huggingface.md +4 -1
  137. package/.docs/models/providers/hyper.md +8 -7
  138. package/.docs/models/providers/inferx.md +19 -13
  139. package/.docs/models/providers/jalapeno.md +89 -0
  140. package/.docs/models/providers/kilo.md +12 -11
  141. package/.docs/models/providers/kosmik.md +73 -0
  142. package/.docs/models/providers/llmgateway.md +3 -3
  143. package/.docs/models/providers/llmtr.md +35 -10
  144. package/.docs/models/providers/nano-gpt.md +13 -17
  145. package/.docs/models/providers/ofox.md +8 -4
  146. package/.docs/models/providers/opencode-go.md +23 -22
  147. package/.docs/models/providers/requesty.md +143 -53
  148. package/.docs/models/providers/runinfra.md +76 -0
  149. package/.docs/models/providers/sakana.md +3 -2
  150. package/.docs/models/providers/scnet-token-plan.md +85 -0
  151. package/.docs/models/providers/scx-ai.md +76 -0
  152. package/.docs/models/providers/togetherai.md +2 -1
  153. package/.docs/models/providers/umans-ai-coding-plan.md +2 -1
  154. package/.docs/models/providers/umans-ai.md +2 -1
  155. package/.docs/models/providers/vivgrid.md +2 -1
  156. package/.docs/models/providers/wandb.md +2 -1
  157. package/.docs/models/providers/xai.md +2 -1
  158. package/.docs/models/providers.md +8 -2
  159. package/.docs/reference/acp/acp-agent.md +2 -2
  160. package/.docs/reference/acp/create-acp-tool.md +1 -1
  161. package/.docs/reference/agent-controller/agent-controller-class.md +2 -2
  162. package/.docs/reference/agents/agent.md +2 -2
  163. package/.docs/reference/agents/channels.md +2 -2
  164. package/.docs/reference/agents/createSkill.md +2 -2
  165. package/.docs/reference/agents/durable-agent.md +1 -1
  166. package/.docs/reference/agents/generate.md +3 -1
  167. package/.docs/reference/agents/getSkill.md +1 -1
  168. package/.docs/reference/agents/listSkills.md +1 -1
  169. package/.docs/reference/agents/listSuspendedRuns.md +6 -6
  170. package/.docs/reference/agents/listTools.md +2 -2
  171. package/.docs/reference/agents/network.md +3 -1
  172. package/.docs/reference/ai-sdk/chat-route.md +1 -1
  173. package/.docs/reference/ai-sdk/handle-chat-stream.md +1 -1
  174. package/.docs/reference/ai-sdk/handle-network-stream.md +2 -2
  175. package/.docs/reference/ai-sdk/handle-workflow-stream.md +1 -1
  176. package/.docs/reference/ai-sdk/network-route.md +2 -2
  177. package/.docs/reference/ai-sdk/to-ai-sdk-messages.md +1 -1
  178. package/.docs/reference/ai-sdk/to-ai-sdk-stream.md +1 -1
  179. package/.docs/reference/ai-sdk/workflow-route.md +1 -1
  180. package/.docs/reference/auth/fga.md +7 -5
  181. package/.docs/reference/auth/jwt.md +1 -1
  182. package/.docs/reference/browser/agent-browser.md +2 -2
  183. package/.docs/reference/browser/browser-viewer.md +2 -2
  184. package/.docs/reference/browser/firecrawl-browser.md +1 -1
  185. package/.docs/reference/browser/mastra-browser.md +1 -1
  186. package/.docs/reference/browser/stagehand-browser.md +2 -2
  187. package/.docs/reference/build-with-ai.md +2 -2
  188. package/.docs/reference/channels/channel-provider.md +1 -1
  189. package/.docs/reference/channels/slack-provider.md +1 -1
  190. package/.docs/reference/cli/mastra.md +2 -0
  191. package/.docs/reference/client-js/agents.md +24 -4
  192. package/.docs/reference/coding-agent/create-coding-agent.md +142 -13
  193. package/.docs/reference/configuration.md +6 -6
  194. package/.docs/reference/core/getEditor.md +1 -1
  195. package/.docs/reference/core/getMCPServer.md +1 -1
  196. package/.docs/reference/core/getMCPServerById.md +1 -1
  197. package/.docs/reference/core/getTool.md +1 -1
  198. package/.docs/reference/core/getToolById.md +1 -1
  199. package/.docs/reference/core/listMCPServers.md +1 -1
  200. package/.docs/reference/core/listTools.md +1 -1
  201. package/.docs/reference/core/removeWorkspace.md +1 -1
  202. package/.docs/reference/editor/mastra-editor.md +2 -2
  203. package/.docs/reference/editor/prompt-blocks.md +2 -2
  204. package/.docs/reference/editor/tool-provider.md +108 -1
  205. package/.docs/reference/editor/tools.md +1 -1
  206. package/.docs/reference/editor/versioning.md +3 -3
  207. package/.docs/reference/evals/prompt-alignment.md +18 -0
  208. package/.docs/reference/evals/rubric.md +1 -1
  209. package/.docs/reference/file-based-agents/memory.md +2 -2
  210. package/.docs/reference/file-based-agents/server.md +3 -3
  211. package/.docs/reference/file-based-agents/skills.md +1 -1
  212. package/.docs/reference/file-based-agents/storage.md +3 -3
  213. package/.docs/reference/file-based-agents/subagents.md +1 -1
  214. package/.docs/reference/file-based-agents/workspace.md +3 -3
  215. package/.docs/reference/index.md +1 -0
  216. package/.docs/reference/manual-install.md +3 -3
  217. package/.docs/reference/memory/memory-class.md +1 -0
  218. package/.docs/reference/memory/settled.md +57 -0
  219. package/.docs/reference/migrations/network-to-supervisor.md +2 -2
  220. package/.docs/reference/processors/provider-history-compat.md +6 -5
  221. package/.docs/reference/processors/skill-search-processor.md +3 -1
  222. package/.docs/reference/processors/token-limiter-processor.md +4 -0
  223. package/.docs/reference/processors/tool-call-filter.md +7 -7
  224. package/.docs/reference/processors/tool-search-processor.md +1 -1
  225. package/.docs/reference/project-structure.md +1 -1
  226. package/.docs/reference/pubsub/lease-provider.md +3 -3
  227. package/.docs/reference/pubsub/redis-streams.md +1 -1
  228. package/.docs/reference/rag/graph-rag.md +71 -8
  229. package/.docs/reference/rag/retrieval.md +26 -18
  230. package/.docs/reference/schedules/overview.md +1 -1
  231. package/.docs/reference/streaming/ChunkType.md +2 -2
  232. package/.docs/reference/streaming/agents/stream.md +29 -4
  233. package/.docs/reference/streaming/agents/streamUntilIdle.md +1 -1
  234. package/.docs/reference/tools/ask-user-tool.md +1 -1
  235. package/.docs/reference/tools/create-code-mode.md +1 -1
  236. package/.docs/reference/tools/create-tool.md +4 -4
  237. package/.docs/reference/tools/mcp-client.md +2 -0
  238. package/.docs/reference/tools/mcp-server.md +97 -4
  239. package/.docs/reference/tools/submit-plan-tool.md +1 -1
  240. package/.docs/reference/tools/task-tools.md +2 -2
  241. package/.docs/reference/vectors/vectorize.md +12 -2
  242. package/.docs/reference/workers/overview.md +2 -2
  243. package/.docs/reference/workflows/run-methods/resume.md +21 -0
  244. package/.docs/reference/workspace/local-filesystem.md +1 -1
  245. package/.docs/reference/workspace/local-sandbox.md +4 -3
  246. package/.docs/reference/workspace/platform-sandbox.md +11 -0
  247. package/.docs/reference/workspace/process-manager.md +20 -4
  248. package/.docs/reference/workspace/sandbox.md +1 -1
  249. package/.docs/reference/workspace/workspace-class.md +5 -5
  250. package/CHANGELOG.md +81 -0
  251. package/package.json +6 -6
  252. package/.docs/models/providers/merge-gateway.md +0 -265
  253. /package/.docs/docs/{server/auth → auth}/composite-auth.md +0 -0
  254. /package/.docs/docs/{server/auth → auth}/jwt.md +0 -0
  255. /package/.docs/docs/{browser/overview.md → browser.md} +0 -0
  256. /package/.docs/docs/{getting-started/develop.md → develop.md} +0 -0
  257. /package/.docs/docs/{long-running-agents → harness}/signals.md +0 -0
  258. /package/.docs/docs/{editor/overview.md → studio/editor.md} +0 -0
@@ -13,7 +13,7 @@ Mastra agents can be configured to store [message history](https://mastra.ai/doc
13
13
 
14
14
  If the combined memory exceeds the model's context limit, [memory processors](https://mastra.ai/docs/memory/memory-processors) can filter, trim, or prioritize content so the most relevant information is preserved.
15
15
 
16
- Memory results will be stored in one or more of your configured [storage providers](https://mastra.ai/docs/storage/overview).
16
+ Memory results will be stored in one or more of your configured [storage providers](https://mastra.ai/docs/storage).
17
17
 
18
18
  > **📹 Watch:** Watch [Mastra memory concepts](https://www.youtube.com/watch?v=18iIHQtIPmc) for a conceptual overview of the memory layers agents can use.
19
19
 
@@ -77,7 +77,7 @@ Use memory when your agent needs to maintain multi-turn conversations that refer
77
77
  bun add @mastra/libsql@latest
78
78
  ```
79
79
 
80
- For more details on available providers and how storage works in Mastra, visit the [storage](https://mastra.ai/docs/storage/overview) documentation.
80
+ For more details on available providers and how storage works in Mastra, visit the [storage](https://mastra.ai/docs/storage) documentation.
81
81
 
82
82
  3. Add the storage provider to your main Mastra instance to enable memory across all configured agents.
83
83
 
@@ -188,7 +188,7 @@ Conversation messages are ordered by timestamp and deduplicated by message ID, s
188
188
 
189
189
  ## Memory in multi-agent systems
190
190
 
191
- When a [supervisor agent](https://mastra.ai/docs/capabilities/subagents) delegates to a subagent, Mastra isolates subagent memory automatically. No flag enables this as it happens on every delegation. Understanding how this scoping works lets you decide what stays private and what to share intentionally.
191
+ When a [supervisor agent](https://mastra.ai/docs/subagents) delegates to a subagent, Mastra isolates subagent memory automatically. No flag enables this as it happens on every delegation. Understanding how this scoping works lets you decide what stays private and what to share intentionally.
192
192
 
193
193
  ### How delegation scopes memory
194
194
 
@@ -200,7 +200,7 @@ Each delegation creates a fresh `threadId` and a deterministic `resourceId` for
200
200
 
201
201
  > **Note:** Title generation (`generateTitle`) is a top-level thread concern and **isn't** applied to inherited subagent threads. Because each delegation creates an ephemeral thread that no one sees, running title generation for it would waste an LLM call per delegation. To generate titles for a subagent's own threads, give that subagent its own memory configuration.
202
202
 
203
- The supervisor forwards its conversation context to the subagent so it has enough background to complete the task. Only the delegation prompt and the subagent's response are saved, the full parent conversation isn't stored. You can control which messages reach the subagent with the [`messageFilter`](https://mastra.ai/docs/capabilities/subagents) callback.
203
+ The supervisor forwards its conversation context to the subagent so it has enough background to complete the task. Only the delegation prompt and the subagent's response are saved, the full parent conversation isn't stored. You can control which messages reach the subagent with the [`messageFilter`](https://mastra.ai/docs/subagents) callback.
204
204
 
205
205
  > **Note:** Subagent resource IDs are always suffixed with the agent name (`{parentResourceId}-{agentName}`). Different subagents under the same supervisor never share a resource ID through delegation.
206
206
 
@@ -400,7 +400,7 @@ const response = await agent.generate('What do you know about me?', {
400
400
 
401
401
  ## Opt in to state signals (experimental)
402
402
 
403
- By default, working memory reaches the model as part of the system message. You can opt into delivering it as a [state signal](https://mastra.ai/docs/long-running-agents/signals) instead by setting `useStateSignals: true`:
403
+ By default, working memory reaches the model as part of the system message. You can opt into delivering it as a [state signal](https://mastra.ai/docs/harness/signals) instead by setting `useStateSignals: true`:
404
404
 
405
405
  ```typescript
406
406
  const memory = new Memory({
@@ -244,4 +244,4 @@ new MastraStorageExporter({
244
244
  - [Tracing Overview](https://mastra.ai/docs/observability/tracing/overview)
245
245
  - [MastraPlatformExporter](https://mastra.ai/docs/mastra-platform/observability)
246
246
  - [Composite Storage](https://mastra.ai/reference/storage/composite): Combine multiple storage providers
247
- - [Storage Configuration](https://mastra.ai/docs/storage/overview)
247
+ - [Storage Configuration](https://mastra.ai/docs/storage)
@@ -165,7 +165,7 @@ const workspace = new Workspace({
165
165
 
166
166
  ### Per-user or per-thread mounts
167
167
 
168
- Workspace-level `mounts` require a sandbox provider object and can't be combined with a sandbox resolver. For one sandbox and storage prefix per user or thread, create and mount the filesystem inside the sandbox resolver. See [Multi-tenant sandboxes](https://mastra.ai/docs/workspace/sandbox) for a complete example.
168
+ Workspace-level `mounts` require a sandbox provider object and can't be combined with a sandbox resolver. For one sandbox and storage prefix per user or thread, create and mount the filesystem inside the sandbox resolver. See [Multi-tenant sandboxes](https://mastra.ai/docs/sandbox/overview) for a complete example.
169
169
 
170
170
  ## Workspace-only filesystem
171
171
 
@@ -262,6 +262,6 @@ Each tenant's prefix seeds its own workspace view. Workspace tools resolve the f
262
262
 
263
263
  ## Related
264
264
 
265
- - [Sandbox](https://mastra.ai/docs/workspace/sandbox)
265
+ - [Sandbox](https://mastra.ai/docs/sandbox/overview)
266
266
  - [`WorkspaceFilesystem` reference](https://mastra.ai/reference/workspace/filesystem)
267
267
  - [`Workspace` reference](https://mastra.ai/reference/workspace/workspace-class)
@@ -210,7 +210,7 @@ const workspace = new Workspace({
210
210
 
211
211
  ## Related
212
212
 
213
- - [Filesystem](https://mastra.ai/docs/workspace/filesystem)
214
- - [Sandbox](https://mastra.ai/docs/workspace/sandbox)
215
- - [Search and indexing](https://mastra.ai/docs/workspace/search)
213
+ - [Filesystem](https://mastra.ai/docs/sandbox/filesystem)
214
+ - [Sandbox](https://mastra.ai/docs/sandbox/overview)
215
+ - [Search and indexing](https://mastra.ai/docs/sandbox/search)
216
216
  - [Workspace class reference](https://mastra.ai/reference/workspace/workspace-class)
@@ -111,6 +111,7 @@ Use a remote or container backend when commands need a stronger boundary from th
111
111
  - [AgentCore](https://mastra.ai/integrations/sandboxes/agentcore)
112
112
  - [Apple Container](https://mastra.ai/integrations/sandboxes/apple-container)
113
113
  - [Blaxel](https://mastra.ai/integrations/sandboxes/blaxel)
114
+ - [Cloudflare Sandbox](https://mastra.ai/integrations/sandboxes/cloudflare-sandbox)
114
115
  - [Daytona](https://mastra.ai/integrations/sandboxes/daytona)
115
116
  - [Docker](https://mastra.ai/integrations/sandboxes/docker)
116
117
  - [E2B](https://mastra.ai/integrations/sandboxes/e2b)
@@ -145,7 +146,7 @@ const workspace = new Workspace({
145
146
 
146
147
  The agent receives filesystem tools for the mounted storage, and commands in the sandbox can access the same files under `/data`. This lets you seed an ephemeral sandbox with existing files and persist its output after the sandbox stops.
147
148
 
148
- Mount support varies by sandbox backend. See [Filesystem](https://mastra.ai/docs/workspace/filesystem) for supported storage backends, detailed mount configuration, and how to mount multiple filesystems.
149
+ Mount support varies by sandbox backend. See [Filesystem](https://mastra.ai/docs/sandbox/filesystem) for supported storage backends, detailed mount configuration, and how to mount multiple filesystems.
149
150
 
150
151
  ## Multi-tenant sandboxes
151
152
 
@@ -200,7 +201,7 @@ Workspace-level `mounts` can't be combined with a sandbox resolver. This is a kn
200
201
 
201
202
  The workspace doesn't own sandboxes returned by a resolver. Return a sandbox that's ready to use, and destroy it through your application's lifecycle code when it's no longer needed. `workspace.destroy()` doesn't destroy resolver-returned sandboxes.
202
203
 
203
- Resolvers are incompatible with `mounts` and [`lsp: true`](https://mastra.ai/docs/workspace/lsp), because both require a static sandbox when the workspace is constructed. Using a resolver with `mounts` throws an `INVALID_CONFIG` error. With `lsp: true`, Mastra disables LSP and logs a warning.
204
+ Resolvers are incompatible with `mounts` and [`lsp: true`](https://mastra.ai/docs/sandbox/lsp), because both require a static sandbox when the workspace is constructed. Using a resolver with `mounts` throws an `INVALID_CONFIG` error. With `lsp: true`, Mastra disables LSP and logs a warning.
204
205
 
205
206
  ### Tool availability
206
207
 
@@ -335,4 +336,4 @@ await sandbox.executeCommand('node', ['scripts/download-reports.js'], {
335
336
 
336
337
  - [`SandboxProcessManager` reference](https://mastra.ai/reference/workspace/process-manager)
337
338
  - [`WorkspaceSandbox` reference](https://mastra.ai/reference/workspace/sandbox)
338
- - [Filesystem](https://mastra.ai/docs/workspace/filesystem)
339
+ - [Filesystem](https://mastra.ai/docs/sandbox/filesystem)
@@ -4,7 +4,7 @@
4
4
 
5
5
  Search lets agents find relevant content in indexed workspace files. When an agent needs to answer a question or find information, it can search the indexed content instead of reading every file.
6
6
 
7
- Search works with both [`mounts`](https://mastra.ai/docs/workspace/filesystem) and a [workspace-only filesystem](https://mastra.ai/docs/workspace/filesystem). With `mounts`, paths from every mounted filesystem are available through one composite filesystem. With `filesystem`, search uses that provider directly. In both cases, queries search the workspace index rather than reading live files on demand.
7
+ Search works with both [`mounts`](https://mastra.ai/docs/sandbox/filesystem) and a [workspace-only filesystem](https://mastra.ai/docs/sandbox/filesystem). With `mounts`, paths from every mounted filesystem are available through one composite filesystem. With `filesystem`, search uses that provider directly. In both cases, queries search the workspace index rather than reading live files on demand.
8
8
 
9
9
  ## When to use search
10
10
 
@@ -327,6 +327,6 @@ See [workspace class reference](https://mastra.ai/reference/workspace/workspace-
327
327
 
328
328
  ## Related
329
329
 
330
- - [Sandbox](https://mastra.ai/docs/workspace/sandbox)
330
+ - [Sandbox](https://mastra.ai/docs/sandbox/overview)
331
331
  - [RAG overview](https://mastra.ai/reference/rag/overview)
332
332
  - [Workspace class reference](https://mastra.ai/reference/workspace/workspace-class)
@@ -4,7 +4,7 @@
4
4
 
5
5
  Skills are reusable instructions that teach agents how to perform specific tasks. They follow the [Agent Skills specification](https://agentskills.io) - an open standard for packaging agent capabilities.
6
6
 
7
- > **Note:** Workspace skills are discovered through a workspace and shared with every agent that uses it. To attach skills directly to one agent without requiring a workspace, use [agent skills](https://mastra.ai/docs/agents/skills).
7
+ > **Note:** Workspace skills are discovered through a workspace and shared with every agent that uses it. To attach skills directly to one agent without requiring a workspace, use [agent skills](https://mastra.ai/docs/skills).
8
8
 
9
9
  ## When to use skills
10
10
 
@@ -205,7 +205,7 @@ When `skillSource` is provided, it's used instead of the workspace filesystem fo
205
205
 
206
206
  You can also attach skills directly to an agent without a workspace using `createSkill()` and the agent's `skills` config. When both agent-level and workspace-level skills exist, they merge, agent-level skills take precedence on name conflicts.
207
207
 
208
- See [Agent skills](https://mastra.ai/docs/agents/skills) for details.
208
+ See [Agent skills](https://mastra.ai/docs/skills) for details.
209
209
 
210
210
  ## Dynamic skills
211
211
 
@@ -226,8 +226,8 @@ const workspace = new Workspace({
226
226
 
227
227
  ## Related
228
228
 
229
- - [Agent skills](https://mastra.ai/docs/agents/skills)
229
+ - [Agent skills](https://mastra.ai/docs/skills)
230
230
  - [Agent skills specification](https://agentskills.io)
231
- - [Sandbox](https://mastra.ai/docs/workspace/sandbox)
232
- - [Search and indexing](https://mastra.ai/docs/workspace/search)
231
+ - [Sandbox](https://mastra.ai/docs/sandbox/overview)
232
+ - [Search and indexing](https://mastra.ai/docs/sandbox/search)
233
233
  - [`createSkill()` reference](https://mastra.ai/reference/agents/createSkill)
@@ -295,7 +295,7 @@ registerApiRoute('/user-profile', {
295
295
  })
296
296
  ```
297
297
 
298
- For more information about authentication providers, see the [Auth documentation](https://mastra.ai/docs/server/auth).
298
+ For more information about authentication providers, see the [Auth documentation](https://mastra.ai/docs/auth/overview).
299
299
 
300
300
  ## Continue generation after client disconnect
301
301
 
@@ -372,4 +372,4 @@ export const mastra = new Mastra({
372
372
 
373
373
  - [registerApiRoute() Reference](https://mastra.ai/reference/server/register-api-route): Full API reference
374
374
  - [Server Middleware](https://mastra.ai/docs/server/middleware): Global middleware configuration
375
- - [Mastra Server](https://mastra.ai/docs/server/mastra-server): Server configuration options
375
+ - [Mastra Server](https://mastra.ai/docs/server/overview): Server configuration options
@@ -2,7 +2,7 @@
2
2
 
3
3
  # Mastra client
4
4
 
5
- The Mastra Client SDK provides a concise and type-safe interface for interacting with your [Mastra Server](https://mastra.ai/docs/server/mastra-server) from your client environment.
5
+ The Mastra Client SDK provides a concise and type-safe interface for interacting with your [Mastra Server](https://mastra.ai/docs/server/overview) from your client environment.
6
6
 
7
7
  ## Prerequisites
8
8
 
@@ -59,7 +59,7 @@ export const mastraClient = new MastraClient({
59
59
  The Mastra Client SDK exposes all resources served by the Mastra Server.
60
60
 
61
61
  - **[Agents](https://mastra.ai/reference/client-js/agents)**: Generate responses and stream conversations.
62
- - **[A2A](https://mastra.ai/docs/agents/a2a)**: Discover agents through agent cards and work with task-based A2A streams.
62
+ - **[A2A](https://mastra.ai/docs/connections/a2a)**: Discover agents through agent cards and work with task-based A2A streams.
63
63
  - **[Memory](https://mastra.ai/reference/client-js/memory)**: Manage conversation threads and message history.
64
64
  - **[Tools](https://mastra.ai/reference/client-js/tools)**: Executed and managed tools.
65
65
  - **[Workflows](https://mastra.ai/reference/client-js/workflows)**: Trigger workflows and track their execution.
@@ -14,8 +14,8 @@ Mastra runs as an HTTP server that exposes your agents, workflows, and other fun
14
14
  - **[Server Adapters](https://mastra.ai/docs/server/server-adapters)**: Run Mastra with Express, Hono, or your own HTTP server instead of the generated server.
15
15
  - **[Custom Adapters](https://mastra.ai/docs/server/custom-adapters)**: Build adapters for frameworks not officially supported.
16
16
  - **[Mastra Client SDK](https://mastra.ai/docs/server/mastra-client)**: Type-safe client for calling agents, workflows, and tools from browser or server environments.
17
- - **[A2A](https://mastra.ai/docs/agents/a2a)**: Expose agents through A2A agent cards and task streams, plus push notifications.
18
- - **[Authentication](https://mastra.ai/docs/server/auth)**: Secure endpoints with JWT, Clerk, Supabase, Firebase, Auth0, or WorkOS.
17
+ - **[A2A](https://mastra.ai/docs/connections/a2a)**: Expose agents through A2A agent cards and task streams, plus push notifications.
18
+ - **[Authentication](https://mastra.ai/docs/auth/overview)**: Secure endpoints with JWT, Clerk, Supabase, Firebase, Auth0, or WorkOS.
19
19
 
20
20
  ## Configuration
21
21
 
@@ -101,5 +101,5 @@ Mastra requires `module` and `moduleResolution` settings compatible with modern
101
101
 
102
102
  - Add [middleware](https://mastra.ai/docs/server/middleware)
103
103
  - Create [custom API routes](https://mastra.ai/docs/server/custom-api-routes)
104
- - Add [authentication](https://mastra.ai/docs/server/auth)
104
+ - Add [authentication](https://mastra.ai/docs/auth/overview)
105
105
  - [Deploy](https://mastra.ai/docs/deployment/overview) your server to production
@@ -12,7 +12,7 @@ Several built-in systems publish and subscribe to events through the same pub/su
12
12
 
13
13
  - **Workflow execution**: The scheduler publishes a `workflow.start` event, and a long-lived worker consumes it to run the workflow. Step and lifecycle events flow over pub/sub during execution.
14
14
  - **Scheduled workflows**: The scheduler dispatches due runs by publishing to the workflow topic. See [Scheduled workflows](https://mastra.ai/docs/workflows/scheduled-workflows).
15
- - **Background tasks**: A task manager dispatches work to a worker group and fans task lifecycle updates out to subscribers, which is how background task streams stay live. See [Background task streaming](https://mastra.ai/docs/long-running-agents/background-tasks).
15
+ - **Background tasks**: A task manager dispatches work to a worker group and fans task lifecycle updates out to subscribers, which is how background task streams stay live. See [Background task streaming](https://mastra.ai/docs/harness/background-tasks).
16
16
  - **Agent signals**: Sending a signal to an active agent run publishes an event on a thread topic, so a run executing in another process receives the signal.
17
17
  - **Resumable streams**: Stream chunks are published per run, so a client that reconnects can replay what it missed.
18
18
 
@@ -125,5 +125,5 @@ Visit the [PubSub reference](https://mastra.ai/reference/pubsub/base) for the fu
125
125
  - [PubSub reference](https://mastra.ai/reference/pubsub/base)
126
126
  - [Mastra class](https://mastra.ai/reference/core/mastra-class)
127
127
  - [Workers](https://mastra.ai/docs/deployment/workers): Run workflow orchestration and background tasks in dedicated processes using PubSub
128
- - [Background task streaming](https://mastra.ai/docs/long-running-agents/background-tasks)
128
+ - [Background task streaming](https://mastra.ai/docs/harness/background-tasks)
129
129
  - [Scheduled workflows](https://mastra.ai/docs/workflows/scheduled-workflows)
@@ -12,7 +12,7 @@ Server adapters let you run Mastra with your own HTTP server instead of the Hono
12
12
  - You need direct access to the server instance for custom configuration
13
13
  - Your team prefers using another server framework instead of the Hono server created by `mastra build`.
14
14
 
15
- > **Tip:** For deployments without custom server requirements, use `mastra build` instead. It configures server setup and registers middleware, plus applies deployment settings based on your project configuration. See [Server Configuration](https://mastra.ai/docs/server/mastra-server).
15
+ > **Tip:** For deployments without custom server requirements, use `mastra build` instead. It configures server setup and registers middleware, plus applies deployment settings based on your project configuration. See [Server Configuration](https://mastra.ai/docs/server/overview).
16
16
  >
17
17
  > If you want to use [Studio](https://mastra.ai/docs/studio/overview) with your server adapter, use [`mastra studio`](https://mastra.ai/reference/cli/mastra) to only launch the Studio UI.
18
18
 
@@ -635,7 +635,7 @@ const server = new MastraServer({
635
635
 
636
636
  When `serverless: true`, MCP HTTP requests run without session management, making them compatible with stateless execution environments.
637
637
 
638
- See [MCP](https://mastra.ai/docs/mcp/overview) for configuration details and how to set up MCP servers.
638
+ See [MCP](https://mastra.ai/docs/connections/mcp) for configuration details and how to set up MCP servers.
639
639
 
640
640
  ## Related
641
641
 
@@ -643,7 +643,7 @@ See [MCP](https://mastra.ai/docs/mcp/overview) for configuration details and how
643
643
  - [Express Adapter](https://mastra.ai/reference/server/express-adapter) - Express-specific setup
644
644
  - [NestJS Adapter](https://mastra.ai/reference/server/nestjs-adapter) - NestJS-specific setup
645
645
  - [Custom Adapters](https://mastra.ai/docs/server/custom-adapters) - Building adapters for other frameworks
646
- - [Server Configuration](https://mastra.ai/docs/server/mastra-server) - Using `mastra build` instead
647
- - [Authentication](https://mastra.ai/docs/server/auth) - Configuring auth for your server
646
+ - [Server Configuration](https://mastra.ai/docs/server/overview) - Using `mastra build` instead
647
+ - [Authentication](https://mastra.ai/docs/auth/overview) - Configuring auth for your server
648
648
  - [MastraServer Reference](https://mastra.ai/reference/server/mastra-server) - Full API reference
649
649
  - [createRoute() Reference](https://mastra.ai/reference/server/create-route) - Creating type-safe custom routes
@@ -4,7 +4,7 @@
4
4
 
5
5
  Skills are reusable instructions that teach agents how to perform specific tasks. They follow the [Agent Skills specification](https://agentskills.io).
6
6
 
7
- You can attach skills directly to an agent through its `skills` config, or configure them on a [workspace](https://mastra.ai/docs/workspace/skills). Attach them to the agent when the skills belong to that specific agent and you want to define them in code with no workspace required. Use a workspace when you want skills discovered from the filesystem and shared across every agent that uses it. This page covers the agent-level approach, defining skills in code and loading them from files, plus resolving them per request.
7
+ You can attach skills directly to an agent through its `skills` config, or configure them on a [workspace](https://mastra.ai/docs/sandbox/skills). Attach them to the agent when the skills belong to that specific agent and you want to define them in code with no workspace required. Use a workspace when you want skills discovered from the filesystem and shared across every agent that uses it. This page covers the agent-level approach, defining skills in code and loading them from files, plus resolving them per request.
8
8
 
9
9
  ## When to use agent-level skills
10
10
 
@@ -15,7 +15,7 @@ Use agent-level skills when:
15
15
  - You're building packages or libraries that contain agent capabilities
16
16
  - You need per-request skill resolution based on context
17
17
 
18
- For filesystem-based skill discovery across a project, use [workspace skills](https://mastra.ai/docs/workspace/skills) instead.
18
+ For filesystem-based skill discovery across a project, use [workspace skills](https://mastra.ai/docs/sandbox/skills) instead.
19
19
 
20
20
  ## Quickstart
21
21
 
@@ -90,7 +90,7 @@ export const agent = new Agent({
90
90
  })
91
91
  ```
92
92
 
93
- Filesystem paths use `LocalSkillSource` under the hood, which reads `SKILL.md` files following the same format as [workspace skills](https://mastra.ai/docs/workspace/skills).
93
+ Filesystem paths use `LocalSkillSource` under the hood, which reads `SKILL.md` files following the same format as [workspace skills](https://mastra.ai/docs/sandbox/skills).
94
94
 
95
95
  ## Dynamic skills
96
96
 
@@ -193,7 +193,7 @@ Visit [`.getSkill()` reference](https://mastra.ai/reference/agents/getSkill) and
193
193
 
194
194
  ## Related
195
195
 
196
- - [Workspace skills](https://mastra.ai/docs/workspace/skills)
196
+ - [Workspace skills](https://mastra.ai/docs/sandbox/skills)
197
197
  - [`createSkill()` reference](https://mastra.ai/reference/agents/createSkill)
198
198
  - [`.getSkill()` reference](https://mastra.ai/reference/agents/getSkill)
199
199
  - [`.listSkills()` reference](https://mastra.ai/reference/agents/listSkills)
@@ -10,7 +10,7 @@ Storage powers:
10
10
  - [Workflows](https://mastra.ai/docs/workflows/overview): Durable snapshots for suspended and resumed workflow runs.
11
11
  - [Observability](https://mastra.ai/docs/observability/overview): Traces, spans, metrics, logs, and feedback.
12
12
  - [Evals](https://mastra.ai/docs/evals/overview): Scores, datasets, experiments, and evaluation results.
13
- - [Long-running agents](https://mastra.ai/docs/long-running-agents/durable-agents): Background tasks, schedules, goals, and thread state.
13
+ - [Long-running agents](https://mastra.ai/docs/harness/durable-agents): Background tasks, schedules, goals, and thread state.
14
14
 
15
15
  ## When to configure storage
16
16
 
@@ -200,6 +200,7 @@ Each provider page includes installation instructions, configuration parameters,
200
200
  - [Google Cloud Spanner](https://mastra.ai/integrations/databases/spanner)
201
201
  - [LanceDB](https://mastra.ai/integrations/databases/lancedb)
202
202
  - [libSQL](https://mastra.ai/integrations/databases/libsql)
203
+ - [Mastra](https://mastra.ai/docs/mastra-platform/database)
203
204
  - [MongoDB](https://mastra.ai/integrations/databases/mongodb)
204
205
  - [MSSQL](https://mastra.ai/integrations/databases/mssql)
205
206
  - [Neon Postgres](https://mastra.ai/integrations/databases/neon)
@@ -2,7 +2,7 @@
2
2
 
3
3
  # Studio auth
4
4
 
5
- When you configure [authentication](https://mastra.ai/docs/server/auth) on your Mastra server, Studio automatically displays a login screen and enforces access control. One configuration secures both the Studio UI and your API routes.
5
+ When you configure [authentication](https://mastra.ai/docs/auth/overview) on your Mastra server, Studio automatically displays a login screen and enforces access control. One configuration secures both the Studio UI and your API routes.
6
6
 
7
7
  Without authentication, Studio and all API routes are publicly accessible.
8
8
 
@@ -14,7 +14,7 @@ Without authentication, Studio and all API routes are publicly accessible.
14
14
 
15
15
  ## Quickstart
16
16
 
17
- Add an auth provider to your Mastra server configuration. This example uses [Simple Auth](https://mastra.ai/docs/server/auth/simple-auth) for a minimal setup:
17
+ Add an auth provider to your Mastra server configuration. This example uses [Simple Auth](https://mastra.ai/docs/auth/simple-auth) for a minimal setup:
18
18
 
19
19
  ```typescript
20
20
  import { Mastra } from '@mastra/core'
@@ -35,7 +35,7 @@ export const mastra = new Mastra({
35
35
  })
36
36
  ```
37
37
 
38
- Once configured, Studio shows a login screen and requires authentication for all API requests. Visit the [Auth docs](https://mastra.ai/docs/server/auth) for a full list of supported providers.
38
+ Once configured, Studio shows a login screen and requires authentication for all API requests. Visit the [Auth docs](https://mastra.ai/docs/auth/overview) for a full list of supported providers.
39
39
 
40
40
  ## How it works
41
41
 
@@ -157,6 +157,6 @@ Studio Auth features (SSO login, RBAC, permission-based UI) are part of the Mast
157
157
 
158
158
  ## Related
159
159
 
160
- - [Auth overview](https://mastra.ai/docs/server/auth): Full list of supported auth providers.
160
+ - [Auth overview](https://mastra.ai/docs/auth/overview): Full list of supported auth providers.
161
161
  - [Studio deployment](https://mastra.ai/docs/studio/deployment): Deploy Studio to production.
162
162
  - [Custom API routes](https://mastra.ai/docs/server/custom-api-routes): Control authentication on individual endpoints.
@@ -57,7 +57,7 @@ You can also attach [scorers](#scorers) to measure and compare response quality
57
57
 
58
58
  You can send a follow-up message in the same thread during an agent response stream. Studio shows the message as pending until the stream confirms it, then continues the response below that follow-up. Other Studio tabs that have the same thread open can observe the active stream.
59
59
 
60
- Use [Editor](https://mastra.ai/docs/editor/overview) to let non-technical team members iterate on agents and version every change, plus run experiments without redeploying.
60
+ Use [Editor](https://mastra.ai/docs/studio/editor) to let non-technical team members iterate on agents and version every change, plus run experiments without redeploying.
61
61
 
62
62
  Use [Agent Builder](https://agent-builder.mastra.ai) to create and manage fully stored agents through a separate browser-based interface.
63
63
 
@@ -85,7 +85,7 @@ Run tools on their own to observe behavior and test them before assigning them t
85
85
 
86
86
  Browse the files in your agent's workspace filesystem using a built-in file browser. Switch between workspace mounts, create directories, and view file contents with syntax highlighting. Writable workspaces allow directory creation and file deletion; read-only workspaces are labeled accordingly. The Skills tab lists all discovered skills with their instructions, references, and metadata. Install community skills from [skills.sh](https://skills.sh) or remove existing ones.
87
87
 
88
- See [workspaces](https://mastra.ai/docs/workspace/sandbox) for configuration details.
88
+ See [workspaces](https://mastra.ai/docs/sandbox/overview) for configuration details.
89
89
 
90
90
  ### Request context
91
91
 
@@ -166,6 +166,36 @@ The `context` object includes:
166
166
  | `error` | Error if the delegation failed |
167
167
  | `bail()` | Function to stop the parent agent's loop |
168
168
 
169
+ ### Hook errors
170
+
171
+ If a delegation hook throws, the delegation continues by default: `onDelegationStart` proceeds with the original prompt, `messageFilter` falls back to the unfiltered context, and `onDelegationComplete` keeps the subagent's original result. Set `hookErrorStrategy: 'throw'` to fail the delegation instead.
172
+
173
+ ```typescript
174
+ const stream = await parentAgent.stream('Research AI trends', {
175
+ maxSteps: 10,
176
+ delegation: {
177
+ hookErrorStrategy: 'throw',
178
+ onDelegationComplete: async ({ result }) => {
179
+ // If this throws, the parent sees a failed delegation instead of a
180
+ // successful one whose result was silently dropped.
181
+ await reportToAnalytics(result)
182
+ },
183
+ },
184
+ })
185
+ ```
186
+
187
+ Either way, every hook failure is recorded on the run's request context under `__mastra_delegationHookErrors` as a list of `{ hook, primitiveId, toolCallId, runId, name, message }` entries, so you can detect a hook failure programmatically:
188
+
189
+ ```typescript
190
+ const requestContext = new RequestContext()
191
+
192
+ await parentAgent.generate('Research AI trends', { maxSteps: 10, requestContext })
193
+
194
+ const hookErrors = requestContext.get('__mastra_delegationHookErrors') ?? []
195
+ ```
196
+
197
+ When `hookErrorStrategy` is `'throw'`, a throwing `onDelegationStart` blocks the subagent from running at all, and a throwing `messageFilter` or `onDelegationComplete` surfaces to the parent as a failed tool call. If `onDelegationComplete` throws while handling a failed delegation, the original delegation error is still what surfaces, and the hook is never re-invoked for its own failure.
198
+
169
199
  ## Message filtering
170
200
 
171
201
  By default, subagents receive the full conversation context from the parent agent. Use `messageFilter` to control what messages are shared, for example, to remove sensitive data or limit context size.
@@ -399,7 +429,7 @@ Success criteria:
399
429
 
400
430
  ## Running subagents in the background
401
431
 
402
- Subagent invocations are dispatched as tool calls, so they can run as [background tasks](https://mastra.ai/docs/long-running-agents/background-tasks). This is useful when one or more delegations are long-running and you don't want them to block the parent agent's response.
432
+ Subagent invocations are dispatched as tool calls, so they can run as [background tasks](https://mastra.ai/docs/harness/background-tasks). This is useful when one or more delegations are long-running and you don't want them to block the parent agent's response.
403
433
 
404
434
  Enable the [backgroundTasks manager](https://mastra.ai/reference/configuration) on the Mastra instance, then opt subagents in on the parent agent:
405
435
 
@@ -424,11 +454,11 @@ const stream = await parentAgent.streamUntilIdle('Research AI in education and w
424
454
 
425
455
  Use [`streamUntilIdle()`](https://mastra.ai/reference/streaming/agents/streamUntilIdle) instead of `stream()` so the stream stays open until the subagents complete and the parent agent has had a chance to respond to their results.
426
456
 
427
- If a subagent isn't listed under the parent agent's `backgroundTasks.tools` but has its own background-eligible tools, the parent agent still dispatches the subagent as a background task and inherits its config. See [Inheriting from the subagent](https://mastra.ai/docs/long-running-agents/background-tasks) for details.
457
+ If a subagent isn't listed under the parent agent's `backgroundTasks.tools` but has its own background-eligible tools, the parent agent still dispatches the subagent as a background task and inherits its config. See [Inheriting from the subagent](https://mastra.ai/docs/harness/background-tasks) for details.
428
458
 
429
459
  ## Subagent versioning
430
460
 
431
- When using the [editor](https://mastra.ai/docs/editor/overview), you can control which stored version of each subagent the parent agent uses at runtime. Set version overrides on the Mastra instance or per invocation:
461
+ When using the [editor](https://mastra.ai/docs/studio/editor), you can control which stored version of each subagent the parent agent uses at runtime. Set version overrides on the Mastra instance or per invocation:
432
462
 
433
463
  ```typescript
434
464
  const result = await parentAgent.generate('Research and write about AI safety', {
@@ -445,13 +475,13 @@ Version overrides propagate automatically through delegation. See [Subagent vers
445
475
 
446
476
  ## Related
447
477
 
448
- - [Background tasks](https://mastra.ai/docs/long-running-agents/background-tasks)
478
+ - [Background tasks](https://mastra.ai/docs/harness/background-tasks)
449
479
  - [Subagent versioning](https://mastra.ai/reference/editor/versioning)
450
480
  - [Guide: Research coordinator](https://mastra.ai/blog/build-a-research-coordinator-with-supervisor-agents)
451
481
  - [Agent.stream() reference](https://mastra.ai/reference/streaming/agents/stream)
452
482
  - [Agent.streamUntilIdle() reference](https://mastra.ai/reference/streaming/agents/streamUntilIdle)
453
483
  - [Agent.generate() reference](https://mastra.ai/reference/agents/generate)
454
- - [Agent approval](https://mastra.ai/docs/agents/agent-approval)
484
+ - [Agent approval](https://mastra.ai/docs/agents/human-in-the-loop)
455
485
  - [Memory in multi-agent systems](https://mastra.ai/docs/memory/overview)
456
486
  - [Concept: Multi-agent systems](https://mastra.ai/docs/guides/multi-agent-systems)
457
487
  - 📹 [Mastra supervisor agents workshop](https://www.youtube.com/watch?v=FNb2fL9WhQg\&t=1872s)
@@ -189,4 +189,4 @@ Like `.agent()`, `.tool()` records a declarative entry, so the workflow can be p
189
189
  ## Related
190
190
 
191
191
  - [Using Agents](https://mastra.ai/docs/agents/overview)
192
- - [MCP Overview](https://mastra.ai/docs/mcp/overview)
192
+ - [MCP Overview](https://mastra.ai/docs/connections/mcp)
@@ -17,8 +17,6 @@ Each step connects to the next in the workflow through defined schemas that keep
17
17
 
18
18
  Use `.then()` to run steps in order, allowing each step to access the result of the step before it.
19
19
 
20
- ![Chaining steps with .then()](/assets/images/workflows-control-flow-then-bde5e0fbefe5c64c19a8c3471c0e8439.jpg)
21
-
22
20
  ```typescript
23
21
  const step1 = createStep({
24
22
  inputSchema: z.object({
@@ -55,8 +53,6 @@ export const testWorkflow = createWorkflow({
55
53
 
56
54
  Use `.parallel()` to run steps simultaneously. All parallel steps must complete before the workflow continues to the next step. Each step's `id` is used when defining a following step's `inputSchema` and becomes the key on the `inputData` object used to access the previous step's values. The outputs of parallel steps can then be referenced or combined by a following step.
57
55
 
58
- ![Concurrent steps with .parallel()](/assets/images/workflows-control-flow-parallel-8e7fe60f1c4daa510431b37c973f6f8d.jpg)
59
-
60
56
  ```typescript
61
57
  const step1 = createStep({
62
58
  id: 'step-1',
@@ -8,8 +8,6 @@ Some workflows need to pause for human input before continuing. When a workflow
8
8
 
9
9
  Human-in-the-loop (HITL) input works much like [pausing a workflow](https://mastra.ai/docs/workflows/suspend-and-resume) using `suspend()`. The key difference is that when human input is required, you can return `suspend()` with a payload that provides context or guidance to the user on how to continue.
10
10
 
11
- ![Pausing a workflow with suspend()](/assets/images/workflows-suspend-4540783670f918109ac35beaf4db914b.jpg)
12
-
13
11
  ```typescript
14
12
  import { createWorkflow, createStep } from '@mastra/core/workflows'
15
13
  import { z } from 'zod'
@@ -93,8 +91,6 @@ The data returned by the step can include a reason and help the user understand
93
91
 
94
92
  As with [restarting a workflow](https://mastra.ai/docs/workflows/suspend-and-resume), use `resume()` with `resumeData` to continue a workflow after receiving input from a human. The workflow resumes from the step where it was paused.
95
93
 
96
- ![Restarting a workflow with resume()](/assets/images/workflows-resume-1e54b4d0c753ff79571f6d6b05109a60.jpg)
97
-
98
94
  ```typescript
99
95
  const workflow = mastra.getWorkflow('testWorkflow')
100
96
  const run = await workflow.createRun()
@@ -105,7 +105,7 @@ Visit [`Step`](https://mastra.ai/reference/workflows/step) for a full list of co
105
105
 
106
106
  ### Using agents and tools
107
107
 
108
- Workflow steps can also call registered agents or import and execute tools directly, visit the [Using Tools](https://mastra.ai/docs/agents/using-tools) page for more information.
108
+ Workflow steps can also call registered agents or import and execute tools directly, visit the [Using Tools](https://mastra.ai/docs/agents/tools) page for more information.
109
109
 
110
110
  ## Creating a workflow
111
111
 
@@ -137,7 +137,7 @@ A few rules worth knowing:
137
137
  - Resume recomputes `nextFireAt` from now. A schedule paused for a week doesn't fire seven backlogged runs the moment you resume it. It fires on the next regular cron tick.
138
138
  - Unpause with `resumeSchedule` or the **Resume** button in Studio. Editing the workflow's `schedule` config doesn't unpause a paused row.
139
139
  - Pause and resume are idempotent. Calling pause on an already-paused schedule is a no-op.
140
- - This operational override controls existing schedules. Author declarative schedules in code. Declarative schedules are created, deleted, and edited in code via the `schedule` field on `createWorkflow`. To create schedules imperatively at runtime instead, use the unified [`mastra.schedules`](https://mastra.ai/docs/long-running-agents/schedules) service with a `workflowId`.
140
+ - This operational override controls existing schedules. Author declarative schedules in code. Declarative schedules are created, deleted, and edited in code via the `schedule` field on `createWorkflow`. To create schedules imperatively at runtime instead, use the unified [`mastra.schedules`](https://mastra.ai/docs/harness/schedules) service with a `workflowId`.
141
141
 
142
142
  The underlying HTTP routes are `POST /api/schedules/:scheduleId/pause` and `POST /api/schedules/:scheduleId/resume`. Both require the `schedules:write` permission.
143
143
 
@@ -182,4 +182,4 @@ Manage Inngest schedules from the [Inngest dashboard](https://www.inngest.com/do
182
182
  - [Workflow overview](https://mastra.ai/docs/workflows/overview)
183
183
  - [Suspend and resume](https://mastra.ai/docs/workflows/suspend-and-resume)
184
184
  - [Workers](https://mastra.ai/docs/deployment/workers): The [scheduler worker](https://mastra.ai/docs/deployment/workers) runs cron schedules in a dedicated process
185
- - [Agent schedules](https://mastra.ai/docs/long-running-agents/schedules): Run an agent rather than a workflow on a cron schedule, and manage both schedule types at runtime through `mastra.schedules`.
185
+ - [Agent schedules](https://mastra.ai/docs/harness/schedules): Run an agent rather than a workflow on a cron schedule, and manage both schedule types at runtime through `mastra.schedules`.
@@ -147,7 +147,7 @@ export const mastra = new Mastra({
147
147
  - [Upstash Storage](https://mastra.ai/integrations/databases/upstash)
148
148
  - [Cloudflare D1](https://mastra.ai/integrations/databases/cloudflare-d1)
149
149
  - [DynamoDB](https://mastra.ai/integrations/databases/dynamodb)
150
- - [More storage providers](https://mastra.ai/docs/storage/overview)
150
+ - [More storage providers](https://mastra.ai/docs/storage)
151
151
 
152
152
  ## Best practices
153
153
 
@@ -11,8 +11,6 @@ Use `suspend()` to pause workflow execution at a specific step. You can define a
11
11
  - If the condition isn’t met, the workflow pauses and returns `suspend()`.
12
12
  - If the condition is met, the workflow continues with the remaining logic in the step.
13
13
 
14
- ![Pausing a workflow with suspend()](/assets/images/workflows-suspend-4540783670f918109ac35beaf4db914b.jpg)
15
-
16
14
  ```typescript
17
15
  const step1 = createStep({
18
16
  id: 'step-1',
@@ -56,8 +54,6 @@ export const testWorkflow = createWorkflow({
56
54
 
57
55
  Use `resume()` to restart a suspended workflow from the step where it paused. Pass `resumeData` matching the step's `resumeSchema` to satisfy the suspend condition and continue execution.
58
56
 
59
- ![Restarting a workflow with resume()](/assets/images/workflows-resume-1e54b4d0c753ff79571f6d6b05109a60.jpg)
60
-
61
57
  ```typescript
62
58
  import { step1 } from './workflows/test-workflow'
63
59
 
@@ -909,7 +909,7 @@ export function TaskChat() {
909
909
 
910
910
  ### Tool streaming
911
911
 
912
- Tools can also stream data using `context.writer.write()` for lower-level control, or pipe an agent's stream directly to the tool's writer. For more details, see [Tool Streaming](https://mastra.ai/docs/agents/using-tools).
912
+ Tools can also stream data using `context.writer.write()` for lower-level control, or pipe an agent's stream directly to the tool's writer. For more details, see [Tool Streaming](https://mastra.ai/docs/agents/tools).
913
913
 
914
914
  ### Examples
915
915
 
@@ -545,7 +545,7 @@ export default function Page() {
545
545
 
546
546
  Inside `StepsFeedback`, let the user toggle steps and then call `respond({ accepted: true, steps })` to resume the agent, or `respond({ accepted: false })` to reject. The agent reads the returned value and continues accordingly. See the full component in the [UI Dojo](https://ui-dojo.mastra.ai/).
547
547
 
548
- The example above uses a client tool: the agent calls `generate_task_steps` and the frontend fulfills it through `respond`. Mastra can also pause on the server, suspending a tool call before it executes so a human approves or supplies input. For that path, see Mastra's [Agent approval](https://mastra.ai/docs/agents/agent-approval) guide for the backend side and CopilotKit's [`useHumanInTheLoop`](https://docs.copilotkit.ai/reference/hooks/useHumanInTheLoop) reference for the frontend.
548
+ The example above uses a client tool: the agent calls `generate_task_steps` and the frontend fulfills it through `respond`. Mastra can also pause on the server, suspending a tool call before it executes so a human approves or supplies input. For that path, see Mastra's [Agent approval](https://mastra.ai/docs/agents/human-in-the-loop) guide for the backend side and CopilotKit's [`useHumanInTheLoop`](https://docs.copilotkit.ai/reference/hooks/useHumanInTheLoop) reference for the frontend.
549
549
 
550
550
  ## Channels
551
551
 
@@ -278,6 +278,6 @@ curl -X POST http://localhost:4111/api/agents/weatherAgent/generate \
278
278
 
279
279
  ## Related
280
280
 
281
- - [Auth overview](https://mastra.ai/docs/server/auth)
282
- - [Composite Auth](https://mastra.ai/docs/server/auth/composite-auth)
281
+ - [Auth overview](https://mastra.ai/docs/auth/overview)
282
+ - [Composite Auth](https://mastra.ai/docs/auth/composite-auth)
283
283
  - [MastraAuthGoogle reference](https://mastra.ai/reference/auth/google)
@@ -89,7 +89,7 @@ By default, `MastraAuthWorkos` grants access to any authenticated WorkOS user. T
89
89
 
90
90
  ### FGA membership loading
91
91
 
92
- Set `fetchMemberships: true` when you use [`MastraFGAWorkos`](https://mastra.ai/docs/server/auth/fga). This tells the auth provider to load the user's WorkOS organization memberships during authentication so FGA checks can resolve the correct organization membership ID.
92
+ Set `fetchMemberships: true` when you use [`MastraFGAWorkos`](https://mastra.ai/docs/auth/fga). This tells the auth provider to load the user's WorkOS organization memberships during authentication so FGA checks can resolve the correct organization membership ID.
93
93
 
94
94
  ```typescript
95
95
  import { MastraAuthWorkos, MastraFGAWorkos } from '@mastra/auth-workos'