Skip to content
verify mcp Beta VerifyMCP is currently in beta. If you notice any issues, email [email protected] and we’ll put it right.

io.github.k8ika0s/mcp-tmux

NPM · @K8IKA0S/MCP-TMUX · SCANNED AUG 4

Model Context Protocol server that lets LLMs collaboratively drive tmux

Available components

+17 this week 70 Trust /100
Trust breakdown (6 categories)

How this component scores in each security and reliability category. Every signal is checked automatically from public evidence about the published package, including repeated runs of it in an isolated sandbox, and we only credit what we can confirm. How we score →

Supply Chain Security83
  • No malware found by supply-chain analysis.Pass
  • CVE check failed: a known medium-severity CVE affects hono 4.12.33, reached via @modelcontextprotocol/sdk > hono. A fixed version is available. View diagnostics → Fail
  • No install/post-install scripts declared.Pass
  • Only part of the dependency tree could be resolved (111 of 115), so this covers what we could see, not the whole tree. View diagnostics → Partial
Provenance & Transparency45
Schema Quality & AI Usability85
  • 100% of prompts and resources have a non-trivial description (not blank, and not just the item's name).Pass
  • AI-judged instruction clarity (excellent).Pass
  • Tool/resource definitions use about 3436 tokens (~85/item across 40 items; 39 tools + 1 resources), lean.Pass
  • Usage-examples check failed: none of the tools include examples. See how to fix → Fail
Stability & Change Management27
  • Stability observed for 8 of 30 days with no destabilising changes; credit accrues until the full window elapses.Partial
Tool Coverage100
  • 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
  • 99% of tool parameters carry a description.Partial
Capabilities100
  • Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.Pass
Install

Add this component to your MCP client. Where a client-specific snippet is available, pick your client below and copy it straight into your config; otherwise use the connection detail shown.

npm · @k8ika0s/mcp-tmux

# add to Claude Code
claude mcp add k8ika0s-mcp-tmux -- npx -y @k8ika0s/mcp-tmux
# add to Codex CLI
codex mcp add k8ika0s-mcp-tmux -- npx -y @k8ika0s/mcp-tmux
// opencode.json
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "k8ika0s-mcp-tmux": {
      "type": "local",
      "command": [
        "npx",
        "-y",
        "@k8ika0s/mcp-tmux"
      ],
      "enabled": true
    }
  }
}
# add to OpenClaw
openclaw mcp add k8ika0s-mcp-tmux --command npx --arg -y --arg @k8ika0s/mcp-tmux
# ~/.hermes/config.yaml
mcp_servers:
  k8ika0s-mcp-tmux:
    command: "npx"
    args: ["-y", "@k8ika0s/mcp-tmux"]
// mcp.json
{
  "mcpServers": {
    "k8ika0s-mcp-tmux": {
      "command": "npx",
      "args": [
        "-y",
        "@k8ika0s/mcp-tmux"
      ]
    }
  }
}
Changelog

Every change we have recorded for this component, newest first. Security-relevant changes are always shown. ▲ marks a change for the better, ▼ a change for the worse; unmarked changes are neutral.

  • 4 Aug 26 −1
    • CVE-2026-69207 affects this package: medium security
    • Known CVEs: partial → fail security
  • 3 Aug 26 +1

    No change was recorded against any check on this day. Stability & Change Management went from 20 to 23. That category is still filling its 30-day observation window: 6 days of observed history at the previous scan, 7 at this one. The score rises as the window fills, whether or not the server changes.

  • 2 Aug 26 +65
    • Provenance: unverified → fail security
    • Install scripts: unverified → pass security
    • Known CVEs: unverified → partial security
    • Malware scan: unverified → pass security
    • Schema quality: unverified → excellent functional
    • License: unverified → pass functional
    • Dependency health: unverified → partial functional
    • Stability: unverified → 0.20 functional
    • Maintenance: unverified → pass functional
    • MCP protocol: unverified → pass functional
    • Tool coverage: unverified → 100 functional
    • Schema quality: unverified → 100 functional
    • Licence: AGPL-3.0-only functional
  • 1 Aug 26 −21
    • Schema quality: 100 → unverified functional
    • Tool coverage: 100 → unverified functional
  • 31 Jul 26 −27
    • We updated how we score, so this day's move reflects our rubric, not a change to the server See what changed → functional
  • 27 Jul 26 53

    First indexed and scored.

Diagnostics

Diagnostic detail from the automated scan of this channel: what the scanner observed at each step, so you can see exactly where a check passed or failed. It is informational only and never changes the trust score.

Captured 4 Aug 2026 · Analysed npm/@k8ika0s/[email protected]

Provenance none

Ecosystem: npm · Outcome: none

Vulnerabilities 1 finding
ID CVE Severity Vector Fix available
GHSA-8j4g-w8fx-2239 CVE-2026-69207 medium CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L yes
Dependencies 111 packages

111 packages in the resolved dependency tree · 111 deprecated · 38 stale.

The dependency tree was only partially resolved, so these counts may be incomplete.

MCP tools — 39 exposed · ~3,069 tokens

The tools this component advertises to a client, with an estimated token cost for each. Expand a tool to see its parameters and schema. The per-tool counts are indicative and are not scored directly; the schema's total context footprint is one signal in Schema Quality & AI Usability.

Tool Tokens
tmux_apply_layout_profile ~83

Apply a previously saved layout profile to a session. Windows are matched by index; pane counts must be compatible.

NameTypeReqDescription
hoststringSSH host alias (optional). Uses default host if set.
namestringyesProfile name to load.
sessionstringSession to apply to (optional; uses saved session from profile if omitted).

No output schema declared.

No examples provided.

tmux_batch_capture ~44

Capture scrollback from multiple panes in parallel (readonly).

NameTypeReqDescription
defaultLinesnumberDefault lines to capture for targets without lines.
targetsarrayyes

No output schema declared.

No examples provided.

tmux_capture_layout ~57

Return window layouts for a session so they can be restored later.

NameTypeReqDescription
hoststringSSH host alias (optional). Uses default host if set.
sessionstringSession name (optional, defaults to stored session).

No output schema declared.

No examples provided.

tmux_capture_pane ~106

Read the scrollback of a pane to observe command results.

NameTypeReqDescription
endnumberOptional end line offset.
hoststringSSH host alias (optional). Uses default host if set.
startnumberOptional start line offset (e.g. -200 for last 200 lines). Defaults to -200.
targetstringPane target (pane id or session:window.pane). If omitted, uses default pane if set.

No output schema declared.

No examples provided.

tmux_command ~103

Execute any tmux subcommand with raw args. Use this when helpers do not cover your use case. You are responsible for correctness and safety.

NameTypeReqDescription
argsarrayyesArguments to pass to tmux (do not include the tmux binary itself).
confirmbooleanSet true if the command is destructive (kill*, attach -k, unlink-window, etc).
hoststringSSH host alias (optional). Uses default host if set.

No output schema declared.

No examples provided.

tmux_context_history ~120

Capture recent scrollback from a pane or session to infer context; also extracts recent commands heuristically.

NameTypeReqDescription
allPanesbooleanIf true, capture all panes in the session.
hoststringSSH host alias (optional). Uses default host if set.
linesnumberHow many lines to capture per pane.
sessionstringSession (optional; uses default).
targetstringPane target (pane id or session:window.pane). If omitted, uses active panes in session.

No output schema declared.

No examples provided.

tmux_default_context ~24

Returns the default session (if any) and a quick layout snapshot.

Input schema present but exposes no named parameters.

No output schema declared.

No examples provided.

tmux_get_default ~16

Display the current remembered defaults.

Input schema present but exposes no named parameters.

No output schema declared.

No examples provided.

tmux_health ~43

Check tmux availability, PATH/bin resolution, and session listing for a host.

NameTypeReqDescription
hoststringSSH host alias (optional). Uses default host if set.

No output schema declared.

No examples provided.

tmux_kill_pane ~73

Close a tmux pane. Use with care.

NameTypeReqDescription
confirmbooleanMust be true to proceed.
hoststringSSH host alias (optional). Uses default host if set.
targetstringyesPane target, e.g. session:window.pane or pane id.

No output schema declared.

No examples provided.

tmux_kill_session ~65

Terminate a tmux session. Use with care.

NameTypeReqDescription
confirmbooleanMust be true to proceed.
hoststringSSH host alias (optional). Uses default host if set.
targetstringyesSession name or id to kill.

No output schema declared.

No examples provided.

tmux_kill_window ~70

Close a tmux window. Use with care.

NameTypeReqDescription
confirmbooleanMust be true to proceed.
hoststringSSH host alias (optional). Uses default host if set.
targetstringyesWindow target, e.g. session:window or window id.

No output schema declared.

No examples provided.

tmux_list_panes ~61

List panes across windows or inside a specific target.

NameTypeReqDescription
hoststringSSH host alias (optional). Uses default host if set.
targetstringTarget (session, window, or pane) to narrow the list. Optional.

No output schema declared.

No examples provided.

tmux_list_sessions ~41

Enumerate sessions with attachment counts and window totals.

NameTypeReqDescription
hoststringSSH host alias (optional). If omitted, uses default host or local.

No output schema declared.

No examples provided.

tmux_list_windows ~63

List windows within a session (or all sessions if no target provided).

NameTypeReqDescription
hoststringSSH host alias (optional). Uses default host if set.
targetstringSession name or id to list (optional). If omitted, lists all.

No output schema declared.

No examples provided.

tmux_multi_run ~188

Send the same keys to multiple targets (across hosts) and optionally capture results.

NameTypeReqDescription
capturebooleanCapture after sending.
captureLinesnumberDefault lines to capture (per-target override available).
delayMsnumberDefault delay before capture in ms (per-target override available).
enterbooleanAppend Enter.
keysstringyesKeys/command to send.
modestringsend_capture (default) captures once, tail polls, pattern checks for regex.
patternstringRegex pattern when mode=pattern.
patternFlagsstringRegex flags (e.g., i)
tailIntervalMsnumberTail interval ms (mode=tail).
tailIterationsnumberTail iterations (mode=tail).
targetsarrayyesList of targets to fan-out to.

No output schema declared.

No examples provided.

tmux_new_session ~64

Create a detached tmux session to collaborate in.

NameTypeReqDescription
commandstringOptional command to start in the first window.
hoststringSSH host alias (optional). Uses default host if set.
namestringyesSession name to create.

No output schema declared.

No examples provided.

tmux_new_window ~92

Create a window in a target session, useful for side-by-side collaboration.

NameTypeReqDescription
commandstringOptional command to run when the window starts.
hoststringSSH host alias (optional). Uses default host if set.
namestringOptional window name.
targetstringyesTarget session (or window) to create the window in, e.g. mysession.

No output schema declared.

No examples provided.

tmux_open_session ~89

Given an ssh host alias and session name, ensure the remote tmux session exists (create if missing) and set it as default for subsequent commands.

NameTypeReqDescription
commandstringOptional command to start the session with if it needs to be created.
hoststringyesSSH config host alias to connect to.
sessionstringyestmux session name on the remote host.

No output schema declared.

No examples provided.

tmux_quickstart ~25

Returns a concise how-to for using the tmux MCP tools safely.

Input schema present but exposes no named parameters.

No output schema declared.

No examples provided.

tmux_readonly_state ~97

Readonly variant of tmux_state to retrieve sessions, windows, panes, and recent capture without modifying defaults.

NameTypeReqDescription
captureLinesnumberHow many lines of scrollback to include from the capture target (default 200).
hoststringSSH host alias (optional). Uses default host if set.
sessionstringSession name (optional). Uses default session if set; required if none set.

No output schema declared.

No examples provided.

tmux_rename_session ~57

Rename a tmux session.

NameTypeReqDescription
hoststringSSH host alias (optional). Uses default host if set.
namestringyesNew session name.
targetstringyesExisting session name or id.

No output schema declared.

No examples provided.

tmux_rename_window ~64

Rename a tmux window.

NameTypeReqDescription
hoststringSSH host alias (optional). Uses default host if set.
namestringyesNew window name.
targetstringyesWindow target, e.g. session:window or window id.

No output schema declared.

No examples provided.

tmux_restore_layout ~72

Apply a saved layout string to a target window.

NameTypeReqDescription
hoststringSSH host alias (optional). Uses default host if set.
layoutstringyesLayout string obtained from tmux_capture_layout.
targetstringyesWindow target (e.g., session:window or window id).

No output schema declared.

No examples provided.

tmux_run_batch ~203

Execute multiple shell commands sequentially in one tmux pane and capture the output. Uses "&&" by default (fail fast) or ";" when failFast=false. Automatically captures output (paged) and can clean the prompt before writing.

NameTypeReqDescription
captureLinesnumberLines to capture after execution (default 200).
cleanPromptbooleanSend Ctrl+C then Ctrl+U before first write to clear any stray input (bash/zsh friendly). Default true.
failFastbooleanUse && between commands (default true). Set false to use ";" so later commands run even if earlier fail.
hoststringSSH host alias (optional). Uses default host if set.
stepsarrayyesList of commands to run sequentially in the same pane, with optional per-step Enter.
targetstringPane target (pane id or session:window.pane). If omitted, uses default pane if set.

No output schema declared.

No examples provided.

tmux_save_layout_profile ~72

Capture layouts for all windows in a session and store them under a profile name.

NameTypeReqDescription
hoststringSSH host alias (optional). Uses default host if set.
namestringyesProfile name to store.
sessionstringSession to capture (optional, uses default session).

No output schema declared.

No examples provided.

tmux_select_pane ~56

Select a pane so subsequent commands target it.

NameTypeReqDescription
hoststringSSH host alias (optional). Uses default host if set.
targetstringyesPane target (pane id or session:window.pane).

No output schema declared.

No examples provided.

tmux_select_window ~53

Select a window so subsequent commands target it.

NameTypeReqDescription
hoststringSSH host alias (optional). Uses default host if set.
targetstringyesWindow target (session:window or window id).

No output schema declared.

No examples provided.

tmux_send_keys ~112

Send keystrokes to a tmux target, optionally appending Enter.

NameTypeReqDescription
enterbooleanAppend Enter after the keys.
hoststringSSH host alias (optional). Uses default host if set.
keysstringyesThe text/keys to send. Supports <SPACE>/<ENTER>/<TAB>/<ESC>. Empty + enter=true sends Enter.
targetstringPane target (pane id or session:window.pane). If omitted, uses default pane if set.

No output schema declared.

No examples provided.

tmux_server_info ~21

Return the running server version and package identifier for verification.

Input schema present but exposes no named parameters.

No output schema declared.

No examples provided.

tmux_set_audit_logging ~80

Enable or disable verbose audit logging for a host/session (logs commands and outputs).

NameTypeReqDescription
enabledbooleanyesSet to true to enable audit logging, false to disable.
hoststringHost alias (optional). Uses default host if set.
sessionstringSession name (optional). Uses default session if set.

No output schema declared.

No examples provided.

tmux_set_default ~72

Persist defaults for later tool calls. Omit fields you do not want to change.

NameTypeReqDescription
hoststringSSH host alias to remember.
panestringPane target to remember.
sessionstringSession name to remember.
windowstringWindow target to remember.

No output schema declared.

No examples provided.

tmux_set_sync_panes ~69

Enable or disable synchronize-panes for a window.

NameTypeReqDescription
hoststringSSH host alias (optional). Uses default host if set.
onbooleanyesWhether to enable synchronize-panes.
targetstringyesWindow target (session:window or window id).

No output schema declared.

No examples provided.

tmux_split_pane ~94

Split a pane horizontally or vertically, optionally running a command.

NameTypeReqDescription
commandstringOptional command to run in the new pane.
hoststringSSH host alias (optional). Uses default host if set.
orientationstringhorizontal = side-by-side (-h), vertical = stacked (-v).
targetstringyesPane target (pane id or session:window.pane).

No output schema declared.

No examples provided.

tmux_state ~90

Return sessions, windows, panes, and the last lines of the active/default pane.

NameTypeReqDescription
captureLinesnumberHow many lines of scrollback to include from the capture target (default 200).
hoststringSSH host alias (optional). Uses default host if set.
sessionstringSession name (optional). Uses default session if set; required if none set.

No output schema declared.

No examples provided.

tmux_tail_pane ~108

Poll a pane multiple times to watch output without reissuing commands.

NameTypeReqDescription
hoststringSSH host alias (optional). Uses default host if set.
intervalMsnumberDelay between polls in milliseconds.
iterationsnumberHow many polling iterations.
linesnumberHow many lines per fetch.
targetstringPane target to tail (pane id or session:window.pane). If omitted, uses default pane if set.

No output schema declared.

No examples provided.

tmux_tail_task ~114

Create a task to poll pane output over time. Client can poll for incremental results.

NameTypeReqDescription
hoststringSSH host alias (optional). Uses default host if set.
intervalMsnumberDelay between polls in milliseconds.
iterationsnumberHow many polling iterations before auto-complete.
linesnumberHow many lines per fetch.
targetstringPane target to tail (pane id or session:window.pane). If omitted, uses default pane if set.

No output schema declared.

No examples provided.

tmux_wait_for_pattern_task ~133

Poll a pane for a regex pattern and complete when matched or after iterations.

NameTypeReqDescription
flagsstringRegex flags (e.g., i)
hoststringSSH host alias (optional). Uses default host if set.
intervalMsnumberDelay between polls in milliseconds.
iterationsnumberMax polling iterations.
linesnumberLines per fetch.
patternstringyesRegex pattern to search for.
targetstringPane target to watch (pane id or session:window.pane). If omitted, uses default pane if set.

No output schema declared.

No examples provided.

tmux_watch_dir_task ~75

Poll a directory (local or via SSH) and complete when new files appear or after max iterations.

NameTypeReqDescription
hoststringSSH host alias (optional).
intervalMsnumberPolling interval ms.
iterationsnumberMax polling iterations.
pathstringDirectory to watch.

No output schema declared.

No examples provided.