MCPHome

Choose documentation 3

latest

Current version

latest
English

Prerelease This site documents an alpha of libtmux. Its structure, URLs and APIs are subject to change.

Edit this page on GitHub

tmux MCP for C#

Install

Choose your client and configuration scope, then run the command or paste the configuration.

$ claude mcp add tmux -- dnx LibTmux.Mcp --prerelease --yes

Runs the server from NuGet without installing it; needs the .NET 10 SDK. Write LibTmux.Mcp@<version> to pin a version.

Config file: ~/.claude.json (this project)

$ claude mcp add tmux --scope user -- dnx LibTmux.Mcp --prerelease --yes

Runs the server from NuGet without installing it; needs the .NET 10 SDK. Write LibTmux.Mcp@<version> to pin a version.

Config file: ~/.claude.json (all projects)

$ claude mcp add tmux --scope project -- dnx LibTmux.Mcp --prerelease --yes

Runs the server from NuGet without installing it; needs the .NET 10 SDK. Write LibTmux.Mcp@<version> to pin a version.

Config file: .mcp.json (in repo, version-controlled)

Build or install the server first:

$ dotnet tool install --global LibTmux.Mcp --prerelease

Then register:

$ claude mcp add tmux -- libtmux-mcp

--prerelease is required: every release so far carries an -alpha tag, and NuGet skips those unless asked.

Config file: ~/.claude.json (this project)

Build or install the server first:

$ dotnet tool install --global LibTmux.Mcp --prerelease

Then register:

$ claude mcp add tmux --scope user -- libtmux-mcp

--prerelease is required: every release so far carries an -alpha tag, and NuGet skips those unless asked.

Config file: ~/.claude.json (all projects)

Build or install the server first:

$ dotnet tool install --global LibTmux.Mcp --prerelease

Then register:

$ claude mcp add tmux --scope project -- libtmux-mcp

--prerelease is required: every release so far carries an -alpha tag, and NuGet skips those unless asked.

Config file: .mcp.json (in repo, version-controlled)

{
    "mcpServers": {
        "tmux": {
            "command": "dnx",
            "args": ["LibTmux.Mcp", "--prerelease", "--yes"]
        }
    }
}

Runs the server from NuGet without installing it; needs the .NET 10 SDK. Write LibTmux.Mcp@<version> to pin a version.

Config file: claude_desktop_config.json

Build or install the server first:

$ dotnet tool install --global LibTmux.Mcp --prerelease

Then use this config:

{
    "mcpServers": {
        "tmux": {
            "command": "libtmux-mcp"
        }
    }
}

--prerelease is required: every release so far carries an -alpha tag, and NuGet skips those unless asked.

Config file: claude_desktop_config.json

$ codex mcp add tmux -- dnx LibTmux.Mcp --prerelease --yes

Runs the server from NuGet without installing it; needs the .NET 10 SDK. Write LibTmux.Mcp@<version> to pin a version.

Config file: ~/.codex/config.toml

Codex's CLI doesn't support project scope yet — paste this into .codex/config.toml at the repo root.

[mcp_servers.tmux]
command = "dnx"
args = ["LibTmux.Mcp", "--prerelease", "--yes"]

Runs the server from NuGet without installing it; needs the .NET 10 SDK. Write LibTmux.Mcp@<version> to pin a version.

Config file: .codex/config.toml (in repo)

Build or install the server first:

$ dotnet tool install --global LibTmux.Mcp --prerelease

Then register:

$ codex mcp add tmux -- libtmux-mcp

--prerelease is required: every release so far carries an -alpha tag, and NuGet skips those unless asked.

Config file: ~/.codex/config.toml

Build or install the server first:

$ dotnet tool install --global LibTmux.Mcp --prerelease

Then register:

Codex's CLI doesn't support project scope yet — paste this into .codex/config.toml at the repo root.

[mcp_servers.tmux]
command = "libtmux-mcp"

--prerelease is required: every release so far carries an -alpha tag, and NuGet skips those unless asked.

Config file: .codex/config.toml (in repo)

$ gemini mcp add --scope user tmux dnx -- LibTmux.Mcp --prerelease --yes

Runs the server from NuGet without installing it; needs the .NET 10 SDK. Write LibTmux.Mcp@<version> to pin a version.

Config file: ~/.gemini/settings.json

$ gemini mcp add --scope project tmux dnx -- LibTmux.Mcp --prerelease --yes

Runs the server from NuGet without installing it; needs the .NET 10 SDK. Write LibTmux.Mcp@<version> to pin a version.

Config file: .gemini/settings.json (in repo)

Build or install the server first:

$ dotnet tool install --global LibTmux.Mcp --prerelease

Then register:

$ gemini mcp add --scope user tmux libtmux-mcp

--prerelease is required: every release so far carries an -alpha tag, and NuGet skips those unless asked.

Config file: ~/.gemini/settings.json

Build or install the server first:

$ dotnet tool install --global LibTmux.Mcp --prerelease

Then register:

$ gemini mcp add --scope project tmux libtmux-mcp

--prerelease is required: every release so far carries an -alpha tag, and NuGet skips those unless asked.

Config file: .gemini/settings.json (in repo)

{
    "mcpServers": {
        "tmux": {
            "command": "dnx",
            "args": ["LibTmux.Mcp", "--prerelease", "--yes"]
        }
    }
}

Runs the server from NuGet without installing it; needs the .NET 10 SDK. Write LibTmux.Mcp@<version> to pin a version.

Config file: .cursor/mcp.json (in repo)

{
    "mcpServers": {
        "tmux": {
            "command": "dnx",
            "args": ["LibTmux.Mcp", "--prerelease", "--yes"]
        }
    }
}

Runs the server from NuGet without installing it; needs the .NET 10 SDK. Write LibTmux.Mcp@<version> to pin a version.

Config file: ~/.cursor/mcp.json

Build or install the server first:

$ dotnet tool install --global LibTmux.Mcp --prerelease

Then use this config:

{
    "mcpServers": {
        "tmux": {
            "command": "libtmux-mcp"
        }
    }
}

--prerelease is required: every release so far carries an -alpha tag, and NuGet skips those unless asked.

Config file: .cursor/mcp.json (in repo)

Build or install the server first:

$ dotnet tool install --global LibTmux.Mcp --prerelease

Then use this config:

{
    "mcpServers": {
        "tmux": {
            "command": "libtmux-mcp"
        }
    }
}

--prerelease is required: every release so far carries an -alpha tag, and NuGet skips those unless asked.

Config file: ~/.cursor/mcp.json

$ grok mcp add --scope user tmux -- dnx LibTmux.Mcp --prerelease --yes

Runs the server from NuGet without installing it; needs the .NET 10 SDK. Write LibTmux.Mcp@<version> to pin a version.

Config file: ~/.grok/config.toml

$ grok mcp add --scope project tmux -- dnx LibTmux.Mcp --prerelease --yes

Runs the server from NuGet without installing it; needs the .NET 10 SDK. Write LibTmux.Mcp@<version> to pin a version.

Config file: ./.grok/config.toml (in repo)

Build or install the server first:

$ dotnet tool install --global LibTmux.Mcp --prerelease

Then register:

$ grok mcp add --scope user tmux -- libtmux-mcp

--prerelease is required: every release so far carries an -alpha tag, and NuGet skips those unless asked.

Config file: ~/.grok/config.toml

Build or install the server first:

$ dotnet tool install --global LibTmux.Mcp --prerelease

Then register:

$ grok mcp add --scope project tmux -- libtmux-mcp

--prerelease is required: every release so far carries an -alpha tag, and NuGet skips those unless asked.

Config file: ./.grok/config.toml (in repo)

{
    "mcpServers": {
        "tmux": {
            "command": "dnx",
            "args": ["LibTmux.Mcp", "--prerelease", "--yes"]
        }
    }
}

Runs the server from NuGet without installing it; needs the .NET 10 SDK. Write LibTmux.Mcp@<version> to pin a version.

Config file: ~/.gemini/config/mcp_config.json

Build or install the server first:

$ dotnet tool install --global LibTmux.Mcp --prerelease

Then use this config:

{
    "mcpServers": {
        "tmux": {
            "command": "libtmux-mcp"
        }
    }
}

--prerelease is required: every release so far carries an -alpha tag, and NuGet skips those unless asked.

Config file: ~/.gemini/config/mcp_config.json

$ opencode mcp add tmux -- dnx LibTmux.Mcp --prerelease --yes

Runs the server from NuGet without installing it; needs the .NET 10 SDK. Write LibTmux.Mcp@<version> to pin a version.

Config file: ~/.config/opencode/opencode.jsonc

Build or install the server first:

$ dotnet tool install --global LibTmux.Mcp --prerelease

Then register:

$ opencode mcp add tmux -- libtmux-mcp

--prerelease is required: every release so far carries an -alpha tag, and NuGet skips those unless asked.

Config file: ~/.config/opencode/opencode.jsonc

LibTmux.Mcp is a .NET tool package whose executable is libtmux-mcp. It serves tmux tools and a static capability resource over standard input and output.

The tool targets .NET 8 and .NET 10 and requires a POSIX host with tmux. Its registered operations include capture_pane, run_shell_command, and capture_since.

Toolsets

Use LIBTMUX_TOOLSETS=inspect for discovery and terminal reads. Additional toolsets enable changes, execution, and teardown. The tool-selection topic explains exact-name filters, defaults, and the capability resource. The complete examples include project files and cleanup for their owned tmux servers.

Workspace Manager is the separately packaged LibTmux.Workspace library. The MCP catalog does not include a workspace-file operation.

Package contract.

Esc

Type to search.