# send_keys_batch

Source: https://libtmux.org/en/rs/latest/mcp/tools/send_keys_batch/

> Send an ordered batch of input operations to panes. Each executed row repeats send_keys' effective synchronized-cohort, dead-pane, input-off, pane-mode, attended-client, and inherited-caller preflight, then crosses one tmux dispatch. These observations can race with tmux processing the input. Send input to a pane's program; a shell that receives it runs it with your user's permissions.

MCP is in development

Server behavior and tool contracts may change. Tool availability depends on the server configuration.

Send an ordered batch of input operations to panes. Each executed row repeats [send\_keys](https://libtmux.org/en/rs/latest/mcp/tools/send_keys/)’ effective synchronized-cohort, dead-pane, input-off, pane-mode, attended-client, and inherited-caller preflight, then crosses one tmux dispatch. These observations can race with tmux processing the input. Send input to a pane’s program; a shell that receives it runs it with your user’s permissions.

[All Rust tools](../) · [JSON](../send_keys_batch.json) · [Source](https://github.com/libtmux/libtmux-rs/blob/f0e37052c232636b61d095817046e6bfc8f2ca40/crates/tmux-mcp/src/tools/contract.rs#L1078)

## Arguments

* `on_error` optional

  \`stop\`, the default, ends at the first refused row; \`continue\` sends the rest.

  Default: `"stop"`.

* `operations` required · array

  The rows to send, in order, 1 to 64.

## Schemas

The schema defines required fields, nested values, defaults, and validation constraints.
