Skip to main content

Kenari logoKenari

Access 59 Kenari models through Mastra's model router. Authentication is handled automatically using the KENARI_API_KEY environment variable.

Learn more in the Kenari documentation.

.env
KENARI_API_KEY=your-api-key
src/mastra/agents/my-agent.ts
import { Agent } from "@mastra/core/agent";

const agent = new Agent({
id: "my-agent",
name: "My Agent",
instructions: "You are a helpful assistant",
model: "kenari/claude-fable-5"
});

// Generate a response
const response = await agent.generate("Hello!");

// Stream a response
const stream = await agent.stream("Tell me a story");
for await (const chunk of stream) {
console.log(chunk);
}
note

Mastra uses the OpenAI-compatible /chat/completions endpoint. Some provider-specific features may not be available. Check the Kenari documentation for details.

Models
Direct link to Models

ModelContextToolsReasoningImageAudioVideoInput $/1MOutput $/1M
kenari/claude-fable-51.0M
kenari/claude-opus-4-71.0M
kenari/claude-opus-4-81.0M
kenari/claude-opus-51.0M
kenari/claude-sonnet-4-61.0M
kenari/claude-sonnet-51.0M
kenari/deepseek-v4-flash1.0M
kenari/deepseek-v4-flash:free1.0M
kenari/deepseek-v4-pro1.0M
kenari/gemini-2-5-flash1.0M
kenari/gemini-2-5-flash-lite1.0M
kenari/gemini-3-1-flash-lite1.0M
kenari/gemini-3-1-flash-tts8K
kenari/gemini-3-1-pro1.0M
kenari/gemini-3-5-flash1.0M
kenari/gemini-3-6-flash1.0M
kenari/gemini-3-7-flash1.0M
kenari/gemma-4-31b-it262K
kenari/glm-4-7-flash:free200K
kenari/glm-5-1200K
kenari/glm-5-21.0M
kenari/glm-5-31.0M
kenari/glm-5-3-flash1.0M
kenari/gpt-5-4-mini400K
kenari/gpt-5-51.1M
kenari/gpt-5-6-luna1.1M
kenari/gpt-5-6-sol1.1M
kenari/gpt-5-6-terra1.1M
kenari/gpt-image-2272K
kenari/gpt-oss-120b131K
kenari/gpt-oss-20b131K
kenari/grok-4-5500K
kenari/grok-4-6500K
kenari/grok-build-0-1256K
kenari/grok-imagine-image-2-08K
kenari/hy3256K
kenari/hy3:free256K
kenari/kimi-k2-6262K
kenari/kimi-k2-6:free262K
kenari/kimi-k2-7-code262K
kenari/kimi-k2-7-code:free262K
kenari/kimi-k31.0M
kenari/mimo-v2-51.0M
kenari/mimo-v2-5-pro1.0M
kenari/mimo-v2-5:free1.0M
kenari/minimax-m2-7205K
kenari/minimax-m2-7-highspeed205K
kenari/minimax-m31.0M
kenari/mistral-large:free262K
kenari/mistral-medium-3-5:free262K
kenari/nemotron-3-nano-30b-a3b262K
kenari/nemotron-3-super-120b-a12b262K
kenari/nemotron-3-super-120b-a12b:free262K
kenari/nemotron-3-ultra-550b-a55b1.0M
kenari/qwen3-7-plus1.0M
kenari/qwen3-8-max1.0M
kenari/step-3-7-flash256K
kenari/step-3-7-flash:free256K
kenari/whisper-large-v3-turbo448
59 available models

Model availability, capabilities, context windows, and pricing are sourced from models.dev and may change.

Advanced configuration
Direct link to Advanced configuration

Custom headers
Direct link to Custom headers

src/mastra/agents/my-agent.ts
const agent = new Agent({
id: "custom-agent",
name: "custom-agent",
model: {
url: "https://kenari.id/v1",
id: "kenari/claude-fable-5",
apiKey: process.env.KENARI_API_KEY,
headers: {
"X-Custom-Header": "value"
}
}
});

Dynamic model selection
Direct link to Dynamic model selection

src/mastra/agents/my-agent.ts
const agent = new Agent({
id: "dynamic-agent",
name: "Dynamic Agent",
model: ({ requestContext }) => {
const useAdvanced = requestContext.task === "complex";
return useAdvanced
? "kenari/whisper-large-v3-turbo"
: "kenari/claude-fable-5";
}
});
On this page