@mastra/mcp-docs-server 1.1.1-alpha.2 → 1.1.2-alpha.0
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/deployment/cloud-providers.md +1 -1
- package/.docs/docs/deployment/overview.md +1 -1
- package/.docs/docs/deployment/studio.md +234 -0
- package/.docs/docs/memory/observational-memory.md +86 -11
- package/.docs/docs/streaming/events.md +23 -0
- package/.docs/docs/workspace/filesystem.md +72 -1
- package/.docs/docs/workspace/overview.md +95 -12
- package/.docs/docs/workspace/sandbox.md +2 -0
- package/.docs/guides/agent-frameworks/ai-sdk.md +6 -2
- package/.docs/guides/deployment/cloudflare.md +99 -0
- package/.docs/guides/guide/code-review-bot.md +221 -0
- package/.docs/guides/guide/dev-assistant.md +304 -0
- package/.docs/guides/guide/docs-manager.md +238 -0
- package/.docs/models/gateways/openrouter.md +6 -3
- package/.docs/models/index.md +1 -1
- package/.docs/models/providers/baseten.md +2 -1
- package/.docs/models/providers/cerebras.md +2 -1
- package/.docs/models/providers/fireworks-ai.md +2 -1
- package/.docs/models/providers/friendli.md +3 -2
- package/.docs/models/providers/huggingface.md +3 -2
- package/.docs/models/providers/jiekou.md +4 -2
- package/.docs/models/providers/minimax-cn-coding-plan.md +3 -2
- package/.docs/models/providers/minimax-cn.md +3 -2
- package/.docs/models/providers/minimax-coding-plan.md +3 -2
- package/.docs/models/providers/minimax.md +3 -2
- package/.docs/models/providers/nano-gpt.md +12 -4
- package/.docs/models/providers/novita-ai.md +4 -2
- package/.docs/models/providers/ollama-cloud.md +3 -1
- package/.docs/models/providers/openai.md +15 -14
- package/.docs/models/providers/opencode.md +31 -32
- package/.docs/models/providers/stackit.md +78 -0
- package/.docs/models/providers/synthetic.md +1 -1
- package/.docs/models/providers/zai-coding-plan.md +3 -2
- package/.docs/models/providers/zai.md +3 -2
- package/.docs/models/providers/zhipuai-coding-plan.md +3 -2
- package/.docs/models/providers/zhipuai.md +3 -2
- package/.docs/models/providers.md +1 -0
- package/.docs/reference/ai-sdk/with-mastra.md +1 -1
- package/.docs/reference/cli/mastra.md +1 -1
- package/.docs/reference/deployer/cloudflare.md +35 -12
- package/.docs/reference/index.md +3 -0
- package/.docs/reference/memory/observational-memory.md +318 -9
- package/.docs/reference/streaming/workflows/stream.md +1 -0
- package/.docs/reference/workflows/workflow-methods/foreach.md +30 -0
- package/.docs/reference/workspace/e2b-sandbox.md +299 -0
- package/.docs/reference/workspace/gcs-filesystem.md +170 -0
- package/.docs/reference/workspace/s3-filesystem.md +169 -0
- package/CHANGELOG.md +15 -0
- package/package.json +6 -6
- package/.docs/guides/deployment/cloudflare-deployer.md +0 -102
|
@@ -0,0 +1,238 @@
|
|
|
1
|
+
# Building a Docs Manager
|
|
2
|
+
|
|
3
|
+
In this guide, you'll build a documentation manager that maintains your project's docs. It creates well-structured markdown files, keeps documentation organized, and prevents accidental overwrites. You'll learn how to set up a workspace filesystem, create an agent with document management instructions, and use it to generate and update documentation through conversational prompts.
|
|
4
|
+
|
|
5
|
+
## Prerequisites
|
|
6
|
+
|
|
7
|
+
- Node.js `v22.13.0` or later installed
|
|
8
|
+
- An API key from a supported [Model Provider](https://mastra.ai/models)
|
|
9
|
+
- An existing Mastra project (Follow the [installation guide](https://mastra.ai/guides/getting-started/quickstart) to set up a new project)
|
|
10
|
+
|
|
11
|
+
## Set up the workspace
|
|
12
|
+
|
|
13
|
+
The workspace uses a local filesystem to manage documentation files. The agent reads and writes files within the workspace directory. In your `src/mastra/index.ts` file, import the [`Workspace`](https://mastra.ai/reference/workspace/workspace-class) and [`LocalFilesystem`](https://mastra.ai/reference/workspace/local-filesystem) classes.
|
|
14
|
+
|
|
15
|
+
```typescript
|
|
16
|
+
import { Mastra } from '@mastra/core';
|
|
17
|
+
import { resolve } from 'node:path';
|
|
18
|
+
import { Workspace, LocalFilesystem } from '@mastra/core/workspace';
|
|
19
|
+
|
|
20
|
+
const workspace = new Workspace({
|
|
21
|
+
filesystem: new LocalFilesystem({
|
|
22
|
+
basePath: resolve(import.meta.dirname, '../../workspace'),
|
|
23
|
+
}),
|
|
24
|
+
});
|
|
25
|
+
|
|
26
|
+
export const mastra = new Mastra({
|
|
27
|
+
workspace,
|
|
28
|
+
});
|
|
29
|
+
```
|
|
30
|
+
|
|
31
|
+
At the root of your project, create a new folder called `workspace`. This is where all documentation files will be stored and managed by the agent.
|
|
32
|
+
|
|
33
|
+
## Add example documentation
|
|
34
|
+
|
|
35
|
+
Inside the `workspace` directory, create the following folders:
|
|
36
|
+
|
|
37
|
+
- `docs/guides/`: For how-to guides
|
|
38
|
+
- `docs/api/`: For API reference documentation
|
|
39
|
+
- `docs/tutorials/`: For step-by-step tutorials
|
|
40
|
+
|
|
41
|
+
Create a `workspace/docs/README.md` file that serves as the documentation index:
|
|
42
|
+
|
|
43
|
+
```markdown
|
|
44
|
+
# Project Documentation
|
|
45
|
+
|
|
46
|
+
Welcome to the documentation!
|
|
47
|
+
|
|
48
|
+
## Sections
|
|
49
|
+
|
|
50
|
+
- [Guides](./guides/): How-to guides
|
|
51
|
+
- [API](./api/): API reference
|
|
52
|
+
- [Tutorials](./tutorials/): Step-by-step tutorials
|
|
53
|
+
```
|
|
54
|
+
|
|
55
|
+
Add a sample guide so the agent can see the existing documentation style:
|
|
56
|
+
|
|
57
|
+
````markdown
|
|
58
|
+
# Getting Started
|
|
59
|
+
|
|
60
|
+
Quick start guide for the project.
|
|
61
|
+
|
|
62
|
+
## Installation
|
|
63
|
+
|
|
64
|
+
```bash
|
|
65
|
+
npm install example-package
|
|
66
|
+
```
|
|
67
|
+
|
|
68
|
+
## Quick Example
|
|
69
|
+
|
|
70
|
+
```typescript
|
|
71
|
+
import { Example } from 'example-package';
|
|
72
|
+
|
|
73
|
+
const example = new Example();
|
|
74
|
+
example.run();
|
|
75
|
+
```
|
|
76
|
+
````
|
|
77
|
+
|
|
78
|
+
## Create the docs manager
|
|
79
|
+
|
|
80
|
+
Now it's time to create the documentation manager agent. This agent will have instructions for creating and updating markdown files in the workspace. Create a new file `src/mastra/agents/docs-manager.ts` and define the agent:
|
|
81
|
+
|
|
82
|
+
```typescript
|
|
83
|
+
import { Agent } from '@mastra/core/agent';
|
|
84
|
+
|
|
85
|
+
export const docsManager = new Agent({
|
|
86
|
+
id: 'docs-manager',
|
|
87
|
+
name: 'Docs Manager',
|
|
88
|
+
instructions: `You are a documentation manager that creates and maintains markdown docs.
|
|
89
|
+
|
|
90
|
+
When creating new docs:
|
|
91
|
+
1. Ask for topic and target audience
|
|
92
|
+
2. Create well-structured markdown with clear sections
|
|
93
|
+
3. Include relevant code examples with syntax highlighting
|
|
94
|
+
4. Save in the appropriate directory:
|
|
95
|
+
- /docs/guides/ for user guides and how-tos
|
|
96
|
+
- /docs/api/ for API reference
|
|
97
|
+
- /docs/tutorials/ for step-by-step tutorials
|
|
98
|
+
|
|
99
|
+
When updating existing docs:
|
|
100
|
+
1. ALWAYS read the file first
|
|
101
|
+
2. Make targeted updates without removing unrelated content
|
|
102
|
+
3. Preserve existing structure and formatting
|
|
103
|
+
|
|
104
|
+
Use kebab-case naming for files (getting-started.md).
|
|
105
|
+
Always explain what you're creating and why.`,
|
|
106
|
+
model: 'openai/gpt-4o',
|
|
107
|
+
});
|
|
108
|
+
```
|
|
109
|
+
|
|
110
|
+
Define the agent by importing it inside `src/mastra/index.ts` and registering it with the `Mastra` instance:
|
|
111
|
+
|
|
112
|
+
```typescript
|
|
113
|
+
import { Mastra } from '@mastra/core';
|
|
114
|
+
import { resolve } from 'node:path';
|
|
115
|
+
import { Workspace, LocalFilesystem } from '@mastra/core/workspace';
|
|
116
|
+
import { docsManager } from './agents/docs-manager';
|
|
117
|
+
|
|
118
|
+
const workspace = new Workspace({
|
|
119
|
+
filesystem: new LocalFilesystem({
|
|
120
|
+
basePath: resolve(import.meta.dirname, '../../workspace'),
|
|
121
|
+
}),
|
|
122
|
+
});
|
|
123
|
+
|
|
124
|
+
export const mastra = new Mastra({
|
|
125
|
+
workspace,
|
|
126
|
+
agents: { docsManager },
|
|
127
|
+
});
|
|
128
|
+
```
|
|
129
|
+
|
|
130
|
+
## Test the docs manager
|
|
131
|
+
|
|
132
|
+
Start Mastra Studio and interact with the agent to see it in action.
|
|
133
|
+
|
|
134
|
+
**npm**:
|
|
135
|
+
|
|
136
|
+
```bash
|
|
137
|
+
npm run dev
|
|
138
|
+
```
|
|
139
|
+
|
|
140
|
+
**pnpm**:
|
|
141
|
+
|
|
142
|
+
```bash
|
|
143
|
+
pnpm run dev
|
|
144
|
+
```
|
|
145
|
+
|
|
146
|
+
**Yarn**:
|
|
147
|
+
|
|
148
|
+
```bash
|
|
149
|
+
yarn dev
|
|
150
|
+
```
|
|
151
|
+
|
|
152
|
+
**Bun**:
|
|
153
|
+
|
|
154
|
+
```bash
|
|
155
|
+
bun run dev
|
|
156
|
+
```
|
|
157
|
+
|
|
158
|
+
Open [localhost:4111](http://localhost:4111) and navigate to the docs manager.
|
|
159
|
+
|
|
160
|
+
### Create a new document
|
|
161
|
+
|
|
162
|
+
Ask the agent to create a tutorial:
|
|
163
|
+
|
|
164
|
+
```text
|
|
165
|
+
Create a tutorial for setting up authentication. Cover installation, configuration, and a basic example.
|
|
166
|
+
```
|
|
167
|
+
|
|
168
|
+
The agent should create a file like `docs/tutorials/authentication-setup.md`. Since agent responses are non-deterministic, the exact content will vary, but you should see something similar to:
|
|
169
|
+
|
|
170
|
+
````md
|
|
171
|
+
# Authentication Setup
|
|
172
|
+
|
|
173
|
+
Learn how to add authentication to your application.
|
|
174
|
+
|
|
175
|
+
## Installation
|
|
176
|
+
|
|
177
|
+
Install the auth package:
|
|
178
|
+
|
|
179
|
+
```bash
|
|
180
|
+
npm install @example/auth
|
|
181
|
+
```
|
|
182
|
+
|
|
183
|
+
## Configuration
|
|
184
|
+
|
|
185
|
+
Create a config file:
|
|
186
|
+
|
|
187
|
+
```typescript
|
|
188
|
+
// auth.config.ts
|
|
189
|
+
export const authConfig = {
|
|
190
|
+
provider: 'oauth',
|
|
191
|
+
clientId: process.env.AUTH_CLIENT_ID,
|
|
192
|
+
secret: process.env.AUTH_SECRET,
|
|
193
|
+
};
|
|
194
|
+
```
|
|
195
|
+
|
|
196
|
+
## Basic Example
|
|
197
|
+
|
|
198
|
+
```typescript
|
|
199
|
+
import { createAuth } from '@example/auth';
|
|
200
|
+
import { authConfig } from './auth.config';
|
|
201
|
+
|
|
202
|
+
const auth = createAuth(authConfig);
|
|
203
|
+
|
|
204
|
+
app.get('/protected', auth.requireAuth(), (req, res) => {
|
|
205
|
+
res.json({ user: req.user });
|
|
206
|
+
});
|
|
207
|
+
```
|
|
208
|
+
````
|
|
209
|
+
|
|
210
|
+
### Update an existing document
|
|
211
|
+
|
|
212
|
+
Try updating an existing document:
|
|
213
|
+
|
|
214
|
+
```text
|
|
215
|
+
Update the getting started guide to include a section on configuration after the Quick Example
|
|
216
|
+
```
|
|
217
|
+
|
|
218
|
+
The agent should read the existing `getting-started.md` file, find the right insertion point, and add the new section without disrupting existing content.
|
|
219
|
+
|
|
220
|
+
### Organize documentation
|
|
221
|
+
|
|
222
|
+
Ask the agent to create an index:
|
|
223
|
+
|
|
224
|
+
```text
|
|
225
|
+
List all tutorial files and create an index page that links to all of them
|
|
226
|
+
```
|
|
227
|
+
|
|
228
|
+
The agent should create a file like `/docs/tutorials/index.md` that links to all available tutorials.
|
|
229
|
+
|
|
230
|
+
## Next steps
|
|
231
|
+
|
|
232
|
+
You can extend this manager to:
|
|
233
|
+
|
|
234
|
+
- Add BM25 or vector search to find relevant documentation
|
|
235
|
+
- Create skills for documentation templates
|
|
236
|
+
- Build automated doc generation from source code
|
|
237
|
+
- Integrate with GitHub to update docs on commits
|
|
238
|
+
- Add validation to check links and formatting
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# OpenRouter
|
|
2
2
|
|
|
3
|
-
OpenRouter aggregates models from multiple providers with enhanced features like rate limiting and failover. Access
|
|
3
|
+
OpenRouter aggregates models from multiple providers with enhanced features like rate limiting and failover. Access 179 models through Mastra's model router.
|
|
4
4
|
|
|
5
5
|
Learn more in the [OpenRouter documentation](https://openrouter.ai/models).
|
|
6
6
|
|
|
@@ -101,6 +101,7 @@ ANTHROPIC_API_KEY=ant-...
|
|
|
101
101
|
| `minimax/minimax-m1` |
|
|
102
102
|
| `minimax/minimax-m2` |
|
|
103
103
|
| `minimax/minimax-m2.1` |
|
|
104
|
+
| `minimax/minimax-m2.5` |
|
|
104
105
|
| `mistralai/codestral-2508` |
|
|
105
106
|
| `mistralai/devstral-2512` |
|
|
106
107
|
| `mistralai/devstral-2512:free` |
|
|
@@ -156,7 +157,6 @@ ANTHROPIC_API_KEY=ant-...
|
|
|
156
157
|
| `openai/gpt-oss-20b:free` |
|
|
157
158
|
| `openai/gpt-oss-safeguard-20b` |
|
|
158
159
|
| `openai/o4-mini` |
|
|
159
|
-
| `openrouter/pony-alpha` |
|
|
160
160
|
| `openrouter/sherlock-dash-alpha` |
|
|
161
161
|
| `openrouter/sherlock-think-alpha` |
|
|
162
162
|
| `qwen/qwen-2.5-coder-32b-instruct` |
|
|
@@ -190,6 +190,8 @@ ANTHROPIC_API_KEY=ant-...
|
|
|
190
190
|
| `sourceful/riverflow-v2-fast-preview` |
|
|
191
191
|
| `sourceful/riverflow-v2-max-preview` |
|
|
192
192
|
| `sourceful/riverflow-v2-standard-preview` |
|
|
193
|
+
| `stepfun/step-3.5-flash` |
|
|
194
|
+
| `stepfun/step-3.5-flash:free` |
|
|
193
195
|
| `thudm/glm-z1-32b:free` |
|
|
194
196
|
| `tngtech/deepseek-r1t2-chimera:free` |
|
|
195
197
|
| `tngtech/tng-r1t-chimera:free` |
|
|
@@ -209,4 +211,5 @@ ANTHROPIC_API_KEY=ant-...
|
|
|
209
211
|
| `z-ai/glm-4.6` |
|
|
210
212
|
| `z-ai/glm-4.6:exacto` |
|
|
211
213
|
| `z-ai/glm-4.7` |
|
|
212
|
-
| `z-ai/glm-4.7-flash` |
|
|
214
|
+
| `z-ai/glm-4.7-flash` |
|
|
215
|
+
| `z-ai/glm-5` |
|
package/.docs/models/index.md
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# Model Providers
|
|
2
2
|
|
|
3
|
-
Mastra provides a unified interface for working with LLMs across multiple providers, giving you access to
|
|
3
|
+
Mastra provides a unified interface for working with LLMs across multiple providers, giving you access to 2211 models from 79 providers through a single API.
|
|
4
4
|
|
|
5
5
|
## Features
|
|
6
6
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# Baseten
|
|
2
2
|
|
|
3
|
-
Access
|
|
3
|
+
Access 7 Baseten models through Mastra's model router. Authentication is handled automatically using the `BASETEN_API_KEY` environment variable.
|
|
4
4
|
|
|
5
5
|
Learn more in the [Baseten documentation](https://docs.baseten.co/development/model-apis/overview).
|
|
6
6
|
|
|
@@ -37,6 +37,7 @@ for await (const chunk of stream) {
|
|
|
37
37
|
| `baseten/deepseek-ai/DeepSeek-V3.2` | 164K | | | | | | $0.30 | $0.45 |
|
|
38
38
|
| `baseten/moonshotai/Kimi-K2-Instruct-0905` | 262K | | | | | | $0.60 | $3 |
|
|
39
39
|
| `baseten/moonshotai/Kimi-K2-Thinking` | 262K | | | | | | $0.60 | $3 |
|
|
40
|
+
| `baseten/moonshotai/Kimi-K2.5` | 262K | | | | | | $0.60 | $3 |
|
|
40
41
|
| `baseten/Qwen/Qwen3-Coder-480B-A35B-Instruct` | 262K | | | | | | $0.38 | $2 |
|
|
41
42
|
| `baseten/zai-org/GLM-4.6` | 200K | | | | | | $0.60 | $2 |
|
|
42
43
|
| `baseten/zai-org/GLM-4.7` | 205K | | | | | | $0.60 | $2 |
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# Cerebras
|
|
2
2
|
|
|
3
|
-
Access
|
|
3
|
+
Access 4 Cerebras models through Mastra's model router. Authentication is handled automatically using the `CEREBRAS_API_KEY` environment variable.
|
|
4
4
|
|
|
5
5
|
Learn more in the [Cerebras documentation](https://inference-docs.cerebras.ai/models/overview).
|
|
6
6
|
|
|
@@ -33,6 +33,7 @@ for await (const chunk of stream) {
|
|
|
33
33
|
| Model | Context | Tools | Reasoning | Image | Audio | Video | Input $/1M | Output $/1M |
|
|
34
34
|
| ----------------------------------------- | ------- | ----- | --------- | ----- | ----- | ----- | ---------- | ----------- |
|
|
35
35
|
| `cerebras/gpt-oss-120b` | 131K | | | | | | $0.25 | $0.69 |
|
|
36
|
+
| `cerebras/llama3.1-8b` | 32K | | | | | | $0.10 | $0.10 |
|
|
36
37
|
| `cerebras/qwen-3-235b-a22b-instruct-2507` | 131K | | | | | | $0.60 | $1 |
|
|
37
38
|
| `cerebras/zai-glm-4.7` | 131K | | | | | | — | — |
|
|
38
39
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# Fireworks AI
|
|
2
2
|
|
|
3
|
-
Access
|
|
3
|
+
Access 18 Fireworks AI models through Mastra's model router. Authentication is handled automatically using the `FIREWORKS_API_KEY` environment variable.
|
|
4
4
|
|
|
5
5
|
Learn more in the [Fireworks AI documentation](https://fireworks.ai/docs/).
|
|
6
6
|
|
|
@@ -42,6 +42,7 @@ for await (const chunk of stream) {
|
|
|
42
42
|
| `fireworks-ai/accounts/fireworks/models/glm-4p5-air` | 131K | | | | | | $0.22 | $0.88 |
|
|
43
43
|
| `fireworks-ai/accounts/fireworks/models/glm-4p6` | 198K | | | | | | $0.55 | $2 |
|
|
44
44
|
| `fireworks-ai/accounts/fireworks/models/glm-4p7` | 198K | | | | | | $0.60 | $2 |
|
|
45
|
+
| `fireworks-ai/accounts/fireworks/models/glm-5` | 203K | | | | | | $1 | $3 |
|
|
45
46
|
| `fireworks-ai/accounts/fireworks/models/gpt-oss-120b` | 131K | | | | | | $0.15 | $0.60 |
|
|
46
47
|
| `fireworks-ai/accounts/fireworks/models/gpt-oss-20b` | 131K | | | | | | $0.05 | $0.20 |
|
|
47
48
|
| `fireworks-ai/accounts/fireworks/models/kimi-k2-instruct` | 128K | | | | | | $1 | $3 |
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# Friendli
|
|
2
2
|
|
|
3
|
-
Access
|
|
3
|
+
Access 8 Friendli models through Mastra's model router. Authentication is handled automatically using the `FRIENDLI_TOKEN` environment variable.
|
|
4
4
|
|
|
5
5
|
Learn more in the [Friendli documentation](https://friendli.ai/docs/guides/serverless_endpoints/introduction).
|
|
6
6
|
|
|
@@ -41,6 +41,7 @@ for await (const chunk of stream) {
|
|
|
41
41
|
| `friendli/MiniMaxAI/MiniMax-M2.1` | 197K | | | | | | $0.30 | $1 |
|
|
42
42
|
| `friendli/Qwen/Qwen3-235B-A22B-Instruct-2507` | 262K | | | | | | $0.20 | $0.80 |
|
|
43
43
|
| `friendli/zai-org/GLM-4.7` | 203K | | | | | | — | — |
|
|
44
|
+
| `friendli/zai-org/GLM-5` | 203K | | | | | | $1 | $3 |
|
|
44
45
|
|
|
45
46
|
## Advanced Configuration
|
|
46
47
|
|
|
@@ -70,7 +71,7 @@ const agent = new Agent({
|
|
|
70
71
|
model: ({ requestContext }) => {
|
|
71
72
|
const useAdvanced = requestContext.task === "complex";
|
|
72
73
|
return useAdvanced
|
|
73
|
-
? "friendli/zai-org/GLM-
|
|
74
|
+
? "friendli/zai-org/GLM-5"
|
|
74
75
|
: "friendli/LGAI-EXAONE/EXAONE-4.0.1-32B";
|
|
75
76
|
}
|
|
76
77
|
});
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# Hugging Face
|
|
2
2
|
|
|
3
|
-
Access
|
|
3
|
+
Access 17 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
|
|
|
@@ -50,6 +50,7 @@ for await (const chunk of stream) {
|
|
|
50
50
|
| `huggingface/XiaomiMiMo/MiMo-V2-Flash` | 262K | | | | | | $0.10 | $0.30 |
|
|
51
51
|
| `huggingface/zai-org/GLM-4.7` | 205K | | | | | | $0.60 | $2 |
|
|
52
52
|
| `huggingface/zai-org/GLM-4.7-Flash` | 200K | | | | | | — | — |
|
|
53
|
+
| `huggingface/zai-org/GLM-5` | 203K | | | | | | $1 | $3 |
|
|
53
54
|
|
|
54
55
|
## Advanced Configuration
|
|
55
56
|
|
|
@@ -79,7 +80,7 @@ const agent = new Agent({
|
|
|
79
80
|
model: ({ requestContext }) => {
|
|
80
81
|
const useAdvanced = requestContext.task === "complex";
|
|
81
82
|
return useAdvanced
|
|
82
|
-
? "huggingface/zai-org/GLM-
|
|
83
|
+
? "huggingface/zai-org/GLM-5"
|
|
83
84
|
: "huggingface/MiniMaxAI/MiniMax-M2.1";
|
|
84
85
|
}
|
|
85
86
|
});
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# Jiekou.AI
|
|
2
2
|
|
|
3
|
-
Access
|
|
3
|
+
Access 61 Jiekou.AI models through Mastra's model router. Authentication is handled automatically using the `JIEKOU_API_KEY` environment variable.
|
|
4
4
|
|
|
5
5
|
Learn more in the [Jiekou.AI documentation](https://docs.jiekou.ai/docs/support/quickstart?utm_source=github_models.dev).
|
|
6
6
|
|
|
@@ -40,6 +40,7 @@ for await (const chunk of stream) {
|
|
|
40
40
|
| `jiekou/claude-opus-4-1-20250805` | 200K | | | | | | $14 | $68 |
|
|
41
41
|
| `jiekou/claude-opus-4-20250514` | 200K | | | | | | $14 | $68 |
|
|
42
42
|
| `jiekou/claude-opus-4-5-20251101` | 200K | | | | | | $5 | $23 |
|
|
43
|
+
| `jiekou/claude-opus-4-6` | 1.0M | | | | | | $5 | $25 |
|
|
43
44
|
| `jiekou/claude-sonnet-4-20250514` | 200K | | | | | | $3 | $14 |
|
|
44
45
|
| `jiekou/claude-sonnet-4-5-20250929` | 200K | | | | | | $3 | $14 |
|
|
45
46
|
| `jiekou/deepseek/deepseek-r1-0528` | 164K | | | | | | $0.70 | $3 |
|
|
@@ -59,6 +60,7 @@ for await (const chunk of stream) {
|
|
|
59
60
|
| `jiekou/gpt-5-mini` | 400K | | | | | | $0.23 | $2 |
|
|
60
61
|
| `jiekou/gpt-5-nano` | 400K | | | | | | $0.04 | $0.36 |
|
|
61
62
|
| `jiekou/gpt-5-pro` | 400K | | | | | | $14 | $108 |
|
|
63
|
+
| `jiekou/gpt-5.1` | 400K | | | | | | $1 | $9 |
|
|
62
64
|
| `jiekou/gpt-5.1-codex` | 400K | | | | | | $1 | $9 |
|
|
63
65
|
| `jiekou/gpt-5.1-codex-max` | 400K | | | | | | $1 | $9 |
|
|
64
66
|
| `jiekou/gpt-5.1-codex-mini` | 400K | | | | | | $0.23 | $2 |
|
|
@@ -79,13 +81,13 @@ for await (const chunk of stream) {
|
|
|
79
81
|
| `jiekou/o3` | 131K | | | | | | $10 | $40 |
|
|
80
82
|
| `jiekou/o3-mini` | 131K | | | | | | $1 | $4 |
|
|
81
83
|
| `jiekou/o4-mini` | 200K | | | | | | $1 | $4 |
|
|
82
|
-
| `jiekou/qwen/qwen2.5-vl-72b-instruct` | 33K | | | | | | $0.80 | $0.80 |
|
|
83
84
|
| `jiekou/qwen/qwen3-235b-a22b-fp8` | 41K | | | | | | $0.20 | $0.80 |
|
|
84
85
|
| `jiekou/qwen/qwen3-235b-a22b-instruct-2507` | 131K | | | | | | $0.15 | $0.80 |
|
|
85
86
|
| `jiekou/qwen/qwen3-235b-a22b-thinking-2507` | 131K | | | | | | $0.30 | $3 |
|
|
86
87
|
| `jiekou/qwen/qwen3-30b-a3b-fp8` | 41K | | | | | | $0.09 | $0.45 |
|
|
87
88
|
| `jiekou/qwen/qwen3-32b-fp8` | 41K | | | | | | $0.10 | $0.45 |
|
|
88
89
|
| `jiekou/qwen/qwen3-coder-480b-a35b-instruct` | 262K | | | | | | $0.29 | $1 |
|
|
90
|
+
| `jiekou/qwen/qwen3-coder-next` | 262K | | | | | | $0.20 | $2 |
|
|
89
91
|
| `jiekou/qwen/qwen3-next-80b-a3b-instruct` | 66K | | | | | | $0.15 | $2 |
|
|
90
92
|
| `jiekou/qwen/qwen3-next-80b-a3b-thinking` | 66K | | | | | | $0.15 | $2 |
|
|
91
93
|
| `jiekou/xiaomimimo/mimo-v2-flash` | 262K | | | | | | — | — |
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# MiniMax Coding Plan (minimaxi.com)
|
|
2
2
|
|
|
3
|
-
Access
|
|
3
|
+
Access 3 MiniMax Coding Plan (minimaxi.com) models through Mastra's model router. Authentication is handled automatically using the `MINIMAX_API_KEY` environment variable.
|
|
4
4
|
|
|
5
5
|
Learn more in the [MiniMax Coding Plan (minimaxi.com) documentation](https://platform.minimaxi.com/docs/coding-plan/intro).
|
|
6
6
|
|
|
@@ -36,6 +36,7 @@ for await (const chunk of stream) {
|
|
|
36
36
|
| ------------------------------------- | ------- | ----- | --------- | ----- | ----- | ----- | ---------- | ----------- |
|
|
37
37
|
| `minimax-cn-coding-plan/MiniMax-M2` | 197K | | | | | | — | — |
|
|
38
38
|
| `minimax-cn-coding-plan/MiniMax-M2.1` | 205K | | | | | | — | — |
|
|
39
|
+
| `minimax-cn-coding-plan/MiniMax-M2.5` | 205K | | | | | | — | — |
|
|
39
40
|
|
|
40
41
|
## Advanced Configuration
|
|
41
42
|
|
|
@@ -65,7 +66,7 @@ const agent = new Agent({
|
|
|
65
66
|
model: ({ requestContext }) => {
|
|
66
67
|
const useAdvanced = requestContext.task === "complex";
|
|
67
68
|
return useAdvanced
|
|
68
|
-
? "minimax-cn-coding-plan/MiniMax-M2.
|
|
69
|
+
? "minimax-cn-coding-plan/MiniMax-M2.5"
|
|
69
70
|
: "minimax-cn-coding-plan/MiniMax-M2";
|
|
70
71
|
}
|
|
71
72
|
});
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# MiniMax (minimaxi.com)
|
|
2
2
|
|
|
3
|
-
Access
|
|
3
|
+
Access 3 MiniMax (minimaxi.com) models through Mastra's model router. Authentication is handled automatically using the `MINIMAX_API_KEY` environment variable.
|
|
4
4
|
|
|
5
5
|
Learn more in the [MiniMax (minimaxi.com) documentation](https://platform.minimaxi.com/docs/guides/quickstart).
|
|
6
6
|
|
|
@@ -36,6 +36,7 @@ for await (const chunk of stream) {
|
|
|
36
36
|
| ------------------------- | ------- | ----- | --------- | ----- | ----- | ----- | ---------- | ----------- |
|
|
37
37
|
| `minimax-cn/MiniMax-M2` | 197K | | | | | | $0.30 | $1 |
|
|
38
38
|
| `minimax-cn/MiniMax-M2.1` | 205K | | | | | | $0.30 | $1 |
|
|
39
|
+
| `minimax-cn/MiniMax-M2.5` | 205K | | | | | | $0.30 | $1 |
|
|
39
40
|
|
|
40
41
|
## Advanced Configuration
|
|
41
42
|
|
|
@@ -65,7 +66,7 @@ const agent = new Agent({
|
|
|
65
66
|
model: ({ requestContext }) => {
|
|
66
67
|
const useAdvanced = requestContext.task === "complex";
|
|
67
68
|
return useAdvanced
|
|
68
|
-
? "minimax-cn/MiniMax-M2.
|
|
69
|
+
? "minimax-cn/MiniMax-M2.5"
|
|
69
70
|
: "minimax-cn/MiniMax-M2";
|
|
70
71
|
}
|
|
71
72
|
});
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# MiniMax Coding Plan (minimax.io)
|
|
2
2
|
|
|
3
|
-
Access
|
|
3
|
+
Access 3 MiniMax Coding Plan (minimax.io) models through Mastra's model router. Authentication is handled automatically using the `MINIMAX_API_KEY` environment variable.
|
|
4
4
|
|
|
5
5
|
Learn more in the [MiniMax Coding Plan (minimax.io) documentation](https://platform.minimax.io/docs/coding-plan/intro).
|
|
6
6
|
|
|
@@ -36,6 +36,7 @@ for await (const chunk of stream) {
|
|
|
36
36
|
| ---------------------------------- | ------- | ----- | --------- | ----- | ----- | ----- | ---------- | ----------- |
|
|
37
37
|
| `minimax-coding-plan/MiniMax-M2` | 197K | | | | | | — | — |
|
|
38
38
|
| `minimax-coding-plan/MiniMax-M2.1` | 205K | | | | | | — | — |
|
|
39
|
+
| `minimax-coding-plan/MiniMax-M2.5` | 205K | | | | | | — | — |
|
|
39
40
|
|
|
40
41
|
## Advanced Configuration
|
|
41
42
|
|
|
@@ -65,7 +66,7 @@ const agent = new Agent({
|
|
|
65
66
|
model: ({ requestContext }) => {
|
|
66
67
|
const useAdvanced = requestContext.task === "complex";
|
|
67
68
|
return useAdvanced
|
|
68
|
-
? "minimax-coding-plan/MiniMax-M2.
|
|
69
|
+
? "minimax-coding-plan/MiniMax-M2.5"
|
|
69
70
|
: "minimax-coding-plan/MiniMax-M2";
|
|
70
71
|
}
|
|
71
72
|
});
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# MiniMax (minimax.io)
|
|
2
2
|
|
|
3
|
-
Access
|
|
3
|
+
Access 3 MiniMax (minimax.io) models through Mastra's model router. Authentication is handled automatically using the `MINIMAX_API_KEY` environment variable.
|
|
4
4
|
|
|
5
5
|
Learn more in the [MiniMax (minimax.io) documentation](https://platform.minimax.io/docs/guides/quickstart).
|
|
6
6
|
|
|
@@ -36,6 +36,7 @@ for await (const chunk of stream) {
|
|
|
36
36
|
| ---------------------- | ------- | ----- | --------- | ----- | ----- | ----- | ---------- | ----------- |
|
|
37
37
|
| `minimax/MiniMax-M2` | 197K | | | | | | $0.30 | $1 |
|
|
38
38
|
| `minimax/MiniMax-M2.1` | 205K | | | | | | $0.30 | $1 |
|
|
39
|
+
| `minimax/MiniMax-M2.5` | 205K | | | | | | $0.30 | $1 |
|
|
39
40
|
|
|
40
41
|
## Advanced Configuration
|
|
41
42
|
|
|
@@ -65,7 +66,7 @@ const agent = new Agent({
|
|
|
65
66
|
model: ({ requestContext }) => {
|
|
66
67
|
const useAdvanced = requestContext.task === "complex";
|
|
67
68
|
return useAdvanced
|
|
68
|
-
? "minimax/MiniMax-M2.
|
|
69
|
+
? "minimax/MiniMax-M2.5"
|
|
69
70
|
: "minimax/MiniMax-M2";
|
|
70
71
|
}
|
|
71
72
|
});
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# NanoGPT
|
|
2
2
|
|
|
3
|
-
Access
|
|
3
|
+
Access 29 NanoGPT models through Mastra's model router. Authentication is handled automatically using the `NANO_GPT_API_KEY` environment variable.
|
|
4
4
|
|
|
5
5
|
Learn more in the [NanoGPT documentation](https://docs.nano-gpt.com).
|
|
6
6
|
|
|
@@ -39,22 +39,30 @@ for await (const chunk of stream) {
|
|
|
39
39
|
| `nano-gpt/meta-llama/llama-3.3-70b-instruct` | 128K | | | | | | $1 | $2 |
|
|
40
40
|
| `nano-gpt/meta-llama/llama-4-maverick` | 128K | | | | | | $1 | $2 |
|
|
41
41
|
| `nano-gpt/minimax/minimax-m2.1` | 128K | | | | | | $1 | $2 |
|
|
42
|
+
| `nano-gpt/minimax/minimax-m2.5` | 205K | | | | | | $0.30 | $1 |
|
|
43
|
+
| `nano-gpt/minimax/minimax-m2.5-official` | 205K | | | | | | $0.30 | $1 |
|
|
42
44
|
| `nano-gpt/mistralai/devstral-2-123b-instruct-2512` | 131K | | | | | | $1 | $2 |
|
|
43
45
|
| `nano-gpt/mistralai/ministral-14b-instruct-2512` | 131K | | | | | | $1 | $2 |
|
|
44
46
|
| `nano-gpt/mistralai/mistral-large-3-675b-instruct-2512` | 131K | | | | | | $1 | $2 |
|
|
45
47
|
| `nano-gpt/moonshotai/kimi-k2-instruct` | 131K | | | | | | $1 | $2 |
|
|
46
48
|
| `nano-gpt/moonshotai/kimi-k2-thinking` | 33K | | | | | | $1 | $2 |
|
|
49
|
+
| `nano-gpt/moonshotai/kimi-k2.5` | 256K | | | | | | $0.30 | $2 |
|
|
50
|
+
| `nano-gpt/moonshotai/kimi-k2.5-thinking` | 256K | | | | | | $0.30 | $2 |
|
|
47
51
|
| `nano-gpt/nousresearch/hermes-4-405b:thinking` | 128K | | | | | | $1 | $2 |
|
|
48
52
|
| `nano-gpt/nvidia/llama-3_3-nemotron-super-49b-v1_5` | 128K | | | | | | $1 | $2 |
|
|
49
53
|
| `nano-gpt/openai/gpt-oss-120b` | 128K | | | | | | $1 | $2 |
|
|
50
54
|
| `nano-gpt/qwen/qwen3-235b-a22b-thinking-2507` | 262K | | | | | | $1 | $2 |
|
|
51
55
|
| `nano-gpt/qwen/qwen3-coder` | 106K | | | | | | $1 | $2 |
|
|
52
|
-
| `nano-gpt/z-ai/glm-4.6` | 200K | | | | | | $1 | $2 |
|
|
53
|
-
| `nano-gpt/z-ai/glm-4.6:thinking` | 128K | | | | | | $1 | $2 |
|
|
54
56
|
| `nano-gpt/zai-org/glm-4.5-air` | 128K | | | | | | $1 | $2 |
|
|
55
57
|
| `nano-gpt/zai-org/glm-4.5-air:thinking` | 128K | | | | | | $1 | $2 |
|
|
58
|
+
| `nano-gpt/zai-org/glm-4.6` | 200K | | | | | | $1 | $2 |
|
|
59
|
+
| `nano-gpt/zai-org/glm-4.6:thinking` | 128K | | | | | | $1 | $2 |
|
|
56
60
|
| `nano-gpt/zai-org/glm-4.7` | 205K | | | | | | $1 | $2 |
|
|
57
61
|
| `nano-gpt/zai-org/glm-4.7:thinking` | 128K | | | | | | $1 | $2 |
|
|
62
|
+
| `nano-gpt/zai-org/glm-5` | 200K | | | | | | $0.80 | $3 |
|
|
63
|
+
| `nano-gpt/zai-org/glm-5-original` | 200K | | | | | | $0.80 | $3 |
|
|
64
|
+
| `nano-gpt/zai-org/glm-5-original:thinking` | 200K | | | | | | $0.80 | $3 |
|
|
65
|
+
| `nano-gpt/zai-org/glm-5:thinking` | 200K | | | | | | $0.80 | $3 |
|
|
58
66
|
|
|
59
67
|
## Advanced Configuration
|
|
60
68
|
|
|
@@ -84,7 +92,7 @@ const agent = new Agent({
|
|
|
84
92
|
model: ({ requestContext }) => {
|
|
85
93
|
const useAdvanced = requestContext.task === "complex";
|
|
86
94
|
return useAdvanced
|
|
87
|
-
? "nano-gpt/zai-org/glm-
|
|
95
|
+
? "nano-gpt/zai-org/glm-5:thinking"
|
|
88
96
|
: "nano-gpt/deepseek/deepseek-r1";
|
|
89
97
|
}
|
|
90
98
|
});
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# NovitaAI
|
|
2
2
|
|
|
3
|
-
Access
|
|
3
|
+
Access 83 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
|
|
|
@@ -67,6 +67,7 @@ for await (const chunk of stream) {
|
|
|
67
67
|
| `novita-ai/microsoft/wizardlm-2-8x22b` | 66K | | | | | | $0.62 | $0.62 |
|
|
68
68
|
| `novita-ai/minimax/minimax-m2` | 205K | | | | | | $0.30 | $1 |
|
|
69
69
|
| `novita-ai/minimax/minimax-m2.1` | 205K | | | | | | $0.30 | $1 |
|
|
70
|
+
| `novita-ai/minimax/minimax-m2.5` | 205K | | | | | | $0.30 | $1 |
|
|
70
71
|
| `novita-ai/minimaxai/minimax-m1-80k` | 1.0M | | | | | | $0.55 | $2 |
|
|
71
72
|
| `novita-ai/mistralai/mistral-nemo` | 60K | | | | | | $0.04 | $0.17 |
|
|
72
73
|
| `novita-ai/moonshotai/kimi-k2-0905` | 262K | | | | | | $0.60 | $3 |
|
|
@@ -115,6 +116,7 @@ for await (const chunk of stream) {
|
|
|
115
116
|
| `novita-ai/zai-org/glm-4.6v` | 131K | | | | | | $0.30 | $0.90 |
|
|
116
117
|
| `novita-ai/zai-org/glm-4.7` | 205K | | | | | | $0.60 | $2 |
|
|
117
118
|
| `novita-ai/zai-org/glm-4.7-flash` | 200K | | | | | | $0.07 | $0.40 |
|
|
119
|
+
| `novita-ai/zai-org/glm-5` | 203K | | | | | | $1 | $3 |
|
|
118
120
|
|
|
119
121
|
## Advanced Configuration
|
|
120
122
|
|
|
@@ -144,7 +146,7 @@ const agent = new Agent({
|
|
|
144
146
|
model: ({ requestContext }) => {
|
|
145
147
|
const useAdvanced = requestContext.task === "complex";
|
|
146
148
|
return useAdvanced
|
|
147
|
-
? "novita-ai/zai-org/glm-
|
|
149
|
+
? "novita-ai/zai-org/glm-5"
|
|
148
150
|
: "novita-ai/baichuan/baichuan-m2-32b";
|
|
149
151
|
}
|
|
150
152
|
});
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# Ollama Cloud
|
|
2
2
|
|
|
3
|
-
Access
|
|
3
|
+
Access 32 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
|
|
|
@@ -46,6 +46,7 @@ for await (const chunk of stream) {
|
|
|
46
46
|
| `ollama-cloud/gemma3:4b` | 131K | | | | | | — | — |
|
|
47
47
|
| `ollama-cloud/glm-4.6` | 203K | | | | | | — | — |
|
|
48
48
|
| `ollama-cloud/glm-4.7` | 203K | | | | | | — | — |
|
|
49
|
+
| `ollama-cloud/glm-5` | 203K | | | | | | — | — |
|
|
49
50
|
| `ollama-cloud/gpt-oss:120b` | 131K | | | | | | — | — |
|
|
50
51
|
| `ollama-cloud/gpt-oss:20b` | 131K | | | | | | — | — |
|
|
51
52
|
| `ollama-cloud/kimi-k2-thinking` | 262K | | | | | | — | — |
|
|
@@ -53,6 +54,7 @@ for await (const chunk of stream) {
|
|
|
53
54
|
| `ollama-cloud/kimi-k2.5` | 262K | | | | | | — | — |
|
|
54
55
|
| `ollama-cloud/minimax-m2` | 205K | | | | | | — | — |
|
|
55
56
|
| `ollama-cloud/minimax-m2.1` | 205K | | | | | | — | — |
|
|
57
|
+
| `ollama-cloud/minimax-m2.5` | 205K | | | | | | — | — |
|
|
56
58
|
| `ollama-cloud/ministral-3:14b` | 262K | | | | | | — | — |
|
|
57
59
|
| `ollama-cloud/ministral-3:3b` | 262K | | | | | | — | — |
|
|
58
60
|
| `ollama-cloud/ministral-3:8b` | 262K | | | | | | — | — |
|