@mastra/mcp-docs-server 1.1.28 → 1.1.29-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.
- package/.docs/docs/agents/background-tasks.md +242 -0
- package/.docs/docs/agents/channels.md +2 -1
- package/.docs/docs/agents/supervisor-agents.md +35 -4
- package/.docs/docs/agents/using-tools.md +1 -0
- package/.docs/docs/browser/overview.md +1 -0
- package/.docs/docs/evals/custom-scorers.md +60 -0
- package/.docs/docs/streaming/background-task-streaming.md +80 -0
- package/.docs/docs/streaming/overview.md +3 -0
- package/.docs/docs/workspace/filesystem.md +3 -1
- package/.docs/docs/workspace/overview.md +1 -1
- package/.docs/docs/workspace/search.md +2 -2
- package/.docs/docs/workspace/skills.md +16 -16
- package/.docs/guides/build-your-ui/ai-sdk-ui.md +5 -3
- package/.docs/guides/guide/code-review-bot.md +2 -2
- package/.docs/guides/guide/dev-assistant.md +4 -4
- package/.docs/guides/guide/slack-assistant.md +191 -0
- package/.docs/models/gateways/azure-openai.md +25 -25
- package/.docs/models/gateways/mastra.md +64 -0
- package/.docs/models/gateways/netlify.md +5 -1
- package/.docs/models/gateways/openrouter.md +8 -1
- package/.docs/models/gateways/vercel.md +7 -1
- package/.docs/models/gateways.md +1 -0
- package/.docs/models/index.md +4 -4
- package/.docs/models/providers/abliteration-ai.md +71 -0
- package/.docs/models/providers/alibaba-cn.md +4 -1
- package/.docs/models/providers/alibaba.md +6 -1
- package/.docs/models/providers/deepseek.md +6 -4
- package/.docs/models/providers/huggingface.md +2 -1
- package/.docs/models/providers/llmgateway.md +4 -1
- package/.docs/models/providers/novita-ai.md +4 -1
- package/.docs/models/providers/nvidia.md +3 -1
- package/.docs/models/providers/ollama-cloud.md +3 -1
- package/.docs/models/providers/opencode-go.md +20 -18
- package/.docs/models/providers/opencode.md +3 -2
- package/.docs/models/providers/poe.md +3 -1
- package/.docs/models/providers/togetherai.md +2 -1
- package/.docs/models/providers/xiaomi-token-plan-ams.md +9 -7
- package/.docs/models/providers/xiaomi-token-plan-cn.md +9 -7
- package/.docs/models/providers/xiaomi-token-plan-sgp.md +9 -7
- package/.docs/models/providers/xiaomi.md +4 -2
- package/.docs/models/providers/zai-coding-plan.md +11 -20
- package/.docs/models/providers/zhipuai-coding-plan.md +11 -21
- package/.docs/models/providers.md +1 -0
- package/.docs/reference/client-js/agents.md +44 -0
- package/.docs/reference/configuration.md +63 -0
- package/.docs/reference/evals/create-scorer.md +2 -0
- package/.docs/reference/evals/filter-run.md +117 -0
- package/.docs/reference/index.md +3 -0
- package/.docs/reference/memory/clone-utilities.md +4 -2
- package/.docs/reference/memory/cloneThread.md +4 -2
- package/.docs/reference/processors/skill-search-processor.md +1 -1
- package/.docs/reference/server/routes.md +9 -8
- package/.docs/reference/streaming/ChunkType.md +140 -0
- package/.docs/reference/streaming/agents/streamUntilIdle.md +94 -0
- package/.docs/reference/workspace/azure-blob-filesystem.md +219 -0
- package/.docs/reference/workspace/gcs-filesystem.md +1 -0
- package/.docs/reference/workspace/s3-filesystem.md +1 -0
- package/.docs/reference/workspace/workspace-class.md +1 -1
- package/CHANGELOG.md +42 -0
- package/package.json +4 -4
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# DeepSeek
|
|
2
2
|
|
|
3
|
-
Access
|
|
3
|
+
Access 4 DeepSeek models through Mastra's model router. Authentication is handled automatically using the `DEEPSEEK_API_KEY` environment variable.
|
|
4
4
|
|
|
5
5
|
Learn more in the [DeepSeek documentation](https://api-docs.deepseek.com/quick_start/pricing).
|
|
6
6
|
|
|
@@ -32,8 +32,10 @@ for await (const chunk of stream) {
|
|
|
32
32
|
|
|
33
33
|
| Model | Context | Tools | Reasoning | Image | Audio | Video | Input $/1M | Output $/1M |
|
|
34
34
|
| ---------------------------- | ------- | ----- | --------- | ----- | ----- | ----- | ---------- | ----------- |
|
|
35
|
-
| `deepseek/deepseek-chat` |
|
|
36
|
-
| `deepseek/deepseek-reasoner` |
|
|
35
|
+
| `deepseek/deepseek-chat` | 1.0M | | | | | | $0.14 | $0.28 |
|
|
36
|
+
| `deepseek/deepseek-reasoner` | 1.0M | | | | | | $0.14 | $0.28 |
|
|
37
|
+
| `deepseek/deepseek-v4-flash` | 1.0M | | | | | | $0.14 | $0.28 |
|
|
38
|
+
| `deepseek/deepseek-v4-pro` | 1.0M | | | | | | $2 | $3 |
|
|
37
39
|
|
|
38
40
|
## Advanced configuration
|
|
39
41
|
|
|
@@ -63,7 +65,7 @@ const agent = new Agent({
|
|
|
63
65
|
model: ({ requestContext }) => {
|
|
64
66
|
const useAdvanced = requestContext.task === "complex";
|
|
65
67
|
return useAdvanced
|
|
66
|
-
? "deepseek/deepseek-
|
|
68
|
+
? "deepseek/deepseek-v4-pro"
|
|
67
69
|
: "deepseek/deepseek-chat";
|
|
68
70
|
}
|
|
69
71
|
});
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# Hugging Face
|
|
2
2
|
|
|
3
|
-
Access
|
|
3
|
+
Access 24 Hugging Face models through Mastra's model router. Authentication is handled automatically using the `HF_TOKEN` environment variable.
|
|
4
4
|
|
|
5
5
|
Learn more in the [Hugging Face documentation](https://huggingface.co).
|
|
6
6
|
|
|
@@ -36,6 +36,7 @@ for await (const chunk of stream) {
|
|
|
36
36
|
| ------------------------------------------------- | ------- | ----- | --------- | ----- | ----- | ----- | ---------- | ----------- |
|
|
37
37
|
| `huggingface/deepseek-ai/DeepSeek-R1-0528` | 164K | | | | | | $3 | $5 |
|
|
38
38
|
| `huggingface/deepseek-ai/DeepSeek-V3.2` | 164K | | | | | | $0.28 | $0.40 |
|
|
39
|
+
| `huggingface/deepseek-ai/DeepSeek-V4-Pro` | 1.0M | | | | | | $2 | $3 |
|
|
39
40
|
| `huggingface/MiniMaxAI/MiniMax-M2.1` | 205K | | | | | | $0.30 | $1 |
|
|
40
41
|
| `huggingface/MiniMaxAI/MiniMax-M2.5` | 205K | | | | | | $0.30 | $1 |
|
|
41
42
|
| `huggingface/MiniMaxAI/MiniMax-M2.7` | 205K | | | | | | $0.30 | $1 |
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# LLM Gateway
|
|
2
2
|
|
|
3
|
-
Access
|
|
3
|
+
Access 184 LLM Gateway models through Mastra's model router. Authentication is handled automatically using the `LLMGATEWAY_API_KEY` environment variable.
|
|
4
4
|
|
|
5
5
|
Learn more in the [LLM Gateway documentation](https://llmgateway.io/docs).
|
|
6
6
|
|
|
@@ -55,6 +55,8 @@ for await (const chunk of stream) {
|
|
|
55
55
|
| `llmgateway/deepseek-r1-0528` | 64K | | | | | | $0.80 | $2 |
|
|
56
56
|
| `llmgateway/deepseek-v3.1` | 128K | | | | | | $0.56 | $2 |
|
|
57
57
|
| `llmgateway/deepseek-v3.2` | 164K | | | | | | $0.28 | $0.42 |
|
|
58
|
+
| `llmgateway/deepseek-v4-flash` | 1.0M | | | | | | $0.14 | $0.28 |
|
|
59
|
+
| `llmgateway/deepseek-v4-pro` | 1.0M | | | | | | $2 | $3 |
|
|
58
60
|
| `llmgateway/devstral-2512` | 262K | | | | | | $0.40 | $2 |
|
|
59
61
|
| `llmgateway/devstral-small-2507` | 128K | | | | | | $0.10 | $0.30 |
|
|
60
62
|
| `llmgateway/gemini-2.0-flash` | 1.0M | | | | | | $0.10 | $0.40 |
|
|
@@ -137,6 +139,7 @@ for await (const chunk of stream) {
|
|
|
137
139
|
| `llmgateway/kimi-k2-thinking` | 262K | | | | | | $0.60 | $3 |
|
|
138
140
|
| `llmgateway/kimi-k2-thinking-turbo` | 262K | | | | | | $1 | $8 |
|
|
139
141
|
| `llmgateway/kimi-k2.5` | 262K | | | | | | $0.60 | $3 |
|
|
142
|
+
| `llmgateway/kimi-k2.6` | 262K | | | | | | $0.95 | $4 |
|
|
140
143
|
| `llmgateway/llama-3-70b-instruct` | 8K | | | | | | $0.51 | $0.74 |
|
|
141
144
|
| `llmgateway/llama-3-8b-instruct` | 8K | | | | | | $0.04 | $0.04 |
|
|
142
145
|
| `llmgateway/llama-3.1-70b-instruct` | 128K | | | | | | $0.72 | $0.72 |
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# NovitaAI
|
|
2
2
|
|
|
3
|
-
Access
|
|
3
|
+
Access 99 NovitaAI models through Mastra's model router. Authentication is handled automatically using the `NOVITA_API_KEY` environment variable.
|
|
4
4
|
|
|
5
5
|
Learn more in the [NovitaAI documentation](https://novita.ai/docs/guides/introduction).
|
|
6
6
|
|
|
@@ -56,6 +56,8 @@ for await (const chunk of stream) {
|
|
|
56
56
|
| `novita-ai/deepseek/deepseek-v3.1-terminus` | 131K | | | | | | $0.27 | $1 |
|
|
57
57
|
| `novita-ai/deepseek/deepseek-v3.2` | 164K | | | | | | $0.27 | $0.40 |
|
|
58
58
|
| `novita-ai/deepseek/deepseek-v3.2-exp` | 164K | | | | | | $0.27 | $0.41 |
|
|
59
|
+
| `novita-ai/deepseek/deepseek-v4-flash` | 1.0M | | | | | | $0.14 | $0.28 |
|
|
60
|
+
| `novita-ai/deepseek/deepseek-v4-pro` | 1.0M | | | | | | $2 | $3 |
|
|
59
61
|
| `novita-ai/google/gemma-3-12b-it` | 131K | | | | | | $0.05 | $0.10 |
|
|
60
62
|
| `novita-ai/google/gemma-3-27b-it` | 98K | | | | | | $0.12 | $0.20 |
|
|
61
63
|
| `novita-ai/google/gemma-4-26b-a4b-it` | 262K | | | | | | $0.13 | $0.40 |
|
|
@@ -115,6 +117,7 @@ for await (const chunk of stream) {
|
|
|
115
117
|
| `novita-ai/qwen/qwen3.5-27b` | 262K | | | | | | $0.30 | $2 |
|
|
116
118
|
| `novita-ai/qwen/qwen3.5-35b-a3b` | 262K | | | | | | $0.25 | $2 |
|
|
117
119
|
| `novita-ai/qwen/qwen3.5-397b-a17b` | 262K | | | | | | $0.60 | $4 |
|
|
120
|
+
| `novita-ai/qwen/qwen3.6-27b` | 262K | | | | | | $0.60 | $4 |
|
|
118
121
|
| `novita-ai/sao10k/l3-70b-euryale-v2.1` | 8K | | | | | | $1 | $1 |
|
|
119
122
|
| `novita-ai/sao10k/l3-8b-lunaris` | 8K | | | | | | $0.05 | $0.05 |
|
|
120
123
|
| `novita-ai/sao10k/L3-8B-Stheno-v3.2` | 8K | | | | | | $0.05 | $0.05 |
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# Nvidia
|
|
2
2
|
|
|
3
|
-
Access
|
|
3
|
+
Access 79 Nvidia models through Mastra's model router. Authentication is handled automatically using the `NVIDIA_API_KEY` environment variable.
|
|
4
4
|
|
|
5
5
|
Learn more in the [Nvidia documentation](https://docs.api.nvidia.com/nim/).
|
|
6
6
|
|
|
@@ -41,6 +41,8 @@ for await (const chunk of stream) {
|
|
|
41
41
|
| `nvidia/deepseek-ai/deepseek-v3.1` | 128K | | | | | | — | — |
|
|
42
42
|
| `nvidia/deepseek-ai/deepseek-v3.1-terminus` | 128K | | | | | | — | — |
|
|
43
43
|
| `nvidia/deepseek-ai/deepseek-v3.2` | 164K | | | | | | — | — |
|
|
44
|
+
| `nvidia/deepseek-ai/deepseek-v4-flash` | 1.0M | | | | | | $0.14 | $0.28 |
|
|
45
|
+
| `nvidia/deepseek-ai/deepseek-v4-pro` | 1.0M | | | | | | $2 | $3 |
|
|
44
46
|
| `nvidia/google/codegemma-1.1-7b` | 128K | | | | | | — | — |
|
|
45
47
|
| `nvidia/google/codegemma-7b` | 128K | | | | | | — | — |
|
|
46
48
|
| `nvidia/google/gemma-2-27b-it` | 128K | | | | | | — | — |
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# Ollama Cloud
|
|
2
2
|
|
|
3
|
-
Access
|
|
3
|
+
Access 39 Ollama Cloud models through Mastra's model router. Authentication is handled automatically using the `OLLAMA_API_KEY` environment variable.
|
|
4
4
|
|
|
5
5
|
Learn more in the [Ollama Cloud documentation](https://docs.ollama.com/cloud).
|
|
6
6
|
|
|
@@ -37,6 +37,8 @@ for await (const chunk of stream) {
|
|
|
37
37
|
| `ollama-cloud/cogito-2.1:671b` | 164K | | | | | | — | — |
|
|
38
38
|
| `ollama-cloud/deepseek-v3.1:671b` | 164K | | | | | | — | — |
|
|
39
39
|
| `ollama-cloud/deepseek-v3.2` | 164K | | | | | | — | — |
|
|
40
|
+
| `ollama-cloud/deepseek-v4-flash` | 1.0M | | | | | | — | — |
|
|
41
|
+
| `ollama-cloud/deepseek-v4-pro` | 1.0M | | | | | | — | — |
|
|
40
42
|
| `ollama-cloud/devstral-2:123b` | 262K | | | | | | — | — |
|
|
41
43
|
| `ollama-cloud/devstral-small-2:24b` | 262K | | | | | | — | — |
|
|
42
44
|
| `ollama-cloud/gemini-3-flash-preview` | 1.0M | | | | | | — | — |
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# OpenCode Go
|
|
2
2
|
|
|
3
|
-
Access
|
|
3
|
+
Access 14 OpenCode Go models through Mastra's model router. Authentication is handled automatically using the `OPENCODE_API_KEY` environment variable.
|
|
4
4
|
|
|
5
5
|
Learn more in the [OpenCode Go documentation](https://opencode.ai/docs/zen).
|
|
6
6
|
|
|
@@ -15,7 +15,7 @@ const agent = new Agent({
|
|
|
15
15
|
id: "my-agent",
|
|
16
16
|
name: "My Agent",
|
|
17
17
|
instructions: "You are a helpful assistant",
|
|
18
|
-
model: "opencode-go/
|
|
18
|
+
model: "opencode-go/deepseek-v4-flash"
|
|
19
19
|
});
|
|
20
20
|
|
|
21
21
|
// Generate a response
|
|
@@ -32,20 +32,22 @@ for await (const chunk of stream) {
|
|
|
32
32
|
|
|
33
33
|
## Models
|
|
34
34
|
|
|
35
|
-
| Model
|
|
36
|
-
|
|
|
37
|
-
| `opencode-go/
|
|
38
|
-
| `opencode-go/
|
|
39
|
-
| `opencode-go/
|
|
40
|
-
| `opencode-go/
|
|
41
|
-
| `opencode-go/
|
|
42
|
-
| `opencode-go/
|
|
43
|
-
| `opencode-go/mimo-v2
|
|
44
|
-
| `opencode-go/mimo-v2
|
|
45
|
-
| `opencode-go/
|
|
46
|
-
| `opencode-go/
|
|
47
|
-
| `opencode-go/
|
|
48
|
-
| `opencode-go/
|
|
35
|
+
| Model | Context | Tools | Reasoning | Image | Audio | Video | Input $/1M | Output $/1M |
|
|
36
|
+
| ------------------------------- | ------- | ----- | --------- | ----- | ----- | ----- | ---------- | ----------- |
|
|
37
|
+
| `opencode-go/deepseek-v4-flash` | 1.0M | | | | | | $0.14 | $0.28 |
|
|
38
|
+
| `opencode-go/deepseek-v4-pro` | 1.0M | | | | | | $2 | $3 |
|
|
39
|
+
| `opencode-go/glm-5` | 203K | | | | | | $1 | $3 |
|
|
40
|
+
| `opencode-go/glm-5.1` | 203K | | | | | | $1 | $4 |
|
|
41
|
+
| `opencode-go/kimi-k2.5` | 262K | | | | | | $0.60 | $3 |
|
|
42
|
+
| `opencode-go/kimi-k2.6` | 262K | | | | | | $0.32 | $1 |
|
|
43
|
+
| `opencode-go/mimo-v2-omni` | 262K | | | | | | $0.40 | $2 |
|
|
44
|
+
| `opencode-go/mimo-v2-pro` | 1.0M | | | | | | $1 | $3 |
|
|
45
|
+
| `opencode-go/mimo-v2.5` | 1.0M | | | | | | $0.40 | $2 |
|
|
46
|
+
| `opencode-go/mimo-v2.5-pro` | 1.0M | | | | | | $1 | $3 |
|
|
47
|
+
| `opencode-go/minimax-m2.5` | 205K | | | | | | $0.30 | $1 |
|
|
48
|
+
| `opencode-go/minimax-m2.7` | 205K | | | | | | $0.30 | $1 |
|
|
49
|
+
| `opencode-go/qwen3.5-plus` | 262K | | | | | | $0.20 | $1 |
|
|
50
|
+
| `opencode-go/qwen3.6-plus` | 262K | | | | | | $0.50 | $3 |
|
|
49
51
|
|
|
50
52
|
## Advanced configuration
|
|
51
53
|
|
|
@@ -57,7 +59,7 @@ const agent = new Agent({
|
|
|
57
59
|
name: "custom-agent",
|
|
58
60
|
model: {
|
|
59
61
|
url: "https://opencode.ai/zen/go/v1",
|
|
60
|
-
id: "opencode-go/
|
|
62
|
+
id: "opencode-go/deepseek-v4-flash",
|
|
61
63
|
apiKey: process.env.OPENCODE_API_KEY,
|
|
62
64
|
headers: {
|
|
63
65
|
"X-Custom-Header": "value"
|
|
@@ -76,7 +78,7 @@ const agent = new Agent({
|
|
|
76
78
|
const useAdvanced = requestContext.task === "complex";
|
|
77
79
|
return useAdvanced
|
|
78
80
|
? "opencode-go/qwen3.6-plus"
|
|
79
|
-
: "opencode-go/
|
|
81
|
+
: "opencode-go/deepseek-v4-flash";
|
|
80
82
|
}
|
|
81
83
|
});
|
|
82
84
|
```
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# OpenCode Zen
|
|
2
2
|
|
|
3
|
-
Access
|
|
3
|
+
Access 40 OpenCode Zen models through Mastra's model router. Authentication is handled automatically using the `OPENCODE_API_KEY` environment variable.
|
|
4
4
|
|
|
5
5
|
Learn more in the [OpenCode Zen documentation](https://opencode.ai/docs/zen).
|
|
6
6
|
|
|
@@ -35,7 +35,6 @@ for await (const chunk of stream) {
|
|
|
35
35
|
| Model | Context | Tools | Reasoning | Image | Audio | Video | Input $/1M | Output $/1M |
|
|
36
36
|
| -------------------------------- | ------- | ----- | --------- | ----- | ----- | ----- | ---------- | ----------- |
|
|
37
37
|
| `opencode/big-pickle` | 200K | | | | | | — | — |
|
|
38
|
-
| `opencode/claude-3-5-haiku` | 200K | | | | | | $0.80 | $4 |
|
|
39
38
|
| `opencode/claude-haiku-4-5` | 200K | | | | | | $1 | $5 |
|
|
40
39
|
| `opencode/claude-opus-4-1` | 200K | | | | | | $15 | $75 |
|
|
41
40
|
| `opencode/claude-opus-4-5` | 200K | | | | | | $5 | $25 |
|
|
@@ -63,6 +62,8 @@ for await (const chunk of stream) {
|
|
|
63
62
|
| `opencode/gpt-5.4-mini` | 400K | | | | | | $0.75 | $5 |
|
|
64
63
|
| `opencode/gpt-5.4-nano` | 400K | | | | | | $0.20 | $1 |
|
|
65
64
|
| `opencode/gpt-5.4-pro` | 1.1M | | | | | | $30 | $180 |
|
|
65
|
+
| `opencode/gpt-5.5` | 1.1M | | | | | | $5 | $30 |
|
|
66
|
+
| `opencode/gpt-5.5-pro` | 1.1M | | | | | | $30 | $180 |
|
|
66
67
|
| `opencode/hy3-preview-free` | 256K | | | | | | — | — |
|
|
67
68
|
| `opencode/kimi-k2.5` | 262K | | | | | | $0.60 | $3 |
|
|
68
69
|
| `opencode/kimi-k2.6` | 262K | | | | | | $0.95 | $4 |
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# Poe
|
|
2
2
|
|
|
3
|
-
Access
|
|
3
|
+
Access 121 Poe models through Mastra's model router. Authentication is handled automatically using the `POE_API_KEY` environment variable.
|
|
4
4
|
|
|
5
5
|
Learn more in the [Poe documentation](https://creator.poe.com/docs/external-applications/openai-compatible-api).
|
|
6
6
|
|
|
@@ -123,6 +123,8 @@ for await (const chunk of stream) {
|
|
|
123
123
|
| `poe/openai/gpt-5.4-mini` | 400K | | | | | | $0.68 | $4 |
|
|
124
124
|
| `poe/openai/gpt-5.4-nano` | 400K | | | | | | $0.18 | $1 |
|
|
125
125
|
| `poe/openai/gpt-5.4-pro` | 1.1M | | | | | | $27 | $160 |
|
|
126
|
+
| `poe/openai/gpt-5.5` | 400K | | | | | | $5 | $27 |
|
|
127
|
+
| `poe/openai/gpt-5.5-pro` | 400K | | | | | | $27 | $164 |
|
|
126
128
|
| `poe/openai/gpt-image-1` | 128K | | | | | | — | — |
|
|
127
129
|
| `poe/openai/gpt-image-1-mini` | — | | | | | | — | — |
|
|
128
130
|
| `poe/openai/gpt-image-1.5` | 128K | | | | | | — | — |
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# Together AI
|
|
2
2
|
|
|
3
|
-
Access
|
|
3
|
+
Access 17 Together AI models through Mastra's model router. Authentication is handled automatically using the `TOGETHER_API_KEY` environment variable.
|
|
4
4
|
|
|
5
5
|
Learn more in the [Together AI documentation](https://docs.together.ai/docs/serverless-models).
|
|
6
6
|
|
|
@@ -35,6 +35,7 @@ for await (const chunk of stream) {
|
|
|
35
35
|
| `togetherai/deepseek-ai/DeepSeek-R1` | 164K | | | | | | $3 | $7 |
|
|
36
36
|
| `togetherai/deepseek-ai/DeepSeek-V3` | 131K | | | | | | $1 | $1 |
|
|
37
37
|
| `togetherai/deepseek-ai/DeepSeek-V3-1` | 131K | | | | | | $0.60 | $2 |
|
|
38
|
+
| `togetherai/deepseek-ai/DeepSeek-V4-Pro` | 512K | | | | | | $2 | $4 |
|
|
38
39
|
| `togetherai/essentialai/Rnj-1-Instruct` | 33K | | | | | | $0.15 | $0.15 |
|
|
39
40
|
| `togetherai/google/gemma-4-31B-it` | 262K | | | | | | $0.20 | $0.50 |
|
|
40
41
|
| `togetherai/meta-llama/Llama-3.3-70B-Instruct-Turbo` | 131K | | | | | | $0.88 | $0.88 |
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# Xiaomi Token Plan (Europe)
|
|
2
2
|
|
|
3
|
-
Access
|
|
3
|
+
Access 5 Xiaomi Token Plan (Europe) models through Mastra's model router. Authentication is handled automatically using the `XIAOMI_API_KEY` environment variable.
|
|
4
4
|
|
|
5
5
|
Learn more in the [Xiaomi Token Plan (Europe) documentation](https://platform.xiaomimimo.com/#/docs).
|
|
6
6
|
|
|
@@ -32,11 +32,13 @@ for await (const chunk of stream) {
|
|
|
32
32
|
|
|
33
33
|
## Models
|
|
34
34
|
|
|
35
|
-
| Model
|
|
36
|
-
|
|
|
37
|
-
| `xiaomi-token-plan-ams/mimo-v2-omni`
|
|
38
|
-
| `xiaomi-token-plan-ams/mimo-v2-pro`
|
|
39
|
-
| `xiaomi-token-plan-ams/mimo-v2-tts`
|
|
35
|
+
| Model | Context | Tools | Reasoning | Image | Audio | Video | Input $/1M | Output $/1M |
|
|
36
|
+
| ------------------------------------- | ------- | ----- | --------- | ----- | ----- | ----- | ---------- | ----------- |
|
|
37
|
+
| `xiaomi-token-plan-ams/mimo-v2-omni` | 256K | | | | | | — | — |
|
|
38
|
+
| `xiaomi-token-plan-ams/mimo-v2-pro` | 1.0M | | | | | | — | — |
|
|
39
|
+
| `xiaomi-token-plan-ams/mimo-v2-tts` | 8K | | | | | | — | — |
|
|
40
|
+
| `xiaomi-token-plan-ams/mimo-v2.5` | 1.0M | | | | | | — | — |
|
|
41
|
+
| `xiaomi-token-plan-ams/mimo-v2.5-pro` | 1.0M | | | | | | — | — |
|
|
40
42
|
|
|
41
43
|
## Advanced configuration
|
|
42
44
|
|
|
@@ -66,7 +68,7 @@ const agent = new Agent({
|
|
|
66
68
|
model: ({ requestContext }) => {
|
|
67
69
|
const useAdvanced = requestContext.task === "complex";
|
|
68
70
|
return useAdvanced
|
|
69
|
-
? "xiaomi-token-plan-ams/mimo-v2-
|
|
71
|
+
? "xiaomi-token-plan-ams/mimo-v2.5-pro"
|
|
70
72
|
: "xiaomi-token-plan-ams/mimo-v2-omni";
|
|
71
73
|
}
|
|
72
74
|
});
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# Xiaomi Token Plan (China)
|
|
2
2
|
|
|
3
|
-
Access
|
|
3
|
+
Access 5 Xiaomi Token Plan (China) models through Mastra's model router. Authentication is handled automatically using the `XIAOMI_API_KEY` environment variable.
|
|
4
4
|
|
|
5
5
|
Learn more in the [Xiaomi Token Plan (China) documentation](https://platform.xiaomimimo.com/#/docs).
|
|
6
6
|
|
|
@@ -32,11 +32,13 @@ for await (const chunk of stream) {
|
|
|
32
32
|
|
|
33
33
|
## Models
|
|
34
34
|
|
|
35
|
-
| Model
|
|
36
|
-
|
|
|
37
|
-
| `xiaomi-token-plan-cn/mimo-v2-omni`
|
|
38
|
-
| `xiaomi-token-plan-cn/mimo-v2-pro`
|
|
39
|
-
| `xiaomi-token-plan-cn/mimo-v2-tts`
|
|
35
|
+
| Model | Context | Tools | Reasoning | Image | Audio | Video | Input $/1M | Output $/1M |
|
|
36
|
+
| ------------------------------------ | ------- | ----- | --------- | ----- | ----- | ----- | ---------- | ----------- |
|
|
37
|
+
| `xiaomi-token-plan-cn/mimo-v2-omni` | 256K | | | | | | — | — |
|
|
38
|
+
| `xiaomi-token-plan-cn/mimo-v2-pro` | 1.0M | | | | | | — | — |
|
|
39
|
+
| `xiaomi-token-plan-cn/mimo-v2-tts` | 8K | | | | | | — | — |
|
|
40
|
+
| `xiaomi-token-plan-cn/mimo-v2.5` | 1.0M | | | | | | — | — |
|
|
41
|
+
| `xiaomi-token-plan-cn/mimo-v2.5-pro` | 1.0M | | | | | | — | — |
|
|
40
42
|
|
|
41
43
|
## Advanced configuration
|
|
42
44
|
|
|
@@ -66,7 +68,7 @@ const agent = new Agent({
|
|
|
66
68
|
model: ({ requestContext }) => {
|
|
67
69
|
const useAdvanced = requestContext.task === "complex";
|
|
68
70
|
return useAdvanced
|
|
69
|
-
? "xiaomi-token-plan-cn/mimo-v2-
|
|
71
|
+
? "xiaomi-token-plan-cn/mimo-v2.5-pro"
|
|
70
72
|
: "xiaomi-token-plan-cn/mimo-v2-omni";
|
|
71
73
|
}
|
|
72
74
|
});
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# Xiaomi Token Plan (Singapore)
|
|
2
2
|
|
|
3
|
-
Access
|
|
3
|
+
Access 5 Xiaomi Token Plan (Singapore) models through Mastra's model router. Authentication is handled automatically using the `XIAOMI_API_KEY` environment variable.
|
|
4
4
|
|
|
5
5
|
Learn more in the [Xiaomi Token Plan (Singapore) documentation](https://platform.xiaomimimo.com/#/docs).
|
|
6
6
|
|
|
@@ -32,11 +32,13 @@ for await (const chunk of stream) {
|
|
|
32
32
|
|
|
33
33
|
## Models
|
|
34
34
|
|
|
35
|
-
| Model
|
|
36
|
-
|
|
|
37
|
-
| `xiaomi-token-plan-sgp/mimo-v2-omni`
|
|
38
|
-
| `xiaomi-token-plan-sgp/mimo-v2-pro`
|
|
39
|
-
| `xiaomi-token-plan-sgp/mimo-v2-tts`
|
|
35
|
+
| Model | Context | Tools | Reasoning | Image | Audio | Video | Input $/1M | Output $/1M |
|
|
36
|
+
| ------------------------------------- | ------- | ----- | --------- | ----- | ----- | ----- | ---------- | ----------- |
|
|
37
|
+
| `xiaomi-token-plan-sgp/mimo-v2-omni` | 256K | | | | | | — | — |
|
|
38
|
+
| `xiaomi-token-plan-sgp/mimo-v2-pro` | 1.0M | | | | | | — | — |
|
|
39
|
+
| `xiaomi-token-plan-sgp/mimo-v2-tts` | 8K | | | | | | — | — |
|
|
40
|
+
| `xiaomi-token-plan-sgp/mimo-v2.5` | 1.0M | | | | | | — | — |
|
|
41
|
+
| `xiaomi-token-plan-sgp/mimo-v2.5-pro` | 1.0M | | | | | | — | — |
|
|
40
42
|
|
|
41
43
|
## Advanced configuration
|
|
42
44
|
|
|
@@ -66,7 +68,7 @@ const agent = new Agent({
|
|
|
66
68
|
model: ({ requestContext }) => {
|
|
67
69
|
const useAdvanced = requestContext.task === "complex";
|
|
68
70
|
return useAdvanced
|
|
69
|
-
? "xiaomi-token-plan-sgp/mimo-v2-
|
|
71
|
+
? "xiaomi-token-plan-sgp/mimo-v2.5-pro"
|
|
70
72
|
: "xiaomi-token-plan-sgp/mimo-v2-omni";
|
|
71
73
|
}
|
|
72
74
|
});
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# Xiaomi
|
|
2
2
|
|
|
3
|
-
Access
|
|
3
|
+
Access 5 Xiaomi models through Mastra's model router. Authentication is handled automatically using the `XIAOMI_API_KEY` environment variable.
|
|
4
4
|
|
|
5
5
|
Learn more in the [Xiaomi documentation](https://platform.xiaomimimo.com/#/docs).
|
|
6
6
|
|
|
@@ -37,6 +37,8 @@ for await (const chunk of stream) {
|
|
|
37
37
|
| `xiaomi/mimo-v2-flash` | 256K | | | | | | $0.10 | $0.30 |
|
|
38
38
|
| `xiaomi/mimo-v2-omni` | 256K | | | | | | $0.40 | $2 |
|
|
39
39
|
| `xiaomi/mimo-v2-pro` | 1.0M | | | | | | $1 | $3 |
|
|
40
|
+
| `xiaomi/mimo-v2.5` | 1.0M | | | | | | $0.40 | $2 |
|
|
41
|
+
| `xiaomi/mimo-v2.5-pro` | 1.0M | | | | | | $1 | $3 |
|
|
40
42
|
|
|
41
43
|
## Advanced configuration
|
|
42
44
|
|
|
@@ -66,7 +68,7 @@ const agent = new Agent({
|
|
|
66
68
|
model: ({ requestContext }) => {
|
|
67
69
|
const useAdvanced = requestContext.task === "complex";
|
|
68
70
|
return useAdvanced
|
|
69
|
-
? "xiaomi/mimo-v2-pro"
|
|
71
|
+
? "xiaomi/mimo-v2.5-pro"
|
|
70
72
|
: "xiaomi/mimo-v2-flash";
|
|
71
73
|
}
|
|
72
74
|
});
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# Z.AI Coding Plan
|
|
2
2
|
|
|
3
|
-
Access
|
|
3
|
+
Access 4 Z.AI Coding Plan models through Mastra's model router. Authentication is handled automatically using the `ZHIPU_API_KEY` environment variable.
|
|
4
4
|
|
|
5
5
|
Learn more in the [Z.AI Coding Plan documentation](https://docs.z.ai/devpack/overview).
|
|
6
6
|
|
|
@@ -15,7 +15,7 @@ const agent = new Agent({
|
|
|
15
15
|
id: "my-agent",
|
|
16
16
|
name: "My Agent",
|
|
17
17
|
instructions: "You are a helpful assistant",
|
|
18
|
-
model: "zai-coding-plan/glm-4.5"
|
|
18
|
+
model: "zai-coding-plan/glm-4.5-air"
|
|
19
19
|
});
|
|
20
20
|
|
|
21
21
|
// Generate a response
|
|
@@ -32,21 +32,12 @@ for await (const chunk of stream) {
|
|
|
32
32
|
|
|
33
33
|
## Models
|
|
34
34
|
|
|
35
|
-
| Model
|
|
36
|
-
|
|
|
37
|
-
| `zai-coding-plan/glm-4.5`
|
|
38
|
-
| `zai-coding-plan/glm-4.
|
|
39
|
-
| `zai-coding-plan/glm-
|
|
40
|
-
| `zai-coding-plan/glm-
|
|
41
|
-
| `zai-coding-plan/glm-4.6` | 205K | | | | | | — | — |
|
|
42
|
-
| `zai-coding-plan/glm-4.6v` | 128K | | | | | | — | — |
|
|
43
|
-
| `zai-coding-plan/glm-4.7` | 205K | | | | | | — | — |
|
|
44
|
-
| `zai-coding-plan/glm-4.7-flash` | 200K | | | | | | — | — |
|
|
45
|
-
| `zai-coding-plan/glm-4.7-flashx` | 200K | | | | | | $0.07 | $0.40 |
|
|
46
|
-
| `zai-coding-plan/glm-5` | 205K | | | | | | — | — |
|
|
47
|
-
| `zai-coding-plan/glm-5-turbo` | 200K | | | | | | — | — |
|
|
48
|
-
| `zai-coding-plan/glm-5.1` | 200K | | | | | | — | — |
|
|
49
|
-
| `zai-coding-plan/glm-5v-turbo` | 200K | | | | | | — | — |
|
|
35
|
+
| Model | Context | Tools | Reasoning | Image | Audio | Video | Input $/1M | Output $/1M |
|
|
36
|
+
| ----------------------------- | ------- | ----- | --------- | ----- | ----- | ----- | ---------- | ----------- |
|
|
37
|
+
| `zai-coding-plan/glm-4.5-air` | 131K | | | | | | — | — |
|
|
38
|
+
| `zai-coding-plan/glm-4.7` | 205K | | | | | | — | — |
|
|
39
|
+
| `zai-coding-plan/glm-5-turbo` | 200K | | | | | | — | — |
|
|
40
|
+
| `zai-coding-plan/glm-5.1` | 200K | | | | | | — | — |
|
|
50
41
|
|
|
51
42
|
## Advanced configuration
|
|
52
43
|
|
|
@@ -58,7 +49,7 @@ const agent = new Agent({
|
|
|
58
49
|
name: "custom-agent",
|
|
59
50
|
model: {
|
|
60
51
|
url: "https://api.z.ai/api/coding/paas/v4",
|
|
61
|
-
id: "zai-coding-plan/glm-4.5",
|
|
52
|
+
id: "zai-coding-plan/glm-4.5-air",
|
|
62
53
|
apiKey: process.env.ZHIPU_API_KEY,
|
|
63
54
|
headers: {
|
|
64
55
|
"X-Custom-Header": "value"
|
|
@@ -76,8 +67,8 @@ const agent = new Agent({
|
|
|
76
67
|
model: ({ requestContext }) => {
|
|
77
68
|
const useAdvanced = requestContext.task === "complex";
|
|
78
69
|
return useAdvanced
|
|
79
|
-
? "zai-coding-plan/glm-
|
|
80
|
-
: "zai-coding-plan/glm-4.5";
|
|
70
|
+
? "zai-coding-plan/glm-5.1"
|
|
71
|
+
: "zai-coding-plan/glm-4.5-air";
|
|
81
72
|
}
|
|
82
73
|
});
|
|
83
74
|
```
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# Zhipu AI Coding Plan
|
|
2
2
|
|
|
3
|
-
Access
|
|
3
|
+
Access 4 Zhipu AI Coding Plan models through Mastra's model router. Authentication is handled automatically using the `ZHIPU_API_KEY` environment variable.
|
|
4
4
|
|
|
5
5
|
Learn more in the [Zhipu AI Coding Plan documentation](https://docs.bigmodel.cn/cn/coding-plan/overview).
|
|
6
6
|
|
|
@@ -15,7 +15,7 @@ const agent = new Agent({
|
|
|
15
15
|
id: "my-agent",
|
|
16
16
|
name: "My Agent",
|
|
17
17
|
instructions: "You are a helpful assistant",
|
|
18
|
-
model: "zhipuai-coding-plan/glm-4.5"
|
|
18
|
+
model: "zhipuai-coding-plan/glm-4.5-air"
|
|
19
19
|
});
|
|
20
20
|
|
|
21
21
|
// Generate a response
|
|
@@ -32,22 +32,12 @@ for await (const chunk of stream) {
|
|
|
32
32
|
|
|
33
33
|
## Models
|
|
34
34
|
|
|
35
|
-
| Model
|
|
36
|
-
|
|
|
37
|
-
| `zhipuai-coding-plan/glm-4.5`
|
|
38
|
-
| `zhipuai-coding-plan/glm-4.
|
|
39
|
-
| `zhipuai-coding-plan/glm-
|
|
40
|
-
| `zhipuai-coding-plan/glm-
|
|
41
|
-
| `zhipuai-coding-plan/glm-4.6` | 205K | | | | | | — | — |
|
|
42
|
-
| `zhipuai-coding-plan/glm-4.6v` | 128K | | | | | | — | — |
|
|
43
|
-
| `zhipuai-coding-plan/glm-4.6v-flash` | 128K | | | | | | — | — |
|
|
44
|
-
| `zhipuai-coding-plan/glm-4.7` | 205K | | | | | | — | — |
|
|
45
|
-
| `zhipuai-coding-plan/glm-4.7-flash` | 200K | | | | | | — | — |
|
|
46
|
-
| `zhipuai-coding-plan/glm-4.7-flashx` | 200K | | | | | | $0.07 | $0.40 |
|
|
47
|
-
| `zhipuai-coding-plan/glm-5` | 205K | | | | | | — | — |
|
|
48
|
-
| `zhipuai-coding-plan/glm-5-turbo` | 200K | | | | | | — | — |
|
|
49
|
-
| `zhipuai-coding-plan/glm-5.1` | 200K | | | | | | — | — |
|
|
50
|
-
| `zhipuai-coding-plan/glm-5v-turbo` | 200K | | | | | | — | — |
|
|
35
|
+
| Model | Context | Tools | Reasoning | Image | Audio | Video | Input $/1M | Output $/1M |
|
|
36
|
+
| --------------------------------- | ------- | ----- | --------- | ----- | ----- | ----- | ---------- | ----------- |
|
|
37
|
+
| `zhipuai-coding-plan/glm-4.5-air` | 131K | | | | | | — | — |
|
|
38
|
+
| `zhipuai-coding-plan/glm-4.7` | 205K | | | | | | — | — |
|
|
39
|
+
| `zhipuai-coding-plan/glm-5-turbo` | 200K | | | | | | — | — |
|
|
40
|
+
| `zhipuai-coding-plan/glm-5.1` | 200K | | | | | | — | — |
|
|
51
41
|
|
|
52
42
|
## Advanced configuration
|
|
53
43
|
|
|
@@ -59,7 +49,7 @@ const agent = new Agent({
|
|
|
59
49
|
name: "custom-agent",
|
|
60
50
|
model: {
|
|
61
51
|
url: "https://open.bigmodel.cn/api/coding/paas/v4",
|
|
62
|
-
id: "zhipuai-coding-plan/glm-4.5",
|
|
52
|
+
id: "zhipuai-coding-plan/glm-4.5-air",
|
|
63
53
|
apiKey: process.env.ZHIPU_API_KEY,
|
|
64
54
|
headers: {
|
|
65
55
|
"X-Custom-Header": "value"
|
|
@@ -77,8 +67,8 @@ const agent = new Agent({
|
|
|
77
67
|
model: ({ requestContext }) => {
|
|
78
68
|
const useAdvanced = requestContext.task === "complex";
|
|
79
69
|
return useAdvanced
|
|
80
|
-
? "zhipuai-coding-plan/glm-
|
|
81
|
-
: "zhipuai-coding-plan/glm-4.5";
|
|
70
|
+
? "zhipuai-coding-plan/glm-5.1"
|
|
71
|
+
: "zhipuai-coding-plan/glm-4.5-air";
|
|
82
72
|
}
|
|
83
73
|
});
|
|
84
74
|
```
|
|
@@ -11,6 +11,7 @@ Direct access to individual AI model providers. Each provider offers unique mode
|
|
|
11
11
|
- [xAI](https://mastra.ai/models/providers/xai)
|
|
12
12
|
- [302.AI](https://mastra.ai/models/providers/302ai)
|
|
13
13
|
- [Abacus](https://mastra.ai/models/providers/abacus)
|
|
14
|
+
- [abliteration.ai](https://mastra.ai/models/providers/abliteration-ai)
|
|
14
15
|
- [Alibaba](https://mastra.ai/models/providers/alibaba)
|
|
15
16
|
- [Alibaba (China)](https://mastra.ai/models/providers/alibaba-cn)
|
|
16
17
|
- [Alibaba Coding Plan](https://mastra.ai/models/providers/alibaba-coding-plan)
|
|
@@ -151,6 +151,30 @@ for await (const part of uiMessageStream) {
|
|
|
151
151
|
}
|
|
152
152
|
```
|
|
153
153
|
|
|
154
|
+
### `streamUntilIdle()`
|
|
155
|
+
|
|
156
|
+
Stream a response and keep the stream open until every [background task](https://mastra.ai/docs/agents/background-tasks) dispatched during the run completes. The server re-enters the agentic loop on each task completion so the LLM can react to results in the same call. Requires background tasks to be [enabled on the Mastra instance](https://mastra.ai/reference/configuration) and a memory thread; otherwise the call falls through to a plain `stream()`.
|
|
157
|
+
|
|
158
|
+
```typescript
|
|
159
|
+
const response = await agent.streamUntilIdle('Research solana for me', {
|
|
160
|
+
memory: {
|
|
161
|
+
thread: 'thread-1',
|
|
162
|
+
resource: 'resource-1',
|
|
163
|
+
},
|
|
164
|
+
maxIdleMs: 5 * 60_000,
|
|
165
|
+
})
|
|
166
|
+
|
|
167
|
+
response.processDataStream({
|
|
168
|
+
onChunk: async chunk => {
|
|
169
|
+
if (chunk.type === 'background-task-completed') {
|
|
170
|
+
console.log('task complete:', chunk.payload.taskId)
|
|
171
|
+
}
|
|
172
|
+
},
|
|
173
|
+
})
|
|
174
|
+
```
|
|
175
|
+
|
|
176
|
+
The stream emits the same chunk types as `stream()`, plus `background-task-*` chunks for task lifecycle events. Visit [`Agent.streamUntilIdle()`](https://mastra.ai/reference/streaming/agents/streamUntilIdle) for the full server-side API and [background task chunks](https://mastra.ai/reference/streaming/ChunkType) for the payload shapes.
|
|
177
|
+
|
|
154
178
|
### `getTool()`
|
|
155
179
|
|
|
156
180
|
Retrieve information about a specific tool available to the agent:
|
|
@@ -217,6 +241,26 @@ response.processDataStream({
|
|
|
217
241
|
})
|
|
218
242
|
```
|
|
219
243
|
|
|
244
|
+
### `resumeStream()`
|
|
245
|
+
|
|
246
|
+
Resume a suspended agent stream with custom data. Use this to continue execution after a suspension point, such as a workflow suspend within an agent:
|
|
247
|
+
|
|
248
|
+
```typescript
|
|
249
|
+
const response = await agent.resumeStream(
|
|
250
|
+
{ approved: true, selectedOption: 'plan-b' },
|
|
251
|
+
{
|
|
252
|
+
runId: 'run-123',
|
|
253
|
+
toolCallId: 'tool-call-456', // optional
|
|
254
|
+
},
|
|
255
|
+
)
|
|
256
|
+
|
|
257
|
+
await response.processDataStream({
|
|
258
|
+
onChunk: chunk => {
|
|
259
|
+
console.log(chunk)
|
|
260
|
+
},
|
|
261
|
+
})
|
|
262
|
+
```
|
|
263
|
+
|
|
220
264
|
### `approveToolCallGenerate()`
|
|
221
265
|
|
|
222
266
|
Approve a pending tool call when using `generate()` (non-streaming). Returns the complete response:
|