@mastra/mcp-docs-server 1.2.15-alpha.15 → 1.2.15-alpha.20

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 (276) hide show
  1. package/.docs/docs/agents/code-mode.md +16 -1
  2. package/.docs/docs/agents/processors.md +3 -3
  3. package/.docs/docs/browser/recording.md +2 -2
  4. package/.docs/docs/deployment/workers.md +1 -1
  5. package/.docs/docs/getting-started/develop.md +1 -1
  6. package/.docs/docs/harness/agent-controller.md +43 -2
  7. package/.docs/docs/harness/overview.md +2 -4
  8. package/.docs/docs/long-running-agents/durable-agents.md +1 -1
  9. package/.docs/docs/long-running-agents/goals.md +1 -1
  10. package/.docs/docs/long-running-agents/schedules.md +1 -1
  11. package/.docs/docs/long-running-agents/signal-providers.md +1 -1
  12. package/.docs/docs/long-running-agents/signals.md +1 -1
  13. package/.docs/docs/mastra-platform/deploy.md +27 -0
  14. package/.docs/docs/mastra-platform/trace-intelligence.md +9 -13
  15. package/.docs/docs/memory/message-history.md +2 -2
  16. package/.docs/docs/observability/integrations/exporters/mastra-platform.md +1 -1
  17. package/.docs/docs/observability/integrations/exporters/otel.md +2 -2
  18. package/.docs/docs/server/auth/auth0.md +1 -1
  19. package/.docs/docs/server/auth/clerk.md +2 -2
  20. package/.docs/docs/server/auth/firebase.md +1 -1
  21. package/.docs/docs/server/auth/okta.md +24 -4
  22. package/.docs/docs/server/auth/supabase.md +2 -2
  23. package/.docs/docs/server/auth/workers.md +2 -0
  24. package/.docs/docs/server/auth/workos.md +1 -1
  25. package/.docs/docs/server/custom-adapters.md +1 -1
  26. package/.docs/docs/server/custom-api-routes.md +35 -0
  27. package/.docs/docs/server/mastra-client.md +2 -2
  28. package/.docs/docs/server/mastra-server.md +1 -1
  29. package/.docs/docs/workflows/dynamic-workflows.md +1 -1
  30. package/.docs/docs/workflows/overview.md +1 -1
  31. package/.docs/docs/workflows/time-travel.md +2 -0
  32. package/.docs/guides/build-your-ui/ai-sdk-ui.md +3 -3
  33. package/.docs/guides/build-your-ui/assistant-ui.md +1 -1
  34. package/.docs/guides/build-your-ui/copilotkit/channels.md +1 -1
  35. package/.docs/guides/build-your-ui/copilotkit/overview.md +1 -1
  36. package/.docs/guides/deployment/amazon-ec2.md +1 -1
  37. package/.docs/guides/deployment/aws-bedrock-agentcore.md +1 -1
  38. package/.docs/guides/deployment/aws-lambda.md +1 -1
  39. package/.docs/guides/deployment/azure-app-services.md +1 -1
  40. package/.docs/guides/deployment/cloudflare.md +1 -1
  41. package/.docs/guides/deployment/digital-ocean.md +2 -2
  42. package/.docs/guides/deployment/kubernetes.md +2 -2
  43. package/.docs/guides/deployment/mastra-workers.md +3 -1
  44. package/.docs/guides/deployment/netlify.md +2 -2
  45. package/.docs/guides/deployment/vercel.md +1 -1
  46. package/.docs/guides/getting-started/electron.md +2 -2
  47. package/.docs/guides/getting-started/manual-install.md +2 -2
  48. package/.docs/guides/guide/signal-provider.md +1 -1
  49. package/.docs/guides/migrations/mastra-cloud.md +1 -1
  50. package/.docs/models/embeddings.md +1 -1
  51. package/.docs/models/environment-variables.md +1 -0
  52. package/.docs/models/gateways/neon.md +1 -1
  53. package/.docs/models/gateways/netlify.md +1 -1
  54. package/.docs/models/gateways/openrouter.md +2 -2
  55. package/.docs/models/gateways/vercel.md +2 -2
  56. package/.docs/models/index.md +3 -3
  57. package/.docs/models/providers/302ai.md +1 -1
  58. package/.docs/models/providers/abacus.md +1 -1
  59. package/.docs/models/providers/abliteration-ai.md +1 -1
  60. package/.docs/models/providers/agentrouter.md +1 -1
  61. package/.docs/models/providers/ai-router.md +1 -1
  62. package/.docs/models/providers/aiand.md +1 -1
  63. package/.docs/models/providers/aki-io.md +1 -1
  64. package/.docs/models/providers/alibaba-cn.md +1 -1
  65. package/.docs/models/providers/alibaba-coding-plan-cn.md +1 -1
  66. package/.docs/models/providers/alibaba-coding-plan.md +1 -1
  67. package/.docs/models/providers/alibaba-token-plan-cn.md +1 -1
  68. package/.docs/models/providers/alibaba-token-plan.md +1 -1
  69. package/.docs/models/providers/alibaba.md +1 -1
  70. package/.docs/models/providers/ambient.md +1 -1
  71. package/.docs/models/providers/anyapi.md +1 -1
  72. package/.docs/models/providers/atomic-chat.md +1 -1
  73. package/.docs/models/providers/auriko.md +1 -1
  74. package/.docs/models/providers/bailing.md +1 -1
  75. package/.docs/models/providers/baseten.md +1 -1
  76. package/.docs/models/providers/berget.md +1 -1
  77. package/.docs/models/providers/blueclaw.md +1 -1
  78. package/.docs/models/providers/chutes.md +1 -1
  79. package/.docs/models/providers/clarifai.md +1 -1
  80. package/.docs/models/providers/claudinio.md +1 -1
  81. package/.docs/models/providers/cline-pass.md +1 -1
  82. package/.docs/models/providers/cloudferro-sherlock.md +1 -1
  83. package/.docs/models/providers/cloudflare-workers-ai.md +1 -1
  84. package/.docs/models/providers/coralbricks.md +75 -0
  85. package/.docs/models/providers/cortecs.md +1 -1
  86. package/.docs/models/providers/crof.md +1 -1
  87. package/.docs/models/providers/crossmodel.md +2 -3
  88. package/.docs/models/providers/daoxe.md +1 -1
  89. package/.docs/models/providers/databricks.md +1 -1
  90. package/.docs/models/providers/deepinfra.md +1 -1
  91. package/.docs/models/providers/digitalocean.md +2 -2
  92. package/.docs/models/providers/dinference.md +1 -1
  93. package/.docs/models/providers/drun.md +1 -1
  94. package/.docs/models/providers/ebcloud.md +1 -1
  95. package/.docs/models/providers/empiriolabs.md +1 -1
  96. package/.docs/models/providers/evroc.md +3 -4
  97. package/.docs/models/providers/fastrouter.md +1 -1
  98. package/.docs/models/providers/firepass.md +1 -1
  99. package/.docs/models/providers/fireworks-ai.md +1 -1
  100. package/.docs/models/providers/firmware.md +1 -1
  101. package/.docs/models/providers/freemodel.md +1 -1
  102. package/.docs/models/providers/friendli.md +1 -1
  103. package/.docs/models/providers/frogbot.md +1 -1
  104. package/.docs/models/providers/github-models.md +1 -1
  105. package/.docs/models/providers/gmicloud.md +1 -1
  106. package/.docs/models/providers/google.md +1 -1
  107. package/.docs/models/providers/greenpt.md +1 -1
  108. package/.docs/models/providers/helicone.md +1 -1
  109. package/.docs/models/providers/hetzner.md +1 -1
  110. package/.docs/models/providers/hpc-ai.md +1 -1
  111. package/.docs/models/providers/huggingface.md +1 -1
  112. package/.docs/models/providers/hyper.md +7 -7
  113. package/.docs/models/providers/iflowcn.md +1 -1
  114. package/.docs/models/providers/impossibl.md +1 -1
  115. package/.docs/models/providers/inception.md +1 -1
  116. package/.docs/models/providers/inceptron.md +1 -1
  117. package/.docs/models/providers/inference.md +1 -1
  118. package/.docs/models/providers/inferx.md +1 -1
  119. package/.docs/models/providers/infomaniak.md +1 -1
  120. package/.docs/models/providers/io-intelligence.md +1 -1
  121. package/.docs/models/providers/io-net.md +1 -1
  122. package/.docs/models/providers/jiekou.md +1 -1
  123. package/.docs/models/providers/kenari.md +1 -1
  124. package/.docs/models/providers/kilo.md +6 -7
  125. package/.docs/models/providers/kimi-for-coding.md +1 -1
  126. package/.docs/models/providers/kiro.md +1 -1
  127. package/.docs/models/providers/kuae-cloud-coding-plan.md +1 -1
  128. package/.docs/models/providers/lilac.md +1 -1
  129. package/.docs/models/providers/llama.md +1 -1
  130. package/.docs/models/providers/llmgateway.md +2 -5
  131. package/.docs/models/providers/llmtr.md +1 -1
  132. package/.docs/models/providers/lmstudio.md +1 -1
  133. package/.docs/models/providers/longcat.md +1 -1
  134. package/.docs/models/providers/lucidquery.md +1 -1
  135. package/.docs/models/providers/lynkr.md +1 -1
  136. package/.docs/models/providers/meganova.md +1 -1
  137. package/.docs/models/providers/meta.md +1 -1
  138. package/.docs/models/providers/minimax-cn-coding-plan.md +1 -1
  139. package/.docs/models/providers/minimax-cn.md +1 -1
  140. package/.docs/models/providers/minimax-coding-plan.md +1 -1
  141. package/.docs/models/providers/minimax.md +1 -1
  142. package/.docs/models/providers/mixlayer.md +1 -1
  143. package/.docs/models/providers/moark.md +1 -1
  144. package/.docs/models/providers/modal.md +1 -1
  145. package/.docs/models/providers/model-oracle-ai.md +1 -1
  146. package/.docs/models/providers/modelis.md +1 -1
  147. package/.docs/models/providers/modelscope.md +1 -1
  148. package/.docs/models/providers/moonshotai-cn.md +1 -1
  149. package/.docs/models/providers/moonshotai.md +1 -1
  150. package/.docs/models/providers/morph.md +1 -1
  151. package/.docs/models/providers/nano-gpt.md +3 -3
  152. package/.docs/models/providers/nearai.md +1 -1
  153. package/.docs/models/providers/nebius.md +1 -1
  154. package/.docs/models/providers/neuralwatt.md +1 -1
  155. package/.docs/models/providers/nova.md +1 -1
  156. package/.docs/models/providers/novita-ai.md +1 -1
  157. package/.docs/models/providers/nvidia.md +1 -1
  158. package/.docs/models/providers/ofox.md +4 -3
  159. package/.docs/models/providers/ollama-cloud.md +1 -1
  160. package/.docs/models/providers/opencode-go.md +1 -1
  161. package/.docs/models/providers/opencode.md +1 -1
  162. package/.docs/models/providers/orcarouter.md +1 -1
  163. package/.docs/models/providers/ovhcloud.md +1 -1
  164. package/.docs/models/providers/perplexity-agent.md +1 -1
  165. package/.docs/models/providers/pioneer.md +1 -1
  166. package/.docs/models/providers/poe.md +1 -1
  167. package/.docs/models/providers/poolside.md +1 -1
  168. package/.docs/models/providers/privatemode-ai.md +6 -5
  169. package/.docs/models/providers/qihang-ai.md +1 -1
  170. package/.docs/models/providers/qiniu-ai.md +1 -1
  171. package/.docs/models/providers/regolo-ai.md +1 -1
  172. package/.docs/models/providers/requesty.md +3 -3
  173. package/.docs/models/providers/routing-run.md +1 -1
  174. package/.docs/models/providers/sakana.md +1 -1
  175. package/.docs/models/providers/sarvam.md +1 -1
  176. package/.docs/models/providers/scaleway.md +1 -1
  177. package/.docs/models/providers/scx.md +1 -1
  178. package/.docs/models/providers/siliconflow-cn.md +1 -1
  179. package/.docs/models/providers/siliconflow.md +1 -1
  180. package/.docs/models/providers/snowflake-cortex.md +6 -2
  181. package/.docs/models/providers/stackit.md +1 -1
  182. package/.docs/models/providers/stepfun-ai-step-plan.md +1 -1
  183. package/.docs/models/providers/stepfun-ai.md +1 -1
  184. package/.docs/models/providers/stepfun-step-plan.md +1 -1
  185. package/.docs/models/providers/stepfun.md +1 -1
  186. package/.docs/models/providers/subconscious.md +1 -1
  187. package/.docs/models/providers/submodel.md +1 -1
  188. package/.docs/models/providers/synthetic.md +1 -1
  189. package/.docs/models/providers/tencent-coding-plan.md +1 -1
  190. package/.docs/models/providers/tencent-token-plan.md +1 -1
  191. package/.docs/models/providers/tencent-tokenhub.md +1 -1
  192. package/.docs/models/providers/tensorx.md +1 -1
  193. package/.docs/models/providers/the-grid-ai.md +1 -1
  194. package/.docs/models/providers/thinkingmachines.md +1 -1
  195. package/.docs/models/providers/tinfoil.md +2 -3
  196. package/.docs/models/providers/togetherai.md +1 -1
  197. package/.docs/models/providers/trustedrouter.md +1 -1
  198. package/.docs/models/providers/umans-ai-coding-plan.md +1 -1
  199. package/.docs/models/providers/umans-ai.md +1 -1
  200. package/.docs/models/providers/unorouter.md +1 -1
  201. package/.docs/models/providers/upstage.md +1 -1
  202. package/.docs/models/providers/venice.md +1 -1
  203. package/.docs/models/providers/vivgrid.md +1 -1
  204. package/.docs/models/providers/vultr.md +1 -1
  205. package/.docs/models/providers/wafer.ai.md +1 -1
  206. package/.docs/models/providers/wandb.md +3 -2
  207. package/.docs/models/providers/xiaomi-token-plan-ams.md +1 -1
  208. package/.docs/models/providers/xiaomi-token-plan-cn.md +1 -1
  209. package/.docs/models/providers/xiaomi-token-plan-sgp.md +1 -1
  210. package/.docs/models/providers/xiaomi.md +1 -1
  211. package/.docs/models/providers/xpersona.md +1 -1
  212. package/.docs/models/providers/zai-coding-plan.md +1 -1
  213. package/.docs/models/providers/zai.md +1 -1
  214. package/.docs/models/providers/zeldoc.md +1 -1
  215. package/.docs/models/providers/zenifra.md +1 -1
  216. package/.docs/models/providers/zenmux.md +1 -16
  217. package/.docs/models/providers/zhipuai-coding-plan.md +1 -1
  218. package/.docs/models/providers/zhipuai.md +1 -1
  219. package/.docs/models/providers.md +1 -0
  220. package/.docs/reference/agent-controller/agent-controller-class.md +3 -3
  221. package/.docs/reference/agent-controller/session.md +1 -1
  222. package/.docs/reference/agents/durable-agent.md +2 -0
  223. package/.docs/reference/agents/generateLegacy.md +1 -1
  224. package/.docs/reference/agents/inngest-agent.md +2 -0
  225. package/.docs/reference/auth/okta.md +5 -1
  226. package/.docs/reference/cli/mastra.md +4 -4
  227. package/.docs/reference/client-js/workflows.md +3 -3
  228. package/.docs/reference/code-sdk/mount-agent-controller.md +1 -1
  229. package/.docs/reference/core/addDynamicWorkflow.md +1 -1
  230. package/.docs/reference/core/addDynamicWorkflows.md +1 -1
  231. package/.docs/reference/file-based-agents/config.md +2 -0
  232. package/.docs/reference/file-based-agents/instructions.md +2 -0
  233. package/.docs/reference/file-based-agents/logger.md +2 -0
  234. package/.docs/reference/file-based-agents/memory.md +2 -0
  235. package/.docs/reference/file-based-agents/observability.md +2 -0
  236. package/.docs/reference/file-based-agents/processors.md +2 -0
  237. package/.docs/reference/file-based-agents/schedules.md +2 -0
  238. package/.docs/reference/file-based-agents/scorers.md +2 -0
  239. package/.docs/reference/file-based-agents/server.md +2 -0
  240. package/.docs/reference/file-based-agents/skills.md +2 -0
  241. package/.docs/reference/file-based-agents/storage.md +2 -0
  242. package/.docs/reference/file-based-agents/studio.md +2 -0
  243. package/.docs/reference/file-based-agents/subagents.md +2 -0
  244. package/.docs/reference/file-based-agents/tools.md +2 -0
  245. package/.docs/reference/file-based-agents/workflows.md +2 -0
  246. package/.docs/reference/file-based-agents/workspace.md +2 -0
  247. package/.docs/reference/index.md +1 -0
  248. package/.docs/reference/observability/tracing/exporters/datadog.md +1 -1
  249. package/.docs/reference/processors/pii-detector.md +2 -0
  250. package/.docs/reference/processors/prompt-injection-detector.md +2 -0
  251. package/.docs/reference/processors/response-cache.md +2 -0
  252. package/.docs/reference/schedules/overview.md +2 -0
  253. package/.docs/reference/server/create-route.md +27 -1
  254. package/.docs/reference/signals/create-notification-inbox-tool.md +2 -0
  255. package/.docs/reference/signals/signal-provider.md +2 -0
  256. package/.docs/reference/signals/task-signal-provider.md +2 -0
  257. package/.docs/reference/signals/webhook-signal-provider.md +2 -0
  258. package/.docs/reference/storage/composite.md +1 -1
  259. package/.docs/reference/streaming/agents/stream.md +1 -1
  260. package/.docs/reference/streaming/agents/streamLegacy.md +1 -1
  261. package/.docs/reference/streaming/agents/streamUntilIdle.md +1 -1
  262. package/.docs/reference/tools/create-code-mode.md +3 -1
  263. package/.docs/reference/tools/isolated-vm-transport.md +1 -1
  264. package/.docs/reference/tools/mcp-client.md +51 -0
  265. package/.docs/reference/tools/quickjs-transport.md +92 -0
  266. package/.docs/reference/vectors/chroma.md +1 -1
  267. package/.docs/reference/workers/overview.md +2 -0
  268. package/.docs/reference/workflows/dynamic-workflow-definition.md +1 -1
  269. package/.docs/reference/workflows/run-methods/timeTravel.md +1 -0
  270. package/.docs/reference/workspace/mesa-filesystem.md +1 -1
  271. package/.docs/reference/workspace/platform-filesystem.md +1 -1
  272. package/.docs/reference/workspace/platform-sandbox.md +9 -1
  273. package/.docs/reference/workspace/railway-sandbox.md +8 -0
  274. package/.docs/reference/workspace/sandbox.md +10 -0
  275. package/CHANGELOG.md +29 -0
  276. package/package.json +5 -5
@@ -394,4 +394,4 @@ const storage = new MastraCompositeStore({
394
394
 
395
395
  Don't set `replication` on ClickHouse Cloud. Cloud rewrites `MergeTree` to `SharedMergeTree` server-side. See the [ClickHouse storage reference](https://mastra.ai/reference/storage/clickhouse) for the full config shape and operator notes.
396
396
 
397
- > **Info:** This approach is also required when using storage providers that don't support observability (like Convex, DynamoDB, or Cloudflare). See the [MastraStorageExporter documentation](https://mastra.ai/docs/observability/integrations/exporters/mastra-storage) for the full list of supported providers.
397
+ > **Note:** This approach is also required when using storage providers that don't support observability (like Convex, DynamoDB, or Cloudflare). See the [MastraStorageExporter documentation](https://mastra.ai/docs/observability/integrations/exporters/mastra-storage) for the full list of supported providers.
@@ -10,7 +10,7 @@ The `.stream()` method enables real-time streaming of responses from an agent wi
10
10
  const stream = await agent.stream('message for agent')
11
11
  ```
12
12
 
13
- > **Info:** **Model Compatibility**: This method is designed for V2 models. V1 models should use the [`.streamLegacy()`](https://mastra.ai/reference/streaming/agents/streamLegacy) method. The framework automatically detects your model version and will throw an error if there's a mismatch.
13
+ > **Note:** **Model Compatibility**: This method is designed for V2 models. V1 models should use the [`.streamLegacy()`](https://mastra.ai/reference/streaming/agents/streamLegacy) method. The framework automatically detects your model version and will throw an error if there's a mismatch.
14
14
 
15
15
  ## Parameters
16
16
 
@@ -152,7 +152,7 @@ await agent.streamLegacy('message for agent', {
152
152
 
153
153
  ## Migration to new API
154
154
 
155
- > **Info:** The new `.stream()` method offers enhanced capabilities including AI SDK v5+ compatibility, better structured output handling, and improved callback system. See the [migration guide](https://mastra.ai/guides/migrations/vnext-to-standard-apis) for detailed migration instructions.
155
+ > **Note:** The new `.stream()` method offers enhanced capabilities including AI SDK v5+ compatibility, better structured output handling, and improved callback system. See the [migration guide](https://mastra.ai/guides/migrations/vnext-to-standard-apis) for detailed migration instructions.
156
156
 
157
157
  ### Quick Migration Example
158
158
 
@@ -32,7 +32,7 @@ for await (const chunk of stream.fullStream) {
32
32
  }
33
33
  ```
34
34
 
35
- > **Info:** `streamUntilIdle()` requires both a [`BackgroundTaskManager`](https://mastra.ai/reference/configuration) and a [memory](https://mastra.ai/docs/memory/overview) backend. Without either, it uses a plain `agent.stream()` call.
35
+ > **Note:** `streamUntilIdle()` requires both a [`BackgroundTaskManager`](https://mastra.ai/reference/configuration) and a [memory](https://mastra.ai/docs/memory/overview) backend. Without either, it uses a plain `agent.stream()` call.
36
36
 
37
37
  ## Parameters
38
38
 
@@ -4,6 +4,8 @@
4
4
 
5
5
  **Added in:** `@mastra/core@1.38.0`
6
6
 
7
+ > **Beta:** Breaking changes may occur without a major version bump until the API is stable.
8
+
7
9
  The `createCodeMode()` function returns a tool and generated instructions that let an agent run multi-tool computations as one TypeScript function. The generated code runs in a workspace sandbox, and each `external_*` call runs the real tool on the host with validation, request context, and tracing.
8
10
 
9
11
  For a conceptual overview, see [Code mode](https://mastra.ai/docs/agents/code-mode).
@@ -62,7 +64,7 @@ export const shopAgent = new Agent({
62
64
 
63
65
  **config.id** (`string`): The generated tool id.
64
66
 
65
- **transport** (`CodeModeTransport`): Optional transport implementation used to run the generated code in the sandbox. The default transport uses stdio JSON-RPC over the workspace sandbox process API. Transports that declare requiresSandbox: false (such as IsolatedVmCodeModeTransport) run without a sandbox.
67
+ **transport** (`CodeModeTransport`): Optional transport implementation used to run the generated code in the sandbox. The default transport uses stdio JSON-RPC over the workspace sandbox process API. Transports that declare requiresSandbox: false (such as IsolatedVmCodeModeTransport and QuickJsCodeModeTransport) run without a sandbox.
66
68
 
67
69
  ## Returns
68
70
 
@@ -2,7 +2,7 @@
2
2
 
3
3
  # IsolatedVmCodeModeTransport
4
4
 
5
- > **Beta:** This feature is in beta. Breaking changes may occur without a major version bump until the API is stable.
5
+ > **Beta:** Breaking changes may occur without a major version bump until the API is stable.
6
6
 
7
7
  The `IsolatedVmCodeModeTransport` class runs [Code mode](https://mastra.ai/docs/agents/code-mode) programs in an in-process V8 isolate, backed by [isolated-vm](https://github.com/laverdet/isolated-vm). The isolate is the execution boundary, so no workspace sandbox is required: the program has no filesystem, network, process, or module access. Its only capabilities are the `external_*` functions, which call back into the real tools on the host.
8
8
 
@@ -244,6 +244,57 @@ const res = await agent.stream(prompt, {
244
244
  })
245
245
  ```
246
246
 
247
+ ### `listToolDefinitions()`
248
+
249
+ Returns every server's tools as plain, serializable definitions, grouped by server name and keyed by the server's own tool name (without the `serverName_toolName` namespacing that `listTools()` applies).
250
+
251
+ Unlike `listTools()`, the result contains no functions or references to a live client, so it can be passed through `JSON.stringify` and cached in Redis, a database, or a build artifact. Each definition holds the data from the MCP `tools/list` response (name, description, input schema, output schema, annotations, and `_meta`), plus the server name, version, and instructions captured at discovery time.
252
+
253
+ ```typescript
254
+ const definitions = await mcp.listToolDefinitions()
255
+
256
+ await cache.set('mcp-tools', JSON.stringify(definitions))
257
+ ```
258
+
259
+ ### `listToolDefinitionsWithErrors()`
260
+
261
+ Like `listToolDefinitions()`, but also returns per-server errors for servers that failed to connect. Use this when caching a catalog, so you don't persist a partial manifest that omits a server that was down at discovery time.
262
+
263
+ ```typescript
264
+ const { definitions, errors } = await mcp.listToolDefinitionsWithErrors()
265
+
266
+ if (Object.keys(errors).length === 0) {
267
+ await cache.set('mcp-tools', JSON.stringify(definitions))
268
+ }
269
+ ```
270
+
271
+ ### `toolFromDefinition()`
272
+
273
+ Rebuilds a single executable tool from a cached definition. No connection is opened here. The client connects lazily, the first time the tool is executed.
274
+
275
+ The returned tool behaves exactly like one from `listTools()`, with the same strict-mode metadata, approval policy, structured content handling, tool error handling, and reconnect behavior.
276
+
277
+ ```typescript
278
+ const definitions = JSON.parse(await cache.get('mcp-tools'))
279
+
280
+ const tool = await mcp.toolFromDefinition({
281
+ serverName: 'weather',
282
+ definition: definitions.weather.getForecast,
283
+ })
284
+ ```
285
+
286
+ ### `toolsFromDefinitions()`
287
+
288
+ Rebuilds an entire cached catalog into a namespaced tool map, without connecting. This is the cached counterpart to `listTools()`. It produces the same `serverName_toolName` keys, so you can reconstruct an agent's tool map on a cold start, and connections only open for the servers whose tools are actually called.
289
+
290
+ Servers present in the catalog but no longer configured on the client are skipped, so a stale cached manifest degrades gracefully.
291
+
292
+ ```typescript
293
+ const definitions = JSON.parse(await cache.get('mcp-tools'))
294
+
295
+ new Agent({ id: 'agent', tools: await mcp.toolsFromDefinitions({ definitions }) })
296
+ ```
297
+
247
298
  ### `getServerInstructions()`
248
299
 
249
300
  Returns the instructions currently known for each configured MCP server. Servers that haven't connected yet, or don't advertise instructions, return `undefined`.
@@ -0,0 +1,92 @@
1
+ > Discover all available pages from the documentation index: https://mastra.ai/llms.txt
2
+
3
+ # QuickJsCodeModeTransport
4
+
5
+ > **Beta:** Breaking changes may occur without a major version bump until the API is stable.
6
+
7
+ The `QuickJsCodeModeTransport` class runs [Code mode](https://mastra.ai/docs/agents/code-mode) programs in an in-process [QuickJS](https://bellard.org/quickjs/) runtime compiled to WebAssembly. The runtime is the execution boundary, so no workspace sandbox is required: the program has no filesystem, network, process, or module access. Its only capabilities are the `external_*` functions, which call back into the real tools on the host.
8
+
9
+ Unlike [`IsolatedVmCodeModeTransport`](https://mastra.ai/reference/tools/isolated-vm-transport), this transport installs no native binaries and needs no Node.js flags, so it runs on serverless platforms that disallow both. The tradeoff is speed: see [Choosing a transport](#choosing-a-transport).
10
+
11
+ ## Installation
12
+
13
+ **npm**:
14
+
15
+ ```bash
16
+ npm install @mastra/quickjs
17
+ ```
18
+
19
+ **pnpm**:
20
+
21
+ ```bash
22
+ pnpm add @mastra/quickjs
23
+ ```
24
+
25
+ **Yarn**:
26
+
27
+ ```bash
28
+ yarn add @mastra/quickjs
29
+ ```
30
+
31
+ **Bun**:
32
+
33
+ ```bash
34
+ bun add @mastra/quickjs
35
+ ```
36
+
37
+ The package contains the WebAssembly module, so installing it copies files and runs nothing else.
38
+
39
+ ## Usage
40
+
41
+ Pass the transport as the second argument to `createCodeMode()`. No `sandbox` is needed:
42
+
43
+ ```typescript
44
+ import { createCodeMode } from '@mastra/core/tools'
45
+ import { QuickJsCodeModeTransport } from '@mastra/quickjs'
46
+
47
+ const { tool, instructions } = createCodeMode(
48
+ { tools: { getTopProducts, getProductRatings } },
49
+ new QuickJsCodeModeTransport({ memoryLimitMb: 128 }),
50
+ )
51
+ ```
52
+
53
+ ## Constructor parameters
54
+
55
+ **options** (`QuickJsCodeModeTransportOptions`): Configuration for the QuickJS runtime.
56
+
57
+ **options.memoryLimitMb** (`number`): Runtime heap limit in MiB. A program that exceeds the limit is terminated and the tool returns an error result.
58
+
59
+ **options.maxStackSizeBytes** (`number`): Runtime stack limit in bytes. A program that exceeds the limit, usually through runaway recursion, is terminated and the tool returns an error result.
60
+
61
+ **options.module** (`QuickJSWASMModule`): A preloaded QuickJS WebAssembly module. Supply one to control when the module is loaded, or to share a single module across transports. Loaded on first run when omitted.
62
+
63
+ ## Choosing a transport
64
+
65
+ All three transports enforce the same allow-list, tool validation, and tracing on the host. They differ in what the program itself can reach and what the host has to provide.
66
+
67
+ | | `StdioCodeModeTransport` | `IsolatedVmCodeModeTransport` | `QuickJsCodeModeTransport` |
68
+ | ------------------- | ------------------------------ | -------------------------------------------- | --------------------------- |
69
+ | Isolation boundary | Workspace sandbox | V8 isolate | QuickJS WebAssembly runtime |
70
+ | Requires a sandbox | Yes | No | No |
71
+ | Native binary | Node.js runtime in the sandbox | Yes | No |
72
+ | Node.js flags | None | `--no-node-snapshot` on Node.js 20 and later | None |
73
+ | Runs in the browser | No | No | Yes |
74
+ | Execution speed | Fastest | Fast | Slowest |
75
+
76
+ Choose `QuickJsCodeModeTransport` when the host can't install native addons or set Node.js flags, which is common on serverless platforms. Choose `IsolatedVmCodeModeTransport` when the host allows both and programs do heavy computation.
77
+
78
+ The speed difference is in the program body, not the tool calls. QuickJS interprets rather than JIT-compiles, so a compute-heavy loop can run tens of times slower than in a V8 isolate, while a program that mostly awaits `external_*` calls performs about the same because the time goes to the tools. Code Mode programs are usually the second kind.
79
+
80
+ ## How it works
81
+
82
+ Each run creates a fresh QuickJS runtime with its own heap. TypeScript is stripped on the host with [ts-blank-space](https://github.com/bloomberg/ts-blank-space), which erases type annotations without a native compiler, then the program is evaluated inside the runtime. Every `external_*` call crosses the boundary as JSON strings in both directions, so no host object references leak into model-authored code.
83
+
84
+ An `external_*` call returns a pending promise to the program and hands control straight back to the host, so many calls can be in flight at once and `Promise.all` behaves as expected.
85
+
86
+ The `timeout` configured on `createCodeMode()` applies to both asynchronous hangs and synchronous infinite loops, and the runtime is disposed after every run.
87
+
88
+ ## Related
89
+
90
+ - [Code mode](https://mastra.ai/docs/agents/code-mode)
91
+ - [createCodeMode() reference](https://mastra.ai/reference/tools/create-code-mode)
92
+ - [IsolatedVmCodeModeTransport reference](https://mastra.ai/reference/tools/isolated-vm-transport)
@@ -4,7 +4,7 @@
4
4
 
5
5
  The ChromaVector class provides vector search using [Chroma](https://docs.trychroma.com/docs/overview/getting-started), an open-source embedding database. It offers efficient vector search with metadata filtering and hybrid search capabilities.
6
6
 
7
- > **Info:**
7
+ > **Note:**
8
8
  >
9
9
  > **Chroma Cloud**
10
10
  >
@@ -2,6 +2,8 @@
2
2
 
3
3
  # Workers
4
4
 
5
+ > **Beta:** Breaking changes may occur without a major version bump until the API is stable.
6
+
5
7
  For usage patterns and deployment topologies, see [Workers](https://mastra.ai/docs/deployment/workers).
6
8
 
7
9
  ## Environment variables
@@ -2,7 +2,7 @@
2
2
 
3
3
  # Dynamic workflow definition
4
4
 
5
- > **Beta:** Dynamic workflows are in beta. Breaking changes may occur without a major version bump until the API is stable.
5
+ > **Beta:** Breaking changes may occur without a major version bump until the API is stable.
6
6
 
7
7
  A dynamic workflow definition is a JSON-compatible `DynamicWorkflowGraph` accepted by [`Mastra.addDynamicWorkflow()`](https://mastra.ai/reference/core/addDynamicWorkflow), the stored-workflow server routes, and the Client SDK workflows API.
8
8
 
@@ -150,6 +150,7 @@ const result = await run.timeTravel({
150
150
  - When re-executing a workflow, the workflow loads the existing snapshot from storage (if available)
151
151
  - Step results before the target step are reconstructed from the snapshot or provided context
152
152
  - Execution begins from the specified step with the provided or reconstructed input data
153
+ - If a step that precedes the target in the current workflow definition has no recorded entry in the snapshot (for example, the step was renamed since the run was recorded, or the run never reached it), `timeTravel` rejects with a descriptive error before anything executes and the stored snapshot is left unchanged
153
154
  - The workflow continues to completion from that point forward
154
155
  - Time travel can be used on workflows that haven't been run yet by providing custom context or input data for the step to start from.
155
156
 
@@ -6,7 +6,7 @@ Stores workspace files in [Mesa](https://docs.mesa.dev/content/getting-started/i
6
6
 
7
7
  Use `MesaFilesystem` when agents need versioned file storage. For a local directory, use [`LocalFilesystem`](https://mastra.ai/reference/workspace/local-filesystem). For object storage, use [`S3Filesystem`](https://mastra.ai/reference/workspace/s3-filesystem), [`GCSFilesystem`](https://mastra.ai/reference/workspace/gcs-filesystem), or [`AzureBlobFilesystem`](https://mastra.ai/reference/workspace/azure-blob-filesystem).
8
8
 
9
- > **Info:** `MesaFilesystem` runs in the Mastra process.
9
+ > **Note:** `MesaFilesystem` runs in the Mastra process.
10
10
  >
11
11
  > [Mesa's POSIX mount](https://docs.mesa.dev/content/mesafs/posix-mount) (for using a Mesa filesystem within a sandbox) isn't yet part of the `@mastra/mesa` package. Support is coming soon.
12
12
 
@@ -6,7 +6,7 @@ Stores files in a Mastra Platform workspace bucket. Each Mastra Platform environ
6
6
 
7
7
  Related providers: [`S3Filesystem`](https://mastra.ai/reference/workspace/s3-filesystem) for direct S3 access, [`LocalFilesystem`](https://mastra.ai/reference/workspace/local-filesystem) for local directories.
8
8
 
9
- > **Info:** For interface details, see [WorkspaceFilesystem interface](https://mastra.ai/reference/workspace/filesystem).
9
+ > **Note:** For interface details, see [WorkspaceFilesystem interface](https://mastra.ai/reference/workspace/filesystem).
10
10
 
11
11
  ## Installation
12
12
 
@@ -8,7 +8,7 @@ Sandboxes boot from a pre-built recipe checkpoint with Python 3, Node 22, TypeSc
8
8
 
9
9
  Related providers: [`RailwaySandbox`](https://mastra.ai/reference/workspace/railway-sandbox) for self-hosted Railway sandboxes, [`LocalSandbox`](https://mastra.ai/reference/workspace/local-sandbox) for local sandboxes.
10
10
 
11
- > **Info:** For interface details, see [WorkspaceSandbox interface](https://mastra.ai/reference/workspace/sandbox).
11
+ > **Note:** For interface details, see [WorkspaceSandbox interface](https://mastra.ai/reference/workspace/sandbox).
12
12
 
13
13
  ## Installation
14
14
 
@@ -136,6 +136,12 @@ await sandbox.start() // Boots from the most recent checkpoint for this id, or f
136
136
 
137
137
  Checkpoint recovery is coarser than `sandboxId` reattachment. Reattaching (via `sandboxId`) rejoins the exact live sandbox and its running processes. Checkpoint recovery constructs a brand new sandbox and restores its filesystem from the latest checkpoint the platform captured for the previous sandbox with that `id`. Running processes and any filesystem writes made after the last checkpoint aren't restored.
138
138
 
139
+ Call `snapshot()` after a filesystem update to capture the configured recovery checkpoint immediately. It resolves without capturing when the sandbox has no caller-provided `id` or isn't running.
140
+
141
+ ```typescript
142
+ await sandbox.snapshot()
143
+ ```
144
+
139
145
  Each `id` maps to one independent filesystem. Reusing the same `id` across unrelated sandboxes causes the platform to boot them from each other's checkpoint.
140
146
 
141
147
  ### Cloning for a fleet of sandboxes
@@ -219,6 +225,8 @@ console.log(result.exitCode)
219
225
 
220
226
  **clone** (`(options?: SandboxCloneOptions) => PlatformSandbox`): Construct an unstarted sibling PlatformSandbox that inherits credentials and defaults with per-instance overrides (id, sandboxId, env, idleTimeoutMinutes). Performs no I/O. Use to build a fleet of independent sandboxes from one configured template.
221
227
 
228
+ **snapshot** (`() => Promise<void>`): Capture the configured recovery checkpoint immediately. Resolves without work when no caller-provided id exists or the sandbox is not running.
229
+
222
230
  **getInfo** (`() => Promise<SandboxInfo>`): Return the sandbox's platform id, provider, status, createdAt, and metadata (sandboxId, providerResourceId, platformStatus).
223
231
 
224
232
  **getInstructions** (`(opts?: { requestContext?: RequestContext }) => string`): Return the sandbox instructions the workspace surfaces in tool descriptions. Honors the instructions constructor option; otherwise returns platform-default instructions that include the current remote sandbox id when running.
@@ -141,6 +141,12 @@ const sandbox = new RailwaySandbox({
141
141
 
142
142
  `RailwaySandbox` refreshes the checkpoint shortly before the idle timeout. Recovery restores the latest successful checkpoint. It doesn't restore running processes or filesystem writes made after the last checkpoint.
143
143
 
144
+ Call `snapshot()` after a filesystem update to capture the configured checkpoint immediately. It resolves without capturing when `checkpointName` isn't configured or the sandbox isn't running.
145
+
146
+ ```typescript
147
+ await sandbox.snapshot()
148
+ ```
149
+
144
150
  Use one stable checkpoint name for each independent filesystem. Don't share a checkpoint name across unrelated sessions or projects.
145
151
 
146
152
  ### Cloned sandbox checkpoints
@@ -228,6 +234,8 @@ const result = await sandbox.executeCommand('cat', ['/tmp/state.txt'])
228
234
 
229
235
  **clone** (`(options?) => RailwaySandbox`): Construct an unstarted sibling sandbox that inherits credentials and defaults. Accepts optional id, sandboxId, env, idleTimeoutMinutes, and checkpointName overrides. The cloned sandbox uses options.checkpointName when set, otherwise it inherits the template checkpointName.
230
236
 
237
+ **snapshot** (`() => Promise<void>`): Capture the configured recovery checkpoint immediately. Resolves without work when checkpointName is not configured or the sandbox is not running.
238
+
231
239
  ## Background processes
232
240
 
233
241
  `RailwaySandbox` includes a built-in process manager for spawning and managing background processes. Each spawned process runs as a Railway `exec` session.
@@ -38,6 +38,16 @@ Clean up sandbox resources. Called by `workspace.destroy()`.
38
38
  await sandbox.destroy()
39
39
  ```
40
40
 
41
+ ### `snapshot()`
42
+
43
+ Persists the sandbox's current state when the provider supports snapshots. Other providers resolve without doing work.
44
+
45
+ ```typescript
46
+ await sandbox.snapshot()
47
+ ```
48
+
49
+ **Returns:** `Promise<void>`
50
+
41
51
  ### `executeCommand(command, args?, options?)`
42
52
 
43
53
  Execute a shell command.
package/CHANGELOG.md CHANGED
@@ -1,5 +1,34 @@
1
1
  # @mastra/mcp-docs-server
2
2
 
3
+ ## 1.2.15-alpha.20
4
+
5
+ ### Patch Changes
6
+
7
+ - Updated dependencies [[`9571e3a`](https://github.com/mastra-ai/mastra/commit/9571e3a06ed2c5220196460bf82a2129255c3a8b), [`d6c56f9`](https://github.com/mastra-ai/mastra/commit/d6c56f951db3213330b98b0abafa9778c8770e58), [`9571e3a`](https://github.com/mastra-ai/mastra/commit/9571e3a06ed2c5220196460bf82a2129255c3a8b), [`acc3513`](https://github.com/mastra-ai/mastra/commit/acc3513b19f79bf0a7ec2998694580edca54086c), [`94e7ae9`](https://github.com/mastra-ai/mastra/commit/94e7ae970b37c888cd1244ef013292639a2fe6d1), [`6a667b4`](https://github.com/mastra-ai/mastra/commit/6a667b4b7cd6a93fe41fcdd357b08c5a8c09b9ab), [`2440e09`](https://github.com/mastra-ai/mastra/commit/2440e096ea6c2def1ccc1eb2d0f3f5b88c4af940), [`a59049b`](https://github.com/mastra-ai/mastra/commit/a59049b1652a13efff66ac826326b5ed9a550342)]:
8
+ - @mastra/core@1.58.0-alpha.13
9
+
10
+ ## 1.2.15-alpha.19
11
+
12
+ ### Patch Changes
13
+
14
+ - Updated dependencies [[`2e4624e`](https://github.com/mastra-ai/mastra/commit/2e4624edb6917e61249cb60ee377735e7af7e4a9), [`e6534fa`](https://github.com/mastra-ai/mastra/commit/e6534fab031216f6cb48c4c9907cbfdce9d60bc6), [`7fdcaa6`](https://github.com/mastra-ai/mastra/commit/7fdcaa66105d64290f9b14432a12ec99f39c4d3a), [`cfd0d9e`](https://github.com/mastra-ai/mastra/commit/cfd0d9ec77ec3c69dd96f79cdb579e03d79f22ce), [`d9d93b2`](https://github.com/mastra-ai/mastra/commit/d9d93b25e4a65ad5fa153fa35be7ed149c8d587f)]:
15
+ - @mastra/core@1.58.0-alpha.12
16
+
17
+ ## 1.2.15-alpha.17
18
+
19
+ ### Patch Changes
20
+
21
+ - Updated dependencies [[`b8ce7ec`](https://github.com/mastra-ai/mastra/commit/b8ce7ec96e39343c6c2f36d12d68a9ad816c09f7), [`a3a3624`](https://github.com/mastra-ai/mastra/commit/a3a3624f646b98e409424d8defccbd334da9e8b8), [`6246914`](https://github.com/mastra-ai/mastra/commit/62469146636911f3cbbe0880bd011c6a897a59a7), [`3f73c07`](https://github.com/mastra-ai/mastra/commit/3f73c076727e8c36b4fff7a1b40290fb68957fa8), [`7c1ebb1`](https://github.com/mastra-ai/mastra/commit/7c1ebb15690c4b3f0eabb19077cf8af573311e57), [`32980a3`](https://github.com/mastra-ai/mastra/commit/32980a3e2413d0274ac244d32c37d910edc13f00), [`4bcdfaf`](https://github.com/mastra-ai/mastra/commit/4bcdfaf0eac3199d7cb171b0a19a92c9c341eea4), [`1b1dd7b`](https://github.com/mastra-ai/mastra/commit/1b1dd7bc0e59b7a8bfabd09a3eec1ccd95b4c2f3), [`af4636a`](https://github.com/mastra-ai/mastra/commit/af4636a74463275d71c1d13a38f7d2b738f128bf), [`a463cdf`](https://github.com/mastra-ai/mastra/commit/a463cdf1c95c3059e70f0bff27959e8558bb899d), [`0ea6b80`](https://github.com/mastra-ai/mastra/commit/0ea6b8001408ce02b56e8be0536b0fd8cbaf8ad2)]:
22
+ - @mastra/core@1.58.0-alpha.11
23
+ - @mastra/mcp@1.16.0-alpha.2
24
+
25
+ ## 1.2.15-alpha.16
26
+
27
+ ### Patch Changes
28
+
29
+ - Updated dependencies [[`66bbfb5`](https://github.com/mastra-ai/mastra/commit/66bbfb5f05b473d39f88c0e4a481ccac41634f3a)]:
30
+ - @mastra/core@1.58.0-alpha.10
31
+
3
32
  ## 1.2.15-alpha.14
4
33
 
5
34
  ### Patch Changes
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mastra/mcp-docs-server",
3
- "version": "1.2.15-alpha.15",
3
+ "version": "1.2.15-alpha.20",
4
4
  "description": "MCP server for accessing Mastra.ai documentation, changelogs, and news.",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",
@@ -28,8 +28,8 @@
28
28
  "jsdom": "^26.1.0",
29
29
  "local-pkg": "^1.1.2",
30
30
  "zod": "^4.4.3",
31
- "@mastra/mcp": "^1.16.0-alpha.1",
32
- "@mastra/core": "1.58.0-alpha.9"
31
+ "@mastra/core": "1.58.0-alpha.13",
32
+ "@mastra/mcp": "^1.16.0-alpha.2"
33
33
  },
34
34
  "devDependencies": {
35
35
  "@hono/node-server": "^2.0.0",
@@ -45,9 +45,9 @@
45
45
  "tsx": "^4.23.1",
46
46
  "typescript": "^6.0.3",
47
47
  "vitest": "4.1.10",
48
- "@internal/types-builder": "0.0.96",
49
48
  "@internal/lint": "0.0.121",
50
- "@mastra/core": "1.58.0-alpha.9"
49
+ "@mastra/core": "1.58.0-alpha.13",
50
+ "@internal/types-builder": "0.0.96"
51
51
  },
52
52
  "homepage": "https://mastra.ai",
53
53
  "repository": {