@mastra/mcp-docs-server 1.3.8 → 1.3.9-alpha.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.docs/docs/mastra-platform/connect/channels.md +14 -2
- package/.docs/docs/mastra-platform/connect/overview.md +1 -1
- package/.docs/docs/mastra-platform/connect/providers.md +1 -0
- package/.docs/models/gateways/merge-gateway.md +2 -1
- package/.docs/models/gateways/netlify.md +7 -1
- package/.docs/models/gateways/openrouter.md +4 -1
- package/.docs/models/gateways/vercel.md +4 -3
- package/.docs/models/index.md +1 -1
- package/.docs/models/providers/302ai.md +2 -1
- package/.docs/models/providers/ambient.md +2 -1
- package/.docs/models/providers/cortecs.md +1 -2
- package/.docs/models/providers/deepinfra.md +2 -1
- package/.docs/models/providers/edenai.md +3 -1
- package/.docs/models/providers/engy.md +2 -2
- package/.docs/models/providers/fireworks-ai.md +2 -1
- package/.docs/models/providers/hyper.md +2 -1
- package/.docs/models/providers/iteracompute.md +11 -10
- package/.docs/models/providers/kilo.md +21 -18
- package/.docs/models/providers/llmgateway-providers.md +1 -7
- package/.docs/models/providers/llmgateway.md +1 -4
- package/.docs/models/providers/nano-gpt.md +5 -2
- package/.docs/models/providers/nebius.md +3 -1
- package/.docs/models/providers/ollama-cloud.md +2 -1
- package/.docs/models/providers/opencode-go.md +4 -4
- package/.docs/models/providers/opencode.md +5 -4
- package/.docs/models/providers/prime.md +3 -2
- package/.docs/models/providers/requesty.md +2 -1
- package/.docs/models/providers/wandb.md +24 -23
- package/.docs/models/providers/xiaomi-token-plan-ams.md +0 -2
- package/.docs/models/providers/xiaomi-token-plan-cn.md +0 -2
- package/.docs/models/providers/xiaomi-token-plan-sgp.md +0 -2
- package/.docs/models/providers/xiaomi.md +0 -3
- package/.docs/reference/agents/durable-agent.md +3 -1
- package/.docs/reference/classifier/classifier.md +2 -2
- package/.docs/reference/cli/mastra.md +5 -3
- package/.docs/reference/client-js/observability.md +44 -0
- package/.docs/reference/connect/channels.md +2 -2
- package/.docs/reference/connect/providers.md +34 -1
- package/.docs/reference/datasets/list.md +9 -1
- package/.docs/reference/observability/metrics/automatic-metrics.md +3 -3
- package/.docs/reference/observability/metrics/queries.md +1 -0
- package/.docs/reference/observability/tracing/interfaces.md +6 -0
- package/.docs/reference/streaming/agents/stream.md +18 -0
- package/package.json +5 -5
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
|
|
5
5
|
# NanoGPT
|
|
6
6
|
|
|
7
|
-
Access
|
|
7
|
+
Access 617 NanoGPT models through Mastra's model router. Authentication is handled automatically using the `NANO_GPT_API_KEY` environment variable.
|
|
8
8
|
|
|
9
9
|
Learn more in the [NanoGPT documentation](https://docs.nano-gpt.com).
|
|
10
10
|
|
|
@@ -167,6 +167,7 @@ for await (const chunk of stream) {
|
|
|
167
167
|
| `nano-gpt/failspy/Meta-Llama-3-70B-Instruct-abliterated-v3.5` | 8K | | | | | | $0.70 | $0.70 |
|
|
168
168
|
| `nano-gpt/fastgpt` | 33K | | | | | | $8 | $8 |
|
|
169
169
|
| `nano-gpt/featherless-ai/Qwerky-72B` | 32K | | | | | | $0.50 | $0.50 |
|
|
170
|
+
| `nano-gpt/fireworks/ember-1` | 1.0M | | | | | | $3 | $15 |
|
|
170
171
|
| `nano-gpt/GalrionSoftworks/MN-LooseCannon-12B-v1` | 16K | | | | | | $0.49 | $0.49 |
|
|
171
172
|
| `nano-gpt/gemini-2.0-pro-exp-02-05` | 2.1M | | | | | | $2 | $8 |
|
|
172
173
|
| `nano-gpt/gemini-2.0-pro-reasoner` | 128K | | | | | | $1 | $5 |
|
|
@@ -295,6 +296,7 @@ for await (const chunk of stream) {
|
|
|
295
296
|
| `nano-gpt/meta/muse-spark-1.2-contributor` | 1.0M | | | | | | $0.10 | $0.20 |
|
|
296
297
|
| `nano-gpt/meta/muse-spark-1.3` | 1.0M | | | | | | $1 | $4 |
|
|
297
298
|
| `nano-gpt/meta/muse-spark-1.3-contributor` | 1.0M | | | | | | $0.10 | $0.20 |
|
|
299
|
+
| `nano-gpt/meta/muse-spark-open` | 1.0M | | | | | | $1 | $4 |
|
|
298
300
|
| `nano-gpt/microsoft/wizardlm-2-8x22b` | 66K | | | | | | $0.49 | $0.49 |
|
|
299
301
|
| `nano-gpt/MiniMax-M1` | 1.0M | | | | | | $0.14 | $1 |
|
|
300
302
|
| `nano-gpt/minimax/minimax-01` | 1.0M | | | | | | $0.14 | $1 |
|
|
@@ -365,6 +367,7 @@ for await (const chunk of stream) {
|
|
|
365
367
|
| `nano-gpt/nvidia/nemotron-3.5-content-safety` | 131K | | | | | | $0.05 | $0.15 |
|
|
366
368
|
| `nano-gpt/nvidia/nemotron-3.5-lightning` | 1.0M | | | | | | $0.05 | $0.20 |
|
|
367
369
|
| `nano-gpt/nvidia/nemotron-3.5-lightning:thinking` | 1.0M | | | | | | $0.05 | $0.20 |
|
|
370
|
+
| `nano-gpt/nvidia/nemotron-3.5-super-vl` | 262K | | | | | | $0.15 | $0.50 |
|
|
368
371
|
| `nano-gpt/openai/gpt-3.5-turbo` | 16K | | | | | | $0.50 | $2 |
|
|
369
372
|
| `nano-gpt/openai/gpt-4-turbo` | 128K | | | | | | $10 | $30 |
|
|
370
373
|
| `nano-gpt/openai/gpt-4.1` | 1.0M | | | | | | $2 | $8 |
|
|
@@ -453,7 +456,7 @@ for await (const chunk of stream) {
|
|
|
453
456
|
| `nano-gpt/qwen/qwen3-coder-next` | 262K | | | | | | $0.25 | $0.80 |
|
|
454
457
|
| `nano-gpt/qwen/qwen3-max` | 256K | | | | | | $1 | $6 |
|
|
455
458
|
| `nano-gpt/qwen/qwen3-max-2026-01-23` | 256K | | | | | | $1 | $6 |
|
|
456
|
-
| `nano-gpt/qwen/qwen3-next-80b-a3b-instruct` | 262K | | | | | | $0.
|
|
459
|
+
| `nano-gpt/qwen/qwen3-next-80b-a3b-instruct` | 262K | | | | | | $0.10 | $1 |
|
|
457
460
|
| `nano-gpt/qwen/qwen3-next-80b-a3b-thinking` | 256K | | | | | | $0.15 | $0.65 |
|
|
458
461
|
| `nano-gpt/qwen/qwen3-vl-235b-a22b-instruct` | 131K | | | | | | $0.30 | $2 |
|
|
459
462
|
| `nano-gpt/qwen/qwen3-vl-235b-a22b-thinking` | 131K | | | | | | $0.50 | $6 |
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
|
|
5
5
|
# Nebius Token Factory
|
|
6
6
|
|
|
7
|
-
Access
|
|
7
|
+
Access 23 Nebius Token Factory models through Mastra's model router. Authentication is handled automatically using the `NEBIUS_API_KEY` environment variable.
|
|
8
8
|
|
|
9
9
|
Learn more in the [Nebius Token Factory documentation](https://docs.tokenfactory.nebius.com/).
|
|
10
10
|
|
|
@@ -43,6 +43,7 @@ for await (const chunk of stream) {
|
|
|
43
43
|
| `nebius/deepseek-ai/DeepSeek-V4-Pro-0813` | 979K | | | | | | $1 | $4 |
|
|
44
44
|
| `nebius/deepseek-ai/DeepSeek-V4.1-Flash` | 1.0M | | | | | | $0.30 | $1 |
|
|
45
45
|
| `nebius/google/gemma-3-27b-it` | 110K | | | | | | $0.10 | $0.30 |
|
|
46
|
+
| `nebius/meta-models/muse-spark-open` | 1.0M | | | | | | $1 | $4 |
|
|
46
47
|
| `nebius/MiniMaxAI/MiniMax-M3` | 1.0M | | | | | | $0.30 | $1 |
|
|
47
48
|
| `nebius/moonshotai/Kimi-K2.7-Code` | 262K | | | | | | $0.95 | $4 |
|
|
48
49
|
| `nebius/moonshotai/Kimi-K3` | 1.0M | | | | | | $3 | $15 |
|
|
@@ -50,6 +51,7 @@ for await (const chunk of stream) {
|
|
|
50
51
|
| `nebius/nvidia/Nemotron-3_5-Lightning` | 1.0M | | | | | | $0.06 | $0.24 |
|
|
51
52
|
| `nebius/nvidia/nemotron-3-super-120b-a12b` | 262K | | | | | | $0.30 | $0.90 |
|
|
52
53
|
| `nebius/nvidia/Nemotron-3-Ultra-550b-a55b` | 1.0M | | | | | | $1 | $3 |
|
|
54
|
+
| `nebius/nvidia/Nemotron-3.5-Super-VL` | 1.0M | | | | | | $0.30 | $0.90 |
|
|
53
55
|
| `nebius/openai/gpt-oss-120b` | 131K | | | | | | $0.15 | $0.60 |
|
|
54
56
|
| `nebius/Qwen/Qwen3-235B-A22B-Instruct-2507` | 262K | | | | | | $0.20 | $0.60 |
|
|
55
57
|
| `nebius/Qwen/Qwen3-30B-A3B-Instruct-2507` | 262K | | | | | | $0.10 | $0.30 |
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
|
|
5
5
|
# Ollama Cloud
|
|
6
6
|
|
|
7
|
-
Access
|
|
7
|
+
Access 26 Ollama Cloud models through Mastra's model router. Authentication is handled automatically using the `OLLAMA_API_KEY` environment variable.
|
|
8
8
|
|
|
9
9
|
Learn more in the [Ollama Cloud documentation](https://docs.ollama.com/cloud).
|
|
10
10
|
|
|
@@ -59,6 +59,7 @@ for await (const chunk of stream) {
|
|
|
59
59
|
| `ollama-cloud/minimax-m3` | 512K | | | | | | $0.60 | $2 |
|
|
60
60
|
| `ollama-cloud/mistral-large-3:675b` | 262K | | | | | | $0.50 | $2 |
|
|
61
61
|
| `ollama-cloud/mistral-large-4` | 1.0M | | | | | | $1 | $4 |
|
|
62
|
+
| `ollama-cloud/muse-spark-open` | 1.0M | | | | | | $1 | $4 |
|
|
62
63
|
| `ollama-cloud/nemotron-3-nano:30b` | 1.0M | | | | | | $0.06 | $0.24 |
|
|
63
64
|
| `ollama-cloud/nemotron-3-super` | 262K | | | | | | $0.01 | $0.60 |
|
|
64
65
|
| `ollama-cloud/nemotron-3-ultra` | 262K | | | | | | $0.10 | $3 |
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
|
|
5
5
|
# OpenCode Go
|
|
6
6
|
|
|
7
|
-
Access
|
|
7
|
+
Access 31 OpenCode Go models through Mastra's model router. Authentication is handled automatically using the `OPENCODE_API_KEY` environment variable.
|
|
8
8
|
|
|
9
9
|
Learn more in the [OpenCode Go documentation](https://opencode.ai/v2/docs/console/go/).
|
|
10
10
|
|
|
@@ -38,7 +38,7 @@ for await (const chunk of stream) {
|
|
|
38
38
|
|
|
39
39
|
| Model | Context | Tools | Reasoning | Image | Audio | Video | Input $/1M | Output $/1M |
|
|
40
40
|
| ---------------------------------------- | ------- | ----- | --------- | ----- | ----- | ----- | ---------- | ----------- |
|
|
41
|
-
| `opencode-go/cat-jam-free` |
|
|
41
|
+
| `opencode-go/cat-jam-free` | 1.0M | | | | | | — | — |
|
|
42
42
|
| `opencode-go/claude-haiku-5-5` | 1.0M | | | | | | $0.10 | $0.50 |
|
|
43
43
|
| `opencode-go/deepseek-v4-pro` | 1.0M | | | | | | $0.66 | $2 |
|
|
44
44
|
| `opencode-go/deepseek-v4.1-flash` | 1.0M | | | | | | $0.15 | $0.60 |
|
|
@@ -66,7 +66,7 @@ for await (const chunk of stream) {
|
|
|
66
66
|
| `opencode-go/qwen3.8-flash` | 1.0M | | | | | | $0.15 | $0.47 |
|
|
67
67
|
| `opencode-go/qwen3.8-max` | 1.0M | | | | | | $2 | $6 |
|
|
68
68
|
| `opencode-go/space-bunny` | 1.0M | | | | | | $0.15 | $0.60 |
|
|
69
|
-
| `opencode-go/step-5-preview
|
|
69
|
+
| `opencode-go/step-5-preview` | 1.0M | | | | | | $1 | $3 |
|
|
70
70
|
|
|
71
71
|
Model availability, capabilities, context windows, and pricing are sourced from [models.dev](https://models.dev) and may change.
|
|
72
72
|
|
|
@@ -79,7 +79,7 @@ const agent = new Agent({
|
|
|
79
79
|
id: "custom-agent",
|
|
80
80
|
name: "custom-agent",
|
|
81
81
|
model: {
|
|
82
|
-
url: "https://opencode.ai/inference/go/v1",
|
|
82
|
+
url: "https://opencode.ai/inference/go/openai/v1",
|
|
83
83
|
id: "opencode-go/cat-jam-free",
|
|
84
84
|
apiKey: process.env.OPENCODE_API_KEY,
|
|
85
85
|
headers: {
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
|
|
5
5
|
# OpenCode
|
|
6
6
|
|
|
7
|
-
Access
|
|
7
|
+
Access 126 OpenCode models through Mastra's model router. Authentication is handled automatically using the `OPENCODE_API_KEY` environment variable.
|
|
8
8
|
|
|
9
9
|
Learn more in the [OpenCode documentation](https://opencode.ai/v2/docs/console/models/).
|
|
10
10
|
|
|
@@ -39,7 +39,7 @@ for await (const chunk of stream) {
|
|
|
39
39
|
| Model | Context | Tools | Reasoning | Image | Audio | Video | Input $/1M | Output $/1M |
|
|
40
40
|
| ------------------------------------------ | ------- | ----- | --------- | ----- | ----- | ----- | ---------- | ----------- |
|
|
41
41
|
| `opencode/big-pickle` | 200K | | | | | | — | — |
|
|
42
|
-
| `opencode/cat-jam-free` |
|
|
42
|
+
| `opencode/cat-jam-free` | 1.0M | | | | | | — | — |
|
|
43
43
|
| `opencode/claude-fable-5` | 1.0M | | | | | | $10 | $50 |
|
|
44
44
|
| `opencode/claude-fable-5-1` | 1.0M | | | | | | $10 | $50 |
|
|
45
45
|
| `opencode/claude-haiku-4-5` | 200K | | | | | | $1 | $5 |
|
|
@@ -73,6 +73,7 @@ for await (const chunk of stream) {
|
|
|
73
73
|
| `opencode/glm-5.2` | 1.0M | | | | | | $1 | $4 |
|
|
74
74
|
| `opencode/glm-5.3` | 1.0M | | | | | | $1 | $4 |
|
|
75
75
|
| `opencode/glm-5.3-flash` | 1.0M | | | | | | $0.15 | $0.50 |
|
|
76
|
+
| `opencode/glm-5.3-flash-free` | 200K | | | | | | — | — |
|
|
76
77
|
| `opencode/gpt-5` | 400K | | | | | | $1 | $9 |
|
|
77
78
|
| `opencode/gpt-5-codex` | 400K | | | | | | $1 | $9 |
|
|
78
79
|
| `opencode/gpt-5-nano` | 400K | | | | | | $0.05 | $0.40 |
|
|
@@ -105,6 +106,7 @@ for await (const chunk of stream) {
|
|
|
105
106
|
| `opencode/kimi-k2.6` | 262K | | | | | | $0.95 | $4 |
|
|
106
107
|
| `opencode/kimi-k2.7-code` | 262K | | | | | | $0.95 | $4 |
|
|
107
108
|
| `opencode/kimi-k3` | 1.0M | | | | | | $3 | $15 |
|
|
109
|
+
| `opencode/ll-alpha-free` | 262K | | | | | | — | — |
|
|
108
110
|
| `opencode/longcat-2.5-preview-free` | 1.0M | | | | | | — | — |
|
|
109
111
|
| `opencode/mimo-v2.6-flash-free` | 200K | | | | | | — | — |
|
|
110
112
|
| `opencode/minimax-m2.5` | 205K | | | | | | $0.30 | $1 |
|
|
@@ -122,7 +124,6 @@ for await (const chunk of stream) {
|
|
|
122
124
|
| `opencode/qwen3.8-flash` | 1.0M | | | | | | $0.15 | $0.47 |
|
|
123
125
|
| `opencode/qwen3.8-max` | 262K | | | | | | $2 | $6 |
|
|
124
126
|
| `opencode/space-bunny-free` | 1.0M | | | | | | — | — |
|
|
125
|
-
| `opencode/step-5-preview-free` | 1.0M | | | | | | — | — |
|
|
126
127
|
|
|
127
128
|
Model availability, capabilities, context windows, and pricing are sourced from [models.dev](https://models.dev) and may change.
|
|
128
129
|
|
|
@@ -135,7 +136,7 @@ const agent = new Agent({
|
|
|
135
136
|
id: "custom-agent",
|
|
136
137
|
name: "custom-agent",
|
|
137
138
|
model: {
|
|
138
|
-
url: "https://opencode.ai/inference/v1",
|
|
139
|
+
url: "https://opencode.ai/inference/openai/v1",
|
|
139
140
|
id: "opencode/big-pickle",
|
|
140
141
|
apiKey: process.env.OPENCODE_API_KEY,
|
|
141
142
|
headers: {
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
|
|
5
5
|
# Prime Inference
|
|
6
6
|
|
|
7
|
-
Access
|
|
7
|
+
Access 66 Prime Inference models through Mastra's model router. Authentication is handled automatically using the `PRIME_API_KEY` environment variable.
|
|
8
8
|
|
|
9
9
|
Learn more in the [Prime Inference documentation](https://docs.primeintellect.ai).
|
|
10
10
|
|
|
@@ -47,6 +47,7 @@ for await (const chunk of stream) {
|
|
|
47
47
|
| `prime/anthropic/claude-opus-5.5` | 1.0M | | | | | | $4 | $20 |
|
|
48
48
|
| `prime/anthropic/claude-sonnet-4.6` | 1.0M | | | | | | $3 | $15 |
|
|
49
49
|
| `prime/anthropic/claude-sonnet-5` | 1.0M | | | | | | $2 | $10 |
|
|
50
|
+
| `prime/anthropic/claude-sonnet-5.5` | 1.0M | | | | | | $2 | $10 |
|
|
50
51
|
| `prime/deepseek/deepseek-v4-flash` | 1.0M | | | | | | $0.44 | $1 |
|
|
51
52
|
| `prime/deepseek/deepseek-v4-flash-0731` | 1.0M | | | | | | $0.44 | $1 |
|
|
52
53
|
| `prime/deepseek/deepseek-v4-pro` | 1.0M | | | | | | $2 | $4 |
|
|
@@ -60,6 +61,7 @@ for await (const chunk of stream) {
|
|
|
60
61
|
| `prime/google/gemini-4-argon` | 1.0M | | | | | | $2 | $10 |
|
|
61
62
|
| `prime/google/gemma-3-27b-it` | 131K | | | | | | $0.12 | $0.30 |
|
|
62
63
|
| `prime/meta-llama/llama-3.3-70b-instruct` | 131K | | | | | | $1 | $2 |
|
|
64
|
+
| `prime/meta/muse-spark-open` | 1.0M | | | | | | $1 | $4 |
|
|
63
65
|
| `prime/mistralai/mistral-large-2512` | 262K | | | | | | $0.50 | $2 |
|
|
64
66
|
| `prime/mistralai/mistral-nemo` | 131K | | | | | | $0.17 | $0.17 |
|
|
65
67
|
| `prime/mistralai/mistral-small-2603` | 262K | | | | | | $0.17 | $0.66 |
|
|
@@ -76,7 +78,6 @@ for await (const chunk of stream) {
|
|
|
76
78
|
| `prime/openai/gpt-5-nano` | 400K | | | | | | $0.05 | $0.40 |
|
|
77
79
|
| `prime/openai/gpt-5.1` | 400K | | | | | | $1 | $10 |
|
|
78
80
|
| `prime/openai/gpt-5.2` | 400K | | | | | | $2 | $14 |
|
|
79
|
-
| `prime/openai/gpt-5.2-pro` | 400K | | | | | | $21 | $168 |
|
|
80
81
|
| `prime/openai/gpt-5.3-codex` | 400K | | | | | | $2 | $14 |
|
|
81
82
|
| `prime/openai/gpt-5.4` | 1.1M | | | | | | $3 | $15 |
|
|
82
83
|
| `prime/openai/gpt-5.4-mini` | 400K | | | | | | $0.75 | $5 |
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
|
|
5
5
|
# Requesty
|
|
6
6
|
|
|
7
|
-
Access
|
|
7
|
+
Access 176 Requesty models through Mastra's model router. Authentication is handled automatically using the `REQUESTY_API_KEY` environment variable.
|
|
8
8
|
|
|
9
9
|
Learn more in the [Requesty documentation](https://requesty.ai/solution/llm-routing/models).
|
|
10
10
|
|
|
@@ -182,6 +182,7 @@ for await (const chunk of stream) {
|
|
|
182
182
|
| `requesty/mistral-small-2603@eu` | 256K | | | | | | $0.17 | $0.66 |
|
|
183
183
|
| `requesty/muse-glimmer-30b` | 131K | | | | | | — | — |
|
|
184
184
|
| `requesty/muse-spark-1.3` | 1.0M | | | | | | $1 | $4 |
|
|
185
|
+
| `requesty/muse-spark-open` | 1.0M | | | | | | $1 | $4 |
|
|
185
186
|
| `requesty/muse-wonder-1.0` | 1.0M | | | | | | $4 | $20 |
|
|
186
187
|
| `requesty/nemotron-3-nano-omni` | 300K | | | | | | $0.06 | $0.24 |
|
|
187
188
|
| `requesty/nemotron-3-nano-omni-30b-a3b-reasoning` | 131K | | | | | | — | — |
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
|
|
5
5
|
# CoreWeave
|
|
6
6
|
|
|
7
|
-
Access
|
|
7
|
+
Access 21 CoreWeave models through Mastra's model router. Authentication is handled automatically using the `WANDB_API_KEY` environment variable.
|
|
8
8
|
|
|
9
9
|
Learn more in the [CoreWeave documentation](https://docs.wandb.ai).
|
|
10
10
|
|
|
@@ -36,28 +36,29 @@ for await (const chunk of stream) {
|
|
|
36
36
|
|
|
37
37
|
## Models
|
|
38
38
|
|
|
39
|
-
| Model
|
|
40
|
-
|
|
|
41
|
-
| `wandb/deepseek-ai/DeepSeek-V3.1`
|
|
42
|
-
| `wandb/deepseek-ai/DeepSeek-V4-Flash-0731`
|
|
43
|
-
| `wandb/deepseek-ai/DeepSeek-V4-Pro-0813`
|
|
44
|
-
| `wandb/deepseek-ai/DeepSeek-V4.1-Flash`
|
|
45
|
-
| `wandb/google/gemma-4-26B-A4B-it`
|
|
46
|
-
| `wandb/google/gemma-4-31B-it`
|
|
47
|
-
| `wandb/ibm-granite/granite-4.2-8b`
|
|
48
|
-
| `wandb/meta-llama/Llama-3.1-8B-Instruct`
|
|
49
|
-
| `wandb/meta-llama/Llama-3.3-70B-Instruct`
|
|
50
|
-
| `wandb/MiniMaxAI/MiniMax-M3`
|
|
51
|
-
| `wandb/moonshotai/Kimi-K2.6`
|
|
52
|
-
| `wandb/moonshotai/Kimi-K2.7-Code`
|
|
53
|
-
| `wandb/nvidia/NVIDIA-Nemotron-3-Ultra-550B-A55B`
|
|
54
|
-
| `wandb/nvidia/NVIDIA-Nemotron-3.5-Lightning-30B-A3B`
|
|
55
|
-
| `wandb/
|
|
56
|
-
| `wandb/openai/gpt-oss-
|
|
57
|
-
| `wandb/
|
|
58
|
-
| `wandb/Qwen/Qwen3.
|
|
59
|
-
| `wandb/
|
|
60
|
-
| `wandb/zai-org/GLM-5.
|
|
39
|
+
| Model | Context | Tools | Reasoning | Image | Audio | Video | Input $/1M | Output $/1M |
|
|
40
|
+
| ----------------------------------------------------- | ------- | ----- | --------- | ----- | ----- | ----- | ---------- | ----------- |
|
|
41
|
+
| `wandb/deepseek-ai/DeepSeek-V3.1` | 161K | | | | | | $0.55 | $2 |
|
|
42
|
+
| `wandb/deepseek-ai/DeepSeek-V4-Flash-0731` | 262K | | | | | | $0.13 | $0.28 |
|
|
43
|
+
| `wandb/deepseek-ai/DeepSeek-V4-Pro-0813` | 1.0M | | | | | | $1 | $4 |
|
|
44
|
+
| `wandb/deepseek-ai/DeepSeek-V4.1-Flash` | 1.0M | | | | | | $0.15 | $0.65 |
|
|
45
|
+
| `wandb/google/gemma-4-26B-A4B-it` | 262K | | | | | | $0.10 | $0.30 |
|
|
46
|
+
| `wandb/google/gemma-4-31B-it` | 262K | | | | | | $0.10 | $0.34 |
|
|
47
|
+
| `wandb/ibm-granite/granite-4.2-8b` | 131K | | | | | | $0.10 | $0.15 |
|
|
48
|
+
| `wandb/meta-llama/Llama-3.1-8B-Instruct` | 131K | | | | | | $0.22 | $0.22 |
|
|
49
|
+
| `wandb/meta-llama/Llama-3.3-70B-Instruct` | 128K | | | | | | $0.71 | $0.71 |
|
|
50
|
+
| `wandb/MiniMaxAI/MiniMax-M3` | 262K | | | | | | $0.23 | $0.96 |
|
|
51
|
+
| `wandb/moonshotai/Kimi-K2.6` | 262K | | | | | | $0.65 | $3 |
|
|
52
|
+
| `wandb/moonshotai/Kimi-K2.7-Code` | 262K | | | | | | $0.71 | $4 |
|
|
53
|
+
| `wandb/nvidia/NVIDIA-Nemotron-3-Ultra-550B-A55B` | 262K | | | | | | $0.50 | $2 |
|
|
54
|
+
| `wandb/nvidia/NVIDIA-Nemotron-3.5-Lightning-30B-A3B` | 262K | | | | | | $0.07 | $0.20 |
|
|
55
|
+
| `wandb/nvidia/NVIDIA-Nemotron-3.5-Super-VL-120B-A12B` | 1.0M | | | | | | $0.15 | $0.75 |
|
|
56
|
+
| `wandb/openai/gpt-oss-120b` | 131K | | | | | | $0.03 | $0.17 |
|
|
57
|
+
| `wandb/openai/gpt-oss-20b` | 131K | | | | | | $0.03 | $0.13 |
|
|
58
|
+
| `wandb/Qwen/Qwen3.6-35B-A3B` | 262K | | | | | | $0.25 | $1 |
|
|
59
|
+
| `wandb/Qwen/Qwen3.8-27B` | 262K | | | | | | $0.40 | $3 |
|
|
60
|
+
| `wandb/zai-org/GLM-5.2` | 1.0M | | | | | | $0.62 | $2 |
|
|
61
|
+
| `wandb/zai-org/GLM-5.3-Flash` | 1.0M | | | | | | $0.15 | $0.50 |
|
|
61
62
|
|
|
62
63
|
Model availability, capabilities, context windows, and pricing are sourced from [models.dev](https://models.dev) and may change.
|
|
63
64
|
|
|
@@ -39,8 +39,6 @@ for await (const chunk of stream) {
|
|
|
39
39
|
| Model | Context | Tools | Reasoning | Image | Audio | Video | Input $/1M | Output $/1M |
|
|
40
40
|
| ------------------------------------------------- | ------- | ----- | --------- | ----- | ----- | ----- | ---------- | ----------- |
|
|
41
41
|
| `xiaomi-token-plan-ams/mimo-v2-tts` | 8K | | | | | | — | — |
|
|
42
|
-
| `xiaomi-token-plan-ams/mimo-v2.5` | 1.0M | | | | | | — | — |
|
|
43
|
-
| `xiaomi-token-plan-ams/mimo-v2.5-pro` | 1.0M | | | | | | — | — |
|
|
44
42
|
| `xiaomi-token-plan-ams/mimo-v2.5-tts` | 8K | | | | | | — | — |
|
|
45
43
|
| `xiaomi-token-plan-ams/mimo-v2.5-tts-voiceclone` | 8K | | | | | | — | — |
|
|
46
44
|
| `xiaomi-token-plan-ams/mimo-v2.5-tts-voicedesign` | 8K | | | | | | — | — |
|
|
@@ -39,8 +39,6 @@ for await (const chunk of stream) {
|
|
|
39
39
|
| Model | Context | Tools | Reasoning | Image | Audio | Video | Input $/1M | Output $/1M |
|
|
40
40
|
| ------------------------------------------------ | ------- | ----- | --------- | ----- | ----- | ----- | ---------- | ----------- |
|
|
41
41
|
| `xiaomi-token-plan-cn/mimo-v2-tts` | 8K | | | | | | — | — |
|
|
42
|
-
| `xiaomi-token-plan-cn/mimo-v2.5` | 1.0M | | | | | | — | — |
|
|
43
|
-
| `xiaomi-token-plan-cn/mimo-v2.5-pro` | 1.0M | | | | | | — | — |
|
|
44
42
|
| `xiaomi-token-plan-cn/mimo-v2.5-tts` | 8K | | | | | | — | — |
|
|
45
43
|
| `xiaomi-token-plan-cn/mimo-v2.5-tts-voiceclone` | 8K | | | | | | — | — |
|
|
46
44
|
| `xiaomi-token-plan-cn/mimo-v2.5-tts-voicedesign` | 8K | | | | | | — | — |
|
|
@@ -39,8 +39,6 @@ for await (const chunk of stream) {
|
|
|
39
39
|
| Model | Context | Tools | Reasoning | Image | Audio | Video | Input $/1M | Output $/1M |
|
|
40
40
|
| ------------------------------------------------- | ------- | ----- | --------- | ----- | ----- | ----- | ---------- | ----------- |
|
|
41
41
|
| `xiaomi-token-plan-sgp/mimo-v2-tts` | 8K | | | | | | — | — |
|
|
42
|
-
| `xiaomi-token-plan-sgp/mimo-v2.5` | 1.0M | | | | | | — | — |
|
|
43
|
-
| `xiaomi-token-plan-sgp/mimo-v2.5-pro` | 1.0M | | | | | | — | — |
|
|
44
42
|
| `xiaomi-token-plan-sgp/mimo-v2.5-tts` | 8K | | | | | | — | — |
|
|
45
43
|
| `xiaomi-token-plan-sgp/mimo-v2.5-tts-voiceclone` | 8K | | | | | | — | — |
|
|
46
44
|
| `xiaomi-token-plan-sgp/mimo-v2.5-tts-voicedesign` | 8K | | | | | | — | — |
|
|
@@ -38,9 +38,6 @@ for await (const chunk of stream) {
|
|
|
38
38
|
|
|
39
39
|
| Model | Context | Tools | Reasoning | Image | Audio | Video | Input $/1M | Output $/1M |
|
|
40
40
|
| --------------------------------- | ------- | ----- | --------- | ----- | ----- | ----- | ---------- | ----------- |
|
|
41
|
-
| `xiaomi/mimo-v2.5` | 1.0M | | | | | | $0.14 | $0.28 |
|
|
42
|
-
| `xiaomi/mimo-v2.5-pro` | 1.0M | | | | | | $0.43 | $0.87 |
|
|
43
|
-
| `xiaomi/mimo-v2.5-pro-ultraspeed` | 1.0M | | | | | | $1 | $3 |
|
|
44
41
|
| `xiaomi/mimo-v2.6-flash` | 1.0M | | | | | | $0.14 | $0.28 |
|
|
45
42
|
| `xiaomi/mimo-v2.6-pro` | 1.0M | | | | | | $0.43 | $0.87 |
|
|
46
43
|
| `xiaomi/mimo-v2.6-pro-ultraspeed` | 1.0M | | | | | | $4 | $9 |
|
|
@@ -181,6 +181,8 @@ Returns: [`Promise<DurableAgentStreamResult>`](#durableagentstreamresult)
|
|
|
181
181
|
|
|
182
182
|
Reconnects to an existing run. Use this after a network disconnection. For the supported general reconnect flow, omit `offset` to replay all available cached events before receiving live events.
|
|
183
183
|
|
|
184
|
+
When observing from another process, the observing agent must have the same `id` as the agent that started the run. If the persisted run belongs to an agent with a different ID, `observe()` throws `DURABLE_AGENT_OBSERVE_AGENT_MISMATCH`, matching the ownership checks in `resume()` and `recover()`.
|
|
185
|
+
|
|
184
186
|
For runs configured with `structuredOutput`, an observer in another process reconstructs `output.object` from the persisted schema and replayed text.
|
|
185
187
|
|
|
186
188
|
```typescript
|
|
@@ -427,7 +429,7 @@ Returns: [`Promise<DurableAgentStreamResult>`](#durableagentstreamresult)
|
|
|
427
429
|
|
|
428
430
|
**modelSettings** (`object`): Model-specific settings such as temperature. Credential-bearing headers (Authorization, X-Api-Key, and similar) are stripped from the serialized snapshot before it crosses process boundaries.
|
|
429
431
|
|
|
430
|
-
**stopWhen** (`AgentExecutionOptions['stopWhen']`): Predicate or composition that ends the agentic loop early. The closure rides on the in-process run registry; cross-process resumes degrade to maxSteps only.
|
|
432
|
+
**stopWhen** (`AgentExecutionOptions['stopWhen']`): Predicate or composition that ends the agentic loop early. If it throws, fullStream rejects without emitting a step-finish or error chunk. Durable transports preserve the error name and message, but not its stack, cause, or subclass identity. The closure rides on the in-process run registry; cross-process resumes degrade to maxSteps only.
|
|
431
433
|
|
|
432
434
|
**system** (`string | string[]`): Additional system message appended after the agent instructions and before user messages.
|
|
433
435
|
|
|
@@ -306,9 +306,9 @@ Only retryable AI SDK `APICallError` failures are retried. Other errors reject i
|
|
|
306
306
|
|
|
307
307
|
## Observability
|
|
308
308
|
|
|
309
|
-
When an active Mastra span exists, `decide()` creates a `CLASSIFIER_EVALUATION` child span.
|
|
309
|
+
When an active Mastra span exists, `decide()` creates a `CLASSIFIER_EVALUATION` child span. The span input holds the evaluated `state` and the questions. The span output holds the answers, including probabilities. Span attributes record the classifier and model identifiers, provider, question count and types, attempts, duration, and token usage. The token usage also produces [token and cost metrics](https://mastra.ai/reference/observability/metrics/automatic-metrics).
|
|
310
310
|
|
|
311
|
-
|
|
311
|
+
To keep the state and answers out of exported traces, set `hideInput` and `hideOutput` in the `tracingOptions` of the agent or workflow run that calls the classifier. See [hiding sensitive input/output](https://mastra.ai/docs/observability/tracing/overview).
|
|
312
312
|
|
|
313
313
|
## Customize provider responses
|
|
314
314
|
|
|
@@ -1287,7 +1287,7 @@ Use `--url` and `--header` when you need to override another target or its crede
|
|
|
1287
1287
|
|
|
1288
1288
|
### Factory commands
|
|
1289
1289
|
|
|
1290
|
-
Use `mastra api factory` to manage Factory projects, work items, decisions, attention items, queue health
|
|
1290
|
+
Use `mastra api factory` to manage Factory projects, work items, decisions, attention items, and queue health. These commands use the same JSON input, output, authentication, headers, timeout, and target resolution as other `mastra api` commands.
|
|
1291
1291
|
|
|
1292
1292
|
List the Factory projects available to the current organization:
|
|
1293
1293
|
|
|
@@ -2016,11 +2016,13 @@ Prints help message and exits.
|
|
|
2016
2016
|
|
|
2017
2017
|
By default, Mastra collects telemetry about your project, including your OS, Mastra version, and Node.js version. Server events also include the project identifiers described below. You can read the [CLI telemetry source code](https://github.com/mastra-ai/mastra/blob/main/packages/cli/src/analytics/index.ts) to check what's collected by the CLI.
|
|
2018
2018
|
|
|
2019
|
-
When a server started with `mastra dev` or `mastra
|
|
2019
|
+
When a server started with `mastra dev`, `mastra start`, or a `mastra build` output has observability configured, Mastra counts the input and output tokens each model call uses in that server process. Every 15 minutes, and once more when the server shuts down, it sends a `mastra_model_token_usage_v2` event per provider and model used since the previous report. If no model calls finished since then, nothing is sent. Each event contains the tokens used since the previous report, the report window's start and end times, the reason for the report (`interval` or `shutdown`), the command (`dev`, `start`, or `server` when the build output runs directly), and `NODE_ENV`. No prompts, responses, or other message content is sent. You can read the [model usage telemetry source code](https://github.com/mastra-ai/mastra/blob/main/packages/core/src/telemetry/model-usage-telemetry.ts) to check what's collected.
|
|
2020
|
+
|
|
2021
|
+
For compatibility with older analysis, servers also send the earlier `mastra_model_token_usage` event at startup. It reads token totals from observability storage and sends the usage added since a cursor saved in `~/.mastra/usage-telemetry.json`. You can read the [startup usage telemetry source code](https://github.com/mastra-ai/mastra/blob/main/packages/core/src/telemetry/usage-telemetry.ts) to check what's collected.
|
|
2020
2022
|
|
|
2021
2023
|
At server startup, Mastra sends a project-surface snapshot with component counts, feature flags, and the coarse storage backend category, but no component names or component identifiers. You can read the [feature telemetry source code](https://github.com/mastra-ai/mastra/blob/main/packages/core/src/telemetry/feature-telemetry.ts) to check what's collected.
|
|
2022
2024
|
|
|
2023
|
-
The server events `mastra_feature_usage` and `
|
|
2025
|
+
The server events `mastra_feature_usage`, `mastra_model_token_usage`, and `mastra_model_token_usage_v2` include:
|
|
2024
2026
|
|
|
2025
2027
|
- `project_id`: The first 16 hexadecimal characters of the SHA-256 hash of `MASTRA_PROJECT_ROOT`, or the current working directory when unset. This identifier also keys the local model-usage cursor.
|
|
2026
2028
|
- `project_id2`: An optional identifier for correlation across machines and deployments. If the trimmed `MASTRA_PROJECT_ID` value has UUID format, the value is sent **unhashed**, prefixed with `mp_`. Search for `mp_<platform-project-id>` to find that project's telemetry. Names, slugs, and other non-UUID values aren't sent as Platform identifiers.
|
|
@@ -65,6 +65,50 @@ const selected = await mastraClient.getTrace(list.spans[0].traceId)
|
|
|
65
65
|
|
|
66
66
|
It accepts the same filtering, ordering and delta-polling arguments as `listTraces()`. Use `listTraces()` when you actually need the full span payloads.
|
|
67
67
|
|
|
68
|
+
## Querying spans
|
|
69
|
+
|
|
70
|
+
`querySpans()` returns completed span summaries across traces. It requires a positive ISO timestamp range over span start time and supports cursor pagination:
|
|
71
|
+
|
|
72
|
+
```typescript
|
|
73
|
+
const result = await mastraClient.querySpans({
|
|
74
|
+
timeRange: {
|
|
75
|
+
from: '2026-10-01T00:00:00.000Z',
|
|
76
|
+
to: '2026-10-02T00:00:00.000Z',
|
|
77
|
+
},
|
|
78
|
+
where: {
|
|
79
|
+
op: 'and',
|
|
80
|
+
args: [
|
|
81
|
+
{ op: 'eq', left: { path: 'threadId' }, right: { literal: 'thread-123' } },
|
|
82
|
+
{ op: 'gte', left: { path: 'durationMs' }, right: { literal: 1000 } },
|
|
83
|
+
],
|
|
84
|
+
},
|
|
85
|
+
orderBy: [{ field: 'startedAt', direction: 'desc' }],
|
|
86
|
+
page: { limit: 100 },
|
|
87
|
+
})
|
|
88
|
+
|
|
89
|
+
// Pass result.page.next as page.after to continue with the same filters and ordering.
|
|
90
|
+
console.log(result.spans)
|
|
91
|
+
```
|
|
92
|
+
|
|
93
|
+
Pages default to 100 rows and allow at most 1,000. The response is `{ spans, page: { next } }`, without a total count. Ordering accepts exactly one of `startedAt` or `endedAt`, ascending or descending, and defaults to descending start time.
|
|
94
|
+
|
|
95
|
+
| Fields | Operators |
|
|
96
|
+
| -------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------- |
|
|
97
|
+
| `traceId`, `spanId`, `parentSpanId`, `threadId` | `eq`, `ne`, `in`, `notIn`, `exists`, `notExists` |
|
|
98
|
+
| `organizationId`, `resourceId`, `runId`, `sessionId`, `userId`, `requestId`, `serviceName`, `experimentId`, `environment`, `executionSource` | Same string operators |
|
|
99
|
+
| Entity, parent entity and root entity `Type`, `Id`, `Name`, `VersionId` fields, such as `parentEntityId` | Same string operators |
|
|
100
|
+
| `name`, `spanType`, `status` | Same string operators; `name` also accepts `matches` / `notMatches` for normalized whole words and phrases |
|
|
101
|
+
| `startedAt`, `endedAt`, `durationMs` | Comparisons, membership and presence |
|
|
102
|
+
| `error` | `exists`, `notExists` |
|
|
103
|
+
|
|
104
|
+
Combine predicates with `and`, `or` and `not`. Membership uses `{ op: 'in', value: { path: 'spanType' }, set: ['agent_run', 'tool_call'] }`. A span's status is `error` when it has an error and `success` otherwise.
|
|
105
|
+
|
|
106
|
+
Each summary includes identity, context, entity lineage, status, timestamps, `durationMs`, model/provider and input/output/error previews. Model/provider are available in returned rows but aren't filterable.
|
|
107
|
+
|
|
108
|
+
The additional identity, context and parent/root entity filters require an updated storage adapter. With an older adapter, requests using these filters return a structured `422` error.
|
|
109
|
+
|
|
110
|
+
DuckDB returns `null` for parent/root entity type, ID and name, and for `executionSource`. Equality filters on these fields match no spans. Parent/root entity version IDs remain available.
|
|
111
|
+
|
|
68
112
|
## Querying traces
|
|
69
113
|
|
|
70
114
|
`queryTraces()` finds completed logical traces using trace fields and conditions over related spans. Every query requires an ISO timestamp range.
|
|
@@ -18,9 +18,9 @@ export const mastra = new Mastra({
|
|
|
18
18
|
|
|
19
19
|
Returns: `Promise<ChannelsResolver>`. See [The resolver](#the-resolver).
|
|
20
20
|
|
|
21
|
-
The [documented channel setup](https://mastra.ai/docs/mastra-platform/connect/channels) covers Slack, Telegram, and
|
|
21
|
+
The [documented channel setup](https://mastra.ai/docs/mastra-platform/connect/channels) covers Slack, Telegram, Discord, and Microsoft Teams. Their implementations come from `@mastra/slack`, `@mastra/telegram`, `@mastra/discord`, and `@mastra/teams`, loaded on demand. Use those packages directly to configure a channel outside the platform connection flow.
|
|
22
22
|
|
|
23
|
-
The
|
|
23
|
+
The Teams provider encrypts stored bot secrets with `MASTRA_ENCRYPTION_KEY` when set. When it isn't, the key is derived from the platform access token and a warning is logged while a Teams connection is active. Rotating the platform access token makes stored bot credentials unreadable (disconnect and reconnect to re-provision). Projects without a Teams connection are unaffected.
|
|
24
24
|
|
|
25
25
|
## Parameters
|
|
26
26
|
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
|
|
5
5
|
# Provider toolsets
|
|
6
6
|
|
|
7
|
-
This page documents generated toolsets for
|
|
7
|
+
This page documents generated toolsets for 22 providers (908 tools in this version of `@mastra/connect`). It isn't an exhaustive list of providers registered in the SDK or available in the platform catalog. [`tools()`](https://mastra.ai/reference/connect/tools) exposes a provider's toolset when the project has an active connection for its provider ID.
|
|
8
8
|
|
|
9
9
|
Tool keys are stable identifiers of the form `<provider>_<action>` and are the values accepted by `allowTools` and `disallowTools`. Toolsets are versioned with the package: the exact list depends on the installed `@mastra/connect` version, and this page reflects the version it was generated from.
|
|
10
10
|
|
|
@@ -25,6 +25,7 @@ MCP providers (Attio, Canva, Clay, Neon, Render, Robinhood, and Sanity) serve th
|
|
|
25
25
|
|  [incident.io](#incidentio) | `incident-io` | 66 |
|
|
26
26
|
|  [Jira](#jira) | `jira` | 38 |
|
|
27
27
|
|  [Linear](#linear) | `linear` | 46 |
|
|
28
|
+
|  [Microsoft Teams](#microsoft-teams) | `microsoft-teams` | 25 |
|
|
28
29
|
|  [Notion](#notion) | `notion` | 44 |
|
|
29
30
|
|  [OpenAI](#openai) | `openai` | 26 |
|
|
30
31
|
|  [PostHog](#posthog) | `posthog` | 67 |
|
|
@@ -657,6 +658,38 @@ Provider ID: `linear` · 46 tools
|
|
|
657
658
|
| `linear_update_issue_relation` | Update fields on an existing Linear issue relation. |
|
|
658
659
|
| `linear_update_project` | Update an existing Linear project. |
|
|
659
660
|
|
|
661
|
+
## Microsoft Teams
|
|
662
|
+
|
|
663
|
+
Provider ID: `microsoft-teams` · 25 tools
|
|
664
|
+
|
|
665
|
+
| Tool | Description |
|
|
666
|
+
| ------------------------------------------ | ------------------------------------------------ |
|
|
667
|
+
| `microsoft_teams_add_team_member` | Add a member to a team |
|
|
668
|
+
| `microsoft_teams_create_channel` | Create a channel in a team. |
|
|
669
|
+
| `microsoft_teams_create_channel_message` | Post a root message in a channel |
|
|
670
|
+
| `microsoft_teams_create_channel_tab` | Add a tab to a channel. |
|
|
671
|
+
| `microsoft_teams_create_chat` | Create a one-on-one or group chat. |
|
|
672
|
+
| `microsoft_teams_create_chat_message` | Send a message in a chat |
|
|
673
|
+
| `microsoft_teams_create_team` | Create a team from a template or existing group. |
|
|
674
|
+
| `microsoft_teams_delete_channel` | Delete a channel from a team |
|
|
675
|
+
| `microsoft_teams_get_channel` | Retrieve a channel by ID. |
|
|
676
|
+
| `microsoft_teams_get_channel_message` | Retrieve a channel message by ID. |
|
|
677
|
+
| `microsoft_teams_get_chat` | Retrieve a chat by ID. |
|
|
678
|
+
| `microsoft_teams_get_chat_message` | Retrieve a chat message by ID. |
|
|
679
|
+
| `microsoft_teams_get_team` | Retrieve a team by ID. |
|
|
680
|
+
| `microsoft_teams_list_channel_messages` | List root messages in a channel. |
|
|
681
|
+
| `microsoft_teams_list_channel_replies` | List replies under a channel message thread |
|
|
682
|
+
| `microsoft_teams_list_channel_tabs` | List tabs configured on a channel. |
|
|
683
|
+
| `microsoft_teams_list_channels` | List channels in a team. |
|
|
684
|
+
| `microsoft_teams_list_chat_members` | List members in a chat |
|
|
685
|
+
| `microsoft_teams_list_chat_messages` | List messages in a chat. |
|
|
686
|
+
| `microsoft_teams_list_chats` | List chats for a user. |
|
|
687
|
+
| `microsoft_teams_list_joined_teams` | List teams the user has joined |
|
|
688
|
+
| `microsoft_teams_list_team_members` | List members in a team. |
|
|
689
|
+
| `microsoft_teams_remove_team_member` | Remove a member from a team. |
|
|
690
|
+
| `microsoft_teams_reply_to_channel_message` | Reply to a channel message thread. |
|
|
691
|
+
| `microsoft_teams_update_channel` | Update mutable channel properties. |
|
|
692
|
+
|
|
660
693
|
## Notion
|
|
661
694
|
|
|
662
695
|
Provider ID: `notion` · 44 tools
|
|
@@ -32,13 +32,19 @@ const filtered = await mastra.datasets.list({
|
|
|
32
32
|
const forAgents = await mastra.datasets.list({
|
|
33
33
|
filters: { targetIds: ['agent-a', 'agent-b'] },
|
|
34
34
|
})
|
|
35
|
+
|
|
36
|
+
// Fetch specific datasets by ID, all on one page
|
|
37
|
+
const byId = await mastra.datasets.list({
|
|
38
|
+
perPage: false,
|
|
39
|
+
filters: { datasetIds: ['dataset-1', 'dataset-2'] },
|
|
40
|
+
})
|
|
35
41
|
```
|
|
36
42
|
|
|
37
43
|
## Parameters
|
|
38
44
|
|
|
39
45
|
**page** (`number`): Page number. Defaults to 0.
|
|
40
46
|
|
|
41
|
-
**perPage** (`number`): Number of datasets per page. Defaults to 20.
|
|
47
|
+
**perPage** (`number | false`): Number of datasets per page, or false to return every match on one page. Defaults to 20.
|
|
42
48
|
|
|
43
49
|
**filters** (`object`): Optional filters applied at the storage layer.
|
|
44
50
|
|
|
@@ -54,6 +60,8 @@ const forAgents = await mastra.datasets.list({
|
|
|
54
60
|
|
|
55
61
|
**filters.targetIds** (`string[]`): Restrict to datasets whose targetIds intersect this list (any-overlap match). Empty array is treated as no filter.
|
|
56
62
|
|
|
63
|
+
**filters.datasetIds** (`string[]`): Restrict to datasets with these IDs. Empty array matches no datasets. Pass perPage: false to get every match on one page.
|
|
64
|
+
|
|
57
65
|
**filters.name** (`string`): Case-insensitive substring match on dataset name. Empty string is treated as no filter.
|
|
58
66
|
|
|
59
67
|
## Returns
|
|
@@ -10,7 +10,7 @@ For setup instructions, see the [Metrics overview](https://mastra.ai/docs/observ
|
|
|
10
10
|
|
|
11
11
|
## When Mastra emits automatic metrics
|
|
12
12
|
|
|
13
|
-
Metrics are extracted from spans when they end. The observability layer inspects each completed span, calculates duration, and
|
|
13
|
+
Metrics are extracted from spans when they end. The observability layer inspects each completed span, calculates duration, and reads token usage data from model generation and classifier evaluation spans. No manual instrumentation is needed.
|
|
14
14
|
|
|
15
15
|
### What affects whether a metric is available
|
|
16
16
|
|
|
@@ -35,7 +35,7 @@ Duration metrics record execution time in milliseconds, calculated from the span
|
|
|
35
35
|
|
|
36
36
|
## Token usage metrics
|
|
37
37
|
|
|
38
|
-
Token metrics are emitted
|
|
38
|
+
Token metrics are emitted from `MODEL_GENERATION` and `CLASSIFIER_EVALUATION` spans that include `usage` data. Token metrics require usage data from the provider.
|
|
39
39
|
|
|
40
40
|
### Input token metrics
|
|
41
41
|
|
|
@@ -142,7 +142,7 @@ When you spot a spike in latency or token usage on the Metrics dashboard, correl
|
|
|
142
142
|
|
|
143
143
|
### Token metrics are missing
|
|
144
144
|
|
|
145
|
-
- **Span is a model generation**: Token metrics are only emitted from `MODEL_GENERATION` spans.
|
|
145
|
+
- **Span is a model generation or classifier evaluation**: Token metrics are only emitted from `MODEL_GENERATION` and `CLASSIFIER_EVALUATION` spans.
|
|
146
146
|
- **Provider reports usage**: The model provider must include `usage` data in its response. Usage data is required to emit token metrics.
|
|
147
147
|
|
|
148
148
|
## Related
|
|
@@ -110,6 +110,7 @@ All metric operations accept the same optional `filters` object. Raw list reques
|
|
|
110
110
|
| `userId` | `string` | User ID |
|
|
111
111
|
| `organizationId` | `string` | Organization ID |
|
|
112
112
|
| `experimentId` | `string` | Experiment or evaluation run ID |
|
|
113
|
+
| `experimentIds` | `string[]` | One to 1,000 experiment IDs |
|
|
113
114
|
| `serviceName` | `string` | Service name |
|
|
114
115
|
| `environment` | `string` | Environment name |
|
|
115
116
|
| `resourceId` | `string` | Resource ID |
|