使用说明
Tmux MCP服务器
一种MCP(模型上下文协议)服务器,提供对tmux终端会话的编程控制。使Claude(或其他MCP客户端)能够创建、管理tmux会话并与之交互,以实现SSH访问、命令执行和终端自动化。
特性
- 创建和管理tmux会话
- 向会话发送命令
- 捕获窗格输出
- 拆分窗口和管理窗格
- 通过MCP工具完全控制终端会话
安装
先决条件
- Node.js(v16或更高版本)
- tmux已安装在您的系统上
- 对于Windows:安装了tmux的WSL2
设置
- 克隆或下载此存储库
- 安装依赖项:
npm install
- 使服务器可执行:
chmod +x src/index.js
配置
将服务器添加到Claude Desktop配置文件中:
macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
视窗: %APPDATA%\Claude\claude_desktop_config.json
{
"mcpServers": {
"tmux": {
"command": "node",
"args": ["/absolute/path/to/tmux-mcp-server/src/index.js"]
}
}
}
对于Windows上的WSL2,您可以使用 wsl 要运行服务器,请执行以下操作:
{
"mcpServers": {
"tmux": {
"command": "wsl",
"args": ["node", "/home/username/tmux-mcp-server/src/index.js"]
}
}
}
更新配置后重新启动Claude Desktop。
可用工具
tmux_create_session
创建新的tmux会话。
session_name(可选):会话名称start_directory(可选):起始目录
tmux_list_sessions
列出所有活动的tmux会话及其详细信息。
tmux_send_keys
向会话发送按键/命令。
session_name(必填):目标会话名称keys(必填):要发送的密钥或命令literal(可选):如果为true,则不附加Enter
tmux_capture_pane
捕获窗格的可见内容。
session_name(必填):目标会话名称pane_index(可选):窗格索引(默认值:“0”)lines(可选):从滚动开始的行数(全部为-1)
tmux_kill_session
终止tmux会话。
session_name(必填):杀死会话
tmux_split_indow
拆分窗口以创建新窗格。
session_name(必填):目标会话名称vertical(可选):如果为真,则垂直拆分(并排)
tmux_select_pane
在会话中选择特定窗格。
session_name(必填):目标会话名称pane_index(必需):要选择的窗格索引
tmux_list_panes
列出会话中的所有窗格及其详细信息。
session_name(必填):目标会话名称
用法示例
SSH到CML控制台服务器
Claude: Create a tmux session named "cml-console"
Claude: Send SSH command to connect to CML console server
Claude: Capture pane to see login prompt
Claude: Send credentials
Claude: Send "open router1" to access device console
Claude: Capture pane to see device output
Claude: Send configuration commands
监控多个设备
Claude: Create session "monitoring"
Claude: Split window vertically
Claude: Select pane 0, SSH to device1
Claude: Select pane 1, SSH to device2
Claude: Capture both panes to see simultaneous output
用例
- CML设备访问:SSH到CML控制台服务器和访问节点控制台
- 配置管理:向网络设备发送命令并捕获输出
- 故障排除:网络问题的交互式调试
- 自动化:编写复杂的终端工作流脚本
- 测试:CLI应用程序的自动测试
- 监控:同时观看多个终端会话
故障排除
会话未出现
确保tmux已安装并可在PATH中访问:
which tmux
tmux -V
WSL2连接问题
确保您可以从WSL2运行tmux:
wsl tmux new-session -d -s test
wsl tmux list-sessions
wsl tmux kill-session -t test
命令未执行
检查会话是否存在:
tmux list-sessions
许可证
麻省理工学院
