@mastra/mcp-docs-server 1.2.13-alpha.0 → 1.2.13-alpha.11

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 (131) hide show
  1. package/.docs/docs/agents/agent-approval.md +72 -0
  2. package/.docs/docs/agents/overview.md +1 -1
  3. package/.docs/docs/agents/supervisor-agents.md +2 -2
  4. package/.docs/docs/agents/using-tools.md +61 -33
  5. package/.docs/docs/{evals/datasets → datasets}/overview.md +3 -3
  6. package/.docs/docs/{evals/datasets → datasets}/running-experiments.md +57 -9
  7. package/.docs/docs/deployment/workers.md +14 -14
  8. package/.docs/docs/editor/overview.md +201 -206
  9. package/.docs/docs/evals/evals-with-memory.md +1 -1
  10. package/.docs/docs/getting-started/develop.md +196 -0
  11. package/.docs/docs/index.md +78 -1
  12. package/.docs/docs/long-running-agents/durable-agents.md +2 -2
  13. package/.docs/docs/mastra-platform/overview.md +1 -1
  14. package/.docs/docs/mastra-platform/workspaces.md +152 -0
  15. package/.docs/docs/memory/observational-memory.md +53 -13
  16. package/.docs/docs/memory/overview.md +14 -0
  17. package/.docs/docs/server/auth/workers.md +7 -5
  18. package/.docs/docs/server/mastra-client.md +60 -0
  19. package/.docs/docs/server/pubsub.md +2 -2
  20. package/.docs/docs/studio/observability.md +4 -0
  21. package/.docs/docs/studio/overview.md +2 -2
  22. package/.docs/docs/workflows/overview.md +1 -1
  23. package/.docs/docs/workflows/scheduled-workflows.md +1 -0
  24. package/.docs/docs/workspace/search.md +1 -1
  25. package/.docs/guides/deployment/kubernetes.md +2 -0
  26. package/.docs/guides/deployment/mastra-workers.md +350 -6
  27. package/.docs/guides/deployment/vercel.md +2 -0
  28. package/.docs/guides/getting-started/quickstart.md +3 -3
  29. package/.docs/{docs → guides}/rag/chunking-and-embedding.md +1 -1
  30. package/.docs/{docs → guides}/rag/graph-rag.md +1 -1
  31. package/.docs/{docs → guides}/rag/overview.md +2 -2
  32. package/.docs/{docs → guides}/rag/retrieval.md +1 -1
  33. package/.docs/{docs → guides}/voice/overview.md +4 -4
  34. package/.docs/{docs → guides}/voice/realtime-voice.md +2 -2
  35. package/.docs/{docs → guides}/voice/speech-to-speech.md +1 -1
  36. package/.docs/{docs → guides}/voice/speech-to-text.md +1 -1
  37. package/.docs/{docs → guides}/voice/text-to-speech.md +2 -2
  38. package/.docs/models/embeddings.md +63 -65
  39. package/.docs/models/environment-variables.md +2 -1
  40. package/.docs/models/gateways/openrouter.md +3 -6
  41. package/.docs/models/gateways/vercel.md +4 -1
  42. package/.docs/models/index.md +1 -1
  43. package/.docs/models/providers/cortecs.md +2 -1
  44. package/.docs/models/providers/crof.md +2 -1
  45. package/.docs/models/providers/crossmodel.md +4 -3
  46. package/.docs/models/providers/empiriolabs.md +2 -1
  47. package/.docs/models/providers/greenpt.md +98 -0
  48. package/.docs/models/providers/huggingface.md +3 -1
  49. package/.docs/models/providers/hyper.md +10 -7
  50. package/.docs/models/providers/llmgateway.md +5 -4
  51. package/.docs/models/providers/minimax.md +1 -1
  52. package/.docs/models/providers/neuralwatt.md +3 -1
  53. package/.docs/models/providers/openai.md +2 -2
  54. package/.docs/models/providers/opencode-go.md +2 -1
  55. package/.docs/models/providers/opencode.md +1 -1
  56. package/.docs/models/providers/perplexity-agent.md +3 -1
  57. package/.docs/models/providers/scaleway.md +1 -3
  58. package/.docs/models/providers/the-grid-ai.md +3 -3
  59. package/.docs/models/providers/zai-coding-plan.md +11 -13
  60. package/.docs/models/providers/zhipuai-coding-plan.md +12 -12
  61. package/.docs/models/providers.md +1 -0
  62. package/.docs/reference/agents/agent.md +1 -1
  63. package/.docs/reference/agents/durable-agent.md +12 -1
  64. package/.docs/reference/agents/generate.md +1 -1
  65. package/.docs/reference/agents/getVoice.md +1 -1
  66. package/.docs/{docs/getting-started → reference}/build-with-ai.md +5 -110
  67. package/.docs/reference/cli/create-mastra.md +2 -0
  68. package/.docs/reference/cli/mastra.md +36 -16
  69. package/.docs/reference/client-js/agents.md +1 -1
  70. package/.docs/reference/configuration.md +2 -2
  71. package/.docs/reference/core/getEditor.md +1 -1
  72. package/.docs/reference/core/getVector.md +2 -2
  73. package/.docs/reference/core/listVectors.md +2 -2
  74. package/.docs/reference/core/mastra-class.md +2 -2
  75. package/.docs/reference/datasets/startExperiment.md +8 -0
  76. package/.docs/reference/datasets/startExperimentAsync.md +4 -0
  77. package/.docs/reference/editor/browser-provider.md +2 -2
  78. package/.docs/reference/editor/filesystem-provider.md +1 -1
  79. package/.docs/reference/editor/mastra-editor.md +31 -18
  80. package/.docs/reference/editor/prompt-blocks.md +137 -0
  81. package/.docs/reference/editor/sandbox-provider.md +1 -1
  82. package/.docs/reference/editor/storage-browser-ref.md +3 -3
  83. package/.docs/reference/editor/storage-workspace-ref.md +3 -3
  84. package/.docs/reference/editor/tool-provider.md +44 -10
  85. package/.docs/reference/editor/tools.md +100 -0
  86. package/.docs/reference/editor/versioning.md +130 -0
  87. package/.docs/reference/evals/mastra-scorer.md +68 -8
  88. package/.docs/reference/evals/summarization.md +203 -0
  89. package/.docs/reference/file-based-agents/config.md +39 -1
  90. package/.docs/reference/index.md +4 -4
  91. package/.docs/reference/memory/observational-memory.md +76 -24
  92. package/.docs/reference/memory/serialized-memory-config.md +3 -3
  93. package/.docs/reference/observability/tracing/interfaces.md +6 -1
  94. package/.docs/reference/processors/processor-interface.md +14 -2
  95. package/.docs/reference/processors/regex-filter-processor.md +81 -9
  96. package/.docs/reference/processors/token-limiter-processor.md +15 -1
  97. package/.docs/reference/project-structure.md +1 -1
  98. package/.docs/reference/rag/database-config.md +1 -1
  99. package/.docs/reference/storage/composite.md +2 -0
  100. package/.docs/reference/streaming/agents/stream.md +1 -1
  101. package/.docs/reference/tools/isolated-vm-transport.md +1 -1
  102. package/.docs/reference/vectors/mongodb.md +13 -13
  103. package/.docs/reference/voice/livekit.md +3 -3
  104. package/.docs/reference/workers/overview.md +10 -8
  105. package/.docs/reference/workspace/platform-filesystem.md +8 -5
  106. package/.docs/reference/workspace/platform-sandbox.md +83 -7
  107. package/CHANGELOG.md +51 -0
  108. package/README.md +1 -1
  109. package/package.json +5 -5
  110. package/.docs/docs/agent-builder/access-control.md +0 -99
  111. package/.docs/docs/agent-builder/browser.md +0 -63
  112. package/.docs/docs/agent-builder/channels.md +0 -78
  113. package/.docs/docs/agent-builder/configuration.md +0 -132
  114. package/.docs/docs/agent-builder/deploying.md +0 -124
  115. package/.docs/docs/agent-builder/integrations.md +0 -115
  116. package/.docs/docs/agent-builder/memory.md +0 -69
  117. package/.docs/docs/agent-builder/model-policy.md +0 -50
  118. package/.docs/docs/agent-builder/overview.md +0 -114
  119. package/.docs/docs/agent-builder/skill-registries.md +0 -31
  120. package/.docs/docs/agent-builder/workspace.md +0 -62
  121. package/.docs/docs/editor/prompts.md +0 -140
  122. package/.docs/docs/editor/tools.md +0 -148
  123. package/.docs/docs/getting-started/file-based-agents.md +0 -121
  124. package/.docs/docs/mastra-platform/workspace.md +0 -111
  125. package/.docs/docs/what-is-mastra.md +0 -161
  126. package/.docs/reference/client-js/agent-builder.md +0 -163
  127. package/.docs/reference/editor/agent-builder/agent-builder-options.md +0 -76
  128. package/.docs/reference/editor/agent-builder/builder-agent-defaults.md +0 -79
  129. package/.docs/reference/editor/agent-builder/builder-models.md +0 -66
  130. /package/.docs/{docs → guides}/getting-started/manual-install.md +0 -0
  131. /package/.docs/{docs → guides}/rag/vector-databases.md +0 -0
@@ -0,0 +1,98 @@
1
+ > Discover all available pages from the documentation index: https://mastra.ai/llms.txt
2
+
3
+ # ![GreenPT logo](https://models.dev/logos/greenpt.svg)GreenPT
4
+
5
+ Access 26 GreenPT models through Mastra's model router. Authentication is handled automatically using the `GREENPT_API_KEY` environment variable.
6
+
7
+ Learn more in the [GreenPT documentation](https://docs.greenpt.ai).
8
+
9
+ ```bash
10
+ GREENPT_API_KEY=your-api-key
11
+ ```
12
+
13
+ ```typescript
14
+ import { Agent } from "@mastra/core/agent";
15
+
16
+ const agent = new Agent({
17
+ id: "my-agent",
18
+ name: "My Agent",
19
+ instructions: "You are a helpful assistant",
20
+ model: "greenpt/devstral-2-123b-instruct-2512"
21
+ });
22
+
23
+ // Generate a response
24
+ const response = await agent.generate("Hello!");
25
+
26
+ // Stream a response
27
+ const stream = await agent.stream("Tell me a story");
28
+ for await (const chunk of stream) {
29
+ console.log(chunk);
30
+ }
31
+ ```
32
+
33
+ > **Info:** Mastra uses the OpenAI-compatible `/chat/completions` endpoint. Some provider-specific features may not be available. Check the [GreenPT documentation](https://docs.greenpt.ai) for details.
34
+
35
+ ## Models
36
+
37
+ | Model | Context | Tools | Reasoning | Image | Audio | Video | Input $/1M | Output $/1M |
38
+ | --------------------------------------------- | ------- | ----- | --------- | ----- | ----- | ----- | ---------- | ----------- |
39
+ | `greenpt/devstral-2-123b-instruct-2512` | 200K | | | | | | $0.57 | $3 |
40
+ | `greenpt/gemma-3-27b-it` | 40K | | | | | | $0.34 | $0.68 |
41
+ | `greenpt/gemma4` | 262K | | | | | | $0.57 | $2 |
42
+ | `greenpt/glm-5.1` | 200K | | | | | | $2 | $6 |
43
+ | `greenpt/glm-5.2` | 1.0M | | | | | | $1 | $5 |
44
+ | `greenpt/gpt-oss-120b` | 131K | | | | | | $0.23 | $0.80 |
45
+ | `greenpt/green-l` | 128K | | | | | | $0.28 | $0.91 |
46
+ | `greenpt/green-l-raw` | 128K | | | | | | $0.28 | $0.91 |
47
+ | `greenpt/green-r` | 131K | | | | | | $0.40 | $1 |
48
+ | `greenpt/green-r-raw` | 131K | | | | | | $0.40 | $1 |
49
+ | `greenpt/green-s` | — | | | | | | $0.00 | — |
50
+ | `greenpt/green-s-pro` | — | | | | | | $0.00 | — |
51
+ | `greenpt/holo2-30b-a3b` | 22K | | | | | | $0.40 | $0.97 |
52
+ | `greenpt/kimi-k2.6` | 262K | | | | | | $0.83 | $4 |
53
+ | `greenpt/kimi-k2.6-fast` | 262K | | | | | | $2 | $9 |
54
+ | `greenpt/kimi-k2.7-code` | 262K | | | | | | $0.94 | $4 |
55
+ | `greenpt/llama-3.3-70b-instruct` | 100K | | | | | | $1 | $1 |
56
+ | `greenpt/minimax-m2.5` | 205K | | | | | | $0.19 | $1 |
57
+ | `greenpt/mistral-medium-3.5-128b` | 262K | | | | | | $2 | $10 |
58
+ | `greenpt/mistral-small-3.2-24b-instruct-2506` | 128K | | | | | | $0.23 | $0.46 |
59
+ | `greenpt/pixtral-12b-2409` | 128K | | | | | | $0.28 | $0.28 |
60
+ | `greenpt/qwen3-235b-a22b-instruct-2507` | 262K | | | | | | $1 | $3 |
61
+ | `greenpt/qwen3-coder-30b-a3b-instruct` | 128K | | | | | | $0.28 | $1 |
62
+ | `greenpt/qwen3.5-397b-a17b` | 262K | | | | | | $0.80 | $5 |
63
+ | `greenpt/qwen3.6-35b-a3b` | 262K | | | | | | $0.34 | $2 |
64
+ | `greenpt/voxtral-small-24b-2507` | 33K | | | | | | $0.23 | $0.51 |
65
+
66
+ ## Advanced configuration
67
+
68
+ ### Custom headers
69
+
70
+ ```typescript
71
+ const agent = new Agent({
72
+ id: "custom-agent",
73
+ name: "custom-agent",
74
+ model: {
75
+ url: "https://api.greenpt.ai/v1",
76
+ id: "greenpt/devstral-2-123b-instruct-2512",
77
+ apiKey: process.env.GREENPT_API_KEY,
78
+ headers: {
79
+ "X-Custom-Header": "value"
80
+ }
81
+ }
82
+ });
83
+ ```
84
+
85
+ ### Dynamic model selection
86
+
87
+ ```typescript
88
+ const agent = new Agent({
89
+ id: "dynamic-agent",
90
+ name: "Dynamic Agent",
91
+ model: ({ requestContext }) => {
92
+ const useAdvanced = requestContext.task === "complex";
93
+ return useAdvanced
94
+ ? "greenpt/voxtral-small-24b-2507"
95
+ : "greenpt/devstral-2-123b-instruct-2512";
96
+ }
97
+ });
98
+ ```
@@ -2,7 +2,7 @@
2
2
 
3
3
  # ![Hugging Face logo](https://models.dev/logos/huggingface.svg)Hugging Face
4
4
 
5
- Access 53 Hugging Face models through Mastra's model router. Authentication is handled automatically using the `HF_TOKEN` environment variable.
5
+ Access 55 Hugging Face models through Mastra's model router. Authentication is handled automatically using the `HF_TOKEN` environment variable.
6
6
 
7
7
  Learn more in the [Hugging Face documentation](https://huggingface.co).
8
8
 
@@ -77,6 +77,8 @@ for await (const chunk of stream) {
77
77
  | `huggingface/Qwen/Qwen3.6-35B-A3B` | 262K | | | | | | $0.15 | $0.95 |
78
78
  | `huggingface/stepfun-ai/Step-3.5-Flash` | 262K | | | | | | $0.10 | $0.30 |
79
79
  | `huggingface/stepfun-ai/Step-3.7-Flash` | 262K | | | | | | $0.20 | $1 |
80
+ | `huggingface/tencent/Hy3` | 262K | | | | | | $0.14 | $0.58 |
81
+ | `huggingface/thinkingmachines/Inkling` | 1.0M | | | | | | $1 | $4 |
80
82
  | `huggingface/XiaomiMiMo/MiMo-V2-Flash` | 262K | | | | | | $0.10 | $0.30 |
81
83
  | `huggingface/XiaomiMiMo/MiMo-V2.5` | 262K | | | | | | $0.40 | $2 |
82
84
  | `huggingface/XiaomiMiMo/MiMo-V2.5-Pro` | 1.0M | | | | | | $1 | $3 |
@@ -2,7 +2,7 @@
2
2
 
3
3
  # ![Charm Hyper logo](https://models.dev/logos/hyper.svg)Charm Hyper
4
4
 
5
- Access 20 Charm Hyper models through Mastra's model router. Authentication is handled automatically using the `HYPER_API_KEY` environment variable.
5
+ Access 23 Charm Hyper models through Mastra's model router. Authentication is handled automatically using the `HYPER_API_KEY` environment variable.
6
6
 
7
7
  Learn more in the [Charm Hyper documentation](https://hyper.charm.land).
8
8
 
@@ -38,22 +38,25 @@ for await (const chunk of stream) {
38
38
  | ---------------------------------------------------- | ------- | ----- | --------- | ----- | ----- | ----- | ---------- | ----------- |
39
39
  | `hyper/deepseek-v4-flash` | 1.0M | | | | | | $0.20 | $0.40 |
40
40
  | `hyper/deepseek-v4-pro` | 1.0M | | | | | | $2 | $5 |
41
- | `hyper/gemma-4-26b-a4b-it` | 256K | | | | | | $0.12 | $0.41 |
42
- | `hyper/glm-5` | 203K | | | | | | $0.81 | $3 |
41
+ | `hyper/gemma-4-26b-a4b-it` | 256K | | | | | | $0.12 | $0.39 |
42
+ | `hyper/glm-5` | 203K | | | | | | $0.86 | $3 |
43
43
  | `hyper/glm-5.1` | 203K | | | | | | $2 | $5 |
44
44
  | `hyper/glm-5.2` | 1.0M | | | | | | $1 | $4 |
45
- | `hyper/gpt-oss-120b` | 131K | | | | | | $0.18 | $0.68 |
45
+ | `hyper/gpt-oss-120b` | 131K | | | | | | $0.19 | $0.70 |
46
46
  | `hyper/kimi-k2.5` | 262K | | | | | | $0.53 | $3 |
47
47
  | `hyper/kimi-k2.6` | 262K | | | | | | $0.95 | $4 |
48
48
  | `hyper/kimi-k2.7-code` | 256K | | | | | | $0.95 | $4 |
49
- | `hyper/llama-3.3-70b-instruct` | 128K | | | | | | $0.61 | $1 |
49
+ | `hyper/kimi-k3` | 1.0M | | | | | | $3 | $16 |
50
+ | `hyper/llama-3.3-70b-instruct` | 128K | | | | | | $0.51 | $1 |
50
51
  | `hyper/llama-4-maverick-17b-128e-instruct-fp8` | 430K | | | | | | $0.28 | $0.93 |
51
- | `hyper/minimax-m2.7` | 205K | | | | | | $0.41 | $2 |
52
- | `hyper/qwen3-coder-480b-a35b-instruct-int4-mixed-ar` | 106K | | | | | | $0.57 | $2 |
52
+ | `hyper/minimax-m2.7` | 205K | | | | | | $0.42 | $2 |
53
+ | `hyper/minimax-m3` | 512K | | | | | | $0.33 | $1 |
54
+ | `hyper/qwen3-coder-480b-a35b-instruct-int4-mixed-ar` | 106K | | | | | | $0.58 | $2 |
53
55
  | `hyper/qwen3-next-80b-a3b-instruct` | 262K | | | | | | $0.12 | $1 |
54
56
  | `hyper/qwen3.6-flash` | 1.0M | | | | | | $1 | $4 |
55
57
  | `hyper/qwen3.6-max` | 256K | | | | | | $2 | $12 |
56
58
  | `hyper/qwen3.6-plus` | 1.0M | | | | | | $2 | $6 |
59
+ | `hyper/qwen3.7-flash` | 1.0M | | | | | | $0.20 | $0.80 |
57
60
  | `hyper/qwen3.7-max` | 1.0M | | | | | | $3 | $8 |
58
61
  | `hyper/qwen3.7-plus` | 1.0M | | | | | | $1 | $5 |
59
62
 
@@ -2,7 +2,7 @@
2
2
 
3
3
  # ![LLM Gateway logo](https://models.dev/logos/llmgateway.svg)LLM Gateway
4
4
 
5
- Access 186 LLM Gateway models through Mastra's model router. Authentication is handled automatically using the `LLMGATEWAY_API_KEY` environment variable.
5
+ Access 187 LLM Gateway models through Mastra's model router. Authentication is handled automatically using the `LLMGATEWAY_API_KEY` environment variable.
6
6
 
7
7
  Learn more in the [LLM Gateway documentation](https://llmgateway.io/docs).
8
8
 
@@ -119,9 +119,9 @@ for await (const chunk of stream) {
119
119
  | `llmgateway/gpt-5.4-pro` | 1.1M | | | | | | $30 | $180 |
120
120
  | `llmgateway/gpt-5.5` | 1.1M | | | | | | $5 | $30 |
121
121
  | `llmgateway/gpt-5.5-pro` | 1.1M | | | | | | $30 | $180 |
122
- | `llmgateway/gpt-5.6-luna` | 1.1M | | | | | | $1 | $6 |
122
+ | `llmgateway/gpt-5.6-luna` | 1.1M | | | | | | $0.20 | $1 |
123
123
  | `llmgateway/gpt-5.6-sol` | 1.1M | | | | | | $5 | $30 |
124
- | `llmgateway/gpt-5.6-terra` | 1.1M | | | | | | $3 | $15 |
124
+ | `llmgateway/gpt-5.6-terra` | 1.1M | | | | | | $2 | $12 |
125
125
  | `llmgateway/gpt-oss-120b` | 131K | | | | | | $0.03 | $0.14 |
126
126
  | `llmgateway/gpt-oss-20b` | 131K | | | | | | $0.04 | $0.15 |
127
127
  | `llmgateway/grok-4` | 256K | | | | | | $3 | $15 |
@@ -136,6 +136,7 @@ for await (const chunk of stream) {
136
136
  | `llmgateway/grok-build-0-1` | 256K | | | | | | $1 | $2 |
137
137
  | `llmgateway/hermes-4-405b` | 131K | | | | | | $1 | $3 |
138
138
  | `llmgateway/hermes-4-70b` | 131K | | | | | | $0.13 | $0.40 |
139
+ | `llmgateway/hy3` | 262K | | | | | | $0.14 | $0.58 |
139
140
  | `llmgateway/kimi-k2` | 256K | | | | | | $0.57 | $2 |
140
141
  | `llmgateway/kimi-k2-thinking` | 262K | | | | | | $0.60 | $3 |
141
142
  | `llmgateway/kimi-k2.5` | 262K | | | | | | $0.41 | $2 |
@@ -207,7 +208,7 @@ for await (const chunk of stream) {
207
208
  | `llmgateway/qwen3-vl-plus` | 262K | | | | | | $0.20 | $2 |
208
209
  | `llmgateway/qwen3.5-9b` | 262K | | | | | | $0.10 | $0.15 |
209
210
  | `llmgateway/qwen3.6-35b-a3b` | 262K | | | | | | $0.25 | $1 |
210
- | `llmgateway/qwen3.6-flash` | 262K | | | | | | $0.15 | $0.90 |
211
+ | `llmgateway/qwen3.6-flash` | 1.0M | | | | | | $0.25 | $2 |
211
212
  | `llmgateway/qwen3.6-max-preview` | 262K | | | | | | $1 | $8 |
212
213
  | `llmgateway/qwen3.6-plus` | 262K | | | | | | $0.50 | $3 |
213
214
  | `llmgateway/qwen3.7-flash` | 1.0M | | | | | | $0.03 | $0.13 |
@@ -106,4 +106,4 @@ yarn add @ai-sdk/anthropic
106
106
  bun add @ai-sdk/anthropic
107
107
  ```
108
108
 
109
- For detailed provider-specific documentation, see the [AI SDK MiniMax (minimax.io) provider docs](https://ai-sdk.dev/providers/community-providers/minimax).
109
+ For detailed provider-specific documentation, see the [AI SDK MiniMax (minimax.io) provider docs](https://ai-sdk.dev/providers/ai-sdk-providers/minimax).
@@ -2,7 +2,7 @@
2
2
 
3
3
  # ![Neuralwatt logo](https://models.dev/logos/neuralwatt.svg)Neuralwatt
4
4
 
5
- Access 18 Neuralwatt models through Mastra's model router. Authentication is handled automatically using the `NEURALWATT_API_KEY` environment variable.
5
+ Access 20 Neuralwatt models through Mastra's model router. Authentication is handled automatically using the `NEURALWATT_API_KEY` environment variable.
6
6
 
7
7
  Learn more in the [Neuralwatt documentation](https://portal.neuralwatt.com/docs).
8
8
 
@@ -36,6 +36,8 @@ for await (const chunk of stream) {
36
36
 
37
37
  | Model | Context | Tools | Reasoning | Image | Audio | Video | Input $/1M | Output $/1M |
38
38
  | --------------------------------------- | ------- | ----- | --------- | ----- | ----- | ----- | ---------- | ----------- |
39
+ | `neuralwatt/deepseek-v4-flash` | 1.0M | | | | | | $0.10 | $0.21 |
40
+ | `neuralwatt/gemma-4-31b` | 262K | | | | | | $0.14 | $0.42 |
39
41
  | `neuralwatt/glm-5.2` | 1.0M | | | | | | $1 | $5 |
40
42
  | `neuralwatt/glm-5.2-fast` | 1.0M | | | | | | $1 | $5 |
41
43
  | `neuralwatt/glm-5.2-flex` | 1.0M | | | | | | $0.72 | $2 |
@@ -59,9 +59,9 @@ for await (const chunk of stream) {
59
59
  | `openai/gpt-5.5` | 1.1M | | | | | | $5 | $30 |
60
60
  | `openai/gpt-5.5-pro` | 1.1M | | | | | | $30 | $180 |
61
61
  | `openai/gpt-5.6` | 1.1M | | | | | | $5 | $30 |
62
- | `openai/gpt-5.6-luna` | 1.1M | | | | | | $1 | $6 |
62
+ | `openai/gpt-5.6-luna` | 1.1M | | | | | | $0.20 | $1 |
63
63
  | `openai/gpt-5.6-sol` | 1.1M | | | | | | $5 | $30 |
64
- | `openai/gpt-5.6-terra` | 1.1M | | | | | | $3 | $15 |
64
+ | `openai/gpt-5.6-terra` | 1.1M | | | | | | $2 | $12 |
65
65
  | `openai/gpt-image-1-mini` | — | | | | | | — | — |
66
66
  | `openai/gpt-image-1.5` | — | | | | | | — | — |
67
67
  | `openai/gpt-image-2` | — | | | | | | $5 | $30 |
@@ -2,7 +2,7 @@
2
2
 
3
3
  # ![OpenCode Go logo](https://models.dev/logos/opencode-go.svg)OpenCode Go
4
4
 
5
- Access 22 OpenCode Go models through Mastra's model router. Authentication is handled automatically using the `OPENCODE_API_KEY` environment variable.
5
+ Access 23 OpenCode Go models through Mastra's model router. Authentication is handled automatically using the `OPENCODE_API_KEY` environment variable.
6
6
 
7
7
  Learn more in the [OpenCode Go documentation](https://opencode.ai/docs/zen).
8
8
 
@@ -40,6 +40,7 @@ for await (const chunk of stream) {
40
40
  | `opencode-go/deepseek-v4-pro` | 1.0M | | | | | | $0.43 | $0.87 |
41
41
  | `opencode-go/glm-5.1` | 203K | | | | | | $1 | $4 |
42
42
  | `opencode-go/glm-5.2` | 1.0M | | | | | | $1 | $4 |
43
+ | `opencode-go/gpt-5.6-luna` | 1.1M | | | | | | $0.10 | $0.60 |
43
44
  | `opencode-go/grok-4.5` | 500K | | | | | | $2 | $6 |
44
45
  | `opencode-go/hy3` | 256K | | | | | | $0.14 | $0.58 |
45
46
  | `opencode-go/kimi-k2.6` | 262K | | | | | | $0.95 | $4 |
@@ -77,7 +77,7 @@ for await (const chunk of stream) {
77
77
  | `opencode/gpt-5.4-pro` | 1.1M | | | | | | $30 | $180 |
78
78
  | `opencode/gpt-5.5` | 1.1M | | | | | | $5 | $30 |
79
79
  | `opencode/gpt-5.5-pro` | 1.1M | | | | | | $30 | $180 |
80
- | `opencode/gpt-5.6-luna` | 1.1M | | | | | | $1 | $6 |
80
+ | `opencode/gpt-5.6-luna` | 1.1M | | | | | | $0.20 | $1 |
81
81
  | `opencode/gpt-5.6-sol` | 1.1M | | | | | | $5 | $30 |
82
82
  | `opencode/gpt-5.6-terra` | 1.1M | | | | | | $3 | $15 |
83
83
  | `opencode/grok-4.5` | 500K | | | | | | $2 | $6 |
@@ -2,7 +2,7 @@
2
2
 
3
3
  # ![Perplexity Agent logo](https://models.dev/logos/perplexity-agent.svg)Perplexity Agent
4
4
 
5
- Access 18 Perplexity Agent models through Mastra's model router. Authentication is handled automatically using the `PERPLEXITY_API_KEY` environment variable.
5
+ Access 20 Perplexity Agent models through Mastra's model router. Authentication is handled automatically using the `PERPLEXITY_API_KEY` environment variable.
6
6
 
7
7
  Learn more in the [Perplexity Agent documentation](https://docs.perplexity.ai/docs/agent-api/models).
8
8
 
@@ -46,6 +46,8 @@ for await (const chunk of stream) {
46
46
  | `perplexity-agent/google/gemini-2.5-pro` | 1.0M | | | | | | $1 | $10 |
47
47
  | `perplexity-agent/google/gemini-3-flash-preview` | 1.0M | | | | | | $0.50 | $3 |
48
48
  | `perplexity-agent/google/gemini-3.1-pro-preview` | 1.0M | | | | | | $2 | $12 |
49
+ | `perplexity-agent/moonshot-ai/kimi-k2.7-code` | 262K | | | | | | $0.95 | $4 |
50
+ | `perplexity-agent/moonshot-ai/kimi-k3` | 1.0M | | | | | | $3 | $15 |
49
51
  | `perplexity-agent/nvidia/nemotron-3-super-120b-a12b` | 1.0M | | | | | | $0.25 | $3 |
50
52
  | `perplexity-agent/openai/gpt-5-mini` | 400K | | | | | | $0.25 | $2 |
51
53
  | `perplexity-agent/openai/gpt-5.1` | 400K | | | | | | $1 | $10 |
@@ -2,7 +2,7 @@
2
2
 
3
3
  # ![Scaleway logo](https://models.dev/logos/scaleway.svg)Scaleway
4
4
 
5
- Access 17 Scaleway models through Mastra's model router. Authentication is handled automatically using the `SCALEWAY_API_KEY` environment variable.
5
+ Access 14 Scaleway models through Mastra's model router. Authentication is handled automatically using the `SCALEWAY_API_KEY` environment variable.
6
6
 
7
7
  Learn more in the [Scaleway documentation](https://www.scaleway.com/en/docs/generative-apis/).
8
8
 
@@ -37,7 +37,6 @@ for await (const chunk of stream) {
37
37
  | Model | Context | Tools | Reasoning | Image | Audio | Video | Input $/1M | Output $/1M |
38
38
  | ---------------------------------------------- | ------- | ----- | --------- | ----- | ----- | ----- | ---------- | ----------- |
39
39
  | `scaleway/bge-multilingual-gemma2` | 8K | | | | | | $0.10 | — |
40
- | `scaleway/gemma-3-27b-it` | 40K | | | | | | $0.25 | $0.50 |
41
40
  | `scaleway/gemma-4-26b-a4b-it` | 256K | | | | | | $0.25 | $0.50 |
42
41
  | `scaleway/glm-5.2` | 256K | | | | | | $2 | $6 |
43
42
  | `scaleway/gpt-oss-120b` | 128K | | | | | | $0.15 | $0.60 |
@@ -50,7 +49,6 @@ for await (const chunk of stream) {
50
49
  | `scaleway/qwen3-embedding-8b` | 33K | | | | | | $0.10 | — |
51
50
  | `scaleway/qwen3.5-397b-a17b` | 256K | | | | | | $0.60 | $4 |
52
51
  | `scaleway/qwen3.6-35b-a3b` | 128K | | | | | | $0.25 | $2 |
53
- | `scaleway/voxtral-small-24b-2507` | 32K | | | | | | $0.15 | $0.35 |
54
52
  | `scaleway/whisper-large-v3` | — | | | | | | $0.00 | — |
55
53
 
56
54
  ## Advanced configuration
@@ -2,12 +2,12 @@
2
2
 
3
3
  # ![The Grid AI logo](https://models.dev/logos/the-grid-ai.svg)The Grid AI
4
4
 
5
- Access 9 The Grid AI models through Mastra's model router. Authentication is handled automatically using the `THEGRIDAI_API_KEY` environment variable.
5
+ Access 9 The Grid AI models through Mastra's model router. Authentication is handled automatically using the `THEGRID_API_KEY` environment variable.
6
6
 
7
7
  Learn more in the [The Grid AI documentation](https://thegrid.ai/docs).
8
8
 
9
9
  ```bash
10
- THEGRIDAI_API_KEY=your-api-key
10
+ THEGRID_API_KEY=your-api-key
11
11
  ```
12
12
 
13
13
  ```typescript
@@ -57,7 +57,7 @@ const agent = new Agent({
57
57
  model: {
58
58
  url: "https://api.thegrid.ai/v1",
59
59
  id: "the-grid-ai/agent-max",
60
- apiKey: process.env.THEGRIDAI_API_KEY,
60
+ apiKey: process.env.THEGRID_API_KEY,
61
61
  headers: {
62
62
  "X-Custom-Header": "value"
63
63
  }
@@ -2,7 +2,7 @@
2
2
 
3
3
  # ![Z.AI Coding Plan logo](https://models.dev/logos/zai-coding-plan.svg)Z.AI Coding Plan
4
4
 
5
- Access 6 Z.AI Coding Plan models through Mastra's model router. Authentication is handled automatically using the `ZHIPU_API_KEY` environment variable.
5
+ Access 4 Z.AI Coding Plan models through Mastra's model router. Authentication is handled automatically using the `ZHIPU_API_KEY` environment variable.
6
6
 
7
7
  Learn more in the [Z.AI Coding Plan documentation](https://docs.z.ai/devpack/overview).
8
8
 
@@ -17,7 +17,7 @@ const agent = new Agent({
17
17
  id: "my-agent",
18
18
  name: "My Agent",
19
19
  instructions: "You are a helpful assistant",
20
- model: "zai-coding-plan/glm-4.5-air"
20
+ model: "zai-coding-plan/glm-4.7"
21
21
  });
22
22
 
23
23
  // Generate a response
@@ -34,14 +34,12 @@ for await (const chunk of stream) {
34
34
 
35
35
  ## Models
36
36
 
37
- | Model | Context | Tools | Reasoning | Image | Audio | Video | Input $/1M | Output $/1M |
38
- | ------------------------------ | ------- | ----- | --------- | ----- | ----- | ----- | ---------- | ----------- |
39
- | `zai-coding-plan/glm-4.5-air` | 131K | | | | | | — | — |
40
- | `zai-coding-plan/glm-4.7` | 205K | | | | | | — | — |
41
- | `zai-coding-plan/glm-5-turbo` | 200K | | | | | | — | — |
42
- | `zai-coding-plan/glm-5.1` | 200K | | | | | | — | — |
43
- | `zai-coding-plan/glm-5.2` | 1.0M | | | | | | — | — |
44
- | `zai-coding-plan/glm-5v-turbo` | 200K | | | | | | — | — |
37
+ | Model | Context | Tools | Reasoning | Image | Audio | Video | Input $/1M | Output $/1M |
38
+ | --------------------------------------- | ------- | ----- | --------- | ----- | ----- | ----- | ---------- | ----------- |
39
+ | `zai-coding-plan/glm-4.7` | 205K | | | | | | — | — |
40
+ | `zai-coding-plan/glm-5-turbo` | 200K | | | | | | — | — |
41
+ | `zai-coding-plan/glm-5.2` | 1.0M | | | | | | — | — |
42
+ | `zai-coding-plan/glm-5.2-highspeed[1m]` | 1.0M | | | | | | — | — |
45
43
 
46
44
  ## Advanced configuration
47
45
 
@@ -53,7 +51,7 @@ const agent = new Agent({
53
51
  name: "custom-agent",
54
52
  model: {
55
53
  url: "https://api.z.ai/api/coding/paas/v4",
56
- id: "zai-coding-plan/glm-4.5-air",
54
+ id: "zai-coding-plan/glm-4.7",
57
55
  apiKey: process.env.ZHIPU_API_KEY,
58
56
  headers: {
59
57
  "X-Custom-Header": "value"
@@ -71,8 +69,8 @@ const agent = new Agent({
71
69
  model: ({ requestContext }) => {
72
70
  const useAdvanced = requestContext.task === "complex";
73
71
  return useAdvanced
74
- ? "zai-coding-plan/glm-5v-turbo"
75
- : "zai-coding-plan/glm-4.5-air";
72
+ ? "zai-coding-plan/glm-5.2-highspeed[1m]"
73
+ : "zai-coding-plan/glm-4.7";
76
74
  }
77
75
  });
78
76
  ```
@@ -17,7 +17,7 @@ const agent = new Agent({
17
17
  id: "my-agent",
18
18
  name: "My Agent",
19
19
  instructions: "You are a helpful assistant",
20
- model: "zhipuai-coding-plan/glm-4.5-air"
20
+ model: "zhipuai-coding-plan/glm-4.6v"
21
21
  });
22
22
 
23
23
  // Generate a response
@@ -34,15 +34,15 @@ for await (const chunk of stream) {
34
34
 
35
35
  ## Models
36
36
 
37
- | Model | Context | Tools | Reasoning | Image | Audio | Video | Input $/1M | Output $/1M |
38
- | ---------------------------------- | ------- | ----- | --------- | ----- | ----- | ----- | ---------- | ----------- |
39
- | `zhipuai-coding-plan/glm-4.5-air` | 131K | | | | | | | |
40
- | `zhipuai-coding-plan/glm-4.6v` | 128K | | | | | | $0.30 | $0.90 |
41
- | `zhipuai-coding-plan/glm-4.7` | 205K | | | | | | — | — |
42
- | `zhipuai-coding-plan/glm-5-turbo` | 200K | | | | | | — | — |
43
- | `zhipuai-coding-plan/glm-5.1` | 200K | | | | | | — | — |
44
- | `zhipuai-coding-plan/glm-5.2` | 1.0M | | | | | | — | — |
45
- | `zhipuai-coding-plan/glm-5v-turbo` | 200K | | | | | | — | — |
37
+ | Model | Context | Tools | Reasoning | Image | Audio | Video | Input $/1M | Output $/1M |
38
+ | ------------------------------------------- | ------- | ----- | --------- | ----- | ----- | ----- | ---------- | ----------- |
39
+ | `zhipuai-coding-plan/glm-4.6v` | 128K | | | | | | $0.30 | $0.90 |
40
+ | `zhipuai-coding-plan/glm-4.7` | 205K | | | | | | | |
41
+ | `zhipuai-coding-plan/glm-5-turbo` | 200K | | | | | | — | — |
42
+ | `zhipuai-coding-plan/glm-5.1` | 200K | | | | | | — | — |
43
+ | `zhipuai-coding-plan/glm-5.2` | 1.0M | | | | | | — | — |
44
+ | `zhipuai-coding-plan/glm-5.2-highspeed[1m]` | 1.0M | | | | | | — | — |
45
+ | `zhipuai-coding-plan/glm-5v-turbo` | 200K | | | | | | — | — |
46
46
 
47
47
  ## Advanced configuration
48
48
 
@@ -54,7 +54,7 @@ const agent = new Agent({
54
54
  name: "custom-agent",
55
55
  model: {
56
56
  url: "https://open.bigmodel.cn/api/coding/paas/v4",
57
- id: "zhipuai-coding-plan/glm-4.5-air",
57
+ id: "zhipuai-coding-plan/glm-4.6v",
58
58
  apiKey: process.env.ZHIPU_API_KEY,
59
59
  headers: {
60
60
  "X-Custom-Header": "value"
@@ -73,7 +73,7 @@ const agent = new Agent({
73
73
  const useAdvanced = requestContext.task === "complex";
74
74
  return useAdvanced
75
75
  ? "zhipuai-coding-plan/glm-5v-turbo"
76
- : "zhipuai-coding-plan/glm-4.5-air";
76
+ : "zhipuai-coding-plan/glm-4.6v";
77
77
  }
78
78
  });
79
79
  ```
@@ -58,6 +58,7 @@ Direct access to individual AI model providers. Each provider offers unique mode
58
58
  - [FrogBot](https://mastra.ai/models/providers/frogbot)
59
59
  - [GitHub Models](https://mastra.ai/models/providers/github-models)
60
60
  - [GMI Cloud](https://mastra.ai/models/providers/gmicloud)
61
+ - [GreenPT](https://mastra.ai/models/providers/greenpt)
61
62
  - [Helicone](https://mastra.ai/models/providers/helicone)
62
63
  - [Hetzner](https://mastra.ai/models/providers/hetzner)
63
64
  - [HPC-AI](https://mastra.ai/models/providers/hpc-ai)
@@ -564,7 +564,7 @@ When you register the [`MastraEditor`](https://mastra.ai/reference/editor/mastra
564
564
 
565
565
  **editor** (`false | { instructions?: boolean; tools?: boolean | { description?: boolean } }`): Omit to allow editing instructions and tools. Set to false to lock the agent. Set instructions: true to allow instruction edits. Set tools: true to allow tool membership and description edits, or tools: { description: true } to allow only description edits.
566
566
 
567
- The agent's `id`, `name`, and `model` always come from code and can't be overridden through the editor. See the [Editor overview](https://mastra.ai/docs/editor/overview) for usage.
567
+ The agent's `id`, `name`, and `model` always come from code and can't be overridden through Editor. See [Editor](https://mastra.ai/docs/editor/overview) for usage.
568
568
 
569
569
  ## Returns
570
570
 
@@ -174,6 +174,17 @@ const { output, cleanup } = await durableAgent.observe(runId, {
174
174
  await output.text
175
175
  ```
176
176
 
177
+ By default `observe()` waits indefinitely for events. If the process running the run stops unexpectedly, the run stops producing events but never emits a completion event, so the observed stream would wait forever. Pass `idleTimeoutMs` to bound that wait: after that many milliseconds of silence the stream ends. An optional `isAlive` check is consulted first. Return `true` while the run is still being worked on (for example a long-running tool call, or a run paused waiting for human input) to keep waiting. Returning `false`, or omitting `isAlive`, ends the stream with an error. A transient throw from `isAlive` is treated as "still alive", so a momentary check failure never ends a live stream.
178
+
179
+ ```typescript
180
+ const { output } = await durableAgent.observe(runId, {
181
+ idleTimeoutMs: 30_000,
182
+ isAlive: () => runHeartbeat.isFresh(runId),
183
+ })
184
+ ```
185
+
186
+ Ending a run on idle timeout runs the same cleanup as a run that errors (see the warning below), so its cached state is released rather than retained. Both options are opt-in. Omit them for the previous wait-indefinitely behavior.
187
+
177
188
  Returns: `Promise<DurableAgentStreamResult>`
178
189
 
179
190
  > **Warning:** The `cleanup()` returned by `observe()` destroys the run's registry entries and cached events. Only call it when you are done with the run. If the run is suspended and you intend to resume later, don't call `cleanup()`. Let the auto-cleanup timer handle it after the run finishes or errors. Auto-cleanup doesn't fire on suspended events.
@@ -333,7 +344,7 @@ Returns: [`Promise<DurableAgentStreamResult>`](#durableagentstreamresult)
333
344
 
334
345
  ## DurableAgentStreamResult
335
346
 
336
- The object returned by `stream()`, `resume()`, and `observe()`.
347
+ The object returned by `stream()`, `resume()`, `observe()`, and `recover()`.
337
348
 
338
349
  ```typescript
339
350
  interface DurableAgentStreamResult<OUTPUT = undefined> {
@@ -214,7 +214,7 @@ const result = await agent.generate('message for agent')
214
214
 
215
215
  **options.tracingOptions.tags** (`string[]`): Tags to apply to this trace. String labels for categorizing and filtering traces.
216
216
 
217
- **options.versions** (`VersionOverrides`): Per-invocation version overrides for sub-agent delegation. Merged on top of Mastra instance-level versions and propagated automatically through sub-agent calls via requestContext. Requires the editor package. See Sub-agent versioning.
217
+ **options.versions** (`VersionOverrides`): Per-invocation version overrides for sub-agent delegation. Merged on top of Mastra instance-level versions and propagated automatically through sub-agent calls via requestContext. Requires the editor package. See Editor versioning.
218
218
 
219
219
  **options.versions.agents** (`Record<string, VersionSelector>`): A map of agent IDs to their version selectors.
220
220
 
@@ -30,5 +30,5 @@ await agent.getVoice({
30
30
 
31
31
  ## Related
32
32
 
33
- - [Voice in Mastra](https://mastra.ai/docs/voice/overview)
33
+ - [Voice in Mastra](https://mastra.ai/guides/voice/overview)
34
34
  - [Voice providers](https://mastra.ai/reference/voice/mastra-voice)