{
  "name": "call_read_tools_batch",
  "wireName": "call_read_tools_batch",
  "source": {
    "repo": "tmux-python/libtmux-mcp",
    "revision": "4daddc0dfca96c43bf521d818bf91564e1434760",
    "extractedRevision": "4daddc0dfca96c43bf521d818bf91564e1434760",
    "file": "src/libtmux_mcp/tools/batch_tools.py",
    "line": 277
  },
  "description": "Call several `inspect` tools serially and return per-tool results.\n\nUse when one agent turn needs several observations. Each nested call\nstill goes through FastMCP validation and this server's middleware.\nOnly `inspect` tools are accepted; anything that changes tmux state\nis refused, whatever this server has enabled.\n\nThis wrapper aggregates authority under its own name: a client rule\nkeyed on a nested tool's name does not fire for a call made through\nit. Read it as authority to invoke any `inspect` tool.",
  "schemaStatus": "runtime",
  "inputSchema": {
    "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"
  },
  "outputSchema": {
    "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"
  },
  "annotations": {
    "destructiveHint": true,
    "idempotentHint": false,
    "openWorldHint": true,
    "readOnlyHint": false
  },
  "meta": {
    "fastmcp": {
      "tags": [
        "inspect"
      ]
    }
  }
}
