429-throttle-mcp
429-throttle-mcp
English | 中文
Больше никаких отказов API 429 — MCP-прокси с ограничением скорости, который позволяет моделям автоматически контролировать темп вызовов в длительных задачах.
Что это
Многие бесплатные API больших моделей (Grok, Gemini, Dots и др.) допускают лишь около 30 вызовов в минуту. При выполнении длительных задач (поиск + создание презентаций, массовые вызовы инструментов) модель легко превышает лимит и получает отказ 429.
429-throttle-mcp решает эту проблему, предоставляя прозрачный слой ограничения скорости:
模型 → call_api 工具 → 限流器 → 实际 API 请求 → 返回结果 + 用量快照Модели не нужно знать о существовании ограничения скорости — ей достаточно просто вызывать call_api. Логика ограничения выполняется прозрачно внутри MCP: если лимит позволяет — запрос пропускается, если нет — модель получает информацию о том, сколько ждать перед повтором.
Related MCP server: mcp-doorman
Структура пакета
Monorepo, содержащий два независимых npm-пакета с общей логикой ограничения скорости:
429-throttle-mcp/
├── packages/
│ ├── rate-limiter.js # 核心限流逻辑(共享)
│ ├── 429-throttle-mcp/ # MCP Server 包
│ │ ├── package.json
│ │ ├── server.js
│ │ └── README.md
│ └── dsh-throttle/ # DSH Plugin 包
│ ├── package.json
│ ├── plugin.js
│ └── README.md
├── dsh-manifest.json
├── README.md
└── .env.exampleПакет | Установка | Назначение |
|
| MCP-сервер (для MCP-клиентов, таких как ZCode) |
|
| Плагин DeepSeek Harness |
Основные параметры
Параметр | Значение по умолчанию | Описание |
| 30 | Максимальное число вызовов в минуту (RPM) |
| 750000 | Максимальное число токенов в минуту (TPM), включая тело запроса и ответа |
Доступные инструменты
call_api
Отправляет HTTP-запрос через прокси с ограничением скорости. Все вызовы внешних API должны проходить через этот инструмент.
Параметр | Тип | Обязательный | Описание |
| string | ✅ | Полный URL целевого API |
| string | ❌ | HTTP-метод, по умолчанию GET |
| string | ❌ | Тело запроса, JSON-строка |
| string | ❌ | Пользовательские заголовки, JSON-строка |
Возвращает: ответ API + снимок использования _meta.rateLimit. При отказе из-за ограничения возвращает ошибку RATE_LIMIT_EXCEEDED с рекомендуемым временем ожидания retryAfterSeconds.
get_rate_limit_status
Запрашивает текущее состояние ограничения скорости. Возвращает использованные/оставшиеся вызовы и токены, а также рекомендации. Не включает счётчик очереди, чтобы не вызывать беспокойство у пользователя.
set_rate_limit
Динамическая настройка параметров ограничения (аналог регулировки ползунком, применяется в реальном времени без перезапуска).
Параметр | Тип | Описание |
| number | Максимальное число вызовов в минуту (RPM) |
| number | Максимальное число токенов в минуту (TPM) |
Установка
MCP-клиент (например, ZCode)
npm install 429-throttle-mcpДобавьте в конфигурацию MCP:
{
"mcpServers": {
"429-throttle-mcp": {
"command": "node",
"args": ["node_modules/429-throttle-mcp/server.js"],
"env": {
"MAX_CALLS": "30",
"MAX_TOKENS": "750000"
}
}
}
}DeepSeek Harness
npm install dsh-throttleДобавьте в конфигурацию DSH:
{
"plugins": {
"dsh-throttle": {
"maxCalls": 30,
"maxTokens": 750000
}
}
}Пример рабочего процесса
При выполнении моделью задачи поиска для брендовой презентации:
Вызов
get_rate_limit_status→ подтверждение достаточного лимитаВызов
call_api→ поиск по ключевым словам брендаПри отказе → ожидание
retryAfterSecondsи повторПовтор шагов 2–3 до сбора всей информации
Вызов
set_rate_limit→ ужесточение параметров ограничения для этапа генерации
Алгоритм ограничения скорости
Скользящее окно + ведро токенов (Sliding Window + Token Bucket): поддерживается скользящее окно 60 секунд, при каждом вызове записываются временная метка и потребление токенов. Старые записи за пределами окна автоматически удаляются. При превышении лимита вычисляется оставшееся время ожидания по самой ранней записи.
Безопасность при параллелизме: tryConsume() — синхронная функция, которая в однопоточном цикле событий Node.js естественным образом сериализуется, исключая состояния гонки.
Почему это, а не «вызывай медленнее» в промпте?
Способ | Эффект |
В промпте «вызывай раз в 2 секунды» | ❌ У модели нет секундомера, она не соблюдает, burst-запросы всё равно дают 429 |
Внешний скрипт с ограничением | ❌ Требуется дополнительный процесс, модель не осведомлена, сложно отлаживать ошибки |
MCP-прокси с ограничением (этот проект) | ✅ Прозрачно для модели, надёжный контроль, структурированные ошибки + рекомендации по ожиданию |
Ключевые слова для сценариев применения
429报错, anti 429, MCP限流, 大模型每分钟调用限制, 免费大模型速率限制, Agent批量调用触发429, MCP排队调用, RPM, TPM, rate limiter mcp, quota guard, mcp server, mcp proxy, throttle, llm api quota, cop, HTTP 429, Too Many Requests, rate limiting, token bucket, sliding window, API proxy, LLM rate limit, AI API throttle, concurrent rate limit, 30 calls per minute
Лицензия
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 Servers
- AlicenseBqualityCmaintenanceSecurity gateway that wraps any MCP server with per-tool policies, approval gates, and optional Ed25519-signed decision receipts. Shadow mode logs every tool call without blocking; enforce mode applies block, rate-limit, and minimum-tier rules. Receipts are independently verifiable offline with no accounts needed.54699MIT
- AlicenseNot gradedqualityCmaintenanceA drop-in proxy that guards MCP servers with policy enforcement, secret redaction, prompt-injection screening, rug-pull detection, rate limiting, and audit logging.12Apache 2.0
- AlicenseNot gradedqualityBmaintenanceA least-privilege enforcement proxy for MCP servers. It sits between MCP clients and upstream servers, enforcing tool policies, hiding denied tools, requiring human approval for risky actions, and providing a structured audit trail.MIT
- AlicenseNot gradedqualityCmaintenanceA zero-infrastructure, local proxy that wraps any stdio MCP server to add audit logging, policy enforcement with regex guards, and per-session/per-day budgets.MIT
Related MCP Connectors
Fleet-wide shared rate limiter for A2A + multi-MCP deployments. Most MCP servers rate-limit inde...
Hosted MCP server for LLM cost estimation, model comparison, and budget-aware routing.
Billing proxy for MCP servers. Adds Stripe and x402 crypto payments without writing billing code.
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/iqingyoung/429-throttle-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server