Free-AI Gateway MCP Server
⚡ Free-AI Gateway
Монорепозиторий корпоративного уровня с маршрутизацией на основе возможностей, объединяющий бесплатные AI API в многократно используемые библиотеки, серверы Model Context Protocol (MCP) и HTTP-прокси, совместимые с OpenAI.
📚 Новичок в Free-AI Gateway? Ознакомьтесь с подробным Руководством по архитектуре и разработке (LEARN.md) — здесь вы найдете глубокие разборы, учебные пособия и шаблоны интеграции.
📖 Обзор архитектуры и монорепозитория
free-ai-gateway организован как корпоративный монорепозиторий, разделяющий чистую инфраструктуру оркестрации AI от протокол-специфичных механизмов доставки (HTTP-прокси на Fastify и MCP-сервер):
flowchart TD
subgraph CoreLayer ["@free-ai-gateway/core (Standalone npm package)"]
Router["CapabilityRouter & Strategy Engine"]
Providers["19 Provider Adapters & Dynamic Registry"]
Resilience["QuotaTracker & CircuitBreaker"]
Observability["EventBus & MetricsTracker"]
Transport["HttpClient with Exponential Backoff"]
end
subgraph Consumers ["Consumer Applications"]
GatewayApp["apps/gateway (@free-ai-gateway/gateway)<br/>Fastify HTTP OpenAI Proxy"]
McpApp["packages/mcp (@free-ai-gateway/mcp)<br/>Model Context Protocol Server"]
SkillsPkg["packages/skills (@free-ai-gateway/skills)<br/>Agentic IDE Skills & CLI"]
CliApp["packages/cli (@free-ai-gateway/cli)<br/>Terminal Assistant & Diagnostics"]
ClientApp["Custom Node.js / TypeScript App<br/>Direct Library Import"]
end
GatewayApp -->|consumes| CoreLayer
McpApp -->|consumes| CoreLayer
SkillsPkg -->|integrates with| CoreLayer
CliApp -->|consumes| CoreLayer
ClientApp -->|consumes| CoreLayerМатрица рабочих областей монорепозитория
Пакет / Приложение | Расположение | Назначение | Зависимости |
|
| Протокол-нейтральный маршрутизатор возможностей, механизм отказоустойчивости и 19 адаптеров провайдеров. |
|
|
| Сервер Model Context Protocol, предоставляющий инструменты возможностей AI-агентам (Claude Desktop, Cursor). |
|
|
| Навыки для IDE-агентов ( | Автономный CLI и API |
|
| Терминальный AI-ассистент, интерактивный REPL-чат, каталог моделей и диагностический инструмент. |
|
|
| Высокопроизводительный HTTP-прокси на Fastify, предоставляющий конечные точки, совместимые с OpenAI, с автоматическим обнаружением. |
|
✨ Ключевые возможности
🎯 Маршрутизация на основе возможностей: Запрашивайте то, что нужно (
model: "auto:tool_calling+structured_output"), а маршрутизатор выберет самого быстрого здорового бесплатного провайдера.📐 Движок стратегий с шаблонами: Подключаемые стратегии балансировки нагрузки (
AdaptiveHealthStrategy,LowestLatencyStrategyили пользовательскаяIRoutingStrategy).🔄 Автономное переключение при сбоях: Прозрачно перебирает ранжированных кандидатов-провайдеров до успешного ответа при возникновении ошибок
429(превышение лимита) или5xx.🛡️ Автоматический выключатель: Обнаруживает сбойных провайдеров и переходит в экспоненциальный режим ожидания для предотвращения каскадных сбоев.
⏱️ Отслеживание квот скользящим окном: Учет RPM, TPM и RPD в памяти с упреждающей защитой лимитов.
🔌 Динамическая автозагрузка провайдеров: Добавляйте новых провайдеров, поместив класс, наследующий
BaseProvider, вpackages/core/src/providers/.📡 Типизированная шина событий: События жизненного цикла (
request:start,request:success,request:fallback,provider:rate_limited) для наблюдаемости через OpenTelemetry и Prometheus.🤖 Готовность к Model Context Protocol (MCP): Используйте напрямую в Claude Desktop, Cursor или агентских рабочих процессах.
🧩 Матрица поддерживаемых провайдеров (19 адаптеров)
Провайдер | Модальности / Возможности | Аутентификация | Область лимита |
Google AI Studio |
|
| На модель |
Groq |
|
| Аккаунт |
SambaNova Cloud |
|
| Аккаунт |
NVIDIA NIM |
|
| Аккаунт |
Cohere |
|
| Аккаунт |
OpenRouter |
|
| Аккаунт |
OpenCode Zen |
|
| Аккаунт |
Bazaarlink.ai |
|
| Аккаунт |
aimlapi.com |
|
| Аккаунт |
OVHcloud AI |
|
| На модель |
Voyage AI |
|
| Аккаунт |
Jina AI |
|
| Аккаунт |
Hugging Face |
|
| Общий пул |
Cloudflare Workers AI |
|
| Общий пул |
Google Cloud Platform |
|
| Аккаунт |
MyMemory |
|
| Аккаунт |
Unstructured.io |
|
| Аккаунт |
Exa AI |
|
| Аккаунт |
Tavily |
|
| Аккаунт |
🚀 Быстрый старт
1. Установка
# Clone the repository
git clone https://github.com/zaber-dev/free-ai-gateway.git
cd free-ai-gateway
# Install dependencies across all monorepo workspaces
npm install2. Настройка окружения
Скопируйте .env.example в .env и укажите ключи для провайдеров, которые вы хотите использовать:
cp .env.example .envPORT=3000
GROQ_API_KEY=gsk_...
GOOGLE_API_KEY=AIza...
NVIDIA_API_KEY=nvapi-...
COHERE_API_KEY=...3. Сборка и запуск
# Compile all workspace packages
npm run build
# Run all 31 automated tests across all packages
npm test
# Start the Fastify HTTP Gateway (Dev mode)
npm run dev
# Start the Gateway in Production
npm start💻 Варианты использования
Вариант A: HTTP-шлюз (совместимый с OpenAI)
Вызывайте локальный прокси с помощью любого OpenAI SDK или curl:
curl http://localhost:3000/v1/chat/completions \
-H "Content-Type: application/json" \
-d '{
"model": "auto:tool_calling+structured_output",
"messages": [
{ "role": "user", "content": "Extract name and age from: Alice is 30 years old." }
]
}'import OpenAI from "openai";
const client = new OpenAI({
baseURL: "http://localhost:3000/v1",
apiKey: "not-needed",
});
const completion = await client.chat.completions.create({
model: "auto:reasoning",
messages: [{ role: "user", content: "Solve: How many r's in strawberry?" }],
});
console.log(completion.choices[0].message.content);Вариант B: Встраивание @free-ai-gateway/core как библиотеки TypeScript
Встраивайте маршрутизатор возможностей напрямую в своё приложение без запуска HTTP-сервера:
import {
CapabilityRouter,
Registry,
QuotaTracker,
CircuitBreaker,
EventBus,
LowestLatencyStrategy,
} from "@free-ai-gateway/core";
const registry = new Registry();
const quota = new QuotaTracker();
const breaker = new CircuitBreaker();
const eventBus = new EventBus();
// Listen to lifecycle telemetry
eventBus.on("request:fallback", (evt) => {
console.warn(`[Fallback] Failed on ${evt.attemptedProvider}: ${evt.error}`);
});
const router = new CapabilityRouter(
registry,
quota,
breaker,
undefined,
eventBus,
new LowestLatencyStrategy()
);
const response = await router.route({
capabilities: ["text", "tool_calling"],
payload: {
messages: [{ role: "user", content: "Hello AI!" }],
},
});
console.log("Served by:", response.servedBy);
console.log("Data:", response.data);Вариант C: Сервер Model Context Protocol (MCP)
Подключите Free-AI Gateway к Claude Desktop или Cursor:
{
"mcpServers": {
"free-ai-gateway": {
"command": "node",
"args": ["/path/to/free-ai-gateway/packages/mcp/dist/index.js"],
"env": {
"GROQ_API_KEY": "gsk_...",
"GOOGLE_API_KEY": "AIza..."
}
}
}
}Предоставляемые MCP-инструменты:
freeai_generate: Генерация текста, рассуждений или кода с автоматическим переключением при сбоях.freeai_search: Поисковые запросы в интернете через Exa / Tavily.freeai_embed: Генерация векторных эмбеддингов через Voyage, Jina, Gemini.freeai_rerank: Переранжирование документов для генерации с дополненным поиском (RAG).freeai_analyze_image: Мультимодальный анализ изображений.
Вариант D: Навыки для IDE-агентов (@free-ai-gateway/skills)
Установите навыки Free-AI Gateway непосредственно в вашу IDE или автономного ассистента кодирования:
# Install to Google Antigravity (.agents/skills)
npx @free-ai-gateway/skills install --target=antigravity
# Install to Cursor (.cursor/skills)
npx @free-ai-gateway/skills install --target=cursor
# Install to Claude Code (.claude/skills)
npx @free-ai-gateway/skills install --target=claude
# Install to all supported AI assistants
npx @free-ai-gateway/skills install --target=allВариант E: Терминальный CLI-инструмент (@free-ai-gateway/cli)
Используйте Free-AI прямо из терминала или скриптов командной строки:
# One-off prompt execution with auto-routing
npx @free-ai-gateway/cli "Explain MapReduce in simple terms"
# Interactive chat REPL in terminal
npx @free-ai-gateway/cli chat --capability=reasoning
# Check model catalog across all 19 providers
npx @free-ai-gateway/cli models
# Run system diagnostics
npx @free-ai-gateway/cli doctor🏛️ Структура монорепозитория
free-ai-gateway/
├── packages/
│ ├── core/ # @free-ai-gateway/core
│ │ ├── AGENTS.md # Agentic guidelines for @free-ai-gateway/core
│ │ ├── src/
│ │ │ ├── capabilities/ # Capability definitions & parsing
│ │ │ ├── config/ # providers.json, schema, config sources
│ │ │ ├── errors/ # ProviderError, NoProviderAvailableError
│ │ │ ├── observability/ # EventBus, MetricsTracker
│ │ │ ├── providers/ # 19 Provider Adapters + Registry + Loader
│ │ │ ├── resilience/ # QuotaTracker, CircuitBreaker
│ │ │ ├── router/ # CapabilityRouter & Strategy Pattern
│ │ │ ├── transport/ # HttpClient with exponential backoff
│ │ │ ├── types/ # Unified contracts & response schemas
│ │ │ └── index.ts # Public Core API
│ │ ├── tests/ # 20 Core unit tests
│ │ └── package.json
│ │
│ ├── mcp/ # @free-ai-gateway/mcp
│ │ ├── AGENTS.md # Agentic guidelines for @free-ai-gateway/mcp
│ │ ├── src/
│ │ │ ├── tools/ # generate, search, embed, rerank, analyze-image
│ │ │ ├── resources/ # capabilities, models catalog
│ │ │ ├── server.ts # FreeAiMcpServer handler
│ │ │ └── index.ts
│ │ ├── tests/ # 3 MCP server tests
│ │ └── package.json
│ │
│ ├── skills/ # @free-ai-gateway/skills
│ │ ├── AGENTS.md # Agentic guidelines for @free-ai-gateway/skills
│ │ ├── src/
│ │ │ ├── skills/ # Built-in skills (free-ai-gateway, scaffolding, mcp)
│ │ │ ├── installer.ts # Multi-target installer
│ │ │ ├── cli.ts # CLI executable (free-ai-skills)
│ │ │ └── index.ts
│ │ ├── tests/ # 4 Skills tests
│ │ └── package.json
│ │
│ └── cli/ # @free-ai-gateway/cli
│ ├── AGENTS.md # Agentic guidelines for @free-ai-gateway/cli
│ ├── src/
│ │ ├── commands/ # prompt, chat, models, doctor, skills
│ │ ├── cli.ts # Argument parsing & dispatcher
│ │ ├── bin.ts # CLI executable (free-ai, freeai)
│ │ └── index.ts
│ ├── tests/ # 4 CLI tests
│ └── package.json
│
├── apps/
│ └── gateway/ # @free-ai-gateway/gateway (HTTP App)
│ ├── AGENTS.md # Agentic guidelines for @free-ai-gateway/gateway
│ ├── src/
│ │ ├── adapters/ # OpenAI chat response normalizer
│ │ ├── api/
│ │ │ ├── routes/ # Fastify route modules & RouteLoader
│ │ │ └── server.ts # Server factory, timing hooks, 404 handler
│ │ ├── jobs/ # Background JobScheduler & reverify worker
│ │ └── index.ts
│ ├── tests/ # 5 Gateway HTTP tests
│ ├── Dockerfile # Monorepo container builder
│ └── package.json
│
├── tests/
│ └── e2e/ # 5 Cross-package E2E integration tests
│
├── AGENTS.md # Monorepo Root Agentic Guidelines
├── CLAUDE.md # Claude Code Instructions
├── .agents/ # Workspace Skills Directory
├── .github/workflows/ci.yml # Matrix CI workflow
├── docker-compose.yml
├── package.json # Root workspace definition
├── tsconfig.base.json # Shared TypeScript compiler settings
└── README.md🤝 Сообщество и управление
📖 Архитектурная схема: Глубокое погружение во внутреннюю архитектуру системы и поток данных.
🎓 Руководство для разработчика и обучающие материалы: Учебные пособия, программное использование и шаблоны SDK.
🗺️ Дорожная карта продукта: Запланированные этапы, распределённое состояние и предстоящие функции.
💬 Руководство по поддержке: Устранение неполадок, обсуждения в сообществе и каналы помощи.
🏛️ Управление проектом: Процесс принятия решений, роли мейнтейнеров и политика релизов.
✍️ Руководство по внесению вклада: Пошаговые инструкции по добавлению новых адаптеров провайдеров.
🔒 Политика безопасности: Рекомендации по раскрытию уязвимостей.
📜 Кодекс поведения: Стандарты и ожидания сообщества.
👤 Автор
Создано и поддерживается с ❤️ Md. Mahedi Zaman Zaber.
📄 Лицензия
Этот проект является открытым и доступен под лицензией MIT.
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
Free public MCP for AI agents — 193 tools, 44 workflows. No API key.
OCR, transcription, file extraction, and image generation for AI agents via MCP.
Hosted MCP with 91 agent tools: X, domains, SEO, Maps, Trends, Search, YouTube, TikTok, and more.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/zaber-dev/free-ai-gateway'
If you have feedback or need assistance with the MCP directory API, please join our Discord server