Tmux MCP Server
# Tmux MCP Server
Model Context Protocol server that enables Claude Desktop to interact with and view tmux session content. This integration allows AI assistants to read from, control, and observe your terminal sessions.
## Features
- List and search tmux sessions
- View and navigate tmux windows and panes
- Capture and expose terminal content from any pane
- Execute commands in tmux panes and retrieve results (use it at your own risk ⚠️)
- Create new tmux sessions and windows
- Split panes horizontally or vertically with customizable sizes
- Kill tmux sessions, windows, and panes
Check out this short video to get excited!
</br>
[](https://www.youtube.com/watch?v=3W0pqRF1RS0)
## Prerequisites
- Node.js
- tmux installed and running
## Usage
### Configure Claude Desktop
Add this MCP server to your Claude Desktop configuration:
```json
"mcpServers": {
"tmux": {
"command": "npx",
"args": ["-y", "tmux-mcp"]
}
}
```
### MCP server options
You can optionally specify the command line shell you are using, if unspecified it defaults to `bash`
```json
"mcpServers": {
"tmux": {
"command": "npx",
"args": ["-y", "tmux-mcp", "--shell-type=fish"]
}
}
```
The MCP server needs to know the shell only when executing commands, to properly read its exit status.
## Available Resources
- `tmux://sessions` - List all tmux sessions
- `tmux://pane/{paneId}` - View content of a specific tmux pane
- `tmux://command/{commandId}/result` - Results from executed commands
## Available Tools
- `list-sessions` - List all active tmux sessions
- `find-session` - Find a tmux session by name
- `list-windows` - List windows in a tmux session
- `list-panes` - List panes in a tmux window
- `capture-pane` - Capture content from a tmux pane
- `create-session` - Create a new tmux session
- `create-window` - Create a new window in a tmux session
- `split-pane` - Split a tmux pane horizontally or vertically with optional size
- `kill-session` - Kill a tmux session by ID
- `kill-window` - Kill a tmux window by ID
- `kill-pane` - Kill a tmux pane by ID
- `execute-command` - Execute a command in a tmux pane
- `get-command-result` - Get the result of an executed command
TDQS
Scored across 13 tools
Every tool has a clearly distinct purpose targeting specific tmux resources and actions. For example, create-session, create-window, and split-pane handle different creation tasks, while kill-session, kill-window, and kill-pane handle distinct termination operations. There is no overlap that would cause confusion in tool selection.
All tool names follow a consistent verb-noun pattern with hyphen separation (e.g., create-session, list-panes, kill-window). This uniform naming convention makes the tool set predictable and easy to understand, with no deviations or mixed styles.
With 13 tools, this server is well-scoped for managing tmux sessions, windows, panes, and commands. Each tool serves a specific function in the domain, such as listing, creating, killing, and executing, without being overly sparse or bloated.
The tool set provides complete CRUD/lifecycle coverage for tmux management, including creation (create-session, create-window, split-pane), reading (list-sessions, list-windows, list-panes, find-session, capture-pane), updating (execute-command for command execution), and deletion (kill-session, kill-window, kill-pane). There are no obvious gaps that would hinder agent workflows.