# Tools

Source: https://libtmux.org/en/py/latest/mcp/tools/

> Browse the operations the server exposes to MCP clients. Use the registered name and arguments when sending a tools/call request.

Browse the operations the server exposes to MCP clients. Use the registered name and arguments when sending a tools/call request.

MCP is in development

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

The reference configuration advertises 54 tools. Your server’s available objects depend on its configuration. [Setup documentation](https://libtmux.org/en/py/latest/mcp/guides/) explains how to connect a client.

## Server5 tools[#](https://libtmux.org/en/py/latest/mcp/tools/#tools-server)

[create​_session](https://libtmux.org/en/py/latest/mcp/tools/create_session/)

Create a new tmux session.

[get​_server​_info](https://libtmux.org/en/py/latest/mcp/tools/get_server_info/)

Get information about the tmux server.

[kill​_server](https://libtmux.org/en/py/latest/mcp/tools/kill_server/)

Kill the tmux server and all its sessions.

[list​_servers](https://libtmux.org/en/py/latest/mcp/tools/list_servers/)

Discover live tmux servers under the current user’s `$TMUX_TMPDIR`.

[list​_sessions](https://libtmux.org/en/py/latest/mcp/tools/list_sessions/)

List tmux sessions (terminal workspaces) on a tmux server.

## Session5 tools[#](https://libtmux.org/en/py/latest/mcp/tools/#tools-session)

[create​_window](https://libtmux.org/en/py/latest/mcp/tools/create_window/)

Create a new window in a tmux session.

[get​_session​_info](https://libtmux.org/en/py/latest/mcp/tools/get_session_info/)

Return metadata for a single tmux session (ID, name, window count, activity).

[kill​_session](https://libtmux.org/en/py/latest/mcp/tools/kill_session/)

Kill a tmux session.

[list​_windows](https://libtmux.org/en/py/latest/mcp/tools/list_windows/)

List tmux windows (terminal tabs) in a session, or across the server.

[rename​_session](https://libtmux.org/en/py/latest/mcp/tools/rename_session/)

Rename a tmux session.

## Window9 tools[#](https://libtmux.org/en/py/latest/mcp/tools/#tools-window)

[get​_window​_info](https://libtmux.org/en/py/latest/mcp/tools/get_window_info/)

Return metadata for a single tmux window (ID, name, layout, dimensions).

[kill​_window](https://libtmux.org/en/py/latest/mcp/tools/kill_window/)

Kill (close) a tmux window. Requires exact window_id (e.g. ‘@3’).

[list​_panes](https://libtmux.org/en/py/latest/mcp/tools/list_panes/)

List tmux panes (terminal multiplexer splits) in a window, session, or server.

[move​_window](https://libtmux.org/en/py/latest/mcp/tools/move_window/)

Move a window to a different index or session.

[rename​_window](https://libtmux.org/en/py/latest/mcp/tools/rename_window/)

Rename a tmux window.

[resize​_window](https://libtmux.org/en/py/latest/mcp/tools/resize_window/)

Resize a tmux window.

[select​_layout](https://libtmux.org/en/py/latest/mcp/tools/select_layout/)

Set the layout of a tmux window.

[select​_window](https://libtmux.org/en/py/latest/mcp/tools/select_window/)

Select (focus) a tmux window by ID, index, or direction.

[split​_window](https://libtmux.org/en/py/latest/mcp/tools/split_window/)

Split a tmux window to create a new pane.

## Pane18 tools[#](https://libtmux.org/en/py/latest/mcp/tools/#tools-pane)

[capture​_pane](https://libtmux.org/en/py/latest/mcp/tools/capture_pane/)

Capture the visible contents of a tmux pane (terminal scrollback).

[capture​_since](https://libtmux.org/en/py/latest/mcp/tools/capture_since/)

Capture new tmux terminal scrollback since the previous cursor.

[clear​_pane](https://libtmux.org/en/py/latest/mcp/tools/clear_pane/)

Clear the contents of a tmux pane.

[find​_pane​_by​_position](https://libtmux.org/en/py/latest/mcp/tools/find_pane_by_position/)

Find the pane occupying a corner of a tmux window.

[get​_pane​_info](https://libtmux.org/en/py/latest/mcp/tools/get_pane_info/)

Get detailed information about a tmux pane.

[kill​_pane](https://libtmux.org/en/py/latest/mcp/tools/kill_pane/)

Kill (close) a tmux pane. Requires exact pane_id (e.g. ‘%5’).

[paste​_text](https://libtmux.org/en/py/latest/mcp/tools/paste_text/)

Paste multi-line text into a pane using tmux paste buffers.

[pipe​_pane](https://libtmux.org/en/py/latest/mcp/tools/pipe_pane/)

Log a pane’s live output to a file (or stop an active log).

[resize​_pane](https://libtmux.org/en/py/latest/mcp/tools/resize_pane/)

Resize a tmux pane.

[respawn​_pane](https://libtmux.org/en/py/latest/mcp/tools/respawn_pane/)

Restart a pane’s process in place, preserving pane_id and layout.

[run​_command](https://libtmux.org/en/py/latest/mcp/tools/run_command/)

Run a shell command in a pane, wait for completion, and capture output.

[search​_panes](https://libtmux.org/en/py/latest/mcp/tools/search_panes/)

Search visible terminal text across all tmux panes.

[select​_pane](https://libtmux.org/en/py/latest/mcp/tools/select_pane/)

Select (focus) a tmux pane by ID or direction.

[send​_keys](https://libtmux.org/en/py/latest/mcp/tools/send_keys/)

Send keys (commands or text) to a tmux pane.

[send​_keys​_batch](https://libtmux.org/en/py/latest/mcp/tools/send_keys_batch/)

Send an ordered batch of raw key/text operations to tmux panes.

[set​_pane​_title](https://libtmux.org/en/py/latest/mcp/tools/set_pane_title/)

Set the title of a tmux pane.

[snapshot​_pane](https://libtmux.org/en/py/latest/mcp/tools/snapshot_pane/)

Snapshot a tmux pane: visible terminal output, cursor, mode, scroll.

[swap​_pane](https://libtmux.org/en/py/latest/mcp/tools/swap_pane/)

Swap the positions of two panes.

## Buffers4 tools[#](https://libtmux.org/en/py/latest/mcp/tools/#tools-buffers)

[delete​_buffer](https://libtmux.org/en/py/latest/mcp/tools/delete_buffer/)

Delete an MCP-owned buffer.

[load​_buffer](https://libtmux.org/en/py/latest/mcp/tools/load_buffer/)

Load text into a new agent-namespaced tmux paste buffer.

[paste​_buffer](https://libtmux.org/en/py/latest/mcp/tools/paste_buffer/)

Paste an MCP-owned buffer into a pane.

[show​_buffer](https://libtmux.org/en/py/latest/mcp/tools/show_buffer/)

Read back the contents of an MCP-owned buffer.

## Hooks2 tools[#](https://libtmux.org/en/py/latest/mcp/tools/#tools-hooks)

[show​_hook](https://libtmux.org/en/py/latest/mcp/tools/show_hook/)

Look up a specific tmux hook by name.

[show​_hooks](https://libtmux.org/en/py/latest/mcp/tools/show_hooks/)

List configured tmux hooks at the given scope.

## Options and environment4 tools[#](https://libtmux.org/en/py/latest/mcp/tools/#tools-options-and-environment)

[set​_environment](https://libtmux.org/en/py/latest/mcp/tools/set_environment/)

Set a tmux environment variable.

[set​_option](https://libtmux.org/en/py/latest/mcp/tools/set_option/)

Set a tmux option value.

[show​_environment](https://libtmux.org/en/py/latest/mcp/tools/show_environment/)

Show tmux environment variables.

[show​_option](https://libtmux.org/en/py/latest/mcp/tools/show_option/)

Show a tmux option value.

## Coordination2 tools[#](https://libtmux.org/en/py/latest/mcp/tools/#tools-coordination)

[signal​_channel](https://libtmux.org/en/py/latest/mcp/tools/signal_channel/)

Signal a tmux [`wait-for`](https://libtmux.org/en/tmux/latest/manual/wait-for/) channel, waking blocked waiters.

[wait​_for​_channel](https://libtmux.org/en/py/latest/mcp/tools/wait_for_channel/)

Block until a tmux [`wait-for`](https://libtmux.org/en/tmux/latest/manual/wait-for/) channel is signalled.

## Other tools5 tools[#](https://libtmux.org/en/py/latest/mcp/tools/#tools-other-tools)

[call​_read​_tools​_batch](https://libtmux.org/en/py/latest/mcp/tools/call_read_tools_batch/)

Call several `inspect` tools serially and return per-tool results.

[display​_message](https://libtmux.org/en/py/latest/mcp/tools/display_message/)

Read tmux variables against a target and return the substituted text.

[enter​_copy​_mode](https://libtmux.org/en/py/latest/mcp/tools/enter_copy_mode/)

Enter copy mode in a tmux pane, optionally scrolling up.

[exit​_copy​_mode](https://libtmux.org/en/py/latest/mcp/tools/exit_copy_mode/)

Exit copy mode in a tmux pane.

[wait​_for​_text](https://libtmux.org/en/py/latest/mcp/tools/wait_for_text/)

Wait for NEW output in a tmux pane, then return.

## [Resources](https://libtmux.org/en/py/latest/mcp/resources/)

This server does not advertise resources in the reference configuration.

## [Resource templates](https://libtmux.org/en/py/latest/mcp/resources/#resources-resource-templates)

6 advertised in the reference configuration.

## [Prompts](https://libtmux.org/en/py/latest/mcp/prompts/)

4 advertised in the reference configuration.

Reference configuration

* `LIBTMUX_TOOLSETS`

  `inspect,manage,execute,teardown`

Protocol version: `2025-11-25`. [Download the full protocol catalog](https://libtmux.org/en/py/latest/mcp/tools.json).

Source: [`tmux-python/libtmux-mcp@4daddc0dfca9`](https://github.com/tmux-python/libtmux-mcp/tree/4daddc0dfca96c43bf521d818bf91564e1434760).

The [language API reference](https://libtmux.org/en/py/latest/mcp/reference/) documents embedding and implementation types.

Source revision: [tmux-python/libtmux-mcp@4daddc0dfca96c43bf521d818bf91564e1434760](https://github.com/tmux-python/libtmux-mcp/tree/4daddc0dfca96c43bf521d818bf91564e1434760).
