Skip to main content
Glama
iqingyoung

429-throttle-mcp

by iqingyoung

429-throttle-mcp

English | 中文

API 429 拒否に悩まされない — レート制限付き MCP プロキシ。モデルが長期的なタスクで呼び出しペースを自動制御できるようにします。


概要

多くの無料大モデル API(Grok、Gemini、Dots など)は毎分約 30 回しか呼び出せません。モデルが長期的なタスク(検索 + PPT 生成、ツールの一括呼び出し)を実行する際、制限を超えて 429 拒否されることがよくあります。

429-throttle-mcp はこの課題に対して透過的なレート制限レイヤーを提供します:

模型 → call_api 工具 → 限流器 → 实际 API 请求 → 返回结果 + 用量快照

モデルはレート制限の存在を知る必要はなく、通常どおり call_api を呼び出すだけです。レート制限ロジックは MCP 内部で透過的に実行されます——クォータが足りれば通過させ、足りなければモデルに待機時間を伝えて再試行させます。


Related MCP server: mcp-doorman

パッケージ構成

Monorepo 構成で、2 つの独立した 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

パッケージ名

インストール

用途

429-throttle-mcp

npm i 429-throttle-mcp

MCP Server(ZCode などの MCP クライアント)

dsh-throttle

npm i dsh-throttle

DeepSeek Harness Plugin


コアパラメータ

パラメータ

デフォルト値

説明

MAX_CALLS

30

毎分の最大呼び出し回数 (RPM)

MAX_TOKENS

750000

毎分の最大 Token 数 (TPM)、リクエストボディとレスポンスボディを含む


公開ツール

call_api

レート制限プロキシを介して HTTP リクエストを送信します。すべての外部 API 呼び出しはこのツールを経由する必要があります。

パラメータ

タイプ

必須

説明

url

string

対象 API の完全な URL

method

string

HTTP メソッド、デフォルトは GET

body

string

リクエストボディ、JSON 文字列

headers

string

カスタムリクエストヘッダー、JSON 文字列

戻り値:API レスポンス + _meta.rateLimit 使用量スナップショット。レート制限で拒否された場合は、RATE_LIMIT_EXCEEDED エラーと retryAfterSeconds 推奨待機時間を返します。

get_rate_limit_status

現在のレート制限使用状況を照会します。使用済み/残りの呼び出し回数と Token 数、および推奨事項を返します。キューのカウンターは含まれず、ユーザーの不安を回避します。

set_rate_limit

レート制限パラメータを動的に調整します(スライダー調整に対応し、再起動不要でリアルタイムに反映されます)。

パラメータ

タイプ

説明

callsPerMinute

number

毎分の最大呼び出し回数 (RPM)

tokensPerMinute

number

毎分の最大 Token 数 (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
    }
  }
}

ワークフロー例

モデルがブランド PPT 検索タスクを実行する場合:

  1. get_rate_limit_status を呼び出す → クォータが十分であることを確認

  2. call_api を呼び出す → ブランドキーワードを検索

  3. 拒否された場合 → retryAfterSeconds 待機後に再試行

  4. すべての情報を収集するまで 2〜3 を繰り返す

  5. set_rate_limit を呼び出す → 生成フェーズ用にレート制限パラメータを引き締める


レート制限アルゴリズム

スライディングウィンドウ + トークンバケット(Sliding Window + Token Bucket):60 秒のスライディングウィンドウを維持し、呼び出しごとにタイムスタンプとトークン消費量を記録します。ウィンドウ外の古いレコードは自動的にクリーンアップされます。制限を超えた場合は、最も古いレコードの残り待機時間を計算します。

並行処理の安全性tryConsume() は同期関数であり、Node.js のシングルスレッドイベントループ内で自然に直列化されるため、競合状態は発生しません。


プロンプトに「ゆっくり呼び出せ」と書くのではなく、これを使う理由

方法

効果

プロンプトに「2 秒ごとに呼び出せ」と書く

❌ モデルにストップウォッチはなく、守らず、バーストして結局 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

F
license - not found
Not graded
quality - not tested
B
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

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

  • A
    license
    B
    quality
    C
    maintenance
    Security 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.
    5
    469
    9
    MIT
  • A
    license
    Not graded
    quality
    C
    maintenance
    A drop-in proxy that guards MCP servers with policy enforcement, secret redaction, prompt-injection screening, rug-pull detection, rate limiting, and audit logging.
    12
    Apache 2.0
  • A
    license
    Not graded
    quality
    B
    maintenance
    A 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
  • A
    license
    Not graded
    quality
    C
    maintenance
    A 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

View all related MCP servers

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.

View all MCP Connectors

Latest Blog Posts

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