tmux-mcp-server
Provides tools for managing tmux sessions, windows, panes, layouts, status inspection, and secure command execution using event-driven pipe-pane and wait-for primitives.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@tmux-mcp-serverlist all active tmux sessions"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
tmux-mcp
Model Context Protocol (MCP) server for tmux, written in Python and distributed via
uvx.
Exposes 37 granular tools covering sessions, windows, panes, layouts, status inspection, and secure command execution using event-driven pipe-pane + wait-for primitives.
Key Features & Security Design
No Shell Injection Vulnerabilities: All tmux interactions execute strictly via argv parameter arrays without
shell=True.Event-Driven Execution Engine: Uses
pipe-panestreams andtmux wait-forevents instead of polling or scrollback regex. Captures exact return codes and complete output streams (>50,000 lines tested without truncation).Interactive App Guard: Automatically blocks non-shell panes (e.g.
vim,htop,python) from accidental command injection, prompting the caller to use keypress tools (send_keys) instead.Strict Protocol & Output Purity: Zero stray stdout prints to prevent corrupting the MCP stdio JSON-RPC transport stream (logging strictly routed to
sys.stderr).Portable Flat Tool Schemas: Compatible with all MCP clients (Claude Code, Claude Desktop, OpenCode, Cursor, Windsurf, Zed, Continue, VS Code) by enforcing flat JSON schemas without unsupported
$ref/$defs/anyOfconstructs.
Related MCP server: Ryan's Tmux MCP Server
Quick Start
Run instantly without installing Python dependencies using uvx:
# Run with standard profile (default 22 tools)
uvx tmux-mcp-server
# Run with full profile (all 37 tools including destructive actions)
uvx tmux-mcp-server --tools=full
# Run in read-only mode (13 read tools)
uvx tmux-mcp-server --read-onlyTool Profiles
Profile | Tools Count | Description |
| 22 | All read, interact, split, resize, layout, and command execution tools (excludes destructive |
| 37 | Complete set of 37 tools, including destructive operations ( |
| 13 | Read-only inspection tools. Safe for unrestricted agent usage. |
Custom | N | Comma-separated list of tool names (e.g. |
Client Configuration Examples
Watch the package name. This project is
tmux-mcp-server. Do not configure"args": ["tmux-mcp"]—tmux-mcpis an unrelated, already-published PyPI package, anduvxwould silently download and run that one instead.Working on the code? Point the client at your checkout so edits take effect immediately:
"args": ["run", "--directory", "/absolute/path/to/tmux-mcp-server", "tmux-mcp-server"]with
"command": "uv". Note thatuvx --from <path>caches the built wheel per version, so local edits are not picked up until you bumpversioninpyproject.toml—uv run --directoryhas no such caching.
1. Claude Code
Add to ~/.claude.json or .claude.json:
{
"mcpServers": {
"tmux": {
"command": "uvx",
"args": ["tmux-mcp-server"]
}
}
}2. Claude Desktop
Add to ~/Library/Application Support/Claude/claude_desktop_config.json:
{
"mcpServers": {
"tmux": {
"command": "uvx",
"args": ["tmux-mcp-server"]
}
}
}3. OpenCode
Add to ~/.config/opencode/opencode.json (or project .opencode/mcp.json):
{
"mcpServers": {
"tmux": {
"command": "uvx",
"args": ["tmux-mcp-server"]
}
}
}4. Cursor
Add to Settings -> Features -> MCP:
Name:
tmuxType:
commandCommand:
uvx tmux-mcp-server
5. Windsurf
Add to ~/.codeium/windsurf/mcp_config.json:
{
"mcpServers": {
"tmux": {
"command": "uvx",
"args": ["tmux-mcp-server"]
}
}
}6. Zed
Add to ~/.config/zed/settings.json:
{
"context_servers": {
"tmux": {
"command": {
"path": "uvx",
"args": ["tmux-mcp-server"]
}
}
}
}7. Continue
Add to ~/.continue/config.json:
{
"mcpServers": [
{
"name": "tmux",
"command": "uvx",
"args": ["tmux-mcp-server"]
}
]
}8. VS Code (Roo Code / Cline)
Add to .vscode/mcp.json:
{
"mcpServers": {
"tmux": {
"command": "uvx",
"args": ["tmux-mcp-server"]
}
}
}9. Generic Stdio Client
Any MCP-compliant client can launch via stdio:
{
"command": "uvx",
"args": ["tmux-mcp-server"]
}Tool Reference (37 Tools)
Sessions (6)
list_sessionsget_sessioncreate_sessionrename_sessionswitch_clientkill_session⚠️
Windows (6)
list_windowscreate_windowrename_windowselect_windowmove_windowkill_window⚠️
Panes — Read & Interact (7)
list_panesget_pane_inforead_panesearch_panesend_keyssend_special_keyclear_pane
Panes — Layout & Sizing (9)
split_paneselect_paneresize_panezoom_paneswap_panesmove_panebreak_paneset_layoutkill_pane⚠️
Command Execution (5)
run_commandget_command_resultwait_commandlist_commandscancel_command
Server & Inspection (4)
server_infolist_clientsdisplay_messageshow_options
Development & Testing
Run all unit and integration tests (using an isolated test socket -L tmux-mcp-test):
uv run pytestLicense
MIT
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- Flicense-qualityDmaintenanceAn MCP server that gives AI assistants the ability to create, manage, and control terminal sessions through a safe, isolated tmux environment.1
- Flicense-qualityDmaintenanceMCP server for tmux operations that provides comprehensive control over tmux sessions, windows, and panes.1
- AlicenseAqualityCmaintenanceMCP server for terminal control enabling AI to manage terminal sessions via iTerm2 or tmux, with features like screen reading, keyboard/mouse input, and background execution.92921MIT
- AlicenseBqualityAmaintenanceA comprehensive MCP server for driving tmux sessions, windows, panes, sending keystrokes, and reading pane output locally or over SSH, enabling real-time collaborative pairing with AI.711MIT
Related MCP Connectors
A comprehensive Model Context Protocol (MCP) server that enables AI assistants to interact with yo…
MCP server for Gainium — manage trading bots, deals, and balances via AI assistants
Personal assistant MCP server with search, execute, packages, jobs, secrets, and integrations.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/manhnv198669/tmux-mcp-server'
If you have feedback or need assistance with the MCP directory API, please join our Discord server