Skip to main content
Glama

minimax-remaining-mcp

MCP サーバー: AI エージェントに MiniMax Token Plan プランの残り容量を認識させ、 レート制限をトリガーしないようにいつ一時停止すべきかを知らせます。

DeepSeek Harness (DSH)、Claude Desktop、Cursor など、MCP プロトコルに準拠したすべてのクライアントに対応しています。

┌──────────────┐    stdio    ┌──────────────────────┐   HTTPS   ┌──────────────┐
│   AI 代理   │ ──────────► │  minimax-remaining-  │ ────────► │  MiniMax     │
│ (DSH 等)    │ ◄────────── │         mcp          │ ◄──────── │   Web API    │
└──────────────┘             └──────────┬───────────┘           └──────────────┘
                                        │
                                        ▼
                                 ┌─────────────┐
                                 │  Camoufox   │  一次性手动登录
                                 │  (Firefox)  │  → 持久化会话 cookie
                                 └─────────────┘

プロジェクト背景

MiniMax ウェブコンソールの「5h 制限 / 61% 使用済み / 2h56m 後にリセット」パネルは、 実際には2つの HTTP エンドポイントによって駆動されています。

  1. /v1/api/openplatform/coding_plan/remains?GroupId=… — 5時間固定ウィンドウの残りパーセンテージ + カウントダウン

  2. /backend/account/token_plan_credit — プランプール(週単位)の累計クレジット

どちらのエンドポイントも、ウェブ UI の api_keysk-cp-... のような形式)を Bearer Token として受け付けません。使用すると base_resp = {2062, "no active token plan"} が返ります。 唯一の有効な方法は、ウェブセッション Cookie を使用することです(実際のブラウザログイン後の _token)。 このプロジェクトでは、Camoufox を使用して永続的な Firefox プロファイルを維持し、Cookie を MCP サーバーの再起動間で保持します。

Related MCP server: cycles-mcp-server

5時間固定ウィンドウ(スライディングウィンドウではない)

MiniMax 公式ドキュメントによると:

プラン内のクレジットは 5時間固定ウィンドウ と週間ウィンドウによって制御されます。未使用のプラン内クレジットは 次の請求サイクルに繰り越されません

したがって、ウィンドウ境界は固定された時計の時間帯(典型的には CST 00:00 10:00 / 15:00 / 20:00 など)であり、最初のリクエストからスライディングするわけではありません。ウィンドウ切り替えの数秒前にクエリすると、 返されるのは次のウィンドウのデータです。レスポンス内の interval_start_iso / interval_end_iso フィールドが、具体的にどの期間かを示します。

一行インストール

# 方式 1:从 PyPI 安装(推荐)
pip install minimax-remaining-mcp
# 或
uv pip install minimax-remaining-mcp
# 或
uvx minimax-remaining-mcp    # 不安装直接运行

# 方式 2:从 GitHub 安装(无需 PyPI 账号)
pip install git+https://github.com/yang-cc/minimax-remaining-mcp.git

# 方式 3:本地开发模式
git clone https://github.com/yang-cc/minimax-remaining-mcp.git
cd minimax-remaining-mcp
uv venv .venv --python 3.12
uv pip install -e .

一度だけのログイン

Bearer Token のパスがないため、まず Camoufox で手動ログインを一度行う必要があります:

# 1. 启动服务器
python -m minimax_remaining_mcp.server
# 2. 在 MCP 客户端里调用:
minimax_login(timeout_seconds=600)

Camoufox ブラウザがポップアップし、MiniMax ログインページが開きます。手動で Cloudflare / CAPTCHA 検証、アカウントログインを完了し、ブラウザが API Keys ページに到達するまで進めてください。 サーバーは _token Cookie を自動検出し、セッションを data/cookies.json に永続化します。

🔌 DeepSeek Harness (DSH) 統合

DSH は @deepseek-ai/dsh-mcp-client を介して MCP サーバーを読み込みます。 ~/.dsh/profiles/web/cordis.patch.yml に以下のセクションを追加してください(注意: パッケージ 名は minimax-remaining-mcp ですが、Python モジュールパスは minimax_remaining_mcp.server です):

- insert:
  - id: minimax-remaining-mcp
    name: '@deepseek-ai/dsh-mcp-client'
    config:
      serverName: minimax
      transport: stdio
      command: <repo>/.venv/Scripts/python.exe   # 或 uv 环境的 python
      args: ['-u', '-m', 'minimax_remaining_mcp.server']
      env:
        # 暂停阈值:5h 剩余低于 30% 时触发代理暂停
        MINIMAX_PAUSE_THRESHOLD_REMAINING_PCT: '30'
        # 储存目录(可选,默认 ./data)
        # MINIMAX_DATA_DIR: E:\\codex_dir\\.dsh\\state\\minimax-remaining-mcp
      failOnStartupError: false
      toolCallTimeoutMs: 180000

DSH 統合のポイント

注意点

説明

-u パラメータ

Python stdio をバッファリングなしにし、DSH コンソールで MCP サーバーログを即座に確認できるようにします。

Python インタープリタのパス

インストール方法によって異なります:pip install → システム Python または venv 内の pythonuv pip install -e .<repo>/.venv/Scripts/python.exeuv tool installuv tool run minimax-remaining-mcp でも可能ですが、stdio バッファリングには -u が必要です

初回起動時のログインが必要

DSH が MCP サーバーを起動する際、data/cookies.json が存在しない場合、minimax_login() を呼び出すとブラウザウィンドウがポップアップします。

DSH の再起動

cordis.patch.yml を変更した後は、DSH を再起動しないと反映されません。

failOnStartupError: false

推奨設定は false です。これにより、初回起動時に Cookie がまだ準備できていなくても、DSH が即座にエラーを報告しません。

永続化ディレクトリの分離

複数のプロジェクトで同じ DSH を共有する場合、各プロジェクトで異なる MINIMAX_DATA_DIR を使用して、Cookie が互いに上書きされないようにすることをお勧めします。

DSH での典型的な使用法

DSH 起動後、minimax_status() を呼び出して残り容量を判断します。エージェントに 毎回の MiniMax API 呼び出しの前に minimax_status() を呼び出すようトレーニングし、should_pause フィールドを確認させることができます:

remaining_percent_5h < 30  → should_pause=true → 代理应停下来或转做其他事
remaining_percent_5h >= 30 → should_pause=false → 可以继续调用

より徹底的な方法は、minimax_wait_for_quota() を呼び出すことです。これは、容量が しきい値(デフォルトは MINIMAX_PAUSE_THRESHOLD_REMAINING_PCT)を超えるまでブロックし、 エージェントが自分でポーリングロジックを書く手間を省きます。

ツール一覧

ツール

用途

minimax_status()

ウェブパネルのすべての数値: 5h 残り/使用済み %、カウントダウン、プラン累計。しきい値未満の場合は should_pause=true を設定します。

minimax_window()

エージェントローカルの 5h 観測ウィンドウ状態のみを返します(MiniMax の固定ウィンドウとは別で、エージェントの自己スロットリング用です)。

minimax_consume(delta=N)

ローカルウィンドウの消費カウンターを N 増やします。毎回の MiniMax API 呼び出し後に呼び出します。

minimax_wait_for_quota(target_pct=None, poll_seconds=60)

5h 残りパーセンテージが target_pct 以上になるまでブロックします。MCP 接続を閉じると中断できます。

minimax_login(timeout_seconds=600)

手動ログイン用に Camoufox ブラウザウィンドウをポップアップします。

minimax_smoke()

クイック Camoufox ヘルスチェック(example.com を開きます)。

minimax_info()

静的設定 + 直近のセッションメタデータ。

minimax_clear(confirm=True)

cookies / session / window 状態をクリアします。

⚠️ 初回コールドスタート(Camoufox)は遅い

minimax_smoke()minimax_login() が初めて Camoufox を起動する際、永続化された Firefox プロファイルの解凍、sqlite データベースの初期化、拡張機能の読み込みなどが必要で、 通常 30〜90 秒(ディスク速度によります)かかります。これは Camoufox のコールドスタートの正常な動作であり、バグではありません。以降の起動では data/profile/ 内のキャッシュを再利用するため、秒単位で完了します。

初回呼び出しが MCP クライアントの toolCallTimeoutMs(DSH デフォルト 180 秒)を超えて 中断された場合は、もう一度再試行すれば結果が表示されます。頻繁にコールドスタートが発生する場合(例: CI で実行する場合)は、 対応する MCP クライアントの toolCallTimeoutMs を 300000(5 分)に調整してください。

minimax_status() レスポンス例

実際の診断出力(5h ウィンドウが枯渇し、一時停止をトリガーすべき場合):

minimax_status サンプル出力

以下は正規化された JSON 構造です:

{
  "ok": true,
  "source": "coding_plan",
  "remaining_percent_5h": 76,             // 5h 窗口剩余 %
  "used_percent_5h": 24,                 // 5h 窗口已用 %
  "seconds_until_reset_human": "4h21m35s",
  "interval_end_iso": "2026-08-25T12:00:00+00:00",
  "interval_status_text": "active",      // active | exhausted | inactive
  "remaining_percent_weekly": 100,
  "seconds_until_weekly_reset_human": "5d08h42m",
  "total_credits": 14000,                // 套餐累计(周维度)
  "used_credits": 3188,
  "remaining_credits": 10812,
  "user_name": "...",
  "group_id": "...",
  "should_pause": false,                 // 低于阈值时为 true
  "model_remains": [
    { "model_name": "general",  "interval_remaining_percent": 76, "interval_status": 1 },
    { "model_name": "video",    "interval_remaining_percent": 100, "interval_status": 3 }
  ]
}

一時停止しきい値のセマンティクス

MINIMAX_PAUSE_THRESHOLD_REMAINING_PCT=30 は、5h ウィンドウの残りパーセンテージが 30% 未満の場合に一時停止する(つまり使用済みが 70% を超えた場合)ことを意味します。比較対象は remaining_percent_5h であり、 プラン累計の remaining_credits ではありません — これらは独立した指標です。

永続化ファイル

すべての状態は data/.gitignore で無視)に純粋な JSON として保存されます:

data/
├── cookies.json                # Camoufox 会话 cookie
├── session.json                # 最近一次登录元数据
├── window.json                 # 代理本地的 5h 观测窗口
├── last_usage.json             # 最近一次成功的 API 响应(缓存)
└── profile/                    # Camoufox 持久化 Firefox profile(~150 MB)

coding_plan/remains が 401/403 を返す場合、完全なレスポンスボディが data/last_coding_plan_failure.json に書き込まれ、トラブルシューティングに役立ちます — サービスがダウンしていると疑う前に、まずこのファイルを確認してください。

環境変数

すべてオプションで、デフォルト値は以下の表を参照してください。

変数

デフォルト

説明

MINIMAX_PAUSE_THRESHOLD_REMAINING_PCT

30

5h 残りがこの値未満の場合に一時停止します。

MINIMAX_WINDOW_SECONDS

18000

エージェントローカルウィンドウの長さ(5h)。

MINIMAX_HEADFUL_ON_LOGIN

1

ログイン時にブラウザウィンドウを強制的に表示します。

MINIMAX_CAMOUFOX_OS

auto

windows / macos / linux

MINIMAX_CAMOUFOX_LOCALE

zh-CN

ブラウザの言語。

MINIMAX_HTTP_TIMEOUT

15

API リクエストのタイムアウト(秒)。

MINIMAX_DATA_DIR

./data

cookies / session の保存ディレクトリ。

MINIMAX_WEB_URL

https://platform.minimaxi.com

コンソールのベース URL を上書きします。

MINIMAX_USAGE_API_URL

…/backend/account/token_plan_credit

プランプールのエンドポイント。

MINIMAX_REMAINS_API_URL

…/v1/api/openplatform/coding_plan/remains

5h ウィンドウのエンドポイント。

MINIMAX_REMAINS_API_URL_FALLBACK

api.minimaxi.com/...

メインエンドポイントが失敗した場合に使用します。

MINIMAX_LOGIN_HINT_URL

…/user-center/basic-information/interface-key

ログイン後のランディングページ。

ローカル開発 & デバッグ

# 启动 MCP 服务器(stdio 模式)
.venv\Scripts\python.exe -u -m minimax_remaining_mcp.server
# 或(Windows)
run.bat

# 直接探测 coding_plan 接口(无需 MCP / 浏览器)
.venv\Scripts\python.exe probe_coding_plan.py

# 检查持久化状态
cat data/cookies.json | head -c 200
cat data/session.json
cat data/last_coding_plan_failure.json   # 如果存在

PyPI へのパッケージ公開(メンテナー向け)

# 安装打包工具
pip install build twine

# 在项目根目录构建 wheel + sdist
python -m build
# → dist/minimax_remaining_mcp-0.1.0-py3-none-any.whl
# → dist/minimax_remaining_mcp-0.1.0.tar.gz

# 检查产物
twine check dist/*

# 上传到 PyPI(需要先 `twine login` 或用 token)
twine upload dist/*
# 或:uv publish dist/*

公開後、誰でも次のことができます:

pip install minimax-remaining-mcp
uv pip install minimax-remaining-mcp
uvx minimax-remaining-mcp    # 临时运行

制限事項

  • Bearer キーのパスはありません。 MiniMax は現在、Coding Plan API 用のサブスクリプション キーを発行していません。ウェブコンソールの api_key を Bearer として使用すると、2062 "no active token plan" が返ります。唯一の有効な方法はセッション Cookie です。

  • Cloudflare / CAPTCHA は手動で完了する必要があります。 初回ログインは人間が行う必要があります。 このプロジェクトはキャプチャ解決サービスには接続しません。

  • 5h ウィンドウは CST 固定の時間帯です。 ウィンドウ切り替えの前にクエリすると、次のウィンドウのデータが取得されます。 interval_start_iso / interval_end_iso が具体的な期間を示します。

  • プラン累計(remaining_credits)は繰り越されません。 これは週単位の累計プールであり、 5h ウィンドウのリセットでゼロにはなりません。

ライセンス

MIT — 詳細は LICENSE を参照してください。

A
license - permissive license
A
quality
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
    A
    quality
    A
    maintenance
    Runtime budget authority for autonomous agents - a set of tools to check, reserve, spend, and release budget before and after every costly, risky operation. The agent asks "can I afford this?" before acting, and reports what it actually used afterward.
    9
    138
    Apache 2.0
  • A
    license
    A
    quality
    Not graded
    maintenance
    Provides real-time visibility into Claude Pro and Max subscription usage limits directly within Claude Code by utilizing local OAuth tokens. It enables users to monitor session and weekly usage across different models and receive alerts regarding rate-limiting status.
    4

View all related MCP servers

Related MCP Connectors

  • Budget & cost control for AI agents — per-agent spend caps + rate limits before each call.

  • Agent Token Budget MCP — hard per-session token + spend cap with signed budget-exhausted

  • See, price, and control every tool call your AI agents make: policy checks, cost, and audit tools.

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/yang-cc/minimax-remaining-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server