Skip to main content

MCP server for tmux, powered by libtmux

Project description

libtmux-mcp

A Model Context Protocol server for tmux, built on libtmux.

Python Version PyPI Version License

[!WARNING] Pre-alpha. APIs may change. Contributions and feedback welcome.

Give your AI agent hands inside the terminal — create sessions, run commands, read output, orchestrate panes.

Tools

Module Tools
Server list_sessions, create_session, kill_server, get_server_info
Session list_windows, get_session_info, create_window, rename_session, select_window, kill_session
Window list_panes, get_window_info, split_window, rename_window, select_layout, resize_window, move_window, kill_window
Pane send_keys, paste_text, capture_pane, snapshot_pane, search_panes, get_pane_info, wait_for_text, wait_for_content_change, display_message, select_pane, swap_pane, resize_pane, set_pane_title, clear_pane, pipe_pane, enter_copy_mode, exit_copy_mode, respawn_pane, kill_pane
Options show_option, set_option
Environment show_environment, set_environment

Quickstart

Requirements: Python 3.10+, tmux on $PATH.

Install and run:

uvx libtmux-mcp

Claude Code

claude mcp add tmux -- uvx libtmux-mcp

Codex CLI

codex mcp add tmux -- uvx libtmux-mcp

Gemini CLI

gemini mcp add tmux uvx -- libtmux-mcp

Claude Desktop

Add to claude_desktop_config.json:

{
  "mcpServers": {
    "tmux": {
      "command": "uvx",
      "args": ["libtmux-mcp"]
    }
  }
}

More clients and JSON config: client setup docs

What it feels like

You: Create a session called "api" and run pytest tests/api/ -x in it.

Agent: Created session api with window tests. Running pytest now. Here's the output — 14 passed, 2 failed. The failures are in test_auth.py::test_token_refresh and test_auth.py::test_expired_session. Want me to open those files?

The agent manages tmux directly. No copy-pasting terminal output. No switching windows to check on long-running processes.

Documentation

Full docs, guides, and tool reference: libtmux-mcp.git-pull.com

Development

Clone and install:

git clone https://github.com/tmux-python/libtmux-mcp.git
cd libtmux-mcp
uv sync --dev

Run the server locally:

uv run libtmux-mcp

Run tests:

uv run pytest

Related projects

License

MIT

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

libtmux_mcp-0.1.0a5.tar.gz (523.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

libtmux_mcp-0.1.0a5-py3-none-any.whl (84.8 kB view details)

Uploaded Python 3

File details

Details for the file libtmux_mcp-0.1.0a5.tar.gz.

File metadata

  • Download URL: libtmux_mcp-0.1.0a5.tar.gz
  • Upload date:
  • Size: 523.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for libtmux_mcp-0.1.0a5.tar.gz
Algorithm Hash digest
SHA256 2fb7cedf051a10a32ac981d2670195c56d42aa54fc4759c660f6cca21eea49fe
MD5 a165d5c589810e8b71d766e716ec23ac
BLAKE2b-256 398c67a32332f7457c3cee58da6da0757e6cbcb8e9a9e39ddbc4d74a2b1b0e06

See more details on using hashes here.

Provenance

The following attestation bundles were made for libtmux_mcp-0.1.0a5.tar.gz:

Publisher: tests.yml on tmux-python/libtmux-mcp

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file libtmux_mcp-0.1.0a5-py3-none-any.whl.

File metadata

  • Download URL: libtmux_mcp-0.1.0a5-py3-none-any.whl
  • Upload date:
  • Size: 84.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for libtmux_mcp-0.1.0a5-py3-none-any.whl
Algorithm Hash digest
SHA256 633ce9879eeef841f8d3a943b832af4420647dd35173c6611ee67c100f5b9027
MD5 860975c7566722fc6798103f1b04de10
BLAKE2b-256 39de7c654b246c98a97ecae732b0f3bfdd50b1f01b2a15edc21c9bca4a315da2

See more details on using hashes here.

Provenance

The following attestation bundles were made for libtmux_mcp-0.1.0a5-py3-none-any.whl:

Publisher: tests.yml on tmux-python/libtmux-mcp

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page