
Remote Terminal Cursor
STDIORemote terminal MCP for Cursor that manages connections to remote servers via SSH and Docker.
Remote terminal MCP for Cursor that manages connections to remote servers via SSH and Docker.
🚀 一个专为Cursor设计的远程终端MCP工具,让你在Cursor中轻松管理和连接远程服务器,支持SSH直连、跳板机中继、Docker容器等多种连接方式。
在Cursor中,打开设置并编辑MCP配置文件(.cursor/mcp.json
):
{ "mcpServers": { "remote-terminal": { "command": "npx", "args": ["@xuyehua/remote-terminal-mcp"], "env": { "NODE_ENV": "production" } } } }
💡 提示:使用
npx
会自动下载最新版本,无需手动安装NPM包。如果你偏好手动管理,也可以先运行npm install -g @xuyehua/remote-terminal-mcp
然后将command
改为包的绝对路径。
配置完成后,你需要让MCP服务生效:
配置生效后,你就可以开始使用了!
在Cursor中询问AI:
请帮我查看当前配置的远程服务器列表
AI会使用list_servers
工具显示所有配置的服务器。
在Cursor中说:
我想新增一个远程服务器
AI会启动交互式配置向导,引导你完成服务器配置:
在Cursor中请求:
请帮我连接到服务器 my-server
AI会使用connect_server
工具建立连接。
连接后,你可以说:
在服务器上执行 ls -la 命令
AI会使用execute_command
工具执行命令并返回结果。
请删除名为 old-server 的服务器配置
AI会使用管理工具安全删除服务器配置。
在Cursor中直接说:
我想新增一个远程服务器
AI会自动启动配置向导,无需手动运行命令。向导包括:
servers: my-server: type: ssh host: 192.168.1.100 user: ubuntu port: 22 auth_method: key # 或 password
跳板机中继支持一级跳板和二级跳板两种模式,适用于复杂的网络环境。
通过单个跳板机连接目标服务器:
servers: relay-server: type: relay host: target-server.com user: ubuntu jumphost: jumphost.com jumphost_user: admin # 可选配置 port: 22 jumphost_port: 22 auth_method: key # 或 password
通过两级跳板机连接目标服务器(跳板机→二级跳板机→目标服务器):
servers: relay-server: type: relay host: target-server.com user: ubuntu # 一级跳板机配置 jumphost: jumphost.com jumphost_user: admin # 二级跳板机配置 specs: connection: jump_host: host: jumphost.com username: admin port: 22 secondary_jump: host: secondary-jumphost.com username: root port: 22 target: host: target-server.com username: ubuntu port: 22 tool: relay-cli
参数 | 说明 | 示例 |
---|---|---|
jumphost | 一级跳板机地址 | jumphost.com |
jumphost_user | 一级跳板机用户名 | admin |
secondary_jump.host | 二级跳板机地址 | secondary-jumphost.com |
secondary_jump.username | 二级跳板机用户名 | root |
target.host | 最终目标服务器地址 | target-server.com |
target.username | 目标服务器用户名 | ubuntu |
tool | 连接工具类型 | relay-cli |
跳板机连接通过建立多级SSH隧道来实现安全的远程访问:
本地 → 一级跳板机 → 二级跳板机 → 目标服务器
连接流程:
适用场景:
servers: docker-server: type: ssh host: 192.168.1.100 user: ubuntu docker: container_name: my-container image: ubuntu:20.04 ports: ["8080:80"]
工具名称 | 功能描述 | Cursor使用示例 |
---|---|---|
list_servers | 列出所有服务器 | "显示所有远程服务器" |
connect_server | 连接到服务器 | "连接到production服务器" |
execute_command | 执行远程命令 | "在服务器上运行docker ps" |
get_server_status | 查看连接状态 | "检查服务器连接状态" |
run_local_command | 执行本地命令 | "在本地运行ls命令" |
工具名称 | 功能描述 | Cursor使用示例 |
---|---|---|
interactive_config_wizard | 交互式配置 | "我想新增一个远程服务器" |
manage_server_config | 管理服务器配置 | "删除test-server配置" |
create_server_config | 创建服务器配置 | "创建一个Docker服务器配置" |
diagnose_connection | 诊断连接问题 | "诊断服务器连接问题" |
用户:我想新增一个开发服务器
AI:我来启动配置向导帮你设置...
[启动交互式配置向导]
- 请输入服务器名称...
- 请输入服务器IP地址...
- 请输入用户名...
- 选择认证方式:SSH密钥 / 密码
- 是否需要Docker支持?
[配置完成,自动测试连接]
用户:我想新增一个通过跳板机连接的服务器
AI:我来启动配置向导帮你设置跳板机连接...
[启动交互式配置向导]
- 请输入服务器名称:production-server
- 选择连接方式:Relay跳板机连接
- 请输入目标服务器地址:target-server.com
- 请输入目标服务器用户名:ubuntu
- 请输入跳板机地址:jumphost.com
- 请输入跳板机用户名:admin
- 是否需要二级跳板机?选择:是
[二级跳板机配置]
- 请输入二级跳板机地址:secondary-jumphost.com
- 请输入二级跳板机用户名:root
[配置完成,自动测试连接]
用户:我想新增一个GPU训练服务器
AI:启动配置向导...
[配置向导询问]
- 请输入服务器信息...
- 是否需要Docker支持?选择:是
[Docker环境配置向导]
- 选择基础镜像:Ubuntu 20.04 / PyTorch官方镜像
- GPU支持:是否启用NVIDIA GPU
- 端口映射:Jupyter (8888), TensorBoard (6006)
- 挂载目录:代码目录、数据目录
[创建并启动容器]
用户:检查所有生产服务器的CPU使用情况
AI:我来检查所有生产服务器的系统状态...
# 如果使用npx方式,通常无需手动安装 # 如果需要检查全局安装的包 npm list -g @xuyehua/remote-terminal-mcp # 清除缓存并重新获取(npx方式) npx clear-npx-cache # 或者手动重新安装 npm uninstall -g @xuyehua/remote-terminal-mcp npm install -g @xuyehua/remote-terminal-mcp
在Cursor中说:
请诊断服务器连接问题
# 查看配置文件位置 ls -la ~/.remote-terminal-mcp/ # 重置配置(在Cursor中说) "请帮我重置远程服务器配置" # 或者手动重置 rm -rf ~/.remote-terminal-mcp/
启用详细日志:
{ "mcpServers": { "remote-terminal": { "command": "npx", "args": ["@xuyehua/remote-terminal-mcp"], "env": { "NODE_ENV": "development", "DEBUG": "true" } } } }
欢迎提交Issue和Pull Request!
git clone https://github.com/maricoxu/remote-terminal-mcp.git cd remote-terminal-mcp npm install
npm test
MIT License - 详见 LICENSE 文件
💡 提示:这个工具专为Cursor设计,通过AI助手的自然语言交互,让远程服务器管理变得简单直观。开始使用时,只需要告诉AI你想做什么,它会自动选择合适的工具来完成任务!