Batch Tools
Batch tools resolve multiple queries in a single MCP call. Each item in the batch is resolved independently — one failure does not fail the entire batch.
All batch tools accept comma-separated names as input.
find_symbols_batch
Resolve multiple symbol names at once.
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
names |
string | yes | Comma-separated symbol names |
kind |
string | no | Kind filter (class, method, etc.) |
Example
Input: names = "WorkspaceManager, SymbolResolver, RoslynLensConfig"
{
"Items": [
{
"Query": "WorkspaceManager",
"Result": { "Matches": [{ "Name": "RoslynLens.WorkspaceManager", "Kind": "class", "File": "WorkspaceManager.cs", "Line": 11 }], "Total": 1 },
"Error": null
},
{
"Query": "SymbolResolver",
"Result": { "Matches": [{ "Name": "RoslynLens.SymbolResolver", "Kind": "class", "File": "SymbolResolver.cs", "Line": 9 }], "Total": 1 },
"Error": null
},
{
"Query": "RoslynLensConfig",
"Result": { "Matches": [{ "Name": "RoslynLens.RoslynLensConfig", "Kind": "class", "File": "RoslynLensConfig.cs", "Line": 8 }], "Total": 1 },
"Error": null
}
],
"Total": 3,
"Succeeded": 3,
"Failed": 0
}
get_public_api_batch
Get the public API surface of multiple types in one call.
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
typeNames |
string | yes | Comma-separated type names |
When to use
- Comparing interfaces of related types
- Understanding a module's public surface quickly
- Generating API documentation
get_symbol_detail_batch
Get full details (signature, parameters, return type, XML docs) for multiple symbols in one call.
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
symbolNames |
string | yes | Comma-separated symbol names |
When to use
- Understanding a group of related methods
- Documenting an API surface
- Reviewing method signatures before a refactor
Error handling
Each batch item is resolved independently. If one item fails (e.g., symbol not
found), the error is captured in that item's Error field:
{
"Query": "NonExistentType",
"Result": null,
"Error": "Type 'NonExistentType' not found"
}
The batch continues processing remaining items. The response includes Succeeded
and Failed counts for quick assessment.
Token efficiency
Batch tools save tokens by eliminating repeated JSON-RPC overhead. For N queries:
| Approach | Round-trips | Overhead tokens |
|---|---|---|
| Individual calls | N | ~50 per call |
| Batch | 1 | ~50 total |
For 5 queries, that's ~200 tokens saved in overhead alone.