# ![Cloudflare AI Gateway logo](https://models.dev/logos/cloudflare-ai-gateway.svg)Cloudflare AI Gateway Access 64 Cloudflare AI Gateway models through Mastra's model router. Authentication is handled automatically using the `CLOUDFLARE_API_TOKEN` environment variable. Learn more in the [Cloudflare AI Gateway documentation](https://developers.cloudflare.com/ai-gateway/). ```bash CLOUDFLARE_API_TOKEN=your-api-key ``` ```typescript import { Agent } from "@mastra/core/agent"; const agent = new Agent({ id: "my-agent", name: "My Agent", instructions: "You are a helpful assistant", model: "cloudflare-ai-gateway/anthropic/claude-3-5-haiku" }); // 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); } ``` Mastra uses the OpenAI-compatible `/chat/completions` endpoint. Some provider-specific features may not be available. Check the [Cloudflare AI Gateway documentation](https://developers.cloudflare.com/ai-gateway/) for details. ## Models | Model | Context | Tools | Reasoning | Image | Audio | Video | Input $/1M | Output $/1M | | ------------------------------------------------------------------------------- | ------- | ----- | --------- | ----- | ----- | ----- | ---------- | ----------- | | `cloudflare-ai-gateway/anthropic/claude-3-5-haiku` | 200K | | | | | | $0.80 | $4 | | `cloudflare-ai-gateway/anthropic/claude-3-haiku` | 200K | | | | | | $0.25 | $1 | | `cloudflare-ai-gateway/anthropic/claude-3-opus` | 200K | | | | | | $15 | $75 | | `cloudflare-ai-gateway/anthropic/claude-3-sonnet` | 200K | | | | | | $3 | $15 | | `cloudflare-ai-gateway/anthropic/claude-3.5-haiku` | 200K | | | | | | $0.80 | $4 | | `cloudflare-ai-gateway/anthropic/claude-3.5-sonnet` | 200K | | | | | | $3 | $15 | | `cloudflare-ai-gateway/anthropic/claude-haiku-4-5` | 200K | | | | | | $1 | $5 | | `cloudflare-ai-gateway/anthropic/claude-opus-4` | 200K | | | | | | $15 | $75 | | `cloudflare-ai-gateway/anthropic/claude-opus-4-1` | 200K | | | | | | $15 | $75 | | `cloudflare-ai-gateway/anthropic/claude-opus-4-5` | 200K | | | | | | $5 | $25 | | `cloudflare-ai-gateway/anthropic/claude-sonnet-4` | 200K | | | | | | $3 | $15 | | `cloudflare-ai-gateway/anthropic/claude-sonnet-4-5` | 200K | | | | | | $3 | $15 | | `cloudflare-ai-gateway/openai/gpt-3.5-turbo` | 16K | | | | | | $0.50 | $2 | | `cloudflare-ai-gateway/openai/gpt-4` | 8K | | | | | | $30 | $60 | | `cloudflare-ai-gateway/openai/gpt-4-turbo` | 128K | | | | | | $10 | $30 | | `cloudflare-ai-gateway/openai/gpt-4o` | 128K | | | | | | $3 | $10 | | `cloudflare-ai-gateway/openai/gpt-4o-mini` | 128K | | | | | | $0.15 | $0.60 | | `cloudflare-ai-gateway/openai/gpt-5.1` | 400K | | | | | | $1 | $10 | | `cloudflare-ai-gateway/openai/gpt-5.1-codex` | 400K | | | | | | $1 | $10 | | `cloudflare-ai-gateway/openai/gpt-5.2` | 400K | | | | | | $2 | $14 | | `cloudflare-ai-gateway/openai/o1` | 200K | | | | | | $15 | $60 | | `cloudflare-ai-gateway/openai/o3` | 200K | | | | | | $2 | $8 | | `cloudflare-ai-gateway/openai/o3-mini` | 200K | | | | | | $1 | $4 | | `cloudflare-ai-gateway/openai/o3-pro` | 200K | | | | | | $20 | $80 | | `cloudflare-ai-gateway/openai/o4-mini` | 200K | | | | | | $1 | $4 | | `cloudflare-ai-gateway/workers-ai/@cf/ai4bharat/indictrans2-en-indic-1B` | 128K | | | | | | $0.34 | $0.34 | | `cloudflare-ai-gateway/workers-ai/@cf/aisingapore/gemma-sea-lion-v4-27b-it` | 128K | | | | | | $0.35 | $0.56 | | `cloudflare-ai-gateway/workers-ai/@cf/baai/bge-base-en-v1.5` | 128K | | | | | | $0.07 | — | | `cloudflare-ai-gateway/workers-ai/@cf/baai/bge-large-en-v1.5` | 128K | | | | | | $0.20 | — | | `cloudflare-ai-gateway/workers-ai/@cf/baai/bge-m3` | 128K | | | | | | $0.01 | — | | `cloudflare-ai-gateway/workers-ai/@cf/baai/bge-reranker-base` | 128K | | | | | | $0.00 | — | | `cloudflare-ai-gateway/workers-ai/@cf/baai/bge-small-en-v1.5` | 128K | | | | | | $0.02 | — | | `cloudflare-ai-gateway/workers-ai/@cf/deepgram/aura-2-en` | 128K | | | | | | — | — | | `cloudflare-ai-gateway/workers-ai/@cf/deepgram/aura-2-es` | 128K | | | | | | — | — | | `cloudflare-ai-gateway/workers-ai/@cf/deepgram/nova-3` | 128K | | | | | | — | — | | `cloudflare-ai-gateway/workers-ai/@cf/deepseek-ai/deepseek-r1-distill-qwen-32b` | 128K | | | | | | $0.50 | $5 | | `cloudflare-ai-gateway/workers-ai/@cf/facebook/bart-large-cnn` | 128K | | | | | | — | — | | `cloudflare-ai-gateway/workers-ai/@cf/google/gemma-3-12b-it` | 128K | | | | | | $0.35 | $0.56 | | `cloudflare-ai-gateway/workers-ai/@cf/huggingface/distilbert-sst-2-int8` | 128K | | | | | | $0.03 | — | | `cloudflare-ai-gateway/workers-ai/@cf/ibm-granite/granite-4.0-h-micro` | 128K | | | | | | $0.02 | $0.11 | | `cloudflare-ai-gateway/workers-ai/@cf/meta/llama-2-7b-chat-fp16` | 128K | | | | | | $0.56 | $7 | | `cloudflare-ai-gateway/workers-ai/@cf/meta/llama-3-8b-instruct` | 128K | | | | | | $0.28 | $0.83 | | `cloudflare-ai-gateway/workers-ai/@cf/meta/llama-3-8b-instruct-awq` | 128K | | | | | | $0.12 | $0.27 | | `cloudflare-ai-gateway/workers-ai/@cf/meta/llama-3.1-8b-instruct` | 128K | | | | | | $0.28 | $0.83 | | `cloudflare-ai-gateway/workers-ai/@cf/meta/llama-3.1-8b-instruct-awq` | 128K | | | | | | $0.12 | $0.27 | | `cloudflare-ai-gateway/workers-ai/@cf/meta/llama-3.1-8b-instruct-fp8` | 128K | | | | | | $0.15 | $0.29 | | `cloudflare-ai-gateway/workers-ai/@cf/meta/llama-3.2-11b-vision-instruct` | 128K | | | | | | $0.05 | $0.68 | | `cloudflare-ai-gateway/workers-ai/@cf/meta/llama-3.2-1b-instruct` | 128K | | | | | | $0.03 | $0.20 | | `cloudflare-ai-gateway/workers-ai/@cf/meta/llama-3.2-3b-instruct` | 128K | | | | | | $0.05 | $0.34 | | `cloudflare-ai-gateway/workers-ai/@cf/meta/llama-3.3-70b-instruct-fp8-fast` | 128K | | | | | | $0.29 | $2 | | `cloudflare-ai-gateway/workers-ai/@cf/meta/llama-4-scout-17b-16e-instruct` | 128K | | | | | | $0.27 | $0.85 | | `cloudflare-ai-gateway/workers-ai/@cf/meta/llama-guard-3-8b` | 128K | | | | | | $0.48 | $0.03 | | `cloudflare-ai-gateway/workers-ai/@cf/meta/m2m100-1.2b` | 128K | | | | | | $0.34 | $0.34 | | `cloudflare-ai-gateway/workers-ai/@cf/mistral/mistral-7b-instruct-v0.1` | 128K | | | | | | $0.11 | $0.19 | | `cloudflare-ai-gateway/workers-ai/@cf/mistralai/mistral-small-3.1-24b-instruct` | 128K | | | | | | $0.35 | $0.56 | | `cloudflare-ai-gateway/workers-ai/@cf/myshell-ai/melotts` | 128K | | | | | | — | — | | `cloudflare-ai-gateway/workers-ai/@cf/openai/gpt-oss-120b` | 128K | | | | | | $0.35 | $0.75 | | `cloudflare-ai-gateway/workers-ai/@cf/openai/gpt-oss-20b` | 128K | | | | | | $0.20 | $0.30 | | `cloudflare-ai-gateway/workers-ai/@cf/pfnet/plamo-embedding-1b` | 128K | | | | | | $0.02 | — | | `cloudflare-ai-gateway/workers-ai/@cf/pipecat-ai/smart-turn-v2` | 128K | | | | | | — | — | | `cloudflare-ai-gateway/workers-ai/@cf/qwen/qwen2.5-coder-32b-instruct` | 128K | | | | | | $0.66 | $1 | | `cloudflare-ai-gateway/workers-ai/@cf/qwen/qwen3-30b-a3b-fp8` | 128K | | | | | | $0.05 | $0.34 | | `cloudflare-ai-gateway/workers-ai/@cf/qwen/qwen3-embedding-0.6b` | 128K | | | | | | $0.01 | — | | `cloudflare-ai-gateway/workers-ai/@cf/qwen/qwq-32b` | 128K | | | | | | $0.66 | $1 | ## Advanced Configuration ### Custom Headers ```typescript const agent = new Agent({ id: "custom-agent", name: "custom-agent", model: { url: "https://gateway.ai.cloudflare.com/v1/${CLOUDFLARE_ACCOUNT_ID}/${CLOUDFLARE_GATEWAY_ID}/compat/", id: "cloudflare-ai-gateway/anthropic/claude-3-5-haiku", apiKey: process.env.CLOUDFLARE_API_TOKEN, headers: { "X-Custom-Header": "value" } } }); ``` ### Dynamic Model Selection ```typescript const agent = new Agent({ id: "dynamic-agent", name: "Dynamic Agent", model: ({ requestContext }) => { const useAdvanced = requestContext.task === "complex"; return useAdvanced ? "cloudflare-ai-gateway/workers-ai/@cf/qwen/qwq-32b" : "cloudflare-ai-gateway/anthropic/claude-3-5-haiku"; } }); ```