call_read_tools_batch
Call several inspect tools serially and return per-tool results.
Use when one agent turn needs several observations. Each nested call
still goes through FastMCP validation and this server’s middleware.
Only inspect tools are accepted; anything that changes tmux state
is refused, whatever this server has enabled.
This wrapper aggregates authority under its own name: a client rule
keyed on a nested tool’s name does not fire for a call made through
it. Read it as authority to invoke any inspect tool.
All Python tools · JSON · Source
Arguments
on_erroroptional · string- See the schema for this argument’s constraints.
Default:
"stop". operationsrequired · array- See the schema for this argument’s constraints.
Schemas
The schema defines required fields, nested values, defaults, and validation constraints.
Input schema
{ "additionalProperties": false, "properties": { "on_error": { "default": "stop", "enum": [ "stop", "continue" ], "type": "string" }, "operations": { "items": { "additionalProperties": false, "description": "One nested MCP tool call for a batch wrapper.", "properties": { "arguments": { "additionalProperties": true, "description": "Arguments for the nested tool call.", "type": "object" }, "tool": { "description": "Registered MCP tool name to call.", "type": "string" } }, "required": [ "tool" ], "type": "object" }, "type": "array" } }, "required": [ "operations" ], "type": "object"}Output schema
{ "description": "Structured result for a serial batch of MCP tool calls.", "properties": { "failed": { "description": "Number of nested tool calls that failed.", "type": "integer" }, "response_truncated": { "default": false, "description": "True when nested result payloads were elided to keep the batch response under the server response cap.", "type": "boolean" }, "response_truncated_bytes": { "default": 0, "description": "Approximate serialized bytes removed from nested result payloads.", "type": "integer" }, "results": { "description": "Per-operation results in attempted order.", "items": { "description": "Per-operation result from a generic MCP tool batch.", "properties": { "content": { "description": "MCP content blocks returned by the nested tool.", "items": { "additionalProperties": true, "type": "object" }, "type": "array" }, "elapsed_seconds": { "description": "Time spent on this operation.", "type": "number" }, "error": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "default": null, "description": "Error message for this operation, if it failed." }, "index": { "description": "Zero-based index in the submitted operation list.", "type": "integer" }, "meta": { "anyOf": [ { "additionalProperties": true, "type": "object" }, { "type": "null" } ], "default": null, "description": "Runtime metadata returned by the nested tool, if any." }, "structured_content": { "anyOf": [ { "additionalProperties": true, "type": "object" }, { "type": "null" } ], "default": null, "description": "Structured content returned by the nested tool, if any." }, "success": { "description": "True when this nested tool call succeeded.", "type": "boolean" }, "tool": { "description": "Nested tool name that was attempted.", "type": "string" } }, "required": [ "index", "tool", "success", "elapsed_seconds" ], "type": "object" }, "type": "array" }, "stopped_at": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "default": null, "description": "Index where processing stopped because on_error='stop', or None when all operations were attempted." }, "succeeded": { "description": "Number of nested tool calls that succeeded.", "type": "integer" } }, "required": [ "succeeded", "failed" ], "type": "object"}Tool annotations
{ "destructiveHint": true, "idempotentHint": false, "openWorldHint": true, "readOnlyHint": false}