MCPツールが多すぎてLLMが壊れる問題をBM25で解決した話 — tool-search-oss
Zenn / 2026/5/2
💬 オピニオンDeveloper Stack & InfrastructureIdeas & Deep AnalysisTools & Practical Usage
要点
- MCPツールが増えすぎると、LLMが適切なツールを選べず挙動が壊れやすくなるという「ツール探索の破綻」が問題になっている。
- この課題に対し、tool-search-ossではツール検索をBM25で行うことで、関連度の高いツールを絞り込めるようにしている。
- BM25を使うことで、ツール数の増加に伴う“LLMの選択ミス”を抑え、ツール呼び出しの安定性を高める方針が示されている。
- 実装・運用上は「MCPツール群からの検索・ランキング」を前段に置く発想がポイントで、LLM側の負荷と失敗確率を下げる狙いがある。
## はじめに:「ツールが多すぎる」という静かな崩壊
MCPサーバーを複数接続したことのある方なら、一度は経験があるはずです。
ファイル操作・GitHub・Slack・メモリ管理・ブラウザ操作……便利なMCPサーバーを追加するたびに、LLMのレスポンスが少しずつ遅くなり、ある日突然「何も考えずに間違ったツールを呼ぶ」ようになります。
これは**コンテキスト崩壊(Context Collapse)**と呼ばれる現象です。
# 起動時にLLMのコンテキストに詰め込まれるもの
read_file の定義(全パラメータ + 説明)
write_file の定義
list_dir の定義
db...
この記事の続きは原文サイトでお読みいただけます。
原文を読む →



