Server data from the Official MCP Registry
MCP Server for iTerminal SSH Connection Manager - Control SSH servers through Claude.
About
MCP Server for iTerminal SSH Connection Manager - Control SSH servers through Claude.
Security Report
Valid MCP server (2 strong, 4 medium validity signals). No known CVEs in dependencies. ⚠️ Package registry links to a different repository than scanned source. Imported from the Official MCP Registry. 1 finding(s) downgraded by scanner intelligence.
6 files analyzed · 1 issue found
Security scores are indicators to help you make informed decisions, not guarantees. Always review permissions before connecting any MCP server.
Permissions Required
This plugin requests these system permissions. Most are normal for its category.
How to Install
Add this to your MCP configuration file:
{
"mcpServers": {
"io-github-itophua-iterminal": {
"args": [
"-y",
"iterminal-mcp-server"
],
"command": "npx"
}
}
}Documentation
View on GitHubFrom the project's GitHub README.
iTerminal - SSH 连接管理器
一款基于 Tauri 2 + React 构建的现代化 SSH 连接管理工具,专注于提供高效的 SSH 连接管理和终端操作体验。
项目介绍
背景
iTerminal 是一款类似于 XTerminal 的 SSH 连接管理工具,旨在帮助开发者和运维人员更便捷地管理多台服务器。
技术栈
| 技术 | 版本 | 说明 |
|---|---|---|
| Tauri | 2.x | 跨平台桌面应用框架 |
| React | 19.x | 前端 UI 框架 |
| TypeScript | 5.x | 类型安全的 JavaScript |
| Vite | 7.x | 下一代前端构建工具 |
| Ant Design | 6.x | 企业级 UI 组件库 |
| xterm.js | 6.x | 终端模拟器 |
| Zustand | 5.x | 轻量级状态管理 |
| Rust | 1.75+ | 后端 SSH 实现 |
| russh | 0.50 | Rust SSH 客户端库 |
| russh-sftp | 2.1 | Rust SFTP 客户端库 |
核心特性
- 🚀 轻量高效 - 基于 Tauri,内存占用低,启动速度快
- 🔐 安全可靠 - AES-256-GCM 加密存储连接信息,支持 SSH 密钥认证,自动密码迁移
- 🖥️ 多标签管理 - 支持同时打开多个 SSH 会话
- 📐 终端分屏 - 支持水平/垂直分屏,嵌套分屏,可拖拽调整大小
- 🔍 终端搜索 - 支持终端内容全文搜索
- ⌨️ 快捷键系统 - 丰富的快捷键支持,可自定义
- 📁 文件管理 - SFTP 文件浏览、上传下载、拖拽上传、文件搜索、压缩解压、文件预览/编辑
- 📊 系统监控 - 实时 CPU、内存、磁盘监控面板,进程管理
- 🤖 MCP 支持 - 内置 MCP 服务器,支持 AI 助手集成
- 🪟 多窗口支持 - 拖拽连接到边缘创建新窗口,完整终端功能复用
- 📋 中文支持 - 完整的中文界面和右键菜单
- 🌍 跨平台 - 支持 Windows、macOS、Linux
目标用户
- 开发者
- 系统运维工程师
- DevOps 工程师
- 需要管理多台服务器的技术人员
应用图片
安装与打包
环境要求
通用要求
- Node.js >= 18.x
- Rust >= 1.75
- npm 或 pnpm
Windows
- Microsoft Visual Studio Build Tools(选择 "Desktop development with C++")
- WebView2 Runtime(Windows 10/11 通常已内置)
macOS
- Xcode Command Line Tools:
xcode-select --install
Linux (Ubuntu/Debian)
sudo apt update
sudo apt install -y libgtk-3-dev libwebkit2gtk-4.1-dev libayatana-appindicator3-dev librsvg2-dev
开发环境搭建
# 1. 克隆项目
git clone <repository-url>
cd iTerminal
# 2. 安装依赖
npm install
# 3. 启动开发模式
npm run tauri dev
生产环境打包
# 构建并打包应用
npm run tauri build
打包输出
构建完成后,安装包位于 src-tauri/target/release/bundle/ 目录:
| 平台 | 输出格式 | 文件位置 |
|---|---|---|
| Windows | .msi / .exe | bundle/msi/ bundle/nsis/ |
| macOS | .dmg / .app | bundle/dmg/ bundle/macos/ |
| Linux | .deb / .AppImage | bundle/deb/ bundle/appimage/ |
功能介绍
1. 连接管理
1.1 连接列表
- 卡片式展示所有 SSH 连接
- 分组管理(自定义分组)
- 标签分类
- 实时显示连接状态(在线/离线)
- 支持按名称、IP、标签搜索筛选
- 连接排序、批量管理
1.2 连接操作
| 操作 | 说明 |
|---|---|
| 新建连接 | 创建新的 SSH 连接配置 |
| 编辑连接 | 修改现有连接信息 |
| 删除连接 | 删除单个连接 |
| 复制连接 | 快速复制现有配置创建新连接 |
| 连接测试 | 测试 SSH 连通性和认证 |
| 快速连接 | 一键打开 SSH 终端 |
| 导入/导出 | JSON 格式批量导入导出连接 |
| 复制 IP | 一键复制服务器 IP 地址 |
1.3 连接状态
- 在线 - 端口可达(绿色指示灯)
- 离线 - 端口不可达(灰色指示灯)
- 连接中 - 正在建立连接(蓝色指示灯)
💡 启动后自动检测所有连接状态,定期刷新。
1.4 连接配置
基本配置:
- 连接名称
- 分组
- 标签
- 主机名/IP 地址
- 端口(默认 22)
- 用户名
认证方式:
- 密码认证
- SSH 密钥认证(支持 OpenSSH 和 PEM 格式)
2. SSH 终端
2.1 多标签管理
- 支持同时打开多个 SSH 会话
- 连接级别标签页(每个连接可创建多个会话)
- 标签页显示服务器名称/IP
- 会话状态标识
2.2 终端分屏
- 支持水平/垂直分屏
- 可拖拽调整分屏大小
- 每个分屏独立会话管理
- 拖拽会话标签创建新分屏
2.3 终端功能
| 功能 | 快捷键/操作 |
|---|---|
| 终端模拟 | 完整的 xterm.js 终端 |
| 彩色输出 | 支持 ANSI 颜色 |
| 复制 | 工具栏按钮 / 右键菜单 / CmdOrCtrl+Shift+C |
| 粘贴 | 右键菜单 / CmdOrCtrl+Shift+V |
| 全选 | 右键菜单 |
| 搜索 | 工具栏搜索按钮 / CmdOrCtrl+F |
| 全屏 | 工具栏全屏按钮 |
| 分屏 | CmdOrCtrl+D 水平 / CmdOrCtrl+Shift+D 垂直 |
| 新建会话 | CmdOrCtrl+T |
| 关闭会话 | CmdOrCtrl+W |
2.4 工具栏
悬浮工具栏提供快捷操作:
- 📋 复制 - 复制选中的终端内容
- 🔍 搜索 - 打开搜索栏,搜索终端内容
- 🖥️ 全屏 - 窗口最大化并收起侧边栏
- 📊 系统监控 - 打开实时监控面板
- 📁 文件管理 - 打开 SFTP 文件管理面板
- ➖ 收起 - 收起工具栏为小球形态
2.5 多窗口支持
- 拖拽连接标签到窗口边缘创建新窗口
- 新窗口保留完整终端功能
- 终端会话自动恢复到新窗口
- 窗口位置自动记忆
3. 文件管理
3.1 文件浏览
- SFTP 协议远程文件浏览
- 树形/列表双视图切换
- 路径输入框快速跳转
- 显示/隐藏隐藏文件
- 文件大小显示
- 拖拽上传到指定目录
3.2 文件操作
| 操作 | 说明 |
|---|---|
| 新建文件 | 创建空文件 |
| 新建文件夹 | 创建目录 |
| 重命名 | 修改文件/文件夹名称 |
| 删除 | 删除文件或目录 |
| 修改权限 | chmod 权限设置 |
| 压缩 | 远程 tar.gz 压缩 |
| 解压 | 支持 tar.gz/zip/gz 等格式 |
| 文件搜索 | 远程文件搜索 |
| 文件预览 | 文本文件预览 |
| 文件编辑 | 在线编辑远程文件 |
| 复制文件名 | 复制选中文件名 |
| 复制路径 | 复制完整路径 |
3.3 文件传输
- 上传文件 - 支持多文件选择上传
- 上传文件夹 - 整个文件夹上传
- 拖拽上传 - 直接拖拽文件到面板上传
- 下载文件 - 选择保存位置下载
- 传输进度 - 实时显示传输进度
- 暂停/恢复 - 支持传输暂停和恢复
4. 系统监控
4.1 监控面板
实时显示服务器状态,自动刷新:
系统信息:
- 主机名
- 操作系统
- 内核版本
- 运行时间
CPU 监控:
- 总体使用率
- 各核心使用率(可视化)
- 核心数量
- 负载均值
内存监控:
- 内存使用率(可视化)
- 已用/总量/可用
- Swap 使用情况
磁盘监控:
- 各挂载点使用率
- 已用/总量/可用空间
- 使用率百分比
进程管理:
- 进程列表(按内存排序)
- 进程终止
4.2 状态指示
- 🟢 绿色 - 使用率 < 70%
- 🟡 黄色 - 使用率 70% - 90%
- 🔴 红色 - 使用率 > 90%
5. MCP 服务器
内置 MCP (Model Context Protocol) 服务器,支持 AI 助手集成:
- 通过 HTTP API 控制 SSH 连接
- 支持命令执行、文件操作、系统监控
- 可与 Claude 等 AI 助手集成
项目结构
iTerminal/
├── src/ # React 前端
│ ├── main.tsx # 应用入口
│ ├── App.tsx # 路由 + 布局
│ ├── components/ # 公共组件
│ │ ├── Sidebar.tsx # 侧边栏
│ │ ├── FileManagerPanel.tsx # 文件管理面板
│ │ ├── MonitorPanel.tsx # 系统监控面板
│ │ ├── SettingsPanel.tsx # 设置面板
│ │ └── fileManager/ # 文件管理子模块
│ ├── pages/ # 页面组件
│ │ ├── Terminal.tsx # 终端页面
│ │ ├── TerminalWindow.tsx # 新窗口终端
│ │ ├── Connections.tsx # 连接管理
│ │ └── Transfers.tsx # 传输管理
│ ├── stores/ # Zustand 状态管理
│ │ ├── terminalStore.ts # 连接/会话状态
│ │ └── transferStore.ts # 传输记录状态
│ ├── services/ # 服务层
│ │ ├── database.ts # 数据库服务
│ │ └── sftp.ts # SFTP 服务
│ ├── utils/ # 工具函数
│ │ ├── paneUtils.ts # 分屏工具
│ │ └── TerminalManager.ts # 终端管理
│ └── styles/ # 全局样式
│ └── global.css # xterm.js 样式覆盖
├── src-tauri/ # Rust 后端
│ ├── src/
│ │ ├── main.rs # Tauri 入口
│ │ ├── lib.rs # 模块声明
│ │ ├── db/ # 数据库
│ │ │ ├── schema.sql # 数据库结构
│ │ │ └── crypto.rs # 加密模块
│ │ └── commands/ # Tauri 命令
│ │ ├── ssh.rs # SSH 操作
│ │ ├── sftp.rs # SFTP 文件传输
│ │ ├── db.rs # 数据库操作
│ │ ├── api.rs # HTTP API 服务器
│ │ └── window.rs # 窗口管理
│ ├── Cargo.toml # Rust 依赖
│ ├── tauri.conf.json # Tauri 配置
│ └── capabilities/ # 权限配置
├── mcp/ # MCP 服务器
│ └── src/index.ts # MCP 工具定义
├── package.json # npm 依赖
├── vite.config.ts # Vite 配置
└── tsconfig.json # TypeScript 配置
安全注意事项
| 风险项 | 当前状态 | 建议 |
|---|---|---|
| 密码存储 | AES-256-GCM 加密存储 | 安全 |
| 主机密钥验证 | 已跳过 | 后续版本将支持 known_hosts |
| 密钥认证 | 已实现 | 推荐使用密钥认证 |
| 会话超时 | 无自动锁定 | 手动断开不使用的连接 |
常见问题
Q: 无法连接服务器?
- 检查网络连通性
- 确认 SSH 服务已启动
- 验证用户名和密码/密钥
- 检查防火墙设置
Q: Windows 打包失败?
- 确保已安装 Visual Studio Build Tools
- 选择 "Desktop development with C++" 工作负载
- 安装 WebView2 Runtime
Q: macOS 提示无法打开?
- 系统偏好设置 → 安全性与隐私
- 点击「仍要打开」
- 或使用命令:
xattr -cr iTerminal.app
Q: 终端显示乱码?
- 检查服务器 locale 设置
- 确保终端字体支持 UTF-8
- 尝试调整终端字体
开发计划
已完成功能
- SSH 连接管理
- 多会话终端
- 终端搜索功能
- SFTP 文件管理
- 文件上传/下载
- 拖拽上传
- 系统监控面板
- 远程文件压缩/解压
- 密钥认证
- 密码加密存储
- 连接导入/导出
- 断线自动重连
- 快捷键系统
- 分屏终端
- 终端主题配置
- 文件预览/编辑
- 文件搜索
- 传输暂停/恢复
- MCP 服务器
- 多窗口支持
计划功能
- 文件夹下载
- 断点续传
- 进程管理增强
- Docker 管理
- 主题切换
- 多语言支持
- 命令片段/Snippets
贡献指南
欢迎提交 Issue 和 Pull Request!
- Fork 项目
- 创建功能分支 (
git checkout -b feature/AmazingFeature) - 提交更改 (
git commit -m 'Add some AmazingFeature') - 推送到分支 (
git push origin feature/AmazingFeature) - 创建 Pull Request
Reviews
No reviews yet
Be the first to review this server!
More Developer Tools MCP Servers
Git
Freeby Modelcontextprotocol · Developer Tools
Read, search, and manipulate Git repositories programmatically
Toleno
Freeby Toleno · Developer Tools
Toleno Network MCP Server — Manage your Toleno mining account with Claude AI using natural language.
mcp-creator-python
Freeby mcp-marketplace · Developer Tools
Create, build, and publish Python MCP servers to PyPI — conversationally.
MarkItDown
Freeby Microsoft · Content & Media
Convert files (PDF, Word, Excel, images, audio) to Markdown for LLM consumption
MCP Marketplace
Freeby mcp-marketplace · Developer Tools
Search and install MCP servers from inside your AI client.
FinAgent
Freeby mcp-marketplace · Finance
Free stock data and market news for any MCP-compatible AI assistant.
