mcp-thinkgate について
mcp-thinkgateは、プロンプトの複雑さを分類し、Claudeの思考段階とモデルを提案するMCPサーバー兼ライブラリです。Claudeエージェントの開発者向けで、APIキーがない場合はルールベースの分類に切り替えられます。
主な機能
- 01タスクをfast、think、ultrathinkに分類
- 02思考深度とモデルを提案
- 03ClaudeとOpenRouterのプロファイルに対応
- 04MCPツールとTypeScriptライブラリを提供
- 05APIキーなしのルールベース分類
活用シーン
- 01タスクの複雑さに応じてClaudeの思考段階を調整
- 02エージェントのワークフロー前にプロンプトを分類
- 03Claudeエージェントに自動ルーティングを追加
MCP 対応
MCPサーバーは、複雑度の段階、思考深度、推奨モデル、理由を返します。結果は助言であり、モデルの切り替えはホスト側で行う必要があります。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
npx -y mcp-thinkgateANTHROPIC_API_KEYシークレットOptional. Enables AI-powered classification via Haiku (more accurate). Falls back to rule-based classification if not provided. Get a key at https://console.anthropic.comローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。
ツール
1掲載時のツール一覧 · 2 週間前に更新
| パラメーター | 型 | 必須 | 説明 |
|---|---|---|---|
| prompt | string | はい | 分類するプロンプトまたはタスク |
詳細
ThinkGate
Claude エージェント向けの自動推論モード選択。
解決する課題
AI エージェントを構築しました。ステータスの確認、簡単な検索、複雑なアーキテクチャに関する質問、徹底的なデバッグセッションなど、あらゆることに対応します。しかし、内部ではすべてのメッセージを同じモデルに、同じ思考設定で処理しています。
その結果、「東京は今何時ですか?」に拡張思考のトークンを浪費し、「認証システム全体の設計を手伝ってください」には浅い回答しか得られません。
リクエストに手動でタグを付けることもできます。難しい質問の前に ULTRATHINK: と付けるのです。しかし、付け忘れることもあります。ユーザーが付けてくれることはまずありません。また、他の人向けにエージェントを構築している場合、すべてのエンドユーザーに思考モードの管理方法を教えることはできません。
ThinkGate は、この問題をインフラストラクチャ層で解決します。 入力メッセージとモデル呼び出しの間に配置され、複雑さを約 200 ミリ秒で分類し、使用すべきモデルと思考の深さを返します。毎回、自動で処理します。
対象ユーザー
- 単純なタスクと複雑なタスクの両方に Claude を使い、画一的なモデル設定にうんざりしているエージェント構築者
- メッセージの複雑さが大きく異なり、コストやレイテンシが実際に重要となる、24 時間 365 日稼働のエージェント(WhatsApp ボット、Slack アシスタント、Telegram エージェント)を運用するチーム
ULTRATHINKを手動で入力し、「これは自動で行われるべきだ」と思ったことがある方
仕組み
Incoming message
↓
Haiku call (~200ms, ~$0.0001)
"How complex is this?"
↓
fast → no extended thinking
think → medium effort
ultrathink → max effort
↓
Claude runs with the right settings
低コストで高速な Haiku の呼び出しがプロンプトを読み、必要なティアを判断します。その後、メインの Claude 呼び出しが適切な思考レベルで実行されます。分類にかかる費用はほとんどなく、拡張推論を必要としない 60%以上のメッセージでは、コストとレイテンシを大幅に節約できます。
ここで重要なのは分類器であり、実行するモデルではありません。ティアは 3 つあります。「思考が必要なケース」と「不要なケース」の境界に合わせて調整されたシステムプロンプトを使用します。設定なしですぐに使えます。
ティア
| ティア | Claude の思考レベル | 使用する場面 |
|---|---|---|
fast | none | 事実確認、会話、簡単な編集 |
think | medium | アーキテクチャ、デバッグ、複数ステップの分析 |
ultrathink | max / high | システム設計、証明、自由度の高い複雑な問題 |
プロファイル(モデルの割り当て)
THINKGATE_PROFILE を設定するか、classifyPrompt に { profile } を渡します。
| プロファイル | fast | think | ultrathink |
|---|---|---|---|
claude(デフォルト) | claude-haiku-4-5-... | claude-sonnet-4-6 | claude-opus-4-6 |
openrouter-cost | google/gemini-2.5-flash | anthropic/claude-sonnet-4.5 | anthropic/claude-opus-4.6 |
openrouter-balanced | anthropic/claude-haiku-4.5 | anthropic/claude-sonnet-4.5 | anthropic/claude-opus-4.6 |
ティアごとの上書き設定:THINKGATE_FAST_MODEL、THINKGATE_THINK_MODEL、THINKGATE_ULTRA_MODEL。
コストに関する注意: MCP ツールは推奨を返すものです。ホスト側で実際にモデルを切り替える必要があります。
Pi では ~/.pi/agent/extensions/thinkgate-router.ts と thinkgate.json を使って切り替えます。
ルールモード(API キー不要)は無料で、自動ルーティングに推奨されます。長いチェックリストを貼り付けても、THINK に自動的に引き上げられることはなくなりました。
MCP ツールとして使用する(Claude Desktop / Claude Code)
~/.claude/settings.json(Claude Code)または ~/Library/Application Support/Claude/claude_desktop_config.json(Claude Desktop)に追加します。
{
"mcpServers": {
"thinkgate": {
"command": "npx",
"args": ["-y", "mcp-thinkgate"],
"env": {
"ANTHROPIC_API_KEY": "your-api-key-here"
}
}
}
}
Claude を再起動します。回答の前に分類するよう、次のように依頼できます。
「回答する前に、このタスクの複雑さを分類してください。公開 API 向けのレートリミッターを設計する」
Tier: think
Effort: medium
Suggested model: claude-sonnet-4-6
Confidence: 92%
Why: Requires structured design reasoning and trade-off analysis, but has well-defined scope.
ライブラリとして使用する(エージェントフレームワーク)
インストールします。
npm install mcp-thinkgate
インポートして使用します。
import { classifyPrompt, setLogLevel } from 'mcp-thinkgate';
// Optional: silence logs (default level is 'info', writes to stderr)
setLogLevel('error');
const result = await classifyPrompt(userMessage, process.env.ANTHROPIC_API_KEY!);
// result.tier → 'fast' | 'think' | 'ultrathink'
// result.effort → 'none' | 'medium' | 'max'
// result.confidence → 0.0 - 1.0
// result.reasoning → one sentence explanation
// Works without an API key too (rule-based fallback):
const quickResult = await classifyPrompt(userMessage);
リファレンス実装:TinyClaw
TinyClaw は、Claude 向けのオープンソースのマルチエージェントフレームワークです。ThinkGate はその invokeAgent() 関数に組み込まれており、Claude CLI の実行前にすべてのメッセージが自動的に分類され、それに応じて --effort が設定されます。
追加するのは3行だけです。設定は不要です。すべてのチームのすべてのエージェントに、適切な思考の深さが自動的に設定されます。
統合の詳細は src/lib/invoke.ts をご覧ください。
要件
- Node.js 20+
- Anthropic API キー(任意。指定しない場合はルールベースの分類にフォールバックします)
ローカル開発
git clone https://github.com/tjp2021/mcp-thinkgate
cd mcp-thinkgate
npm install
npm test
npm run build
貢献
開発環境のセットアップ、コマンド、PR の手順については、CONTRIBUTING.md をご覧ください。
セキュリティ
脆弱性の報告については、SECURITY.md をご覧ください。
ライセンス
MIT — LICENSE をご覧ください。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。