---
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%**，准确率不降
