关于 Remote SSH Terminal MCP - AI-Powered Linux Server Management
Remote Terminal 是面向 Linux 服务器管理的 MCP 服务,让 Claude 通过 SSH 执行命令,并在浏览器中实时查看完整输出。它结合筛选摘要、文件传输和脚本复用,支持多服务器运维。
主要功能
- 01通过 SSH 执行远程命令
- 02管理多台 Linux 服务器
- 03使用 SFTP 传输文件
- 04批量运行并复用脚本
- 05浏览器终端实时同步
适用场景
- 01检查服务器资源和系统日志
- 02安装软件并排查服务问题
- 03上传配置或下载日志文件
- 04保存并重跑诊断工作流
MCP 相关
该 MCP 服务向 Claude 提供远程服务器管理工具,包括命令执行、服务器配置和批量脚本操作。Claude 获取筛选后的命令结果,浏览器终端显示完整实时输出。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
我们还没有获取到这个服务的安装包或远程地址,请按项目 README 中的说明安装。
工具
本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。
详细介绍
远程终端
通过 MCP 实现 AI 驱动的远程 Linux 服务管理
远程终端让 Claude(AI 助手)能够通过自然的聊天界面,在远程 Linux 服务上执行命令。你可以在浏览器中实时查看完整输出,而 Claude 会收到经过智能筛选、优化了令牌效率的摘要。
🎯 这是什么?
想象一下,你对 Claude 说:
"Install nginx on my server and configure it with SSL"
"Run complete system diagnostics and tell me if anything looks wrong"
"Find all log errors from the last hour and summarize them"
"Save this batch script and run it again next week"
然后 Claude 就会帮你完成——执行命令、分析输出、保存实用脚本,并代你采取行动。
这就是远程终端。
✨ 主要功能
核心功能
- 🖥️ 远程命令执行 - 在 Linux 服务上运行任意 bash 命令
- 🌐 多服务管理 - 轻松切换多个服务
- 📁 文件传输(SFTP) - 通过压缩上传/下载文件和目录
- 📜 批量脚本执行 - 运行多命令脚本,速度提升 10–50 倍
- 📚 批量脚本库 - 保存、浏览并重复使用批量脚本(3.1 版新增)
- 💬 对话跟踪 - 按目标分组命令,并支持回滚
- 🎯 配方系统 - 保存成功的工作流以供重复使用
- 🗄️ 数据库集成 - 使用 SQLite 提供完整审计记录
- 🌍 交互式 Web 终端 - 在浏览器中使用功能齐全的终端(输入、粘贴、滚动历史记录)
- 🔄 多终端同步 - 打开多个终端,所有终端均完美同步
- ✨ Bash 语法高亮 - 在独立 UI 中呈现 VS Code 风格的颜色(3.1 版新增)
交互式 Web 终端
远程终端会在浏览器中的 http://localhost:8080 提供一个完全交互式终端窗口——外观和使用体验都与 WSL、PuTTY 或任何标准终端完全一致:
你可以:
- 直接输入命令(就像在任何终端中一样)
- 复制/粘贴文本(Ctrl+C、Ctrl+V)
- 滚动查看命令历史记录
- 使用方向键浏览历史记录
- 查看保留颜色的实时命令输出
Claude 可以:
- 执行会显示在你终端中的命令
- 即时查看命令结果
- 在你观看时继续工作
**主要优势:**你可以全面了解情况并保持控制。Claude 运行的每条命令都会实时显示在你的终端窗口中。服务器上发生什么,你都能了如指掌——就像和一位助手并肩而坐,对方替你输入命令,而你在一旁看着屏幕。
**多终端支持:**在 http://localhost:8080 打开多个浏览器窗口——它们会通过 WebSocket 广播保持完美同步。在一个终端中输入内容,所有终端都会立即显示。非常适合多显示器设置,或与他人共享你的视图。
⚠️ **最佳实践:**使用完毕后,请关闭不再使用的终端标签页。虽然系统能高效处理多个连接,但保留许多旧标签页可能会消耗不必要的资源,并导致连接问题。
🎬 实际演示
https://github.com/user-attachments/assets/98a6fa41-ec4f-410b-8d4a-a2422d8ac7c9
观看交互式 Web 终端的实际演示——查看 Claude 如何执行命令,同时你仍能全面了解情况并保持控制
双流架构
在幕后,远程终端采用了智能的双流方案:
SSH Output from Remote Server
↓
[Raw Output]
↓
┌────┴────┐
│ │
↓ ↓
[FULL] [FILTERED]
│ │
↓ ↓
Web Terminal Claude
(You see all) (Smart summary)
结果:
- **你:**在交互式终端中全面了解情况并保持控制
- **Claude:**高效工作,节省 95% 的令牌
- **双方:**共享 SSH 会话,状态同步
- 两全其美!
🚀 快速开始
安装
步骤 1:创建安装目录
# Choose a location for your installation (example: C:\RemoteTerminal)
mkdir C:\RemoteTerminal
cd C:\RemoteTerminal
步骤 2:安装软件包
# Create dedicated virtual environment
python -m venv remote-terminal-env
remote-terminal-env\Scripts\activate
pip install remote-terminal-mcp
步骤 3:配置 Claude Desktop
编辑 %APPDATA%\Claude\claude_desktop_config.json:
{
"mcpServers": {
"remote-terminal": {
"command": "C:\\RemoteTerminal\\remote-terminal-env\\Scripts\\remote-terminal-mcp.exe",
"env": {
"REMOTE_TERMINAL_ROOT": "C:\\RemoteTerminal"
}
}
}
}
重要: 将 C:\RemoteTerminal 替换为步骤 1 中的实际安装路径。
步骤 4:首次运行 - 自动设置
重启 Claude Desktop。首次使用时,配置文件会自动复制到 C:\RemoteTerminal:
config.yaml- 默认设置(根据软件包默认值自动创建)hosts.yaml- 服务器列表(根据模板自动创建)
步骤 5:配置服务器
你有两种配置服务器的方式:
选项 A:手动配置(推荐用于配置第一台服务器)
编辑 C:\RemoteTerminal\hosts.yaml:
servers:
- name: My Server
host: 192.168.1.100
user: username
password: your_password
port: 22
description: My development server
tags:
- development
# Optional: Set default server for auto-connect
# Use list_servers to see which server is marked as [DEFAULT]
default_server: My Server
选项 B:AI 辅助配置
让 Claude 帮你添加新服务器:
Claude, add a new server to my configuration:
- Name: Production Server
- Host: 192.168.1.100
- User: admin
- Password: mypassword
- Port: 22
Claude 将使用 add_server 工具自动更新你的 hosts.yaml 文件。
重启 Claude Desktop 并进行测试:
List my configured servers
步骤 6:(可选)运行独立的 Web 界面
cd C:\RemoteTerminal
remote-terminal-env\Scripts\activate
remote-terminal-standalone
访问地址:
📖 文档
适用于各种使用场景的完整指南:
- 快速入门 — 5 分钟内即可运行
- 安装 — 详细的设置说明
- 用户指南 — 完整的功能介绍
- 功能参考 — 所有 MCP 工具的参考说明
- 故障排除 — 常见问题及解决方案
- WebSocket 广播 — 多终端同步详情
- 版本说明 v3.1 — 版本 3.1 的发布说明
💡 使用示例
系统管理
"Check disk space and memory usage"
"What processes are using the most CPU?"
"Is nginx running? If not, start it"
"Show me the last 50 lines of the system log"
软件管理
"Install htop and verify it works"
"Update all packages"
"Check if docker is installed and what version"
故障排除
"Run complete network diagnostics"
"Find all errors in the last hour of logs"
"Check why nginx won't start"
"Analyze disk usage by directory"
文件操作
"Upload my local config.json to /etc/app/"
"Download all log files from /var/log/myapp/"
"List files in /var/log modified today"
"Find all files larger than 100MB"
自动化与脚本管理
"Create a recipe from our successful nginx installation"
"Execute the network diagnostics recipe"
"Start a conversation to configure WiFi"
"List my saved batch scripts"
"Execute script 5"
"Load script 3 for editing"
🎨 会话示例
你:
在我的生产服务器上安装 nginx
Claude:
我将安装 nginx。这将创建一个软件包安装……
交互式终端会自动在 http://localhost:8080 打开
Web 终端实时显示:
$ sudo apt install nginx
Reading package lists... Done
Building dependency tree... Done
[... 500+ lines of installation output ...]
Setting up nginx (1.18.0-0ubuntu1) ...
Created symlink /etc/systemd/system/multi-user.target.wants/nginx.service
Processing triggers for systemd (245.4-4ubuntu3.23) ...
Claude 收到(经过筛选的摘要):
nginx installed successfully in 45s
12 packages installed
Service: nginx.service is active
Claude 回复:
nginx 已成功安装,目前正在运行。该服务处于活动状态。你想让我进行配置,还是显示默认页面?
节省的令牌:96%(15,000 个令牌 → 600 个令牌)
🏗️ 架构
项目结构
remote_terminal/
├── config/ # Default configuration templates
│ ├── config.yaml # Default settings (packaged)
│ └── hosts.yaml.example # Server template (packaged)
├── data/ # SQLite database (user directory)
│ └── remote_terminal.db # Command history, conversations, recipes, scripts
├── docs/ # Documentation
│ ├── DATABASE_SCHEMA.md
│ ├── FEATURE_REFERENCE.md
│ ├── INDEX.md
│ ├── INSTALLATION.md
│ ├── QUICK_START.md
│ ├── RELEASE_NOTES_v3.1.md
│ ├── TROUBLESHOOTING.md
│ ├── USER_GUIDE.md
│ └── WEBSOCKET_BROADCAST.md
├── recipes/ # Example automation recipes
├── src/ # Source code (modular architecture)
│ ├── batch/ # Batch execution system
│ │ ├── batch_executor.py
│ │ ├── batch_helpers.py
│ │ └── batch_parser.py
│ ├── config/ # Configuration management
│ │ ├── config.py
│ │ ├── config_dataclasses.py
│ │ ├── config_init.py
│ │ └── config_loader.py
│ ├── database/ # Database operations (SQLite)
│ │ ├── database_manager.py # Core database manager
│ │ ├── database_batch.py # Batch script storage
│ │ ├── database_batch_execution.py
│ │ ├── database_batch_queries.py
│ │ ├── database_batch_scripts.py
│ │ ├── database_commands.py # Command history
│ │ ├── database_conversations.py
│ │ ├── database_recipes.py # Recipe storage
│ │ └── database_servers.py # Machine identity tracking
│ ├── output/ # Output filtering & formatting
│ │ ├── output_buffer.py
│ │ ├── output_buffer_base.py
│ │ ├── output_buffer_filtered.py
│ │ ├── output_filter.py # Smart filtering (95% token savings)
│ │ ├── output_filter_commands.py
│ │ ├── output_filter_decision.py
│ │ └── output_formatter.py
│ ├── prompt/ # Command completion detection
│ │ ├── prompt_detector.py
│ │ ├── prompt_detector_checks.py
│ │ ├── prompt_detector_pager.py
│ │ └── prompt_detector_patterns.py
│ ├── ssh/ # SSH/SFTP operations
│ │ ├── ssh_manager.py # High-level SSH manager
│ │ ├── ssh_connection.py # Connection lifecycle
│ │ ├── ssh_commands.py # Command execution
│ │ └── ssh_io.py # Input/output streaming
│ ├── state/ # Shared state management
│ │ ├── shared_state_conversation.py
│ │ ├── shared_state_monitor.py
│ │ └── shared_state_transfer.py
│ ├── static/ # Web terminal static assets
│ │ ├── fragments/ # HTML fragments
│ │ ├── vendor/ # xterm.js library
│ │ ├── terminal.css
│ │ ├── terminal.js
│ │ └── transfer-panel.js
│ ├── tools/ # MCP tool modules (modular)
│ │ ├── decorators.py # Tool decorators
│ │ ├── tools_hosts.py # Server management (main)
│ │ ├── tools_hosts_crud.py # Add/remove/update servers
│ │ ├── tools_hosts_select.py # Server selection & connection
│ │ ├── tools_commands.py # Command execution (main)
│ │ ├── tools_commands_database.py
│ │ ├── tools_commands_execution.py
│ │ ├── tools_commands_status.py
│ │ ├── tools_commands_system.py
│ │ ├── tools_conversations.py # Conversation tracking (main)
│ │ ├── tools_conversations_lifecycle.py
│ │ ├── tools_conversations_query.py
│ │ ├── tools_batch.py # Batch script execution (main)
│ │ ├── tools_batch_execution.py
│ │ ├── tools_batch_helpers.py
│ │ ├── tools_batch_management.py
│ │ ├── tools_recipes.py # Recipe automation (main)
│ │ ├── tools_recipes_create.py
│ │ ├── tools_recipes_crud.py
│ │ ├── tools_recipes_execution.py
│ │ ├── tools_recipes_helpers.py
│ │ ├── tools_recipes_modify.py
│ │ ├── tools_recipes_query.py
│ │ ├── tools_sftp.py # File transfer (main)
│ │ ├── tools_sftp_single.py # Single file transfer
│ │ ├── tools_sftp_directory.py # Directory transfer
│ │ ├── tools_sftp_directory_download.py
│ │ ├── tools_sftp_directory_upload.py
│ │ ├── tools_sftp_exceptions.py
│ │ ├── tools_sftp_utils.py
│ │ ├── sftp_compression.py # Compression logic
│ │ ├── sftp_compression_download.py
│ │ ├── sftp_compression_tar.py
│ │ ├── sftp_compression_upload.py
│ │ ├── sftp_decisions.py # Auto/manual compression decisions
│ │ ├── sftp_progress.py # Progress tracking
│ │ ├── sftp_transfer_compressed.py
│ │ ├── sftp_transfer_download.py
│ │ ├── sftp_transfer_scan.py
│ │ ├── sftp_transfer_standard.py
│ │ ├── sftp_transfer_upload.py
│ │ └── tools_info.py # System information
│ ├── utils/ # Utility functions
│ │ ├── utils.py
│ │ ├── utils_format.py
│ │ ├── utils_machine_id.py # Hardware/OS fingerprinting
│ │ ├── utils_output.py
│ │ └── utils_text.py
│ ├── web/ # Web terminal (WebSocket-enabled)
│ │ ├── web_terminal.py # Main web server
│ │ ├── web_terminal_ui.py # UI components
│ │ └── web_terminal_websocket.py # Multi-terminal sync
│ ├── mcp_server.py # MCP server entry point
│ ├── shared_state.py # Global shared state
│ ├── command_state.py # Command registry & tracking
│ ├── hosts_manager.py # Multi-server configuration
│ └── error_check_helper.py # Error detection
└── standalone/ # Standalone web UI (no Claude)
├── static/
│ ├── css/ # Standalone UI styles
│ │ ├── control-forms.css
│ │ ├── control-layout.css
│ │ ├── control-response.css
│ │ └── control-styles.css # Bash syntax highlighting
│ ├── js/ # Standalone UI scripts
│ │ ├── control-forms.js
│ │ ├── control-forms-fields.js
│ │ ├── control-forms-generation.js
│ │ ├── control-forms-utils.js
│ │ ├── control-main.js
│ │ └── control-response.js
│ └── tool-schemas/ # MCP tool schemas
│ ├── batch.json
│ ├── commands.json
│ ├── file-transfer.json
│ ├── servers.json
│ └── workflows.json
├── mcp_control.html # Control panel HTML
├── standalone_mcp.py # Standalone server entry point
├── standalone_mcp_endpoints.py # API endpoints
└── standalone_mcp_startup.py # Initialization & connection
技术栈
- Python 3.9+ - 核心语言
- MCP Protocol - Claude 集成
- Paramiko - SSH/SFTP 库
- NiceGUI + WebSockets - 支持多终端同步的 Web 终端
- SQLite - 用于存储历史记录/配方/脚本的数据库
- FastAPI - Web 框架
🔧 配置
配置文件位置
首次运行时,配置文件会自动复制到你的工作目录:
PyPI 用户:
- 在 Claude Desktop 配置中设置
REMOTE_TERMINAL_ROOT - 首次运行时,文件会自动复制到该目录
- 位置:
%REMOTE_TERMINAL_ROOT%\config.yaml和hosts.yaml - 重新安装或升级时会保留用户数据
安装包附带的默认模板文件:
config/config.yaml- 默认设置模板config/hosts.yaml.example- 服务器配置模板
hosts.yaml
定义你的服务器:
servers:
- name: production
host: 192.168.1.100
user: admin
password: secure_pass
port: 22
description: Production server
tags: production, critical
- name: development
host: 192.168.1.101
user: dev
password: dev_pass
tags: development
default_server: production
🛡️ 安全注意事项
当前状态
hosts.yaml中以纯文本形式存储密码- Web 终端仅绑定到 localhost(未暴露到网络)
- 数据库中保存完整的命令审计记录
- SSH 使用标准安全机制(密码身份验证)
- 用户配置文件存储在软件包之外(重新安装后仍会保留)
📊 性能
令牌效率
冗长命令的平均令牌节省量:
| 命令类型 | 完整输出 | 筛选后 | 节省量 |
|---|---|---|---|
| apt install | ~15,000 | ~600 | 96% |
| ls -la /var | ~8,000 | ~400 | 95% |
| 日志搜索 | ~12,000 | ~500 | 96% |
| find / | ~30,000 | ~800 | 97% |
冗长命令的平均令牌减少率:95-98%
速度提升
批量执行与顺序执行的对比:
- 顺序执行 10 条命令: 5 分钟(10 次往返)
- 批量执行 10 条命令: 30 秒(1 次往返)
- 速度提升:快 10 倍!
🔍 高级功能
批处理脚本库
保存批处理脚本以便重复使用:
1. Run diagnostics → Script auto-saved with deduplication
2. Browse library → "List my batch scripts"
3. Execute saved script → "Execute script 5"
4. Edit existing → "Load script 3 for editing"
5. Track usage → times_used, last_used_at
功能:
- 自动去重,通过 SHA256 哈希实现
- 跟踪使用统计信息
- 提供编辑模式以便修改
- 支持搜索和排序
- 支持两步删除,需要确认
对话跟踪
按目标对相关命令进行分组:
Start conversation: "Configure nginx with SSL"
→ [Execute multiple commands]
→ End conversation: success
→ Create recipe from conversation
优点:
- 命令历史井然有序
- 支持回滚
- 为 AI 提供上下文
- 生成配方
配方系统
保存成功的工作流:
# Recipe: wifi_diagnostics
1. lspci | grep -i network
2. iwconfig
3. ip link show
4. dmesg | grep -i wifi
5. systemctl status NetworkManager
可在任何兼容的服务器上重复使用:
Execute wifi_diagnostics recipe on my new server
机器身份
通过唯一的 machine_id(硬件 + OS 指纹)跟踪每台服务器:
- 按物理机器跟踪命令
- 在兼容系统上执行配方
- 保持审计记录的完整性
- 处理服务器 IP 变更
🐛 已知问题和限制
当前限制
-
专为 Windows 本地机器设计
- 目前针对 Windows 10/11 进行了优化
- 经过修改后可支持 Linux/Mac
-
尚未实现 SSH 密钥支持
- 仅支持密码身份验证
- SSH 密钥可用于手动 SSH 连接,但未集成到 MCP 工具中
-
一次只能使用一台远程服务
- 可以配置多台服务
- 每个会话中只能与一台服务进行主动交互
- 可根据需要在服务之间切换
🤝 贡献
这是 Tim 的个人项目。如果你想参与贡献:
- 在自己的环境中进行全面测试
- 记录发现的任何问题
- 提出改进建议
- 分享你创建的配方和脚本
📜 版本历史
版本 1.3.3(2026 年 6 月)
Web 终端生命周期管理与 Socket 泄漏修复:
- ✅ 修复 select_server 中重复调用 SSH connect() 的问题(修复 Socket 泄漏)
- ✅ 移除 ui.timer 轮询,改用 WebSocket 驱动的标头更新
- ✅ 新增
open_terminalMCP 工具,可按需关闭现有标签页并打开新的终端 - ✅ 首次执行命令时自动打开终端标签页,并显示完整欢迎消息
- ✅ 切换服务时,终端会打印带有新服务名称的视觉分隔线
- ✅ 切换服务时,通过 WebSocket 动态更新标头
- ✅ 切换服务时,自动关闭过期的浏览器标签页(session_superseded)
- ✅ 会话期间关闭标签页时,终端会在重新执行命令时自动重新打开(execute_command 安全保障)
- ✅ 通过注入换行符,在终端重新打开后发送新的提示符
- ✅ 防止在未连接任何服务时打开终端
版本 1.3.2(2026 年 3 月)
通过 SLIM_MODE 减少工具占用:
- ✅ SLIM_MODE 配置选项可从 Claude 的工具列表中隐藏不常用的工具
- ✅ 可在 mcp_server.py 中配置 HIDDEN_TOOLS 列表
- ✅ 使用大量工具时减少上下文窗口占用
- ✅ 隐藏的工具仍可直接调用,只是不显示在列表中
版本 1.3.1(2026 年 2 月)
提示词检测日志全面改进:
- ✅ 生产模式:每条命令仅记录 2 行日志(开始 + 检测到),不再产生数百行日志
- ✅ 调试模式:在 config.yaml 中设置
prompt_detection.debug_logging: true,即可启用完整的详细日志 - ✅ 检测摘要包含:轮询次数、检查行数、最后一条不匹配内容、匹配字符串、总行数
- ✅ 生产模式下仍会记录分页器、sudo 和验证事件(这些事件较少且有意义)
启动时转储配置:
- ✅ 启动时记录完整的 config.yaml(密码会脱敏)
- ✅ 记录主机摘要(服务端数量 + 默认服务端)
- ✅ 简化分布式用户的远程支持和故障排查
自动设置默认服务端:
- ✅ 每次连接成功后自动更新默认服务端
- ✅ 解决“重启后连接到错误服务端”的问题
- ✅ 立即写入 hosts.yaml
修复缓冲区溢出问题:
- ✅ 缓冲区达到 max_lines 后,命令不再返回 [No output]
- ✅ command_start_line 现在会通过偏移校正跟踪绝对位置
- ✅ 滑动窗口 deque 缓冲区在任意填充程度下均可正常工作
版本 1.3.0(2026 年 1 月)
虚拟环境提示符支持:
- ✅ 为所有提示符模式添加 venv 前缀支持
(\(.+\)\s+)? - ✅ 支持 Python venv、Conda、Poetry、Pipenv 等类似工具
- ✅ 修复服务端选择和机器 ID 检测中的 GENERIC_PROMPT 模式
- ✅ 修复 config.yaml 中缺少配置项时未应用模式默认值的问题
- ✅ 修复 pip 安装时的配置文件复制路径
- ✅ 修复 hosts.yaml.example 模板(移除无效的 default 字段)
- ✅ 所有修复均已测试并验证
版本 1.2.1(2024 年 12 月)
独立模块导入修复:
- ✅ 修复独立模块中的 ModuleNotFoundError
- ✅ 为源码和已安装软件包的使用方式添加 try/except 回退导入
代码模块化:
- ✅ 将源码重组为模块化目录结构(batch、config、database、output、prompt、ssh、state、utils、web)
- ✅ 将大型工具模块拆分为更小、更专注的文件
- ✅ 重构后,全部 37 个 MCP 工具均已测试并正常工作
版本 1.2.0(2024 年 12 月)
PyPI 软件包发布:
- ✅ 完整的 PyPI 软件包,采用现代 pyproject.toml 配置
- ✅ 通过 REMOTE_TERMINAL_ROOT 环境变量自动初始化配置
- ✅ 首次运行时自动将配置文件复制到用户目录(升级后仍会保留)
- ✅ 增强 list_servers 工具,添加 [CURRENT] 和 [DEFAULT] 标记
- ✅ 修复默认服务端无法访问时独立模式崩溃的问题
独立版 Web UI — 帮助系统:
- ✅ 为所有 MCP 工具添加帮助按钮(❓),并提供完整文档
- ✅ 帮助弹窗提供完整的使用示例和参数说明
- ✅ 更新所有工具架构:工作流、命令、批处理、服务端、文件传输
- ✅ 优化 CSS,统一按钮颜色(绿色的执行按钮、蓝色的帮助按钮)
配方管理(3 个新工具):
- ✅
delete_recipe— 通过两步确认永久删除 - ✅
create_recipe_from_commands— 无需执行命令即可手动创建配方 - ✅
update_recipe— 原位修改配方(保留 ID 和统计数据) - ✅ 独立版 UI 中以配方下拉选择器替代手动输入 ID
WebSocket 多终端同步:
- ✅ 以 WebSocket 广播架构取代 HTTP 轮询
- ✅ 多个浏览器终端保持完全同步
- ✅ 连接断开时自动重连
版本 1.1.0(2024 年 12 月)
批处理脚本管理(5 个新工具):
- ✅
list_batch_scripts、get_batch_script、save_batch_script、execute_script_content_by_id、delete_batch_script - ✅ 通过 SHA256 内容哈希自动去重
- ✅ 跟踪使用统计数据(times_used、last_used_at)
- ✅ 提供脚本修改的编辑模式
- ✅ 删除前需两步确认
- ✅ 独立版 UI 支持 Bash 语法高亮(VS Code 配色)
- ✅ 工具重命名:
create_diagnostic_script→build_script_from_commands,execute_batch_script→execute_script_content
版本 1.0.0(首次发布 - 2024 年 12 月)
核心功能:
- ✅ 交互式网页终端(输入、粘贴、滚动查看历史记录)
- ✅ 多服务管理,并跟踪机器身份
- ✅ 智能输出筛选(减少 95-98% 的 Token)
- ✅ 批量脚本执行(比顺序执行快 10-50 倍)
- ✅ 对话跟踪,支持回滚
- ✅ 用于工作流自动化的配方系统
- ✅ 支持压缩的 SFTP 文件传输
- ✅ 使用 SQLite 数据库记录完整审计追踪
- ✅ 与 Claude Desktop 完全集成 MCP
- ✅ 双流架构(完整输出发送到浏览器,筛选后的输出发送到 Claude)
📞 支持
如有问题或疑问:
-
查看文档
-
查看日志
- Claude Desktop 日志(帮助 → 显示日志)
-
测试组件
- 使用独立模式(start_standalone.ps1)
- 手动测试 SSH
- 验证数据库(view_db.py)
📄 许可证
本项目仅供 Tim 个人使用。目前尚未开源。
🙏 致谢
- Anthropic - Claude 和 MCP 协议
- Paramiko - SSH 库
- FastAPI - Web 框架
- NiceGUI - 支持 WebSocket 的 UI 组件
准备好让 Claude 管理你的服务了吗?查看 QUICK_START.md,5 分钟即可开始使用!
版本: 1.3.3
最后更新: 2026 年 6 月 3 日
维护者: Tim
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。