@mastra/mcp-docs-server 1.2.16-alpha.3 → 1.2.16-alpha.6

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 (138) hide show
  1. package/.docs/docs/agents/a2a.md +1 -1
  2. package/.docs/docs/agents/guardrails.md +11 -10
  3. package/.docs/docs/agents/overview.md +2 -0
  4. package/.docs/docs/agents/processors.md +8 -8
  5. package/.docs/docs/agents/structured-output.md +1 -1
  6. package/.docs/docs/agents/using-tools.md +51 -12
  7. package/.docs/docs/browser/overview.md +22 -3
  8. package/.docs/docs/capabilities/subagents.md +2 -2
  9. package/.docs/docs/datasets/running-experiments.md +2 -2
  10. package/.docs/docs/deployment/overview.md +3 -3
  11. package/.docs/docs/deployment/sandbox.md +1 -1
  12. package/.docs/docs/deployment/workers.md +5 -5
  13. package/.docs/docs/deployment/workflow-runners.md +1 -1
  14. package/.docs/docs/editor/overview.md +3 -1
  15. package/.docs/docs/evals/custom-scorers.md +1 -1
  16. package/.docs/docs/evals/multi-turn.md +1 -1
  17. package/.docs/docs/evals/overview.md +3 -3
  18. package/.docs/docs/getting-started/develop.md +1 -1
  19. package/.docs/docs/harness/agent-controller.md +2 -2
  20. package/.docs/docs/harness/overview.md +1 -1
  21. package/.docs/docs/long-running-agents/background-tasks.md +2 -2
  22. package/.docs/docs/long-running-agents/goals.md +3 -2
  23. package/.docs/docs/long-running-agents/signals.md +2 -2
  24. package/.docs/docs/mastra-platform/deploy.md +1 -1
  25. package/.docs/docs/mastra-platform/github.md +1 -1
  26. package/.docs/docs/mastra-platform/observability.md +1 -1
  27. package/.docs/docs/mastra-platform/overview.md +3 -3
  28. package/.docs/docs/mastra-platform/server.md +2 -2
  29. package/.docs/docs/mastra-platform/trace-intelligence.md +3 -3
  30. package/.docs/docs/memory/memory-processors.md +1 -1
  31. package/.docs/docs/memory/message-history.md +2 -2
  32. package/.docs/docs/memory/observational-memory.md +13 -13
  33. package/.docs/docs/memory/semantic-recall.md +1 -1
  34. package/.docs/docs/memory/working-memory.md +1 -1
  35. package/.docs/docs/observability/logging.md +1 -1
  36. package/.docs/docs/observability/metrics/querying.md +1 -1
  37. package/.docs/docs/observability/tracing/overview.md +3 -3
  38. package/.docs/docs/server/custom-adapters.md +2 -2
  39. package/.docs/docs/server/custom-api-routes.md +1 -1
  40. package/.docs/docs/server/mastra-client.md +1 -1
  41. package/.docs/docs/server/server-adapters.md +1 -1
  42. package/.docs/docs/studio/deployment.md +2 -2
  43. package/.docs/docs/studio/observability.md +1 -1
  44. package/.docs/docs/studio/overview.md +2 -0
  45. package/.docs/docs/workflows/dynamic-workflows.md +1 -1
  46. package/.docs/docs/workflows/scheduled-workflows.md +1 -1
  47. package/.docs/docs/workflows/suspend-and-resume.md +1 -1
  48. package/.docs/docs/workspace/overview.md +2 -1
  49. package/.docs/docs/workspace/search.md +1 -1
  50. package/.docs/docs/workspace/skills.md +1 -1
  51. package/.docs/integrations/browsers/agent-browser.md +2 -3
  52. package/.docs/integrations/browsers/firecrawl.md +0 -1
  53. package/.docs/integrations/browsers/stagehand.md +2 -3
  54. package/.docs/models/gateways/openrouter.md +1 -2
  55. package/.docs/models/index.md +1 -1
  56. package/.docs/models/providers/kilo.md +6 -7
  57. package/.docs/models/providers/nano-gpt.md +2 -1
  58. package/.docs/reference/acp/acp-agent.md +1 -1
  59. package/.docs/reference/agent-controller/session.md +1 -1
  60. package/.docs/reference/agents/channels.md +1 -1
  61. package/.docs/reference/agents/inngest-agent.md +1 -1
  62. package/.docs/reference/ai-sdk/overview.md +1 -1
  63. package/.docs/reference/auth/auth0.md +1 -1
  64. package/.docs/reference/auth/google.md +1 -1
  65. package/.docs/reference/browser/agent-browser.md +2 -2
  66. package/.docs/reference/browser/browser-viewer.md +1 -1
  67. package/.docs/reference/browser/stagehand-browser.md +2 -2
  68. package/.docs/reference/channels/channel-provider.md +1 -1
  69. package/.docs/reference/channels/slack-provider.md +1 -1
  70. package/.docs/reference/cli/mastra.md +5 -5
  71. package/.docs/reference/code-sdk/mount-agent-controller.md +1 -1
  72. package/.docs/reference/coding-agent/build-base-prompt.md +2 -1
  73. package/.docs/reference/configuration.md +3 -3
  74. package/.docs/reference/core/getAgentById.md +1 -1
  75. package/.docs/reference/core/getWorkflow.md +2 -2
  76. package/.docs/reference/core/mastra-class.md +1 -1
  77. package/.docs/reference/deployer/netlify.md +1 -1
  78. package/.docs/reference/deployer.md +1 -1
  79. package/.docs/reference/editor/prompt-blocks.md +1 -1
  80. package/.docs/reference/editor/tools.md +1 -1
  81. package/.docs/reference/evals/completeness.md +1 -1
  82. package/.docs/reference/evals/noise-sensitivity.md +1 -1
  83. package/.docs/reference/evals/summarization.md +1 -1
  84. package/.docs/reference/file-based-agents/config.md +1 -1
  85. package/.docs/reference/file-based-agents/skills.md +5 -5
  86. package/.docs/reference/file-based-agents/workspace.md +1 -1
  87. package/.docs/reference/index.md +1 -1
  88. package/.docs/reference/logging/pino-logger.md +1 -1
  89. package/.docs/reference/memory/observational-memory.md +12 -4
  90. package/.docs/reference/migrations/upgrade-to-v1/agent.md +3 -3
  91. package/.docs/reference/migrations/upgrade-to-v1/client.md +1 -1
  92. package/.docs/reference/migrations/upgrade-to-v1/evals.md +1 -1
  93. package/.docs/reference/migrations/upgrade-to-v1/mastra.md +1 -1
  94. package/.docs/reference/migrations/upgrade-to-v1/mcp.md +1 -1
  95. package/.docs/reference/migrations/upgrade-to-v1/overview.md +1 -1
  96. package/.docs/reference/migrations/upgrade-to-v1/processors.md +1 -1
  97. package/.docs/reference/migrations/upgrade-to-v1/storage.md +5 -5
  98. package/.docs/reference/migrations/upgrade-to-v1/tools.md +1 -1
  99. package/.docs/reference/observability/tracing/bridges/datadog.md +1 -1
  100. package/.docs/reference/observability/tracing/bridges/otel.md +1 -1
  101. package/.docs/reference/observability/tracing/exporters/arize.md +1 -1
  102. package/.docs/reference/observability/tracing/exporters/cloud-exporter.md +2 -2
  103. package/.docs/reference/observability/tracing/exporters/mastra-platform-exporter.md +1 -1
  104. package/.docs/reference/observability/tracing/exporters/otel.md +1 -1
  105. package/.docs/reference/observability/tracing/exporters/sentry.md +1 -1
  106. package/.docs/reference/observability/tracing/processors/sensitive-data-filter.md +27 -3
  107. package/.docs/reference/processors/batch-parts-processor.md +1 -1
  108. package/.docs/reference/processors/language-detector.md +1 -2
  109. package/.docs/reference/processors/processor-interface.md +16 -16
  110. package/.docs/reference/processors/stream-error-retry-processor.md +2 -2
  111. package/.docs/reference/processors/token-cost-control.md +154 -0
  112. package/.docs/reference/rag/chunking-and-embedding.md +1 -1
  113. package/.docs/reference/rag/metadata-filters.md +1 -1
  114. package/.docs/reference/server/koa-adapter.md +1 -1
  115. package/.docs/reference/signals/webhook-signal-provider.md +1 -1
  116. package/.docs/reference/storage/retention.md +1 -1
  117. package/.docs/reference/tools/bedrock-kb-tool.md +1 -1
  118. package/.docs/reference/tools/mcp-client.md +3 -3
  119. package/.docs/reference/tools/mcp-server.md +5 -5
  120. package/.docs/reference/tools/task-tools.md +1 -1
  121. package/.docs/reference/tools/vector-query-tool.md +1 -1
  122. package/.docs/reference/vectors/chroma.md +1 -1
  123. package/.docs/reference/vectors/convex.md +1 -1
  124. package/.docs/reference/vectors/couchbase.md +1 -1
  125. package/.docs/reference/vectors/mongodb.md +2 -2
  126. package/.docs/reference/vectors/pg.md +1 -1
  127. package/.docs/reference/vectors/qdrant.md +2 -2
  128. package/.docs/reference/voice/overview.md +1 -1
  129. package/.docs/reference/voice/speech-to-speech.md +1 -1
  130. package/.docs/reference/voice/speech-to-text.md +1 -1
  131. package/.docs/reference/voice/voice.on.md +1 -1
  132. package/.docs/reference/voice/voice.updateConfig.md +1 -1
  133. package/.docs/reference/workspace/local-sandbox.md +1 -1
  134. package/.docs/reference/workspace/workspace-class.md +1 -1
  135. package/CHANGELOG.md +14 -0
  136. package/package.json +5 -5
  137. package/.docs/docs/browser/recording.md +0 -120
  138. package/.docs/reference/processors/cost-guard-processor.md +0 -115
@@ -53,7 +53,7 @@ To cancel a pending request, select **Cancel** next to it in the dashboard.
53
53
 
54
54
  ## Create a project from a template
55
55
 
56
- Templates are the fastest way to get started. The platform creates a new repository from a Mastra template, links it to a fresh project, provisions any managed databases the template declares, and runs the first deploy.
56
+ Templates are the fastest way to get started. The platform creates a new repository from a Mastra template and links it to a fresh project. It then provisions any managed databases declared by the template and runs the first deploy.
57
57
 
58
58
  1. In the dashboard, select **Create project** and choose **Start from a template**.
59
59
 
@@ -36,7 +36,7 @@ yarn create mastra
36
36
  bunx create-mastra
37
37
  ```
38
38
 
39
- The create command authenticates with Mastra Platform, creates an observability project, mints an access token, and writes `MASTRA_PLATFORM_ACCESS_TOKEN` and `MASTRA_PROJECT_ID` to `.env`.
39
+ The create command authenticates with Mastra Platform and creates an observability project. It then mints an access token and writes `MASTRA_PLATFORM_ACCESS_TOKEN` and `MASTRA_PROJECT_ID` to `.env`.
40
40
 
41
41
  ### Existing project
42
42
 
@@ -10,7 +10,7 @@ The [Mastra platform](https://projects.mastra.ai) provides three products for de
10
10
 
11
11
  Deploy with a single command, [`mastra deploy`](https://mastra.ai/docs/mastra-platform/deploy), or connect a GitHub repository for push-to-deploy. See the [GitHub integration](https://mastra.ai/docs/mastra-platform/github) for the repository-linked flow.
12
12
 
13
- Each project can run multiple [**Environments**](https://mastra.ai/docs/mastra-platform/environments) (for example `production` and `staging`), provision [**Hosted databases**](https://mastra.ai/docs/mastra-platform/database) from the CLI or project settings to persist application data, and get a managed [**Workspaces**](https://mastra.ai/docs/mastra-platform/workspaces) per environment that gives agents a filesystem and a sandbox with no manual configuration.
13
+ Each project can run multiple [**Environments**](https://mastra.ai/docs/mastra-platform/environments) (for example `production` and `staging`) and provision [**Hosted databases**](https://mastra.ai/docs/mastra-platform/database) from the CLI or project settings to persist application data. Each environment also gets a managed [**Workspace**](https://mastra.ai/docs/mastra-platform/workspaces) that gives agents a filesystem and sandbox with no manual configuration.
14
14
 
15
15
  [**Trace Intelligence**](https://mastra.ai/docs/mastra-platform/trace-intelligence) finds recurring goals, outcomes, behaviors, and sentiment across your agent traces. Trace Intelligence is available in private beta for selected projects.
16
16
 
@@ -19,7 +19,7 @@ Each project can run multiple [**Environments**](https://mastra.ai/docs/mastra-p
19
19
  Choose the path that matches what you want to do:
20
20
 
21
21
  - **Add hosted observability**: Use [Observability](https://mastra.ai/docs/mastra-platform/observability) to collect searchable traces, logs, and metrics across projects and deploys. Start here if you want monitoring without deploying Studio or Server first.
22
- - **Deploy Studio**: Use [Studio](https://mastra.ai/docs/mastra-platform/studio) to host the visual development environment for your team. Start here if you want a shared UI for testing agents, running workflows, and inspecting traces.
22
+ - **Deploy Studio**: Use [Studio](https://mastra.ai/docs/mastra-platform/studio) to host the visual development environment for your team. Start here if you want a shared UI for testing agents and running workflows, as well as inspecting traces.
23
23
  - **Deploy Server**: Use [Server](https://mastra.ai/docs/mastra-platform/server) to run your Mastra application as a production API server. Start here when you’re ready to serve agents, tools, and workflows from the cloud.
24
24
 
25
25
  ## Key concepts
@@ -28,7 +28,7 @@ Choose the path that matches what you want to do:
28
28
 
29
29
  Your Mastra application is built from three building blocks:
30
30
 
31
- - [Agents](https://mastra.ai/docs/agents/overview): AI agents that can use tools, follow instructions, and maintain context
31
+ - [Agents](https://mastra.ai/docs/agents/overview): AI agents that can use tools and follow instructions while maintaining context
32
32
  - [Tools](https://mastra.ai/docs/agents/using-tools): Callable functions and integrations available to your agents
33
33
  - [Workflows](https://mastra.ai/docs/workflows/overview): Multi-step orchestration pipelines that coordinate agents and tools
34
34
 
@@ -4,7 +4,7 @@
4
4
 
5
5
  Server on Mastra platform is a production deployment target that runs your Mastra application as an API server. Use it when you want the platform to build, deploy, host, and manage your Mastra server.
6
6
 
7
- You get a stable API endpoint, environment variable management, custom domain support, and deploy history out of the box.
7
+ You get a stable API endpoint with environment variable management and custom domain support, plus deploy history out of the box.
8
8
 
9
9
  > **Note:** `mastra server deploy` is the earlier split deploy path. New projects should use the unified [`mastra deploy`](https://mastra.ai/docs/mastra-platform/deploy) command, which adds preflight validation, environments, and CLI-managed databases.
10
10
 
@@ -60,7 +60,7 @@ You get a stable API endpoint, environment variable management, custom domain su
60
60
 
61
61
  ## Deploy lifecycle
62
62
 
63
- A deploy transitions through **queued → uploading → building → deploying → running** (or **failed**, **cancelled**, **crashed**, or **stopped**). Only one build runs per project at a time. If multiple deploys queue up, only the latest proceeds and the rest are cancelled. Builds running longer than 15 minutes are automatically failed. The first deploy provisions infrastructure and seeds environment variables from your local `.env`. Your server URL remains stable across deploys.
63
+ A deploy transitions through **queued → uploading → building → deploying → running** (or **failed**, **cancelled**, **crashed**, or **stopped**). A project runs one build at a time. When multiple deploys queue up, the latest proceeds and the rest are cancelled. Builds running longer than 15 minutes are automatically failed. The first deploy provisions infrastructure and seeds environment variables from your local `.env`. Your server URL remains stable across deploys.
64
64
 
65
65
  ## Idle behavior
66
66
 
@@ -2,7 +2,7 @@
2
2
 
3
3
  # Trace Intelligence on Mastra platform
4
4
 
5
- Trace Intelligence finds recurring patterns across your agent's interactions. It analyzes traces captured by Mastra Observability, produces trace signals for four dimensions, and clusters similar trace signals into themes.
5
+ Trace Intelligence finds recurring patterns across your agent's interactions. It analyzes traces captured by Mastra Observability and produces trace signals for four dimensions. It then clusters similar trace signals into themes.
6
6
 
7
7
  Use Trace Intelligence to investigate questions such as:
8
8
 
@@ -27,7 +27,7 @@ Once Mastra enrolls the project, you don't need to change your agent definition
27
27
 
28
28
  Trace Intelligence needs enough processed traces from one agent to identify recurring patterns. Initial themes are usually available after at least **100 completed traces** from that agent have been processed.
29
29
 
30
- The trace count under **Traces** can reach 100 before Trace Intelligence is ready because the analysis pipeline runs asynchronously. Processing can take several minutes after the threshold is reached. Traces that can't be analyzed don't contribute, so 100 is a minimum, not an exact UI trigger.
30
+ The trace count under **Traces** can reach 100 before Trace Intelligence is ready because the analysis pipeline runs asynchronously. Processing can take several minutes after the threshold is reached. Traces that can't be analyzed don't contribute. As a result, 100 is a minimum rather than an exact UI trigger.
31
31
 
32
32
  Trace Intelligence updates automatically as more traces arrive. Studio needs themes for at least two trace signal types before it can display the relationship flow.
33
33
 
@@ -90,7 +90,7 @@ Filtering the flow by a theme is unavailable for snapshots with more than 2,000
90
90
 
91
91
  ### Intelligence isn't in the sidebar
92
92
 
93
- Confirm that Mastra enrolled the correct project, that you use the beta-compatible Mastra version, and that you redeployed Studio. The private beta doesn't support local Studio.
93
+ Confirm that Mastra enrolled the correct project, that you use the beta-compatible Mastra version, and that you redeployed Studio because the private beta doesn't support local Studio.
94
94
 
95
95
  ### An agent is missing
96
96
 
@@ -163,7 +163,7 @@ const agent = new Agent({
163
163
 
164
164
  ## Manual control and deduplication
165
165
 
166
- If you manually add a memory processor to `inputProcessors` or `outputProcessors`, Mastra **won't** automatically add it. This gives you full control over processor ordering:
166
+ If you manually add a memory processor to `inputProcessors` or `outputProcessors`, Mastra **won't** automatically add it. Manual configuration gives you full control over processor ordering:
167
167
 
168
168
  ```typescript
169
169
  import { Agent } from '@mastra/core/agent'
@@ -117,7 +117,7 @@ await agent.stream('Hello', {
117
117
 
118
118
  You can use this history in two ways:
119
119
 
120
- - **Automatic inclusion**: Mastra automatically fetches and includes recent messages in the context window. By default, it includes the last 10 messages, keeping agents grounded in the conversation. You can adjust this number with `lastMessages`, but in most cases you don't need to think about it.
120
+ - **Automatic inclusion**: Mastra automatically fetches recent messages and includes them in the context window. By default, the last 10 messages keep agents grounded in the conversation. You can adjust this number with `lastMessages`, but in most cases you don't need to think about it.
121
121
  - [**Manual querying**](#querying): For more control, use the `recall()` function to query threads and messages directly. This lets you choose exactly which memories are included in the context window, or fetch messages to render conversation history in your UI.
122
122
 
123
123
  > **Tip:** When memory is enabled, [Studio](https://mastra.ai/docs/studio/overview) uses message history to display past conversations in the chat sidebar.
@@ -339,7 +339,7 @@ const { thread, clonedMessages } = await memory.cloneThread({
339
339
  })
340
340
  ```
341
341
 
342
- You can filter which messages get cloned (by count or date range), specify custom thread IDs, and use utility methods to inspect clone relationships.
342
+ You can filter cloned messages by count or date range and specify custom thread IDs. Utility methods are also available to inspect clone relationships.
343
343
 
344
344
  See [`cloneThread()`](https://mastra.ai/reference/memory/cloneThread) and [clone utilities](https://mastra.ai/reference/memory/clone-utilities) for the full API.
345
345
 
@@ -418,7 +418,7 @@ With default settings, the context window doesn't grow unbounded. It oscillates
418
418
  3. **Repeat**: History grows from \~6k back toward 30k and shrinks again. Each cycle appends to the observation log, which grows much more slowly than raw history.
419
419
  4. **Observations reach 40k**: The Reflector creates a smaller log from the current observations and any earlier reflections.
420
420
 
421
- In the normal buffered cycle, raw history oscillates between roughly 6k and 30k tokens. The observation log stays around 40k tokens, however long the conversation runs. These are activation thresholds rather than hard caps. If background buffering doesn't keep pace, history can grow past the threshold until `blockAfter` (default `1.2`) forces a synchronous observation at \~36k tokens (\~48k for reflection) as a safety ceiling.
421
+ In the normal buffered cycle, raw history oscillates between roughly 6k and 30k tokens. The observation log stays around 40k tokens, however long the conversation runs. These are activation thresholds rather than hard caps, so history can grow past the threshold whenever background buffering doesn't keep pace. Above `blockAfter` (default `1.2`, \~36k tokens) activation is allowed to overshoot the retention target instead of activating fewer chunks. It doesn't drain the buffer, and with the default settings it removes the same amount of history as below the threshold. Reflection falls back to a synchronous run above its own `blockAfter` (\~48k tokens).
422
422
 
423
423
  With [`shareTokenBudget`](https://mastra.ai/reference/memory/observational-memory) enabled, the two budgets pool together. While the observation log is small, message history can expand into the unused observation space (up to \~70k tokens with the defaults) before observation triggers. It then shrinks as observations accumulate.
424
424
 
@@ -714,23 +714,23 @@ When message tokens reach the `messageTokens` threshold, buffered chunks activat
714
714
 
715
715
  Buffered observations also include continuation hints, a suggested next response and the current task, so the main agent maintains conversational continuity after activation shrinks the context window.
716
716
 
717
- If the agent produces messages faster than the Observer can process them, a `blockAfter` safety threshold forces a synchronous observation as a last resort. Buffered activation still preserves a minimum remaining context (the smaller of \~1k tokens or the configured retention floor).
717
+ If the agent produces messages faster than the Observer can process them, the `blockAfter` safety threshold lets activation overshoot the retention target instead of activating fewer chunks. It never activates more chunks than are needed to reach that target, and with the default settings it changes nothing. A synchronous observation runs when the `messageTokens` threshold is reached and buffered activation didn't happen. Buffered activation usually preserves a minimum remaining context (the smaller of \~1k tokens or the configured retention floor), but a single buffered chunk that covers the whole pending window still activates and can leave less.
718
718
 
719
719
  Reflection works similarly, the Reflector runs in the background when observations reach a fraction of the reflection threshold.
720
720
 
721
721
  ### Settings
722
722
 
723
- | Setting | Default | What it controls |
724
- | ------------------------------------- | ------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
725
- | `observation.bufferTokens` | `0.2` | How often to buffer. `0.2` means every 20% of `messageTokens`. With the default 30k threshold, that's roughly every 6k tokens. Can also be an absolute token count (e.g. `5000`). |
726
- | `observation.bufferActivation` | `0.8` | How aggressively to clear the message window on activation. `0.8` means remove enough messages to keep only 20% of `messageTokens` remaining. Lower values keep more message history. |
727
- | `observation.blockAfter` | `1.2` | Safety net if buffering can't keep up. Values from 1 up to (but not including) 100 multiply `messageTokens`: at `1.2`, synchronous observation is forced at 36k tokens (1.2 × 30k). Values of 100 or more are absolute token counts (e.g. `50_000`). |
728
- | `activateAfterIdle` | none | Forces buffered observations to activate after a period of inactivity, even before `observation.messageTokens` is reached. Accepts a numeric millisecond value such as `300_000`, duration strings like `"5m"` or `"1hr"`, or `"auto"` for a provider-aware prompt cache TTL. |
729
- | `activateOnProviderChange` | `false` | Forces buffered observations to activate when the next step uses a different `provider/model` than the one that produced the latest assistant step. Use this when switching providers or models would invalidate prompt cache reuse. |
730
- | `reflection.bufferActivation` | `0.5` | When to start background reflection. `0.5` means reflection begins when observations reach 50% of the `observationTokens` threshold. |
731
- | `reflection.activateAfterIdle` | none | Opts buffered reflections into idle activation. Reflections don't inherit top-level `activateAfterIdle`. |
732
- | `reflection.activateOnProviderChange` | `false` | Opts buffered reflections into provider-change activation. Reflections don't inherit top-level `activateOnProviderChange`. |
733
- | `reflection.blockAfter` | `1.2` | Safety threshold for reflection, same logic as observation. |
723
+ | Setting | Default | What it controls |
724
+ | ------------------------------------- | ------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
725
+ | `observation.bufferTokens` | `0.2` | How often to buffer. `0.2` means every 20% of `messageTokens`. With the default 30k threshold, that's roughly every 6k tokens. Can also be an absolute token count (e.g. `5000`). |
726
+ | `observation.bufferActivation` | `0.8` | How aggressively to clear the message window on activation. `0.8` means remove enough messages to keep only 20% of `messageTokens` remaining. Lower values keep more message history. |
727
+ | `observation.blockAfter` | `1.2` | Safety net if buffering can't keep up. Values from 1 up to (but not including) 100 multiply `messageTokens`: at `1.2`, the threshold is 36k tokens (1.2 × 30k). Above it, activation may overshoot the retention target instead of activating fewer chunks. Values of 100 or more are absolute token counts (e.g. `50_000`) and must be greater than `messageTokens`. |
728
+ | `activateAfterIdle` | none | Forces buffered observations to activate after a period of inactivity, even before `observation.messageTokens` is reached. Accepts a numeric millisecond value such as `300_000`, duration strings like `"5m"` or `"1hr"`, or `"auto"` for a provider-aware prompt cache TTL. |
729
+ | `activateOnProviderChange` | `false` | Forces buffered observations to activate when the next step uses a different `provider/model` than the one that produced the latest assistant step. Use this when switching providers or models would invalidate prompt cache reuse. |
730
+ | `reflection.bufferActivation` | `0.5` | When to start background reflection. `0.5` means reflection begins when observations reach 50% of the `observationTokens` threshold. |
731
+ | `reflection.activateAfterIdle` | none | Opts buffered reflections into idle activation. Reflections don't inherit top-level `activateAfterIdle`. |
732
+ | `reflection.activateOnProviderChange` | `false` | Opts buffered reflections into provider-change activation. Reflections don't inherit top-level `activateOnProviderChange`. |
733
+ | `reflection.blockAfter` | `1.2` | Safety threshold for reflection. Same value format as observation (absolute values must be greater than `observationTokens`), but above it reflection runs synchronously when no buffered reflection is ready to activate. |
734
734
 
735
735
  If you're relying on prompt caching, set `activateAfterIdle` to `"auto"` or to a specific cache TTL. That way, once a thread has been idle long enough for the cache to expire, the next request can activate buffered observations first and send a smaller compressed context window.
736
736
 
@@ -270,7 +270,7 @@ Supported embedding models:
270
270
 
271
271
  - **OpenAI**: `text-embedding-3-small`, `text-embedding-3-large`, `text-embedding-ada-002`
272
272
  - **Google**: `gemini-embedding-001`
273
- - **OpenRouter**: Access embedding models from various providers
273
+ - **OpenRouter**: Access embedding models from multiple providers
274
274
 
275
275
  ```ts
276
276
  import { Agent } from '@mastra/core/agent'
@@ -213,7 +213,7 @@ const paragraphMemory = new Memory({
213
213
 
214
214
  ## Structured working memory
215
215
 
216
- Working memory can also be defined using a structured schema instead of a Markdown template. This allows you to specify the exact fields and types that should be tracked, using a [Standard JSON Schema](https://standardschema.dev/json-schema) ([Zod](https://zod.dev/), [Valibot](https://valibot.dev/), [ArkType](https://arktype.io/), etc.). When using a schema, the agent will see and update working memory as a JSON object matching your schema.
216
+ Working memory can also be defined using a structured schema instead of a Markdown template. A [Standard JSON Schema](https://standardschema.dev/json-schema) ([Zod](https://zod.dev/), [Valibot](https://valibot.dev/), [ArkType](https://arktype.io/), etc.). When using a schema, the agent will see and update working memory as a JSON object matching your schema.
217
217
 
218
218
  **Requirement:** You must specify either `template` or `schema`, but not both.
219
219
 
@@ -28,7 +28,7 @@ Visit [PinoLogger](https://mastra.ai/reference/logging/pino-logger) for all avai
28
28
 
29
29
  ## Logging to observability storage
30
30
 
31
- When [observability](https://mastra.ai/docs/observability/overview) is configured, all logger calls are automatically forwarded to your observability storage. This means every `debug`, `info`, `warn`, `error`, and `trackException` call from your application and from Mastra's internal components is stored alongside your traces.
31
+ When [observability](https://mastra.ai/docs/observability/overview) is configured, all logger calls are automatically forwarded to your observability storage. Every `debug`, `info`, `warn`, `error`, and `trackException` call from your application and from Mastra's internal components is stored alongside your traces.
32
32
 
33
33
  No code changes are required. Mastra wraps the configured logger so that it writes to both the original logger (console, file, or custom transport) and the observability system simultaneously.
34
34
 
@@ -2,7 +2,7 @@
2
2
 
3
3
  # Querying metrics
4
4
 
5
- Mastra exposes the same five OLAP queries (`getMetricAggregate`, `getMetricBreakdown`, `getMetricTimeSeries`, `getMetricPercentiles`, and discovery helpers) through three surfaces: an in-process store accessor, the runtime HTTP API, and the `mastra api metric` CLI. All three accept the same Zod-validated input shapes, so you can move from a one-off CLI investigation to a programmatic dashboard tool without re-learning the API.
5
+ Mastra exposes the same five OLAP queries (`getMetricAggregate`, `getMetricBreakdown`, `getMetricTimeSeries`, `getMetricPercentiles`, and discovery helpers) through three surfaces: an in-process store accessor and the runtime HTTP API, plus the `mastra api metric` CLI. All three accept the same Zod-validated input shapes, so you can move from a one-off CLI investigation to a programmatic dashboard tool without re-learning the API.
6
6
 
7
7
  **For AI agents:** Run `npx mastra api metric aggregate '{"name":"mastra_agent_duration_ms","aggregation":"avg"}'` to query average agent latency directly instead of writing a temporary script. Querying local metrics requires a running Mastra server with an OLAP-capable observability store; start the local server with `npx mastra dev`, or pass the reachable server's base URL with `--url`. Run `npx mastra api metric aggregate --schema` before constructing a different query. Install Mastra's skill with `npx skills add mastra-ai/skills --skill mastra` for complete API CLI discovery, targeting, schema, authentication, and error-handling guidance.
8
8
 
@@ -148,7 +148,7 @@ Per-call `tracingOptions.metadata.environment` always takes precedence, so indiv
148
148
 
149
149
  ### Automatic metadata from `RequestContext`
150
150
 
151
- Instead of manually adding metadata to each span, you can configure Mastra to automatically extract values from RequestContext and attach them as metadata to all spans in a trace. This is useful for consistently tracking user identifiers, environment information, feature flags, or any request-scoped data across your entire trace.
151
+ Instead of manually adding metadata to each span, you can configure Mastra to automatically extract values from RequestContext and attach them as metadata to all spans in a trace. This is useful for consistently tracking user identifiers and environment information, along with feature flags or other request-scoped data across your entire trace.
152
152
 
153
153
  #### Configuration-level extraction
154
154
 
@@ -365,7 +365,7 @@ You get fine-grained control over which child spans include RequestContext metad
365
365
 
366
366
  ## Creating child spans
367
367
 
368
- Child spans allow you to track fine-grained operations within your workflow steps or tools. They provide visibility into sub-operations like database queries, API calls, file operations, or complex calculations. This hierarchical structure helps you identify performance bottlenecks and understand the exact sequence of operations.
368
+ Child spans allow you to track fine-grained operations within your workflow steps or tools. They provide visibility into sub-operations like database queries and API calls, as well as file operations or complex calculations. This hierarchical structure helps you identify performance bottlenecks and understand the exact sequence of operations.
369
369
 
370
370
  Create child spans inside a tool call or workflow step to track specific operations:
371
371
 
@@ -681,7 +681,7 @@ export const mastra = new Mastra({
681
681
 
682
682
  ### Use cases
683
683
 
684
- **Increasing limits for debugging**: If your agents or tools work with large documents, API responses, or data structures, increase these limits to capture more context in your traces:
684
+ **Increasing limits for debugging**: Increase these limits to capture more context for large documents and API responses, as well as other data structures:
685
685
 
686
686
  ```ts
687
687
  serializationOptions: {
@@ -176,7 +176,7 @@ async getParams(
176
176
 
177
177
  ### `sendResponse()`
178
178
 
179
- Send the response back to the client based on the route's response type. Mastra routes can return different response types: JSON for most API responses, streams for agent generation, and special types for MCP transports. Your implementation should handle each type appropriately for your framework.
179
+ Send the response back to the client based on the route's response type. Mastra routes can return different response types: JSON for most API responses and streams for agent generation, plus special types for MCP transports. Your implementation should handle each type appropriately for your framework.
180
180
 
181
181
  ```typescript
182
182
  async sendResponse(
@@ -211,7 +211,7 @@ async sendResponse(
211
211
 
212
212
  ### `stream()`
213
213
 
214
- Handle streaming responses for agent generation. When an agent generates a response, it produces a stream of chunks that should be sent to the client as they become available. This method reads from the stream, optionally applies redaction to hide sensitive data, and writes chunks to the response in the appropriate format (SSE or newline-delimited JSON).
214
+ Handle streaming responses for agent generation. When an agent generates a response, it produces a stream of chunks that should be sent to the client as they become available. This method reads from the stream and optionally applies redaction to hide sensitive data before writing chunks to the response in the appropriate format (SSE or newline-delimited JSON).
215
215
 
216
216
  ```typescript
217
217
  async stream(
@@ -37,7 +37,7 @@ Each route's handler receives the Hono `Context`. Within the handler you can acc
37
37
 
38
38
  ## Schema validation
39
39
 
40
- Use [`createRoute()`](https://mastra.ai/reference/server/create-route) in `apiRoutes` to parse and validate path parameters, query parameters, and request bodies with Zod. The schemas also infer the handler parameters and generate OpenAPI metadata.
40
+ Use [`createRoute()`](https://mastra.ai/reference/server/create-route) in `apiRoutes` to parse and validate path and query parameters, along with request bodies, using Zod. The schemas also infer the handler parameters and generate OpenAPI metadata.
41
41
 
42
42
  ```typescript
43
43
  import { Mastra } from '@mastra/core'
@@ -71,7 +71,7 @@ The Mastra Client SDK exposes all resources served by the Mastra Server.
71
71
 
72
72
  ## Create and run dynamic workflows
73
73
 
74
- Use `upsertDynamicWorkflow()` to create or replace a persisted workflow definition. A successful upsert validates the complete definition, registers it with the running Mastra instance, and makes it available through the standard workflow execution API.
74
+ Use `upsertDynamicWorkflow()` to create or replace a persisted workflow definition. A successful upsert validates the complete definition and registers it with the running Mastra instance. The workflow then becomes available through the standard execution API.
75
75
 
76
76
  The following example shows the full lifecycle of a mapping workflow, from creation and inspection through execution and deletion:
77
77
 
@@ -480,7 +480,7 @@ With this prefix, Mastra routes become `/api/v2/agents`, `/api/v2/workflows`, et
480
480
 
481
481
  ## OpenAPI spec
482
482
 
483
- Mastra can generate an OpenAPI specification for all registered routes. This is useful for documentation, client generation, or integration with API tools. Enable it by setting the `openapiPath` option:
483
+ Mastra can generate an OpenAPI specification for all registered routes. This is useful for documentation or client generation, including integration with API tools. Enable it by setting the `openapiPath` option:
484
484
 
485
485
  ```typescript
486
486
  const server = new MastraServer({
@@ -15,7 +15,7 @@ On this page you'll learn how to deploy Studio on your own infrastructure. As th
15
15
 
16
16
  The easiest way to run Studio is the [`mastra studio`](https://mastra.ai/reference/cli/mastra) command.
17
17
 
18
- Whereas `mastra dev` runs both Studio and an API for development purposes, the purpose of `mastra studio` is to serve a standalone, static UI that connects to an already-running Mastra server. This allows you to deploy Studio on its own, separate from the Mastra server, if desired.
18
+ Whereas `mastra dev` runs both Studio and an API for development purposes, the purpose of `mastra studio` is to serve a standalone, static UI that connects to an already-running Mastra server. You can deploy Studio separately from the Mastra server.
19
19
 
20
20
  Open a terminal and install the `mastra` CLI globally:
21
21
 
@@ -67,7 +67,7 @@ For hosted Studio on Mastra platform, see [Studio on Mastra platform](https://ma
67
67
 
68
68
  ## Running a server
69
69
 
70
- Running `mastra studio` as a long-running process is no different from running any other Node.js service. All the best practices, tools, and options for deployment apply here as well. You can use process managers like PM2, use Docker, or cloud services that support Node.js applications. You'll need to ensure CORS is configured correctly and errors are monitored, as with any web service.
70
+ Running `mastra studio` as a long-running process is no different from running any other Node.js service. The same deployment practices and tools apply here. Use process managers such as PM2 or Docker. Cloud services that support Node.js applications are another option. As with any web service, configure CORS correctly and monitor errors.
71
71
 
72
72
  > **Warning:** Once Studio is connected to your Mastra server, it has full access to your agents, workflows, and tools. Be sure to secure it properly in production (e.g. behind authentication, VPN, etc.) to prevent unauthorized access.
73
73
  >
@@ -106,7 +106,7 @@ To export a trace, select **Download trace JSON** in the trace panel header. Thi
106
106
 
107
107
  ## Logs
108
108
 
109
- Browse internal Mastra logs forwarded to your observability storage. Logs provide full-text search (across message content, entity names, and trace IDs), date presets (last 24 hours to 30 days), and multi-select filters for level, entity type, and entity name. Selecting a log opens a detail panel showing the full message, structured data, and metadata. If the log is correlated with a trace, you can move through directly to the trace and span timeline.
109
+ Browse internal Mastra logs forwarded to your observability storage. Logs provide full-text search across message content and entity names, including trace IDs. Date presets range from the last 24 hours to 30 days. Multi-select filters cover level and entity type, along with entity name. Selecting a log opens a detail panel showing the full message, structured data, and metadata. If the log is correlated with a trace, you can move through directly to the trace and span timeline.
110
110
 
111
111
  Log forwarding is enabled by default when you configure observability. See [logging](https://mastra.ai/docs/observability/logging) for level configuration, query examples, and customization details.
112
112
 
@@ -59,6 +59,8 @@ You can send a follow-up message in the same thread during an agent response str
59
59
 
60
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.
61
61
 
62
+ Use [Agent Builder](https://agent-builder.mastra.ai) to create and manage fully stored agents through a separate browser-based interface.
63
+
62
64
  ### Workflows
63
65
 
64
66
  Visualize your workflow as a graph and run it step by step with a custom input. During execution, the interface updates in real time to show the active step and the path taken.
@@ -6,7 +6,7 @@
6
6
 
7
7
  Dynamic workflows are workflow definitions expressed as data instead of code. A definition is a JSON document that describes the workflow's schemas and step graph. Mastra validates the definition and registers it as a runnable workflow, then persists it in storage so it survives process restarts.
8
8
 
9
- Because a definition contains no JavaScript closures, anything that can produce JSON can author a workflow: an HTTP client, an LLM, a visual editor, or your own tooling. Once registered, a dynamic workflow runs through the same execution API as a code-defined workflow.
9
+ Because a definition contains no JavaScript closures, anything that produces JSON can author a workflow. Sources include an HTTP client or LLM. A visual editor or your own tooling can also produce the definition. Once registered, a dynamic workflow runs through the same execution API as a code-defined workflow.
10
10
 
11
11
  ## When to use dynamic workflows
12
12
 
@@ -161,7 +161,7 @@ Deploy targets such as Fly Machines, Railway, Render, AWS ECS, GKE, or your own
161
161
 
162
162
  ### Serverless platforms
163
163
 
164
- Functions-as-a-service platforms such as Vercel, Netlify, AWS Lambda, and Cloudflare Workers shut the process down after each request. Because the tick loop doesn't get a second tick, schedules declared in code don't fire on these platforms with the built-in scheduler today.
164
+ Functions-as-a-service platforms such as Vercel, Netlify, AWS Lambda, and Cloudflare Workers shut the process down after each request, so the tick loop doesn't get a second tick and schedules declared in code don't fire with the built-in scheduler today.
165
165
 
166
166
  On these platforms, use [`@mastra/inngest`](#inngest-workflows) instead. Inngest is serverless-native and holds the cron state for you.
167
167
 
@@ -2,7 +2,7 @@
2
2
 
3
3
  # Suspend and resume
4
4
 
5
- Workflows can be paused at any step to collect additional data, wait for API callbacks, throttle costly operations, or request [human-in-the-loop](https://mastra.ai/docs/workflows/human-in-the-loop) input. When a workflow is suspended, its current execution state is saved as a snapshot. You can later resume the workflow from a [specific step ID](https://mastra.ai/docs/workflows/snapshots), restoring the exact state captured in that snapshot. [Snapshots](https://mastra.ai/docs/workflows/snapshots) are stored in your configured storage provider and persist across deployments and application restarts.
5
+ Workflows can be paused at any step to collect additional data or wait for API callbacks. Pauses can also throttle costly operations or request [human-in-the-loop](https://mastra.ai/docs/workflows/human-in-the-loop) input. When a workflow is suspended, its current execution state is saved as a snapshot. You can later resume the workflow from a [specific step ID](https://mastra.ai/docs/workflows/snapshots), restoring the exact state captured in that snapshot. [Snapshots](https://mastra.ai/docs/workflows/snapshots) are stored in your configured storage provider and persist across deployments and application restarts.
6
6
 
7
7
  ## Pausing a workflow with `suspend()`
8
8
 
@@ -412,4 +412,5 @@ External providers may perform additional setup like establishing connections or
412
412
  - [Skills](https://mastra.ai/docs/workspace/skills)
413
413
  - [Search and indexing](https://mastra.ai/docs/workspace/search)
414
414
  - [Workspace class reference](https://mastra.ai/reference/workspace/workspace-class)
415
- - 📹 [Introduction to Mastra Workspaces workshop](https://www.youtube.com/watch?v=QcQLiYlJuNQ)
415
+ - 📹 [Introduction to Mastra Workspaces workshop](https://www.youtube.com/watch?v=QcQLiYlJuNQ)
416
+ - [Mastra Factory](https://factory.mastra.ai) and [Mastra Code](https://code.mastra.ai) are examples of workspace-powered coding agents
@@ -94,7 +94,7 @@ When the provider supports batching (for example, OpenAI's `embedMany`), pass an
94
94
  The following example replaces the single-text embedder with a batched one. The embedder function takes an array and returns an array of embeddings in the same order, plus carries two extra properties:
95
95
 
96
96
  - `batch: true`: marks the function as batch-capable. Without this property, Mastra calls it one text at a time.
97
- - `maxBatchSize`: the largest array the provider accepts in one call. Mastra splits larger requests into chunks of this size and sends them in parallel. Set this to your provider's documented limit (for example, 2048 for OpenAI, 96 for Cohere, 128 for Voyage). Omit it to send every pending text in one request.
97
+ - `maxBatchSize`: the largest array the provider accepts in one call. Mastra splits larger requests into chunks of this size and sends them in parallel. Set this to your provider's documented limit. For example, OpenAI accepts 2048 and Cohere accepts 96. Voyage accepts 128. Omit it to send every pending text in one request.
98
98
 
99
99
  ```typescript
100
100
  import { Workspace, LocalFilesystem } from '@mastra/core/workspace'
@@ -136,7 +136,7 @@ When multiple skill directories contain a skill with the same name, all of them
136
136
  When the agent activates a skill by name, tie-breaking determines which one is returned:
137
137
 
138
138
  1. **Source-type priority**: local skills take precedence over managed (`.mastra/`) skills, which take precedence over external (`node_modules/`) skills.
139
- 2. **Unresolvable conflicts throw**: if two skills share the same name and the same source type (for example, two local skills both named `brand-guidelines`), `get()` throws an error. Rename one or move it to a different source type to resolve the conflict.
139
+ 2. **Unresolvable conflicts throw**: if two skills share the same name and the same source type (for example, two local skills that both use the name `brand-guidelines`), `get()` throws an error. Rename one or move it to a different source type to resolve the conflict.
140
140
  3. **Path escape hatch**: the agent can pass a skill's full path instead of its name to activate a specific skill, bypassing tie-breaking entirely.
141
141
 
142
142
  ```typescript
@@ -88,7 +88,7 @@ AgentBrowser uses accessibility tree refs to identify elements. When an agent ca
88
88
 
89
89
  ## Recording
90
90
 
91
- AgentBrowser can opt into alpha browser recording tools:
91
+ AgentBrowser can opt into Beta browser recording tools:
92
92
 
93
93
  ```typescript
94
94
  const browser = new AgentBrowser({
@@ -99,12 +99,11 @@ const browser = new AgentBrowser({
99
99
  })
100
100
  ```
101
101
 
102
- This adds `browser_record` and `browser_record_caption` to the agent's toolset. See [Browser recording (alpha)](https://mastra.ai/docs/browser/recording) for details. See [AgentBrowser reference](https://mastra.ai/reference/browser/agent-browser) for all configuration options and tool details.
102
+ This adds `browser_record` and `browser_record_caption` to the agent's toolset. See [Browser recording (Beta)](https://mastra.ai/docs/browser/overview) for details. See [AgentBrowser reference](https://mastra.ai/reference/browser/agent-browser) for all configuration options and tool details.
103
103
 
104
104
  ## Related
105
105
 
106
106
  - [Browser overview](https://mastra.ai/docs/browser/overview)
107
107
  - [Stagehand](https://mastra.ai/integrations/browsers/stagehand)
108
108
  - [Firecrawl](https://mastra.ai/integrations/browsers/firecrawl)
109
- - [Browser recording (alpha)](https://mastra.ai/docs/browser/recording)
110
109
  - [AgentBrowser reference](https://mastra.ai/reference/browser/agent-browser)
@@ -125,5 +125,4 @@ const browser = new FirecrawlBrowser({
125
125
 
126
126
  - [Browser overview](https://mastra.ai/docs/browser/overview)
127
127
  - [AgentBrowser](https://mastra.ai/integrations/browsers/agent-browser)
128
- - [Browser recording (alpha)](https://mastra.ai/docs/browser/recording)
129
128
  - [FirecrawlBrowser reference](https://mastra.ai/reference/browser/firecrawl-browser)
@@ -150,7 +150,7 @@ See [StagehandBrowser reference](https://mastra.ai/reference/browser/stagehand-b
150
150
 
151
151
  ## Recording
152
152
 
153
- Stagehand can opt into alpha browser recording tools:
153
+ Stagehand can opt into Beta browser recording tools:
154
154
 
155
155
  ```typescript
156
156
  const browser = new StagehandBrowser({
@@ -162,11 +162,10 @@ const browser = new StagehandBrowser({
162
162
  })
163
163
  ```
164
164
 
165
- This adds `browser_record` and `browser_record_caption` to the agent's toolset. See [Browser recording (alpha)](https://mastra.ai/docs/browser/recording) for details.
165
+ This adds `browser_record` and `browser_record_caption` to the agent's toolset. See [Browser recording (Beta)](https://mastra.ai/docs/browser/overview) for details.
166
166
 
167
167
  ## Related
168
168
 
169
169
  - [Browser overview](https://mastra.ai/docs/browser/overview)
170
170
  - [AgentBrowser](https://mastra.ai/integrations/browsers/agent-browser)
171
- - [Browser recording (alpha)](https://mastra.ai/docs/browser/recording)
172
171
  - [StagehandBrowser reference](https://mastra.ai/reference/browser/stagehand-browser)
@@ -2,7 +2,7 @@
2
2
 
3
3
  # ![OpenRouter logo](https://models.dev/logos/openrouter.svg)OpenRouter
4
4
 
5
- OpenRouter aggregates models from multiple providers with enhanced features like rate limiting and failover. Access 349 models through Mastra's model router.
5
+ OpenRouter aggregates models from multiple providers with enhanced features like rate limiting and failover. Access 348 models through Mastra's model router.
6
6
 
7
7
  Learn more in the [OpenRouter documentation](https://openrouter.ai/models).
8
8
 
@@ -143,7 +143,6 @@ ANTHROPIC_API_KEY=ant-...
143
143
  | `inclusionai/ling-2.6-1t` |
144
144
  | `inclusionai/ling-2.6-flash` |
145
145
  | `inclusionai/ling-3.0-flash` |
146
- | `inclusionai/ling-3.0-tiny:free` |
147
146
  | `inclusionai/ring-2.6-1t` |
148
147
  | `kwaipilot/kat-coder-air-v2.5` |
149
148
  | `kwaipilot/kat-coder-pro-v2` |
@@ -2,7 +2,7 @@
2
2
 
3
3
  # Model Providers
4
4
 
5
- Mastra provides a unified interface for working with LLMs across multiple providers, giving you access to 5658 models from 171 providers through a single API.
5
+ Mastra provides a unified interface for working with LLMs across multiple providers, giving you access to 5657 models from 171 providers through a single API.
6
6
 
7
7
  ## Features
8
8
 
@@ -2,7 +2,7 @@
2
2
 
3
3
  # ![Kilo Gateway logo](https://models.dev/logos/kilo.svg)Kilo Gateway
4
4
 
5
- Access 357 Kilo Gateway models through Mastra's model router. Authentication is handled automatically using the `KILO_API_KEY` environment variable.
5
+ Access 356 Kilo Gateway models through Mastra's model router. Authentication is handled automatically using the `KILO_API_KEY` environment variable.
6
6
 
7
7
  Learn more in the [Kilo Gateway documentation](https://kilo.ai).
8
8
 
@@ -58,7 +58,7 @@ for await (const chunk of stream) {
58
58
  | `kilo/amazon/nova-micro-v1` | 128K | | | | | | $0.04 | $0.14 |
59
59
  | `kilo/amazon/nova-premier-v1` | 1.0M | | | | | | $3 | $13 |
60
60
  | `kilo/amazon/nova-pro-v1` | 300K | | | | | | $0.80 | $3 |
61
- | `kilo/anthracite-org/magnum-v4-72b` | 16K | | | | | | $3 | $5 |
61
+ | `kilo/anthracite-org/magnum-v4-72b` | 33K | | | | | | $3 | $5 |
62
62
  | `kilo/anthropic/claude-3-haiku` | 200K | | | | | | $0.25 | $1 |
63
63
  | `kilo/anthropic/claude-fable-5` | 1.0M | | | | | | $10 | $50 |
64
64
  | `kilo/anthropic/claude-haiku-4.5` | 200K | | | | | | $1 | $5 |
@@ -143,7 +143,6 @@ for await (const chunk of stream) {
143
143
  | `kilo/inclusionai/ling-2.6-1t` | 262K | | | | | | $0.30 | $3 |
144
144
  | `kilo/inclusionai/ling-2.6-flash` | 262K | | | | | | $0.10 | $0.30 |
145
145
  | `kilo/inclusionai/ling-3.0-flash` | 262K | | | | | | $0.06 | $0.18 |
146
- | `kilo/inclusionai/ling-3.0-tiny:free` | 262K | | | | | | — | — |
147
146
  | `kilo/inclusionai/ring-2.6-1t` | 262K | | | | | | $0.30 | $3 |
148
147
  | `kilo/kilo-auto/balanced` | 1.0M | | | | | | $0.33 | $2 |
149
148
  | `kilo/kilo-auto/efficient` | 1.0M | | | | | | $0.33 | $2 |
@@ -217,7 +216,7 @@ for await (const chunk of stream) {
217
216
  | `kilo/nvidia/nemotron-3-ultra-550b-a55b` | 512K | | | | | | $0.50 | $2 |
218
217
  | `kilo/nvidia/nemotron-3-ultra-550b-a55b:free` | 1.0M | | | | | | — | — |
219
218
  | `kilo/nvidia/nemotron-3.5-content-safety:free` | 128K | | | | | | — | — |
220
- | `kilo/nvidia/nemotron-3.5-lightning` | 262K | | | | | | $0.05 | $0.20 |
219
+ | `kilo/nvidia/nemotron-3.5-lightning` | 262K | | | | | | $0.08 | $0.20 |
221
220
  | `kilo/nvidia/nemotron-3.5-lightning:free` | 1.0M | | | | | | — | — |
222
221
  | `kilo/openai/gpt-3.5-turbo` | 16K | | | | | | $0.50 | $2 |
223
222
  | `kilo/openai/gpt-3.5-turbo-0613` | 4K | | | | | | $1 | $2 |
@@ -315,7 +314,7 @@ for await (const chunk of stream) {
315
314
  | `kilo/qwen/qwen3-max` | 262K | | | | | | $0.78 | $4 |
316
315
  | `kilo/qwen/qwen3-max-thinking` | 262K | | | | | | $0.78 | $4 |
317
316
  | `kilo/qwen/qwen3-next-80b-a3b-instruct` | 262K | | | | | | $0.10 | $0.78 |
318
- | `kilo/qwen/qwen3-next-80b-a3b-thinking` | 262K | | | | | | $0.15 | $1 |
317
+ | `kilo/qwen/qwen3-next-80b-a3b-thinking` | 131K | | | | | | $0.15 | $1 |
319
318
  | `kilo/qwen/qwen3-vl-235b-a22b-instruct` | 131K | | | | | | $0.26 | $1 |
320
319
  | `kilo/qwen/qwen3-vl-235b-a22b-thinking` | 131K | | | | | | $0.40 | $4 |
321
320
  | `kilo/qwen/qwen3-vl-30b-a3b-instruct` | 262K | | | | | | $0.13 | $0.52 |
@@ -384,14 +383,14 @@ for await (const chunk of stream) {
384
383
  | `kilo/z-ai/glm-4.5` | 131K | | | | | | $0.60 | $2 |
385
384
  | `kilo/z-ai/glm-4.5-air` | 131K | | | | | | $0.13 | $0.85 |
386
385
  | `kilo/z-ai/glm-4.5v` | 66K | | | | | | $0.60 | $2 |
387
- | `kilo/z-ai/glm-4.6` | 205K | | | | | | $0.55 | $2 |
386
+ | `kilo/z-ai/glm-4.6` | 203K | | | | | | $0.55 | $2 |
388
387
  | `kilo/z-ai/glm-4.6v` | 131K | | | | | | $0.30 | $0.90 |
389
388
  | `kilo/z-ai/glm-4.7` | 203K | | | | | | $0.60 | $2 |
390
389
  | `kilo/z-ai/glm-4.7-flash` | 203K | | | | | | $0.07 | $0.40 |
391
390
  | `kilo/z-ai/glm-5` | 205K | | | | | | $1 | $3 |
392
391
  | `kilo/z-ai/glm-5-turbo` | 203K | | | | | | $1 | $4 |
393
392
  | `kilo/z-ai/glm-5.1` | 203K | | | | | | $1 | $4 |
394
- | `kilo/z-ai/glm-5.2` | 1.0M | | | | | | $1 | $4 |
393
+ | `kilo/z-ai/glm-5.2` | 262K | | | | | | $1 | $4 |
395
394
  | `kilo/z-ai/glm-5v-turbo` | 203K | | | | | | $1 | $4 |
396
395
 
397
396
  ## Advanced configuration
@@ -2,7 +2,7 @@
2
2
 
3
3
  # ![NanoGPT logo](https://models.dev/logos/nano-gpt.svg)NanoGPT
4
4
 
5
- Access 598 NanoGPT models through Mastra's model router. Authentication is handled automatically using the `NANO_GPT_API_KEY` environment variable.
5
+ Access 599 NanoGPT models through Mastra's model router. Authentication is handled automatically using the `NANO_GPT_API_KEY` environment variable.
6
6
 
7
7
  Learn more in the [NanoGPT documentation](https://docs.nano-gpt.com).
8
8
 
@@ -547,6 +547,7 @@ for await (const chunk of stream) {
547
547
  | `nano-gpt/TEE/kimi-k3` | 1.0M | | | | | | $3 | $15 |
548
548
  | `nano-gpt/TEE/llama3-3-70b` | 128K | | | | | | $2 | $3 |
549
549
  | `nano-gpt/TEE/minimax-m2.5` | 197K | | | | | | $0.20 | $1 |
550
+ | `nano-gpt/TEE/muse-glimmer-30b` | 131K | | | | | | $0.35 | $2 |
550
551
  | `nano-gpt/TEE/qwen2.5-vl-72b-instruct` | 66K | | | | | | $0.70 | $0.70 |
551
552
  | `nano-gpt/TEE/qwen3.5-122b-a10b` | 262K | | | | | | $0.46 | $4 |
552
553
  | `nano-gpt/TEE/qwen3.5-27b` | 262K | | | | | | $0.30 | $2 |