@mastra/mcp-docs-server 1.2.4 → 1.2.5-alpha.3

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 (200) hide show
  1. package/.docs/docs/agent-builder/deploying.md +1 -1
  2. package/.docs/docs/agent-controller/overview.md +1 -1
  3. package/.docs/docs/agent-controller/session.md +1 -1
  4. package/.docs/docs/agents/overview.md +1 -1
  5. package/.docs/docs/agents/processors.md +1 -1
  6. package/.docs/docs/agents/supervisor-agents.md +3 -3
  7. package/.docs/docs/agents/using-tools.md +1 -1
  8. package/.docs/docs/{agents → long-running-agents}/background-tasks.md +2 -2
  9. package/.docs/docs/{agents → long-running-agents}/durable-agents.md +2 -2
  10. package/.docs/docs/{agents → long-running-agents}/goals.md +1 -1
  11. package/.docs/docs/{agents → long-running-agents}/heartbeats.md +5 -5
  12. package/.docs/docs/{agents → long-running-agents}/signal-providers.md +4 -4
  13. package/.docs/docs/memory/working-memory.md +1 -1
  14. package/.docs/docs/observability/config.md +1 -2
  15. package/.docs/docs/server/pubsub.md +2 -2
  16. package/.docs/docs/voice/overview.md +3 -3
  17. package/.docs/docs/voice/speech-to-speech.md +81 -1
  18. package/.docs/docs/voice/speech-to-text.md +19 -1
  19. package/.docs/docs/voice/text-to-speech.md +21 -1
  20. package/.docs/docs/workflows/control-flow.md +1 -1
  21. package/.docs/docs/workflows/error-handling.md +1 -1
  22. package/.docs/docs/workflows/human-in-the-loop.md +1 -1
  23. package/.docs/docs/workflows/overview.md +1 -1
  24. package/.docs/docs/workflows/snapshots.md +1 -1
  25. package/.docs/docs/workflows/suspend-and-resume.md +1 -1
  26. package/.docs/docs/workflows/time-travel.md +1 -1
  27. package/.docs/docs/workflows/workflow-state.md +1 -1
  28. package/.docs/guides/build-your-ui/copilotkit/channels.md +76 -0
  29. package/.docs/guides/build-your-ui/copilotkit/generative-ui.md +174 -0
  30. package/.docs/guides/build-your-ui/copilotkit/overview.md +411 -0
  31. package/.docs/guides/concepts/streaming.md +1 -1
  32. package/.docs/guides/deployment/vercel.md +1 -2
  33. package/.docs/guides/guide/signal-provider.md +5 -5
  34. package/.docs/models/environment-variables.md +2 -0
  35. package/.docs/models/index.md +1 -1
  36. package/.docs/models/providers/alibaba-cn.md +2 -1
  37. package/.docs/models/providers/friendli.md +1 -2
  38. package/.docs/models/providers/kenari.md +95 -0
  39. package/.docs/models/providers/nvidia.md +2 -3
  40. package/.docs/models/providers/tencent-token-plan.md +7 -7
  41. package/.docs/models/providers/tencent-tokenhub.md +5 -4
  42. package/.docs/models/providers.md +2 -0
  43. package/.docs/reference/acp/acp-agent.md +5 -5
  44. package/.docs/reference/acp/create-acp-tool.md +5 -5
  45. package/.docs/reference/agent-controller/agent-controller-class.md +27 -27
  46. package/.docs/reference/agents/agent.md +34 -34
  47. package/.docs/reference/agents/channels.md +19 -19
  48. package/.docs/reference/agents/createSkill.md +2 -2
  49. package/.docs/reference/agents/durable-agent.md +22 -22
  50. package/.docs/reference/agents/generate.md +10 -10
  51. package/.docs/reference/agents/generateLegacy.md +12 -12
  52. package/.docs/reference/agents/getMetadata.md +1 -1
  53. package/.docs/reference/agents/getVoice.md +1 -1
  54. package/.docs/reference/agents/inngest-agent.md +9 -9
  55. package/.docs/reference/agents/network.md +1 -1
  56. package/.docs/reference/ai-sdk/chat-route.md +4 -4
  57. package/.docs/reference/ai-sdk/handle-chat-stream.md +6 -6
  58. package/.docs/reference/ai-sdk/handle-network-stream.md +3 -3
  59. package/.docs/reference/ai-sdk/handle-workflow-stream.md +1 -1
  60. package/.docs/reference/ai-sdk/network-route.md +4 -4
  61. package/.docs/reference/ai-sdk/to-ai-sdk-messages.md +1 -1
  62. package/.docs/reference/ai-sdk/to-ai-sdk-stream.md +1 -1
  63. package/.docs/reference/ai-sdk/with-mastra.md +2 -2
  64. package/.docs/reference/ai-sdk/workflow-route.md +2 -2
  65. package/.docs/reference/ai-sdk/workflow-snapshot-to-stream.md +1 -1
  66. package/.docs/reference/auth/google.md +10 -10
  67. package/.docs/reference/auth/okta.md +11 -11
  68. package/.docs/reference/auth/workos.md +3 -3
  69. package/.docs/reference/channels/slack-provider.md +15 -15
  70. package/.docs/reference/cli/mastra.md +145 -0
  71. package/.docs/reference/client-js/agents.md +9 -9
  72. package/.docs/reference/client-js/mastra-client.md +5 -5
  73. package/.docs/reference/client-js/responses.md +3 -3
  74. package/.docs/reference/configuration.md +1 -1
  75. package/.docs/reference/core/getAgentById.md +3 -3
  76. package/.docs/reference/core/getWorkflow.md +1 -1
  77. package/.docs/reference/core/listWorkflows.md +1 -1
  78. package/.docs/reference/core/mastra-class.md +3 -3
  79. package/.docs/reference/core/removeWorkspace.md +2 -2
  80. package/.docs/reference/datasets/compareExperiments.md +1 -1
  81. package/.docs/reference/datasets/getItemHistory.md +1 -1
  82. package/.docs/reference/datasets/list.md +5 -5
  83. package/.docs/reference/datasets/listExperimentResults.md +4 -4
  84. package/.docs/reference/datasets/listExperiments.md +4 -4
  85. package/.docs/reference/datasets/listItems.md +5 -5
  86. package/.docs/reference/datasets/listVersions.md +3 -3
  87. package/.docs/reference/datasets/startExperiment.md +8 -8
  88. package/.docs/reference/datasets/startExperimentAsync.md +1 -1
  89. package/.docs/reference/editor/agent-builder/agent-builder-options.md +4 -4
  90. package/.docs/reference/editor/agent-builder/builder-agent-defaults.md +7 -7
  91. package/.docs/reference/editor/agent-builder/builder-models.md +4 -4
  92. package/.docs/reference/editor/blob-store-provider.md +2 -2
  93. package/.docs/reference/editor/browser-provider.md +2 -2
  94. package/.docs/reference/editor/filesystem-provider.md +2 -2
  95. package/.docs/reference/editor/mastra-editor.md +2 -2
  96. package/.docs/reference/editor/processor-provider.md +4 -4
  97. package/.docs/reference/editor/sandbox-provider.md +2 -2
  98. package/.docs/reference/editor/storage-browser-ref.md +2 -2
  99. package/.docs/reference/editor/storage-workspace-ref.md +7 -7
  100. package/.docs/reference/evals/create-scorer.md +8 -8
  101. package/.docs/reference/evals/rubric.md +1 -1
  102. package/.docs/reference/evals/run-evals.md +7 -7
  103. package/.docs/reference/evals/trajectory-accuracy.md +1 -1
  104. package/.docs/reference/index.md +2 -2
  105. package/.docs/reference/logging/pino-logger.md +4 -4
  106. package/.docs/reference/memory/cloneThread.md +35 -4
  107. package/.docs/reference/memory/memory-class.md +5 -5
  108. package/.docs/reference/memory/observational-memory.md +43 -43
  109. package/.docs/reference/memory/recall.md +4 -4
  110. package/.docs/reference/memory/serialized-memory-config.md +6 -6
  111. package/.docs/reference/observability/tracing/configuration.md +4 -4
  112. package/.docs/reference/processors/language-detector.md +1 -1
  113. package/.docs/reference/processors/moderation-processor.md +1 -1
  114. package/.docs/reference/processors/pii-detector.md +1 -1
  115. package/.docs/reference/processors/processor-interface.md +20 -20
  116. package/.docs/reference/processors/prompt-injection-detector.md +1 -1
  117. package/.docs/reference/processors/response-cache.md +6 -6
  118. package/.docs/reference/processors/unicode-normalizer.md +1 -1
  119. package/.docs/reference/pubsub/base.md +7 -7
  120. package/.docs/reference/pubsub/caching-pubsub.md +1 -1
  121. package/.docs/reference/pubsub/event-emitter.md +2 -2
  122. package/.docs/reference/pubsub/google-cloud-pubsub.md +1 -1
  123. package/.docs/reference/pubsub/lease-provider.md +3 -3
  124. package/.docs/reference/pubsub/redis-streams.md +6 -6
  125. package/.docs/reference/pubsub/unix-socket-pubsub.md +1 -1
  126. package/.docs/reference/rag/chunk.md +2 -2
  127. package/.docs/reference/server/create-route.md +3 -3
  128. package/.docs/reference/server/express-adapter.md +4 -4
  129. package/.docs/reference/server/fastify-adapter.md +4 -4
  130. package/.docs/reference/server/hono-adapter.md +4 -4
  131. package/.docs/reference/server/koa-adapter.md +4 -4
  132. package/.docs/reference/server/mastra-server.md +1 -1
  133. package/.docs/reference/server/nestjs-adapter.md +3 -3
  134. package/.docs/reference/server/register-api-route.md +3 -3
  135. package/.docs/reference/signals/create-notification-inbox-tool.md +3 -3
  136. package/.docs/reference/signals/signal-provider.md +7 -7
  137. package/.docs/reference/signals/webhook-signal-provider.md +2 -2
  138. package/.docs/reference/storage/clickhouse.md +7 -7
  139. package/.docs/reference/storage/composite.md +2 -2
  140. package/.docs/reference/storage/duckdb.md +1 -1
  141. package/.docs/reference/storage/dynamodb.md +1 -1
  142. package/.docs/reference/storage/libsql.md +1 -1
  143. package/.docs/reference/storage/postgresql.md +2 -2
  144. package/.docs/reference/storage/redis.md +2 -2
  145. package/.docs/reference/storage/retention.md +5 -5
  146. package/.docs/reference/storage/spanner.md +6 -6
  147. package/.docs/reference/streaming/ChunkType.md +3 -3
  148. package/.docs/reference/streaming/agents/stream.md +14 -14
  149. package/.docs/reference/streaming/agents/streamLegacy.md +10 -10
  150. package/.docs/reference/streaming/agents/streamUntilIdle.md +1 -1
  151. package/.docs/reference/streaming/workflows/resumeStream.md +1 -1
  152. package/.docs/reference/templates/overview.md +1 -140
  153. package/.docs/reference/tools/brightdata.md +4 -4
  154. package/.docs/reference/tools/create-code-mode.md +5 -5
  155. package/.docs/reference/tools/create-tool.md +15 -15
  156. package/.docs/reference/tools/graph-rag-tool.md +1 -1
  157. package/.docs/reference/tools/mcp-client.md +2 -2
  158. package/.docs/reference/tools/mcp-server.md +12 -12
  159. package/.docs/reference/tools/perplexity.md +3 -3
  160. package/.docs/reference/tools/tavily.md +1 -1
  161. package/.docs/reference/tools/vector-query-tool.md +1 -1
  162. package/.docs/reference/vectors/chroma.md +1 -1
  163. package/.docs/reference/vectors/mongodb.md +1 -1
  164. package/.docs/reference/vectors/pg.md +1 -1
  165. package/.docs/reference/vectors/s3vectors.md +4 -4
  166. package/.docs/reference/voice/google-gemini-live.md +3 -3
  167. package/.docs/reference/voice/inworld-realtime.md +12 -12
  168. package/.docs/reference/voice/inworld.md +2 -2
  169. package/.docs/reference/voice/voice.on.md +1 -1
  170. package/.docs/reference/workflows/run-methods/resume.md +1 -1
  171. package/.docs/reference/workflows/run-methods/timeTravel.md +1 -1
  172. package/.docs/reference/workspace/agentcore-runtime-sandbox.md +4 -4
  173. package/.docs/reference/workspace/agentfs-filesystem.md +1 -1
  174. package/.docs/reference/workspace/apple-container-sandbox.md +5 -5
  175. package/.docs/reference/workspace/archil-filesystem.md +5 -5
  176. package/.docs/reference/workspace/blaxel-sandbox.md +1 -1
  177. package/.docs/reference/workspace/daytona-sandbox.md +1 -1
  178. package/.docs/reference/workspace/docker-sandbox.md +2 -2
  179. package/.docs/reference/workspace/e2b-sandbox.md +2 -2
  180. package/.docs/reference/workspace/files-sdk-filesystem.md +1 -1
  181. package/.docs/reference/workspace/filesystem.md +1 -1
  182. package/.docs/reference/workspace/local-filesystem.md +3 -3
  183. package/.docs/reference/workspace/local-sandbox.md +1 -1
  184. package/.docs/reference/workspace/mesa-filesystem.md +3 -3
  185. package/.docs/reference/workspace/modal-sandbox.md +1 -1
  186. package/.docs/reference/workspace/railway-sandbox.md +1 -1
  187. package/.docs/reference/workspace/s3-filesystem.md +4 -4
  188. package/.docs/reference/workspace/sandbox.md +1 -1
  189. package/.docs/reference/workspace/{vercel-microvm-sandbox.md → vercel-sandbox.md} +21 -15
  190. package/.docs/reference/workspace/{vercel.md → vercel-serverless.md} +21 -14
  191. package/.docs/reference/workspace/workspace-class.md +15 -15
  192. package/CHANGELOG.md +15 -0
  193. package/package.json +5 -5
  194. package/.docs/docs/agents/adding-voice.md +0 -383
  195. package/.docs/docs/community/contributing-templates.md +0 -5
  196. package/.docs/docs/community/discord.md +0 -11
  197. package/.docs/guides/build-your-ui/copilotkit.md +0 -291
  198. package/LICENSE.md +0 -30
  199. /package/.docs/docs/{community/licensing.md → license.md} +0 -0
  200. /package/.docs/docs/{agents → long-running-agents}/signals.md +0 -0
@@ -85,7 +85,7 @@ const instructions = sandbox.getInstructions?.()
85
85
 
86
86
  **Parameters:**
87
87
 
88
- **opts.requestContext** (`RequestContext`): Forwarded to the \`instructions\` function if one was provided in the constructor.
88
+ **opts.requestContext** (`RequestContext`): Forwarded to the instructions function if one was provided in the constructor.
89
89
 
90
90
  **Returns:** `string`
91
91
 
@@ -1,12 +1,12 @@
1
1
  > Discover all available pages from the documentation index: https://mastra.ai/llms.txt
2
2
 
3
- # VercelMicroVMSandbox
3
+ # VercelSandbox
4
4
 
5
- Executes commands inside [Vercel Sandbox](https://vercel.com/docs/vercel-sandbox) an ephemeral [Firecracker](https://firecracker-microvm.github.io/) MicroVM running Amazon Linux 2023. Provides a persistent in-session filesystem, `sudo` access, exposed ports, and background processes.
5
+ Executes commands inside [Vercel Sandbox](https://vercel.com/docs/vercel-sandbox) which is an ephemeral [Firecracker](https://firecracker-microvm.github.io/) MicroVM running Amazon Linux 2023. Provides a persistent in-session filesystem, `sudo` access, exposed ports, and background processes.
6
6
 
7
7
  > **Info:** For interface details, see the [WorkspaceSandbox interface](https://mastra.ai/reference/workspace/sandbox).
8
8
 
9
- > **Note:** This is distinct from [`VercelSandbox`](https://mastra.ai/reference/workspace/vercel), which runs commands as stateless Vercel serverless **Functions**. `VercelMicroVMSandbox` runs a full Linux MicroVM with a persistent filesystem and long-running processes.
9
+ > **Note:** This is distinct from [`VercelServerlessSandbox`](https://mastra.ai/reference/workspace/vercel-serverless), which runs commands as stateless Vercel serverless **Functions**. `VercelSandbox` runs a full Linux MicroVM with a persistent filesystem and long-running processes.
10
10
 
11
11
  ## Installation
12
12
 
@@ -36,7 +36,7 @@ bun add @mastra/vercel
36
36
 
37
37
  ## Authentication
38
38
 
39
- The `@vercel/sandbox` SDK uses a Vercel OIDC token automatically when available.
39
+ The `@vercel/sandbox` SDK uses a Vercel OIDC token automatically when no explicit credentials are provided. If you provide `token`, `teamId`, or `projectId`, provide all three values together.
40
40
 
41
41
  **OIDC (recommended)**:
42
42
 
@@ -62,7 +62,7 @@ VERCEL_PROJECT_ID=your-project-id
62
62
  **Constructor**:
63
63
 
64
64
  ```typescript
65
- new VercelMicroVMSandbox({
65
+ new VercelSandbox({
66
66
  token: 'your-token',
67
67
  teamId: 'your-team-id',
68
68
  projectId: 'your-project-id',
@@ -71,15 +71,15 @@ new VercelMicroVMSandbox({
71
71
 
72
72
  ## Usage
73
73
 
74
- Add a `VercelMicroVMSandbox` to a workspace and assign it to an agent:
74
+ Add a `VercelSandbox` to a workspace and assign it to an agent:
75
75
 
76
76
  ```typescript
77
77
  import { Agent } from '@mastra/core/agent'
78
78
  import { Workspace } from '@mastra/core/workspace'
79
- import { VercelMicroVMSandbox } from '@mastra/vercel'
79
+ import { VercelSandbox } from '@mastra/vercel'
80
80
 
81
81
  const workspace = new Workspace({
82
- sandbox: new VercelMicroVMSandbox({
82
+ sandbox: new VercelSandbox({
83
83
  runtime: 'node24',
84
84
  timeout: 600_000,
85
85
  }),
@@ -103,14 +103,14 @@ console.log(response.text)
103
103
  Allocate vCPUs (2048 MB of memory per vCPU) and expose ports to reach network services running inside the sandbox:
104
104
 
105
105
  ```typescript
106
- const sandbox = new VercelMicroVMSandbox({
106
+ const sandbox = new VercelSandbox({
107
107
  runtime: 'node24',
108
108
  resources: { vcpus: 4 },
109
109
  ports: [3000],
110
110
  })
111
111
 
112
112
  const workspace = new Workspace({ sandbox })
113
- await sandbox._start()
113
+ await sandbox.start()
114
114
 
115
115
  // The public HTTPS domain for an exposed port is available via getInfo()
116
116
  const { metadata } = sandbox.getInfo()
@@ -156,26 +156,32 @@ Both callbacks are optional and can be used independently.
156
156
 
157
157
  **instructions** (`string | ((opts) => string)`): Override the default instructions returned by getInstructions(). Pass a string to replace them, or a function to extend the defaults.
158
158
 
159
+ **onStart** (`SandboxLifecycleHook`): Lifecycle hook called after the sandbox reaches running status.
160
+
161
+ **onStop** (`SandboxLifecycleHook`): Lifecycle hook called before the sandbox stops.
162
+
163
+ **onDestroy** (`SandboxLifecycleHook`): Lifecycle hook called before the sandbox is destroyed.
164
+
159
165
  ## Properties
160
166
 
161
167
  **id** (`string`): Sandbox instance identifier.
162
168
 
163
- **name** (`string`): Provider name ('VercelMicroVMSandbox').
169
+ **name** (`'VercelSandbox'`): Human-readable name.
164
170
 
165
- **provider** (`string`): Provider identifier ('vercel-microvm').
171
+ **provider** (`'vercel-sandbox'`): Provider type identifier.
166
172
 
167
173
  **status** (`ProviderStatus`): 'pending' | 'starting' | 'running' | 'stopping' | 'stopped' | 'destroying' | 'destroyed' | 'error'
168
174
 
169
175
  **sandbox** (`Sandbox`): The underlying @vercel/sandbox Sandbox instance. Throws SandboxNotReadyError if the sandbox has not been started.
170
176
 
171
- **processes** (`VercelMicroVMProcessManager`): Background process manager. See \[SandboxProcessManager reference]\(/reference/workspace/process-manager).
177
+ **processes** (`VercelSandboxProcessManager`): Background process manager. See SandboxProcessManager reference.
172
178
 
173
179
  ## Background processes
174
180
 
175
- `VercelMicroVMSandbox` includes a process manager for spawning and managing background processes. Each spawned process runs as a detached command inside the MicroVM, with output streamed through the command logs.
181
+ `VercelSandbox` includes a process manager for spawning and managing background processes. Each spawned process runs as a detached command inside the MicroVM, with output streamed through the command logs.
176
182
 
177
183
  ```typescript
178
- const sandbox = new VercelMicroVMSandbox({ runtime: 'node24', ports: [3000] })
184
+ const sandbox = new VercelSandbox({ runtime: 'node24', ports: [3000] })
179
185
  await sandbox.start()
180
186
 
181
187
  const handle = await sandbox.processes.spawn('node server.js', {
@@ -1,14 +1,14 @@
1
1
  > Discover all available pages from the documentation index: https://mastra.ai/llms.txt
2
2
 
3
- # VercelSandbox
3
+ # VercelServerlessSandbox
4
4
 
5
- Executes commands as [Vercel](https://vercel.com) serverless functions. Provides globally-distributed, zero-infrastructure execution with automatic scaling.
5
+ Executes commands as [Vercel](https://vercel.com) serverless functions. Provides globally distributed, zero-infrastructure execution with automatic scaling.
6
6
 
7
7
  > **Info:** For interface details, see [WorkspaceSandbox interface](https://mastra.ai/reference/workspace/sandbox).
8
8
 
9
- > **Warning:** VercelSandbox is stateless. No persistent filesystem, no interactive shell, and no support for long-running or background processes exist. Only `/tmp` is writable and is ephemeral between invocations.
9
+ > **Warning:** VercelServerlessSandbox is stateless. It doesn't provide a persistent filesystem, interactive shell, or long-running background processes. Only `/tmp` is writable, and it is ephemeral between invocations.
10
10
 
11
- > **Note:** For a full Linux MicroVM with a persistent filesystem, `sudo` access, exposed ports, and background processes, use [`VercelMicroVMSandbox`](https://mastra.ai/reference/workspace/vercel-microvm-sandbox), which is backed by the [Vercel Sandbox](https://vercel.com/docs/vercel-sandbox) product.
11
+ > **Note:** For a full Linux MicroVM with a persistent filesystem, `sudo` access, exposed ports, and background processes, use [`VercelSandbox`](https://mastra.ai/reference/workspace/vercel-sandbox), which is backed by the [Vercel Sandbox](https://vercel.com/docs/vercel-sandbox) product.
12
12
 
13
13
  ## Installation
14
14
 
@@ -38,15 +38,15 @@ bun add @mastra/vercel
38
38
 
39
39
  ## Usage
40
40
 
41
- Add a `VercelSandbox` to a workspace and assign it to an agent:
41
+ Add a `VercelServerlessSandbox` to a workspace and assign it to an agent:
42
42
 
43
43
  ```typescript
44
44
  import { Agent } from '@mastra/core/agent'
45
45
  import { Workspace } from '@mastra/core/workspace'
46
- import { VercelSandbox } from '@mastra/vercel'
46
+ import { VercelServerlessSandbox } from '@mastra/vercel'
47
47
 
48
48
  const workspace = new Workspace({
49
- sandbox: new VercelSandbox({
49
+ sandbox: new VercelServerlessSandbox({
50
50
  token: process.env.VERCEL_TOKEN,
51
51
  }),
52
52
  })
@@ -54,6 +54,7 @@ const workspace = new Workspace({
54
54
  const agent = new Agent({
55
55
  id: 'dev-agent',
56
56
  name: 'dev-agent',
57
+ instructions: 'You are a coding assistant working in this workspace.',
57
58
  model: 'anthropic/claude-sonnet-4-6',
58
59
  workspace,
59
60
  })
@@ -63,7 +64,7 @@ const agent = new Agent({
63
64
 
64
65
  ```typescript
65
66
  const workspace = new Workspace({
66
- sandbox: new VercelSandbox({
67
+ sandbox: new VercelServerlessSandbox({
67
68
  token: process.env.VERCEL_TOKEN,
68
69
  teamId: 'team_abc123',
69
70
  regions: ['iad1', 'sfo1'],
@@ -78,7 +79,7 @@ const workspace = new Workspace({
78
79
 
79
80
  ## Constructor parameters
80
81
 
81
- **token** (`string`): Vercel API token. Falls back to \`VERCEL\_TOKEN\` environment variable.
82
+ **token** (`string`): Vercel API token. Falls back to VERCEL\_TOKEN environment variable.
82
83
 
83
84
  **teamId** (`string`): Vercel team ID for team-scoped deployments.
84
85
 
@@ -94,21 +95,27 @@ const workspace = new Workspace({
94
95
 
95
96
  **commandTimeout** (`number`): Per-invocation command timeout in milliseconds. (Default: `55000`)
96
97
 
97
- **instructions** (`string | ((opts) => string)`): Custom instructions that override the default instructions returned by \`getInstructions()\`. Pass a string to fully replace, or a function to extend the defaults.
98
+ **instructions** (`string | ((opts) => string)`): Custom instructions that override the default instructions returned by getInstructions(). Pass a string to fully replace, or a function to extend the defaults.
99
+
100
+ **onStart** (`SandboxLifecycleHook`): Lifecycle hook called after the sandbox reaches running status.
101
+
102
+ **onStop** (`SandboxLifecycleHook`): Lifecycle hook called before the sandbox stops.
103
+
104
+ **onDestroy** (`SandboxLifecycleHook`): Lifecycle hook called before the sandbox is destroyed.
98
105
 
99
106
  ## Properties
100
107
 
101
108
  **id** (`string`): Unique identifier for this sandbox instance.
102
109
 
103
- **name** (`'VercelSandbox'`): Human-readable name.
110
+ **name** (`'VercelServerlessSandbox'`): Human-readable name.
104
111
 
105
- **provider** (`'vercel'`): Provider type identifier.
112
+ **provider** (`'vercel-serverless'`): Provider type identifier.
106
113
 
107
- **status** (`ProviderStatus`): Current lifecycle status: \`'pending'\`, \`'starting'\`, \`'running'\`, \`'stopping'\`, \`'stopped'\`, \`'destroying'\`, \`'destroyed'\`, or \`'error'\`.
114
+ **status** (`ProviderStatus`): Current lifecycle status: 'pending', 'starting', 'running', 'stopping', 'stopped', 'destroying', 'destroyed', or 'error'.
108
115
 
109
116
  ## Limitations
110
117
 
111
- VercelSandbox uses serverless functions under the hood, which means:
118
+ VercelServerlessSandbox uses serverless functions under the hood, which means:
112
119
 
113
120
  - **No persistent filesystem**: Files written to `/tmp` are ephemeral and cleared between invocations.
114
121
  - **No interactive shell**: Commands run via `/bin/sh -c` with no stdin streaming.
@@ -31,19 +31,19 @@ const workspace = new Workspace({
31
31
 
32
32
  **name** (`string`): Human-readable name (Default: `workspace-{id}`)
33
33
 
34
- **filesystem** (`WorkspaceFilesystem | WorkspaceFilesystemResolver`): Filesystem provider instance, or a resolver function that receives \`requestContext\` and returns a filesystem per request. See \[dynamic filesystem]\(/docs/workspace/filesystem#dynamic-filesystem).
34
+ **filesystem** (`WorkspaceFilesystem | WorkspaceFilesystemResolver`): Filesystem provider instance, or a resolver function that receives requestContext and returns a filesystem per request. See dynamic filesystem.
35
35
 
36
- **sandbox** (`WorkspaceSandbox | WorkspaceSandboxResolver`): Sandbox provider instance, or a resolver function that receives \`requestContext\` and returns a sandbox per request. See \[dynamic sandbox]\(/docs/workspace/sandbox#dynamic-sandbox).
36
+ **sandbox** (`WorkspaceSandbox | WorkspaceSandboxResolver`): Sandbox provider instance, or a resolver function that receives requestContext and returns a sandbox per request. See dynamic sandbox.
37
37
 
38
- **instructions.dynamicSandbox** (`'placeholder' | 'resolve' | (({ requestContext }) => string)`): Controls how a resolver-backed \`sandbox\` contributes to workspace instructions. \`'placeholder'\` (default) emits stable text without calling the resolver. \`'resolve'\` calls the resolver and uses the sandbox's own instructions. A function returns custom text without resolving. Has no effect on a static sandbox. (Default: `'placeholder'`)
38
+ **instructions.dynamicSandbox** (`'placeholder' | 'resolve' | (({ requestContext }) => string)`): Controls how a resolver-backed sandbox contributes to workspace instructions. 'placeholder' (default) emits stable text without calling the resolver. 'resolve' calls the resolver and uses the sandbox's own instructions. A function returns custom text without resolving. Has no effect on a static sandbox. (Default: `'placeholder'`)
39
39
 
40
- **sandboxCacheKey** (`({ requestContext }) => string | undefined`): Stable cache key for a resolver-backed \`sandbox\`. When set, resolved sandboxes are memoized per key instead of per \`RequestContext\` instance, so background-process tools reach the same sandbox across follow-up requests. Has no effect on a static sandbox.
40
+ **sandboxCacheKey** (`({ requestContext }) => string | undefined`): Stable cache key for a resolver-backed sandbox. When set, resolved sandboxes are memoized per key instead of per RequestContext instance, so background-process tools reach the same sandbox across follow-up requests. Has no effect on a static sandbox.
41
41
 
42
42
  **bm25** (`boolean | BM25Config`): Enable BM25 keyword search. Pass true for defaults or a config object. (Default: `undefined`)
43
43
 
44
44
  **vectorStore** (`MastraVector`): Vector store for semantic search
45
45
 
46
- **embedder** (`Embedder`): Function that turns text into vectors. Required when \`vectorStore\` is set. Accepts either a single-text function \`(text: string) => Promise\<number\[]>\` or a batch-capable function \`(texts: string\[]) => Promise\<number\[]\[]>\` that has a \`batch: true\` property and an optional \`maxBatchSize\`. See \[Batch embedding]\(/docs/workspace/search#batch-embedding).
46
+ **embedder** (`Embedder`): Function that turns text into vectors. Required when vectorStore is set. Accepts either a single-text function (text: string) => Promise\<number\[]> or a batch-capable function (texts: string\[]) => Promise\<number\[]\[]> that has a batch: true property and an optional maxBatchSize. See Batch embedding.
47
47
 
48
48
  **autoIndexPaths** (`string[]`): Paths or glob patterns to auto-index on init(). Supports glob patterns like '\*\*/\*.md' for selective indexing.
49
49
 
@@ -61,7 +61,7 @@ const workspace = new Workspace({
61
61
 
62
62
  **tools.requireApproval** (`boolean`): Whether the tool requires user approval before execution
63
63
 
64
- **tools.name** (`string`): Custom name to expose this tool as. Replaces the default \`mastra\_workspace\_\*\` name. The config key must still use the original \`WORKSPACE\_TOOLS\` constant.
64
+ **tools.name** (`string`): Custom name to expose this tool as. Replaces the default mastra\_workspace\_\* name. The config key must still use the original WORKSPACE\_TOOLS constant.
65
65
 
66
66
  **tools.requireReadBeforeWrite** (`boolean`): For write tools: require reading the file first to prevent overwrites
67
67
 
@@ -144,9 +144,9 @@ const workspace = new Workspace({
144
144
  })
145
145
  ```
146
146
 
147
- **beforeToolCall** (`(context: WorkspaceToolHookContext) => void | WorkspaceToolBeforeHookResult | Promise<void | WorkspaceToolBeforeHookResult>`): Runs before a workspace tool executes. Receives \`{ toolName, workspaceToolName, input, context }\`. Return \`{ proceed: false, output }\` to skip the tool call and use \`output\` as its result.
147
+ **beforeToolCall** (`(context: WorkspaceToolHookContext) => void | WorkspaceToolBeforeHookResult | Promise<void | WorkspaceToolBeforeHookResult>`): Runs before a workspace tool executes. Receives { toolName, workspaceToolName, input, context }. Return { proceed: false, output } to skip the tool call and use output as its result.
148
148
 
149
- **afterToolCall** (`(context: WorkspaceToolAfterHookContext) => void | Promise<void>`): Runs after a workspace tool executes. Receives \`{ toolName, workspaceToolName, input, context, output, error }\`. \`output\` is undefined when the tool throws, and \`error\` is set instead.
149
+ **afterToolCall** (`(context: WorkspaceToolAfterHookContext) => void | Promise<void>`): Runs after a workspace tool executes. Receives { toolName, workspaceToolName, input, context, output, error }. output is undefined when the tool throws, and error is set instead.
150
150
 
151
151
  If the owning agent also defines [tool hooks](https://mastra.ai/reference/agents/agent), workspace hooks run inside the agent hook wrapper: agent `beforeToolCall` runs first, then workspace `beforeToolCall`, then the tool, then workspace `afterToolCall`, then agent `afterToolCall`.
152
152
 
@@ -158,9 +158,9 @@ If the owning agent also defines [tool hooks](https://mastra.ai/reference/agents
158
158
 
159
159
  **status** (`WorkspaceStatus`): 'pending' | 'initializing' | 'ready' | 'paused' | 'error' | 'destroying' | 'destroyed'
160
160
 
161
- **filesystem** (`WorkspaceFilesystem | undefined`): The static filesystem provider. Returns \`undefined\` when a resolver function is configured — use \`hasFilesystemConfig()\` to check availability.
161
+ **filesystem** (`WorkspaceFilesystem | undefined`): The static filesystem provider. Returns undefined when a resolver function is configured — use hasFilesystemConfig() to check availability.
162
162
 
163
- **sandbox** (`WorkspaceSandbox | undefined`): The static sandbox provider. Returns \`undefined\` when a resolver function is configured — use \`hasSandboxConfig()\` to check availability.
163
+ **sandbox** (`WorkspaceSandbox | undefined`): The static sandbox provider. Returns undefined when a resolver function is configured — use hasSandboxConfig() to check availability.
164
164
 
165
165
  **skills** (`WorkspaceSkills | undefined`): Skills interface for accessing SKILL.md files
166
166
 
@@ -250,9 +250,9 @@ const info = await workspace.getInfo({ resolveDynamicProviders: false })
250
250
 
251
251
  **options.includeFileCount** (`boolean`): Whether to count total files. This can be slow for large workspaces.
252
252
 
253
- **options.requestContext** (`RequestContext`): Passed to dynamic provider resolvers when \`resolveDynamicProviders\` is enabled.
253
+ **options.requestContext** (`RequestContext`): Passed to dynamic provider resolvers when resolveDynamicProviders is enabled.
254
254
 
255
- **options.resolveDynamicProviders** (`boolean`): Whether to invoke dynamic provider resolvers. Set to \`false\` when you only need metadata and want resolver-backed providers reported as \`dynamic\`. (Default: `true`)
255
+ **options.resolveDynamicProviders** (`boolean`): Whether to invoke dynamic provider resolvers. Set to false when you only need metadata and want resolver-backed providers reported as dynamic. (Default: `true`)
256
256
 
257
257
  #### `getInstructions(opts?)`
258
258
 
@@ -270,7 +270,7 @@ const instructions = workspace.getInstructions({ requestContext })
270
270
 
271
271
  **Parameters:**
272
272
 
273
- **opts.requestContext** (`RequestContext`): Forwarded to the \`instructions\` function on the filesystem or sandbox provider, if one is configured.
273
+ **opts.requestContext** (`RequestContext`): Forwarded to the instructions function on the filesystem or sandbox provider, if one is configured.
274
274
 
275
275
  **Returns:** `string`
276
276
 
@@ -284,7 +284,7 @@ const instructions = await workspace.getInstructionsAsync({ requestContext })
284
284
 
285
285
  **Parameters:**
286
286
 
287
- **opts.requestContext** (`RequestContext`): Passed to the dynamic filesystem resolver, and to the dynamic sandbox resolver when \`instructions.dynamicSandbox\` is \`'resolve'\`.
287
+ **opts.requestContext** (`RequestContext`): Passed to the dynamic filesystem resolver, and to the dynamic sandbox resolver when instructions.dynamicSandbox is 'resolve'.
288
288
 
289
289
  **Returns:** `Promise<string>`
290
290
 
@@ -425,7 +425,7 @@ With a static filesystem, write tools (`write_file`, `edit_file`, `delete`, `mkd
425
425
 
426
426
  The `read_file` tool accepts `mediaTypes` and `maxMediaBytes` options to control which mime types are surfaced to the model as native media parts and how large those files can be:
427
427
 
428
- **mediaTypes** (`string[] | ((mimeType: string) => boolean) | false`): Which mime types to surface to the model as media parts (file/image parts) rather than as text. Accepts an array of globs (e.g. \`\['image/\*']\`), a custom predicate function, or \`false\` to disable media detection. Defaults to the cross-provider-safe intersection of image formats plus PDF. Only applies when the caller doesn't pass an explicit \`encoding\`. (Default: `['image/png', 'image/jpeg', 'image/webp', 'application/pdf']`)
428
+ **mediaTypes** (`string[] | ((mimeType: string) => boolean) | false`): Which mime types to surface to the model as media parts (file/image parts) rather than as text. Accepts an array of globs (e.g. \['image/\*']), a custom predicate function, or false to disable media detection. Defaults to the cross-provider-safe intersection of image formats plus PDF. Only applies when the caller doesn't pass an explicit encoding. (Default: `['image/png', 'image/jpeg', 'image/webp', 'application/pdf']`)
429
429
 
430
430
  **maxMediaBytes** (`number`): Maximum file size (in bytes) to inline as a media part. Files larger than this fall back to metadata-only output rather than being fully base64-encoded into context and persisted in storage on rehydration. (Default: `10 * 1024 * 1024 (10 MiB)`)
431
431
 
package/CHANGELOG.md CHANGED
@@ -1,5 +1,20 @@
1
1
  # @mastra/mcp-docs-server
2
2
 
3
+ ## 1.2.5-alpha.2
4
+
5
+ ### Patch Changes
6
+
7
+ - Updated dependencies [[`3ffb8b7`](https://github.com/mastra-ai/mastra/commit/3ffb8b720e90f5e6977129ec1f6707d43c2bebe0), [`5ea76a7`](https://github.com/mastra-ai/mastra/commit/5ea76a723d966c72da9aa3ab30ae20276e049765), [`6445560`](https://github.com/mastra-ai/mastra/commit/6445560327045d20b239585fc63fed72e9ce36ec), [`911281c`](https://github.com/mastra-ai/mastra/commit/911281c57893ba2630428bf88d0cd0c5101ce76f), [`a2ba369`](https://github.com/mastra-ai/mastra/commit/a2ba369e796dfab610f41c6875965b488272fa55), [`ae51e81`](https://github.com/mastra-ai/mastra/commit/ae51e818825582d42500338dfc1929a082eff0ba), [`6f304ef`](https://github.com/mastra-ai/mastra/commit/6f304ef319e99725e884bdb8d3193c001b6e5964)]:
8
+ - @mastra/core@1.50.0-alpha.1
9
+ - @mastra/mcp@1.13.1-alpha.0
10
+
11
+ ## 1.2.5-alpha.0
12
+
13
+ ### Patch Changes
14
+
15
+ - Updated dependencies [[`6ef59fe`](https://github.com/mastra-ai/mastra/commit/6ef59fef1da52ed8da5fbb2a892c71cf4fb6c739), [`e2b9f33`](https://github.com/mastra-ai/mastra/commit/e2b9f33456fd638eca555f9466c6519d8d049666)]:
16
+ - @mastra/core@1.50.0-alpha.0
17
+
3
18
  ## 1.2.4
4
19
 
5
20
  ### Patch Changes
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mastra/mcp-docs-server",
3
- "version": "1.2.4",
3
+ "version": "1.2.5-alpha.3",
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/core": "1.49.0",
32
- "@mastra/mcp": "^1.13.0"
31
+ "@mastra/core": "1.50.0-alpha.1",
32
+ "@mastra/mcp": "^1.13.1-alpha.0"
33
33
  },
34
34
  "devDependencies": {
35
35
  "@hono/node-server": "^1.19.11",
@@ -45,9 +45,9 @@
45
45
  "tsx": "^4.22.4",
46
46
  "typescript": "^6.0.3",
47
47
  "vitest": "4.1.8",
48
- "@internal/lint": "0.0.111",
49
48
  "@internal/types-builder": "0.0.86",
50
- "@mastra/core": "1.49.0"
49
+ "@internal/lint": "0.0.111",
50
+ "@mastra/core": "1.50.0-alpha.1"
51
51
  },
52
52
  "homepage": "https://mastra.ai",
53
53
  "repository": {