Skip to main content
Glama
tmux-mcp

tmux-mcp

by vn-lazyming

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
TMUX_MCP_SESSIONNoThe tmux session name to use. Defaults to `agent`.agent

Instructions

Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.

This server publishes no instructions, or was last inspected before Glama recorded them.

Capabilities

Features and capabilities supported by this server

Protocol revision2025-11-25

CapabilityDetails
tools
{
  "listChanged": false
}
prompts
{
  "listChanged": false
}
resources
{
  "subscribe": false,
  "listChanged": false
}
experimental
{}

Tools

Functions exposed to the LLM to take actions

NameDescription
tmux_sendA

Type into the live pane like a human, then return the output that appeared. Prefer this over a one-shot shell for anything interactive or stateful.

Returns once it is finished (shell prompt back, or a REPL/gdb/ssh showing the same prompt line as before), or the screen has been quiet idle seconds, or timeout passes. The last line says the state: [at shell prompt] = done; [foreground: X] = X still running or a REPL waiting for input. If it is still running, call tmux_read(wait_done=True) to wait for it to finish.

tmux_readA

Return the pane's last lines lines (what the human sees, plus scrollback), optionally waiting first. Last line: [at shell prompt] or [foreground: X], plus [timeout: ...] if the wait gave up.

tmux_list_panesA

List every tmux session, window and pane as target pane_id command cwd [flags]. Pass either id to tmux_send/tmux_read to work in the human's own pane. [opened by agent: KIND NAME] marks what tmux_new opened; tmux_kill(NAME) closes it.

tmux_newA

Open a new tmux session, window or pane without switching the human's view.

Returns its pane id (e.g. "%7") for tmux_send/tmux_read: unlike "ming:0.1" it stays on this pane when the human renames the session or splits the window.

tmux_moveA

Move a pane tmux_new opened into the window of target_pane, splitting it, so the human sees both at once. Their view does not switch to it. Whatever runs in the pane keeps running. Leaving a session or window empty closes it.

tmux_killA

Close a session, window or pane that tmux_new opened, killing whatever runs in it. Refuses anything else, so the human's own panes are never closed.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

TDQS

A4.2/5.0

Scored across 6 tools

Disambiguation4/5

The tools have mostly distinct purposes: send writes to a pane, read inspects one, list enumerates panes, new creates one, move relocates one, and kill closes one. There is some conceptual overlap between tmux_send and tmux_read because both can return pane output and tmux_send may wait for completion, but the descriptions make the intended usage boundaries clear.

Naming Consistency5/5

All six tools use the same tmux_ prefix followed by a concise verb or verb-noun style: tmux_send, tmux_read, tmux_new, tmux_move, tmux_kill, tmux_list_panes. The naming is predictable and consistent throughout.

Tool Count5/5

Six tools is a well-scoped surface for controlling and inspecting tmux panes without excessive granularity. Each tool covers a distinct operation and there are no obvious redundant tools.

Completeness4/5

The set covers the core tmux lifecycle agents need: discovery, creation, interaction, reading output, moving panes, and cleanup. Minor gaps exist around session/window management details and things like renaming or resizing, but these are not essential for the stated interactive-pane workflow.