batch
[batch]
Runs multiple tool operations sequentially in one request.
Try it locally in the Glider playground
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| operations | json | Yes | Operations to run, in order. JSON array of objects like { "tool": "get_type_info", "arguments": { ... } }. Default: "[]" |
| stopOnError | boolean | No | When true, stops after the first failure. Default is false. Default: false |
| maxOperations | number | No | Maximum number of operations allowed. Use 0 for unlimited. Default is 25. Default: 25 |
| maxTotalOutputChars | number | No | Budget for complete inner outputs. Default 200000; 0 disables this budget. The server response ceiling still applies. Omitted outputs retain execution status and recovery guidance. Default: 200000 |
| responseDetail | string | No | compact returns results and actionable state. full adds diagnostic metadata under responseDiagnostics. Default: "compact" |
Examples
Replace sample paths and symbol keys with values from your workspace.
Run multiple operations
{
"operations": "[\n { \"tool\": \"resolve_symbol\", \"arguments\": { \"query\": \"ISolutionManager\", \"kinds\": \"Type\" } },\n { \"tool\": \"find_references\", \"arguments\": { \"symbolKey\": \"...\", \"groupBy\": \"project\" } }\n]"
}Full MCP request
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "batch",
"arguments": {
"operations": "[\n { \"tool\": \"resolve_symbol\", \"arguments\": { \"query\": \"ISolutionManager\", \"kinds\": \"Type\" } },\n { \"tool\": \"find_references\", \"arguments\": { \"symbolKey\": \"...\", \"groupBy\": \"project\" } }\n]"
}
}
}{
"success": true,
"operationCount": 3,
"completedCount": 3,
"failedCount": 0,
"stoppedEarly": false,
"results": [
{
"tool": "get_type_info",
"result": {
"success": true,
"name": "Invoice"
}
},
{
"operationIndex": 2,
"tool": "get_file_contents",
"truncated": true,
"successOnly": true,
"executionStatus": "completed",
"guidance": "Call this read directly with a smaller startLine/endLine window. Read later windows separately."
},
{
"tool": "search_symbols",
"result": {
"success": true,
"matchCount": 3
}
}
],
"meta": {
"truncated": true,
"totalOutputChars": 75000
}
}Response Notes
Returns complete results that fit, in operation order. Omitted outputs have a one-based operationIndex, executionStatus, and guidance. Later small results can still fit. Query omitted reads directly with narrower bounds and individual tool pagination. Do not repeat completed writes; verify their effects with a read. Batch has no paging cursor. If completion notices cannot fit, no operations run. Results use top-level fields with success. Compact is the default; full adds responseDiagnostics. Both modes retain errors, coverage, partial state, and recovery advice.