--- title: "Dynamic ReAct: Scalable Tool Selection for Large-Scale MCP Environments" created: 2026-06-19 updated: 2026-06-19 type: paper-raw source: https://arxiv.org/abs/2509.20386 arxiv_id: 2509.20386 version: v1 --- # Dynamic ReAct: Scalable Tool Selection for Large-Scale MCP Environments **Authors**: Nishant Gaurav, Adit Akarsh, Ankit Ranjan, Manoj Bajaj (agentr.dev) **Published**: 2025-09-22 **Venue**: arXiv:2509.20386 (cs.SE, cs.AI, cs.IR) ## 核心问题 当 MCP 工具生态扩展到数百到数千个工具时,传统 ReAct Agent 的全量加载方式不可行——LLM 上下文有硬限制。 ## 五架构演进 ### 1. Baseline: Direct Semantic Search 用户查询直接入向量库 → 取 top-k → 绑定 LLM。简单但噪声严重("退订链接"查询返回 Mailchimp 的 unsubscribe 报告而非 Gmail 工具)。 ### 2. Meta-Tool Query Construction 暴露向量搜索为 meta-tool,LLM 先构造原子化搜索查询再检索。更精确,但仍需大 k 值。 ### 3. Search and Load(★ 最优) 两个 meta-tool:`search_tools`(两级搜索,k1=20→去重→每应用上限 k2=5)+ `load_tools`(LLM 精选后显式加载)。多查询合并、精确加载 < 5 个工具。 ### 4. Application-Aware (Hierarchical Search) 增加 `search_apps` 先定位应用再搜工具。application filtering 在语义搜索中效果有限——LLM 倾向直接用 query 包含 app 名。 ### 5. Fixed Tool Set 四个固定 meta-tool 动态获取工具信息并调用。缓存效率好,但长对话中性能退化。 ## 向量检索优化 | 策略 | Top-5 | Top-10 | |------|-------|--------| | OpenAI text-embedding-3-large (baseline) | 40% | 64% | | voyage-context-3 | 48% | 68% | | **voyage-context-3 + Sonnet context enrichment** | **60%** | 68% | | + BM25 hybrid | 56% | 72% | Context enrichment 带来 50% 相对提升(Top-5: 40→60%)。 ## 关键创新 - **default tools**:create_table + web_search 始终可用,避免为通用任务浪费搜索 - **Meta-tool 作为"七杠杆"**:LLM Client (1) + Meta Tools (4) + Tool Registry (1) + Vector DB (1) - 工具加载减少 **50%**,准确率不降