@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
@@ -29,7 +29,7 @@ You can then use the following voice capabilities:
29
29
 
30
30
  Turn your agent's responses into natural-sounding speech using Mastra's TTS capabilities. Choose from multiple providers like OpenAI, ElevenLabs, and more.
31
31
 
32
- For detailed configuration options and advanced features, check out our [Text-to-Speech guide](https://mastra.ai/docs/voice/text-to-speech).
32
+ For detailed configuration options and advanced features, check out our [Text-to-Speech guide](https://mastra.ai/guides/voice/text-to-speech).
33
33
 
34
34
  **OpenAI**:
35
35
 
@@ -331,7 +331,7 @@ Visit the [Murf Voice Reference](https://mastra.ai/reference/voice/murf) for mor
331
331
 
332
332
  ### Speech to Text (STT)
333
333
 
334
- Transcribe spoken content using providers like OpenAI, ElevenLabs, and more. For detailed configuration options and more, check out [Speech to Text](https://mastra.ai/docs/voice/speech-to-text).
334
+ Transcribe spoken content using providers like OpenAI, ElevenLabs, and more. For detailed configuration options and more, check out [Speech to Text](https://mastra.ai/guides/voice/speech-to-text).
335
335
 
336
336
  You can download a sample audio file from [here](https://github.com/mastra-ai/realtime-voice-demo/raw/refs/heads/main/how_can_i_help_you.mp3).
337
337
 
@@ -564,7 +564,7 @@ Visit the [Sarvam Voice Reference](https://mastra.ai/reference/voice/sarvam) for
564
564
 
565
565
  ### Speech to Speech (STS)
566
566
 
567
- Create conversational experiences with speech-to-speech capabilities. The unified API enables real-time voice interactions between users and AI agents. For detailed configuration options and advanced features, check out [Speech to Speech](https://mastra.ai/docs/voice/speech-to-speech).
567
+ Create conversational experiences with speech-to-speech capabilities. The unified API enables real-time voice interactions between users and AI agents. For detailed configuration options and advanced features, check out [Speech to Speech](https://mastra.ai/guides/voice/speech-to-speech).
568
568
 
569
569
  **OpenAI**:
570
570
 
@@ -775,7 +775,7 @@ Visit the [xAI Realtime Voice Reference](https://mastra.ai/reference/voice/xai-r
775
775
 
776
776
  ### Realtime voice
777
777
 
778
- Run live calls a user can talk over, in the browser or over the phone. Mastra hands the audio loop to LiveKit, which covers voice activity detection, semantic turn detection, and barge-in, while your agent generates each reply with its own model, tools, and memory. For setup and configuration options, check out [Realtime voice](https://mastra.ai/docs/voice/realtime-voice).
778
+ Run live calls a user can talk over, in the browser or over the phone. Mastra hands the audio loop to LiveKit, which covers voice activity detection, semantic turn detection, and barge-in, while your agent generates each reply with its own model, tools, and memory. For setup and configuration options, check out [Realtime voice](https://mastra.ai/guides/voice/realtime-voice).
779
779
 
780
780
  ## Voice configuration
781
781
 
@@ -6,7 +6,7 @@ Realtime voice turns a Mastra agent into a live call a user can talk over, in th
6
6
 
7
7
  The [`@mastra/livekit`](https://mastra.ai/reference/voice/livekit) package connects Mastra agents to the [LiveKit Agents framework](https://docs.livekit.io/agents/): LiveKit owns the audio loop like voice activity detection, streaming speech-to-text, semantic turn detection, barge-in, and text-to-speech. Your Mastra agent generates every reply with its own model, tools, and memory.
8
8
 
9
- Use realtime voice when you need low-latency, interruptible voice conversations. For provider-based speech-to-speech without LiveKit, see [Speech to Speech](https://mastra.ai/docs/voice/speech-to-speech).
9
+ Use realtime voice when you need low-latency, interruptible voice conversations. For provider-based speech-to-speech without LiveKit, see [Speech to Speech](https://mastra.ai/guides/voice/speech-to-speech).
10
10
 
11
11
  ## Quickstart
12
12
 
@@ -399,6 +399,6 @@ Conversation history lives in Mastra Memory, so voice sessions and text chat can
399
399
  ## Related
400
400
 
401
401
  - [`@mastra/livekit` reference](https://mastra.ai/reference/voice/livekit)
402
- - [Speech to Speech](https://mastra.ai/docs/voice/speech-to-speech)
402
+ - [Speech to Speech](https://mastra.ai/guides/voice/speech-to-speech)
403
403
  - [Agent Memory](https://mastra.ai/docs/memory/overview)
404
404
  - [LiveKit Agents docs](https://docs.livekit.io/agents/)
@@ -54,7 +54,7 @@ const micStream = getMicrophoneStream()
54
54
  await agent.voice.send(micStream)
55
55
  ```
56
56
 
57
- For a broader overview of voice providers on agents, see [Voice in Mastra](https://mastra.ai/docs/voice/overview).
57
+ For a broader overview of voice providers on agents, see [Voice in Mastra](https://mastra.ai/guides/voice/overview).
58
58
 
59
59
  ## Use tools in realtime sessions
60
60
 
@@ -96,4 +96,4 @@ const transcription = await agent.voice.listen(audioStream, {
96
96
  console.log(`Transcription: ${transcription}`)
97
97
  ```
98
98
 
99
- For a broader overview of voice providers on agents, see [Voice in Mastra](https://mastra.ai/docs/voice/overview).
99
+ For a broader overview of voice providers on agents, see [Voice in Mastra](https://mastra.ai/guides/voice/overview).
@@ -4,7 +4,7 @@
4
4
 
5
5
  Text-to-Speech (TTS) in Mastra offers a unified API for synthesizing spoken audio from text using providers. By incorporating TTS into your applications, you can enhance user experience with natural voice interactions and improve accessibility for users with visual impairments, plus create more engaging multimodal interfaces.
6
6
 
7
- TTS is a core component of any voice application. Combined with STT (Speech-to-Text), it forms the foundation of voice interaction systems. Newer models support STS ([Speech-to-Speech](https://mastra.ai/docs/voice/speech-to-speech)) which can be used for real-time interactions but come at high cost ($).
7
+ TTS is a core component of any voice application. Combined with STT (Speech-to-Text), it forms the foundation of voice interaction systems. Newer models support STS ([Speech-to-Speech](https://mastra.ai/guides/voice/speech-to-speech)) which can be used for real-time interactions but come at high cost ($).
8
8
 
9
9
  ## Configuration
10
10
 
@@ -102,4 +102,4 @@ await new Promise<void>((resolve, reject) => {
102
102
  })
103
103
  ```
104
104
 
105
- For a broader overview of voice providers on agents, see [Voice in Mastra](https://mastra.ai/docs/voice/overview).
105
+ For a broader overview of voice providers on agents, see [Voice in Mastra](https://mastra.ai/guides/voice/overview).
@@ -7,14 +7,14 @@ Mastra's model router supports embedding models using the same `provider/model`
7
7
  ## Quickstart
8
8
 
9
9
  ```typescript
10
- import { ModelRouterEmbeddingModel } from "@mastra/core/llm";
11
- import { embedMany } from "ai";
10
+ import { ModelRouterEmbeddingModel } from '@mastra/core/llm'
11
+ import { embedMany } from 'ai'
12
12
 
13
13
  // Generate embeddings
14
14
  const { embeddings } = await embedMany({
15
- model: new ModelRouterEmbeddingModel("openai/text-embedding-3-small"),
16
- values: ["Hello world", "Semantic search is powerful"],
17
- });
15
+ model: new ModelRouterEmbeddingModel('openai/text-embedding-3-small'),
16
+ values: ['Hello world', 'Semantic search is powerful'],
17
+ })
18
18
  ```
19
19
 
20
20
  ## Supported models
@@ -26,7 +26,7 @@ const { embeddings } = await embedMany({
26
26
  - `text-embedding-ada-002` - 1536 dimensions, 8191 max tokens
27
27
 
28
28
  ```typescript
29
- const embedder = new ModelRouterEmbeddingModel("openai/text-embedding-3-small");
29
+ const embedder = new ModelRouterEmbeddingModel('openai/text-embedding-3-small')
30
30
  ```
31
31
 
32
32
  ### Google
@@ -34,7 +34,7 @@ const embedder = new ModelRouterEmbeddingModel("openai/text-embedding-3-small");
34
34
  - `gemini-embedding-001` - 768 dimensions, 2048 max tokens
35
35
 
36
36
  ```typescript
37
- const embedder = new ModelRouterEmbeddingModel("google/gemini-embedding-001");
37
+ const embedder = new ModelRouterEmbeddingModel('google/gemini-embedding-001')
38
38
  ```
39
39
 
40
40
  ### VoyageAI
@@ -79,29 +79,29 @@ bun add @mastra/voyageai
79
79
  - `voyage-multimodal-3.5` - 1024 dimensions, supports text + images
80
80
 
81
81
  ```typescript
82
- import { voyage, voyageEmbedding } from "@mastra/voyageai";
82
+ import { voyage, voyageEmbedding } from '@mastra/voyageai'
83
83
 
84
84
  // Use default model (voyage-3.5)
85
85
  const { embeddings } = await voyage.doEmbed({
86
- values: ["Hello world"],
87
- });
86
+ values: ['Hello world'],
87
+ })
88
88
 
89
89
  // Use specific model (voyage-3-large)
90
90
  const largeEmbeddings = await voyage.large.doEmbed({
91
- values: ["More complex content"],
92
- });
91
+ values: ['More complex content'],
92
+ })
93
93
 
94
94
  // Custom configuration
95
95
  const customModel = voyageEmbedding({
96
- model: "voyage-3.5",
97
- inputType: "query", // or 'document'
96
+ model: 'voyage-3.5',
97
+ inputType: 'query', // or 'document'
98
98
  outputDimension: 512, // 256, 512, 1024, or 2048
99
- baseUrl: "https://ai.mongodb.com/v1", // Optional: custom endpoint (e.g. MongoDB-hosted Voyage)
100
- });
99
+ baseUrl: 'https://ai.mongodb.com/v1', // Optional: custom endpoint (e.g. MongoDB-hosted Voyage)
100
+ })
101
101
 
102
102
  const { embeddings: customEmbeddings } = await customModel.doEmbed({
103
- values: ["Custom configuration example"],
104
- });
103
+ values: ['Custom configuration example'],
104
+ })
105
105
  ```
106
106
 
107
107
  **VoyageAI with MongoDB:**
@@ -109,48 +109,48 @@ const { embeddings: customEmbeddings } = await customModel.doEmbed({
109
109
  VoyageAI works seamlessly with MongoDB Atlas Vector Search:
110
110
 
111
111
  ```typescript
112
- import { voyage } from "@mastra/voyageai";
113
- import { MongoDBVector } from "@mastra/mongodb";
112
+ import { voyage } from '@mastra/voyageai'
113
+ import { MongoDBVector } from '@mastra/mongodb'
114
114
 
115
115
  const mongoVector = new MongoDBVector({
116
- id: "mongodb-vector",
116
+ id: 'mongodb-vector',
117
117
  uri: process.env.MONGODB_URI,
118
118
  dbName: process.env.MONGODB_DB_NAME,
119
- });
119
+ })
120
120
 
121
121
  // Create index matching VoyageAI dimensions
122
122
  await mongoVector.createIndex({
123
- indexName: "documents",
123
+ indexName: 'documents',
124
124
  dimension: 1024, // voyage-3.5 default
125
- });
125
+ })
126
126
 
127
127
  // Generate and store embeddings
128
128
  const { embeddings } = await voyage.doEmbed({
129
- values: chunks.map((chunk) => chunk.text),
130
- });
129
+ values: chunks.map(chunk => chunk.text),
130
+ })
131
131
 
132
132
  await mongoVector.upsert({
133
- indexName: "documents",
133
+ indexName: 'documents',
134
134
  vectors: embeddings,
135
- metadata: chunks.map((chunk) => ({ text: chunk.text })),
136
- });
135
+ metadata: chunks.map(chunk => ({ text: chunk.text })),
136
+ })
137
137
  ```
138
138
 
139
139
  **Multimodal embeddings (text + images):**
140
140
 
141
141
  ```typescript
142
- import { voyage } from "@mastra/voyageai";
142
+ import { voyage } from '@mastra/voyageai'
143
143
 
144
144
  const { embeddings } = await voyage.multimodal.doEmbed({
145
145
  values: [
146
146
  {
147
147
  content: [
148
- { type: "text", text: "Product description" },
149
- { type: "image_url", image_url: "https://example.com/image.jpg" },
148
+ { type: 'text', text: 'Product description' },
149
+ { type: 'image_url', image_url: 'https://example.com/image.jpg' },
150
150
  ],
151
151
  },
152
152
  ],
153
- });
153
+ })
154
154
  ```
155
155
 
156
156
  For more details, see the [MongoDB + VoyageAI integration guide](https://mastra.ai/reference/vectors/mongodb).
@@ -175,14 +175,14 @@ VOYAGE_API_KEY=pa-...
175
175
  You can use any OpenAI-compatible embedding endpoint with a custom URL:
176
176
 
177
177
  ```typescript
178
- import { ModelRouterEmbeddingModel } from "@mastra/core/llm";
178
+ import { ModelRouterEmbeddingModel } from '@mastra/core/llm'
179
179
 
180
180
  const embedder = new ModelRouterEmbeddingModel({
181
- providerId: "ollama",
182
- modelId: "nomic-embed-text",
183
- url: "http://localhost:11434/v1",
184
- apiKey: "not-needed", // Some providers don't require API keys
185
- });
181
+ providerId: 'ollama',
182
+ modelId: 'nomic-embed-text',
183
+ url: 'http://localhost:11434/v1',
184
+ apiKey: 'not-needed', // Some providers don't require API keys
185
+ })
186
186
  ```
187
187
 
188
188
  ## Usage with Memory
@@ -190,19 +190,19 @@ const embedder = new ModelRouterEmbeddingModel({
190
190
  The embedding model router integrates seamlessly with Mastra's memory system:
191
191
 
192
192
  ```typescript
193
- import { Memory } from "@mastra/memory";
194
- import { Agent } from "@mastra/core/agent";
195
- import { ModelRouterEmbeddingModel } from "@mastra/core/llm";
193
+ import { Memory } from '@mastra/memory'
194
+ import { Agent } from '@mastra/core/agent'
195
+ import { ModelRouterEmbeddingModel } from '@mastra/core/llm'
196
196
 
197
197
  const agent = new Agent({
198
- id: "my-agent",
199
- name: "my-agent",
200
- instructions: "You are a helpful assistant",
201
- model: "openai/gpt-5.1",
198
+ id: 'my-agent',
199
+ name: 'my-agent',
200
+ instructions: 'You are a helpful assistant',
201
+ model: 'openai/gpt-5.1',
202
202
  memory: new Memory({
203
- embedder: new ModelRouterEmbeddingModel("openai/text-embedding-3-small"),
203
+ embedder: new ModelRouterEmbeddingModel('openai/text-embedding-3-small'),
204
204
  }),
205
- });
205
+ })
206
206
  ```
207
207
 
208
208
  > **Info:** The `embedder` field accepts:
@@ -216,14 +216,14 @@ const agent = new Agent({
216
216
  Use embedding models for document chunking and retrieval:
217
217
 
218
218
  ```typescript
219
- import { ModelRouterEmbeddingModel } from "@mastra/core/llm";
220
- import { embedMany } from "ai";
219
+ import { ModelRouterEmbeddingModel } from '@mastra/core/llm'
220
+ import { embedMany } from 'ai'
221
221
 
222
222
  // Embed document chunks
223
223
  const { embeddings } = await embedMany({
224
- model: new ModelRouterEmbeddingModel("openai/text-embedding-3-small"),
225
- values: chunks.map((chunk) => chunk.text),
226
- });
224
+ model: new ModelRouterEmbeddingModel('openai/text-embedding-3-small'),
225
+ values: chunks.map(chunk => chunk.text),
226
+ })
227
227
 
228
228
  // Store embeddings in your vector database
229
229
  await vectorStore.upsert(
@@ -232,7 +232,7 @@ await vectorStore.upsert(
232
232
  vector: embeddings[i],
233
233
  metadata: chunk.metadata,
234
234
  })),
235
- );
235
+ )
236
236
  ```
237
237
 
238
238
  ## TypeScript Support
@@ -240,13 +240,13 @@ await vectorStore.upsert(
240
240
  The model router provides full TypeScript autocomplete for embedding model IDs:
241
241
 
242
242
  ```typescript
243
- import type { EmbeddingModelId } from "@mastra/core";
243
+ import type { EmbeddingModelId } from '@mastra/core'
244
244
 
245
245
  // Type-safe embedding model selection
246
- const modelId: EmbeddingModelId = "openai/text-embedding-3-small";
246
+ const modelId: EmbeddingModelId = 'openai/text-embedding-3-small'
247
247
  // ^ Autocomplete shows all supported models
248
248
 
249
- const embedder = new ModelRouterEmbeddingModel(modelId);
249
+ const embedder = new ModelRouterEmbeddingModel(modelId)
250
250
  ```
251
251
 
252
252
  ## Error handling
@@ -255,9 +255,9 @@ The model router validates provider and model IDs at construction time:
255
255
 
256
256
  ```typescript
257
257
  try {
258
- const embedder = new ModelRouterEmbeddingModel("invalid/model");
258
+ const embedder = new ModelRouterEmbeddingModel('invalid/model')
259
259
  } catch (error) {
260
- console.error(error.message);
260
+ console.error(error.message)
261
261
  // "Unknown provider: invalid. Available providers: openai, google"
262
262
  }
263
263
  ```
@@ -266,12 +266,10 @@ Missing API keys are also caught early:
266
266
 
267
267
  ```typescript
268
268
  try {
269
- const embedder = new ModelRouterEmbeddingModel(
270
- "openai/text-embedding-3-small",
271
- );
269
+ const embedder = new ModelRouterEmbeddingModel('openai/text-embedding-3-small')
272
270
  // Throws if OPENAI_API_KEY is not set
273
271
  } catch (error) {
274
- console.error(error.message);
272
+ console.error(error.message)
275
273
  // "API key not found for provider openai. Set OPENAI_API_KEY environment variable."
276
274
  }
277
275
  ```
@@ -279,5 +277,5 @@ try {
279
277
  ## Next Steps
280
278
 
281
279
  - [Memory & Semantic Recall](https://mastra.ai/docs/memory/semantic-recall): Use embeddings for agent memory
282
- - [RAG & Chunking](https://mastra.ai/docs/rag/chunking-and-embedding): Build retrieval-augmented generation systems
283
- - [Vector Databases](https://mastra.ai/docs/rag/vector-databases): Store and query embeddings
280
+ - [RAG & Chunking](https://mastra.ai/guides/rag/chunking-and-embedding): Build retrieval-augmented generation systems
281
+ - [Vector Databases](https://mastra.ai/guides/rag/vector-databases): Store and query embeddings
@@ -56,6 +56,7 @@ List of required environment variables for each model provider and gateway suppo
56
56
  | [GitHub Models](https://mastra.ai/models/providers/github-models) | `github-models/*` | `GITHUB_TOKEN` |
57
57
  | [GMI Cloud](https://mastra.ai/models/providers/gmicloud) | `gmicloud/*` | `GMICLOUD_API_KEY` |
58
58
  | [Google](https://mastra.ai/models/providers/google) | `google/*` | `GOOGLE_API_KEY`, `GOOGLE_GENERATIVE_AI_API_KEY` |
59
+ | [GreenPT](https://mastra.ai/models/providers/greenpt) | `greenpt/*` | `GREENPT_API_KEY` |
59
60
  | [Groq](https://mastra.ai/models/providers/groq) | `groq/*` | `GROQ_API_KEY` |
60
61
  | [Helicone](https://mastra.ai/models/providers/helicone) | `helicone/*` | `HELICONE_API_KEY` |
61
62
  | [Hetzner](https://mastra.ai/models/providers/hetzner) | `hetzner/*` | `HETZNER_API_KEY` |
@@ -138,7 +139,7 @@ List of required environment variables for each model provider and gateway suppo
138
139
  | [Tencent Coding Plan (China)](https://mastra.ai/models/providers/tencent-coding-plan) | `tencent-coding-plan/*` | `TENCENT_CODING_PLAN_API_KEY` |
139
140
  | [Tencent Token Plan](https://mastra.ai/models/providers/tencent-token-plan) | `tencent-token-plan/*` | `TENCENT_TOKEN_PLAN_API_KEY` |
140
141
  | [Tencent TokenHub](https://mastra.ai/models/providers/tencent-tokenhub) | `tencent-tokenhub/*` | `TENCENT_TOKENHUB_API_KEY` |
141
- | [The Grid AI](https://mastra.ai/models/providers/the-grid-ai) | `the-grid-ai/*` | `THEGRIDAI_API_KEY` |
142
+ | [The Grid AI](https://mastra.ai/models/providers/the-grid-ai) | `the-grid-ai/*` | `THEGRID_API_KEY` |
142
143
  | [Thinking Machines](https://mastra.ai/models/providers/thinkingmachines) | `thinkingmachines/*` | `TINKER_API_KEY` |
143
144
  | [Tinfoil](https://mastra.ai/models/providers/tinfoil) | `tinfoil/*` | `TINFOIL_API_KEY` |
144
145
  | [Together AI](https://mastra.ai/models/providers/togetherai) | `togetherai/*` | `TOGETHER_API_KEY` |
@@ -2,7 +2,7 @@
2
2
 
3
3
  # ![OpenRouter logo](https://models.dev/logos/openrouter.svg)OpenRouter
4
4
 
5
- OpenRouter aggregates models from multiple providers with enhanced features like rate limiting and failover. Access 338 models through Mastra's model router.
5
+ OpenRouter aggregates models from multiple providers with enhanced features like rate limiting and failover. Access 335 models through Mastra's model router.
6
6
 
7
7
  Learn more in the [OpenRouter documentation](https://openrouter.ai/models).
8
8
 
@@ -100,6 +100,7 @@ ANTHROPIC_API_KEY=ant-...
100
100
  | `deepseek/deepseek-v3.2` |
101
101
  | `deepseek/deepseek-v3.2-exp` |
102
102
  | `deepseek/deepseek-v4-flash` |
103
+ | `deepseek/deepseek-v4-flash-0731` |
103
104
  | `deepseek/deepseek-v4-pro` |
104
105
  | `google/gemini-2.5-flash` |
105
106
  | `google/gemini-2.5-flash-image` |
@@ -164,7 +165,6 @@ ANTHROPIC_API_KEY=ant-...
164
165
  | `minimax/minimax-m2.7` |
165
166
  | `minimax/minimax-m3` |
166
167
  | `mistralai/codestral-2508` |
167
- | `mistralai/devstral-2512` |
168
168
  | `mistralai/ministral-14b-2512` |
169
169
  | `mistralai/ministral-3b-2512` |
170
170
  | `mistralai/ministral-8b-2512` |
@@ -224,14 +224,12 @@ ANTHROPIC_API_KEY=ant-...
224
224
  | `openai/gpt-4o-mini` |
225
225
  | `openai/gpt-4o-mini-2024-07-18` |
226
226
  | `openai/gpt-5` |
227
- | `openai/gpt-5-codex` |
228
227
  | `openai/gpt-5-image` |
229
228
  | `openai/gpt-5-image-mini` |
230
229
  | `openai/gpt-5-mini` |
231
230
  | `openai/gpt-5-nano` |
232
231
  | `openai/gpt-5-pro` |
233
232
  | `openai/gpt-5.1` |
234
- | `openai/gpt-5.1-chat` |
235
233
  | `openai/gpt-5.1-codex` |
236
234
  | `openai/gpt-5.1-codex-max` |
237
235
  | `openai/gpt-5.1-codex-mini` |
@@ -264,12 +262,10 @@ ANTHROPIC_API_KEY=ant-...
264
262
  | `openai/o1` |
265
263
  | `openai/o1-pro` |
266
264
  | `openai/o3` |
267
- | `openai/o3-deep-research` |
268
265
  | `openai/o3-mini` |
269
266
  | `openai/o3-mini-high` |
270
267
  | `openai/o3-pro` |
271
268
  | `openai/o4-mini` |
272
- | `openai/o4-mini-deep-research` |
273
269
  | `openai/o4-mini-high` |
274
270
  | `openrouter/auto` |
275
271
  | `openrouter/bodybuilder` |
@@ -352,6 +348,7 @@ ANTHROPIC_API_KEY=ant-...
352
348
  | `thedrummer/skyfall-36b-v2` |
353
349
  | `thedrummer/unslopnemo-12b` |
354
350
  | `thinkingmachines/inkling` |
351
+ | `thinkingmachines/inkling-small` |
355
352
  | `undi95/remm-slerp-l2-13b` |
356
353
  | `upstage/solar-pro-3` |
357
354
  | `writer/palmyra-x5` |
@@ -2,7 +2,7 @@
2
2
 
3
3
  # ![Vercel logo](https://models.dev/logos/vercel.svg)Vercel
4
4
 
5
- Vercel aggregates models from multiple providers with enhanced features like rate limiting and failover. Access 307 models through Mastra's model router.
5
+ Vercel aggregates models from multiple providers with enhanced features like rate limiting and failover. Access 310 models through Mastra's model router.
6
6
 
7
7
  Learn more in the [Vercel documentation](https://ai-sdk.dev/providers/ai-sdk-providers).
8
8
 
@@ -179,6 +179,7 @@ ANTHROPIC_API_KEY=ant-...
179
179
  | `meta/llama-4-maverick` |
180
180
  | `meta/llama-4-scout` |
181
181
  | `meta/muse-spark-1.1` |
182
+ | `minimax/minimax-h3` |
182
183
  | `minimax/minimax-m2` |
183
184
  | `minimax/minimax-m2.1` |
184
185
  | `minimax/minimax-m2.1-lightning` |
@@ -296,6 +297,7 @@ ANTHROPIC_API_KEY=ant-...
296
297
  | `stepfun/step-3.7-flash` |
297
298
  | `tencent/hy3` |
298
299
  | `thinkingmachines/inkling` |
300
+ | `thinkingmachines/inkling-small` |
299
301
  | `voyage/rerank-2.5` |
300
302
  | `voyage/rerank-2.5-lite` |
301
303
  | `voyage/voyage-3-large` |
@@ -326,6 +328,7 @@ ANTHROPIC_API_KEY=ant-...
326
328
  | `xai/grok-stt` |
327
329
  | `xai/grok-tts` |
328
330
  | `xai/grok-voice-think-fast-1.0` |
331
+ | `xai/grok-voice-think-fast-2.0` |
329
332
  | `xiaomi/mimo-v2.5` |
330
333
  | `xiaomi/mimo-v2.5-pro` |
331
334
  | `zai/glm-4.5` |
@@ -2,7 +2,7 @@
2
2
 
3
3
  # Model Providers
4
4
 
5
- Mastra provides a unified interface for working with LLMs across multiple providers, giving you access to 5118 models from 163 providers through a single API.
5
+ Mastra provides a unified interface for working with LLMs across multiple providers, giving you access to 5154 models from 164 providers through a single API.
6
6
 
7
7
  ## Features
8
8
 
@@ -2,7 +2,7 @@
2
2
 
3
3
  # ![Cortecs logo](https://models.dev/logos/cortecs.svg)Cortecs
4
4
 
5
- Access 57 Cortecs models through Mastra's model router. Authentication is handled automatically using the `CORTECS_API_KEY` environment variable.
5
+ Access 58 Cortecs models through Mastra's model router. Authentication is handled automatically using the `CORTECS_API_KEY` environment variable.
6
6
 
7
7
  Learn more in the [Cortecs documentation](https://cortecs.ai).
8
8
 
@@ -72,6 +72,7 @@ for await (const chunk of stream) {
72
72
  | `cortecs/kimi-k2.5` | 256K | | | | | | $0.55 | $3 |
73
73
  | `cortecs/kimi-k2.6` | 256K | | | | | | $0.81 | $4 |
74
74
  | `cortecs/kimi-k2.7-code` | 262K | | | | | | $1 | $5 |
75
+ | `cortecs/kimi-k3` | 1.0M | | | | | | $3 | $15 |
75
76
  | `cortecs/llama-3.1-405b-instruct` | 128K | | | | | | — | — |
76
77
  | `cortecs/llama-3.3-70b-instruct` | 131K | | | | | | $0.09 | $0.28 |
77
78
  | `cortecs/llama-4-maverick` | 1.0M | | | | | | $0.12 | $0.60 |
@@ -2,7 +2,7 @@
2
2
 
3
3
  # ![CrofAI logo](https://models.dev/logos/crof.svg)CrofAI
4
4
 
5
- Access 24 CrofAI models through Mastra's model router. Authentication is handled automatically using the `CROF_API_KEY` environment variable.
5
+ Access 25 CrofAI models through Mastra's model router. Authentication is handled automatically using the `CROF_API_KEY` environment variable.
6
6
 
7
7
  Learn more in the [CrofAI documentation](https://crof.ai/docs).
8
8
 
@@ -55,6 +55,7 @@ for await (const chunk of stream) {
55
55
  | `crof/kimi-k2.6` | 262K | | | | | | $0.50 | $2 |
56
56
  | `crof/kimi-k2.7-code` | 262K | | | | | | $0.55 | $2 |
57
57
  | `crof/kimi-k3` | 1.0M | | | | | | $2 | $8 |
58
+ | `crof/kimi-k3-eco` | 1.0M | | | | | | $1 | $4 |
58
59
  | `crof/mimo-v2.5-pro` | 1.0M | | | | | | $0.40 | $0.80 |
59
60
  | `crof/minimax-m2.5` | 205K | | | | | | $0.11 | $0.95 |
60
61
  | `crof/qwen3.5-397b-a17b` | 262K | | | | | | $0.35 | $2 |
@@ -2,7 +2,7 @@
2
2
 
3
3
  # ![CrossModel logo](https://models.dev/logos/crossmodel.svg)CrossModel
4
4
 
5
- Access 46 CrossModel models through Mastra's model router. Authentication is handled automatically using the `CROSSMODEL_API_KEY` environment variable.
5
+ Access 47 CrossModel models through Mastra's model router. Authentication is handled automatically using the `CROSSMODEL_API_KEY` environment variable.
6
6
 
7
7
  Learn more in the [CrossModel documentation](https://www.crossmodel.ai/docs).
8
8
 
@@ -51,6 +51,7 @@ for await (const chunk of stream) {
51
51
  | `crossmodel/gemini/gemini-3-flash-preview` | 1.0M | | | | | | $0.50 | $3 |
52
52
  | `crossmodel/gemini/gemini-3.1-pro-preview` | 1.0M | | | | | | $2 | $12 |
53
53
  | `crossmodel/gemini/gemini-3.5-flash` | 1.0M | | | | | | $2 | $9 |
54
+ | `crossmodel/gemini/gemini-3.6-flash` | 1.0M | | | | | | $2 | $8 |
54
55
  | `crossmodel/minimax/minimax-m2.7` | 205K | | | | | | $0.33 | $1 |
55
56
  | `crossmodel/minimax/minimax-m3` | 1.0M | | | | | | $0.33 | $1 |
56
57
  | `crossmodel/moonshot/kimi-k2.5` | 262K | | | | | | $0.62 | $3 |
@@ -63,9 +64,9 @@ for await (const chunk of stream) {
63
64
  | `crossmodel/openai/gpt-5.4-nano` | 400K | | | | | | $0.20 | $1 |
64
65
  | `crossmodel/openai/gpt-5.5` | 1.1M | | | | | | $5 | $30 |
65
66
  | `crossmodel/openai/gpt-5.5-pro` | 1.1M | | | | | | $30 | $180 |
66
- | `crossmodel/openai/gpt-5.6-luna` | 1.1M | | | | | | $1 | $6 |
67
+ | `crossmodel/openai/gpt-5.6-luna` | 1.1M | | | | | | $0.20 | $1 |
67
68
  | `crossmodel/openai/gpt-5.6-sol` | 1.1M | | | | | | $5 | $30 |
68
- | `crossmodel/openai/gpt-5.6-terra` | 1.1M | | | | | | $3 | $15 |
69
+ | `crossmodel/openai/gpt-5.6-terra` | 1.1M | | | | | | $2 | $12 |
69
70
  | `crossmodel/qwen/qwen3.6-flash` | 1.0M | | | | | | $0.19 | $1 |
70
71
  | `crossmodel/qwen/qwen3.6-plus` | 1.0M | | | | | | $0.32 | $2 |
71
72
  | `crossmodel/qwen/qwen3.7-max` | 1.0M | | | | | | $2 | $5 |
@@ -2,7 +2,7 @@
2
2
 
3
3
  # ![EmpirioLabs AI logo](https://models.dev/logos/empiriolabs.svg)EmpirioLabs AI
4
4
 
5
- Access 36 EmpirioLabs AI models through Mastra's model router. Authentication is handled automatically using the `EMPIRIOLABS_API_KEY` environment variable.
5
+ Access 37 EmpirioLabs AI models through Mastra's model router. Authentication is handled automatically using the `EMPIRIOLABS_API_KEY` environment variable.
6
6
 
7
7
  Learn more in the [EmpirioLabs AI documentation](https://docs.empiriolabs.ai).
8
8
 
@@ -63,6 +63,7 @@ for await (const chunk of stream) {
63
63
  | `empiriolabs/qwen3-5-9b` | 262K | | | | | | $0.09 | $0.13 |
64
64
  | `empiriolabs/qwen3-5-plus` | 1.0M | | | | | | $0.36 | $2 |
65
65
  | `empiriolabs/qwen3-6-27b` | 256K | | | | | | $0.41 | $2 |
66
+ | `empiriolabs/qwen3-6-35b-a3b` | 131K | | | | | | $0.07 | $0.42 |
66
67
  | `empiriolabs/qwen3-6-flash` | 1.0M | | | | | | $0.25 | $2 |
67
68
  | `empiriolabs/qwen3-6-max-preview` | 256K | | | | | | $1 | $8 |
68
69
  | `empiriolabs/qwen3-6-plus` | 1.0M | | | | | | $0.50 | $3 |