batch_search
This is Anysearch's parallel search tool. Parallel search — run multiple Anysearch queries in a single call. Prefer this over multiple sequential calls when you have 2–5 queries. Saves context space and returns all results at once. Best for: comparing multiple sources, researching across topics or domains, hybrid general+vertical queries, or any multi-angle investigation.
When to use
Use batch_search instead of multiple sequential search calls when you have 2–5 independent queries. 🏆 PRIMARY use case: After get_sub_domains(domains=[...]) returns sub_domains across multiple domains, use batch_search to send one query per sub_domain in parallel. This is more efficient than sequential per-domain search calls. Also useful for ambiguous / fuzzy queries within a single domain: after get_sub_domains, use batch_search to explore multiple sub_domains in parallel.
Constraints
Maximum 5 queries per call
Each query item follows the search tool parameter structure (query is required; domain, sub_domain, sub_domain_params are optional. For general queries, omit all domain fields. For vertical queries, domain + sub_domain + sub_domain_params MUST come from get_sub_domains(domain=) output — same rules as the search tool)
Queries run in parallel; a single query failure does not block others
REQUIRED PARAMS: Same rule as search — when a required param from get_sub_domains is not applicable, pass it as an empty string (key: ""). Never skip required params.
Examples
Single-domain batch (multiple sub_domains)
Instead of: search(query="latest TSLA earnings", domain="finance", sub_domain="finance.us_stock") → search(query="TSLA stock forecast", domain="finance", sub_domain="finance.us_stock") → search(query="TSLA analyst rating", domain="finance", sub_domain="finance.us_stock") Use: batch_search(queries=[{query:"latest TSLA earnings", domain:"finance", sub_domain:"finance.us_stock"}, {query:"TSLA stock forecast", domain:"finance", sub_domain:"finance.us_stock"}, {query:"TSLA analyst rating", domain:"finance", sub_domain:"finance.us_stock"}])
Multi-domain batch (after get_sub_domains with multiple domains)
After: get_sub_domains(domains=["finance", "health", "legal"]) Use: batch_search(queries=[ {query:"AI regulation impact on healthcare stocks 2025", domain:"finance", sub_domain:"finance.us_stock", sub_domain_params:{ticker:"UNH"}}, {query:"healthcare AI regulations 2025", domain:"health", sub_domain:"health.policy"}, {query:"AI regulation legal framework", domain:"legal", sub_domain:"legal.legislation"}])
Hybrid: general + vertical in parallel (universal pattern for any borderline query)
Use this whenever you are unsure if the query is pure encyclopedia or domain-specific — fire BOTH channels in batch_search: batch_search(queries=[ {query:"..."}, // general — no domain {query:"...", domain:"...", sub_domain:"..."}]) // vertical channel(s) This applies universally: classical texts, financial concepts, legal theories, historical events, scientific discoveries, medical topics — any query where domain knowledge could enrich the encyclopedia answer.
MANDATORY: Call score within this interaction turn (the current user request through your final response). Submit every 10 pending successful searches before starting another search, and submit any remainder when this turn's searching ends, before your final response, even if fewer than 10. Do not carry pending feedback into the next turn. Count each successful batch_search sub-query separately, including empty results; exclude failed searches and extract calls. Each submission contains 1-10 entries; skip empty batches and IDs already queued. Copy request_id from each result's trailing YAML block or result _meta. Follow score's scoring criteria. Feedback is free.
Tool call template
Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.
{
"id": 1,
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"arguments": {
"queries": "<queries>"
},
"name": "batch_search"
}
}Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| queries | Yes | Array of search requests (max 5). Each item follows the search tool schema: query is required; domain, sub_domain, sub_domain_params are optional. For general queries, omit all domain fields. For vertical queries, domain + sub_domain + sub_domain_params MUST come from get_sub_domains(domain=<domain>) output. |