MCP SSH Tools Server
# MCP SSH 工具服务器
一个基于MCP框架的SSH工具服务器,提供远程服务器管理功能。
## 功能特性
- 支持多服务器配置管理
- 提供SSH连接池管理
- 支持文件上传/下载(包括递归目录操作)
- 支持远程命令执行
- 可通过环境变量或代码配置服务器
## 安装
1. 使用uv安装Python 3.13+:
```bash
uv pip install --python=3.13
```
2. 安装项目依赖:
```bash
uv pip install "mcp[cli]"
uv pip install requests paramiko
```
3. (可选) 使用uv创建虚拟环境:
```bash
uv venv .venv
source .venv/bin/activate # Linux/Mac
.venv\Scripts\activate # Windows
```
4. 下载代码:
```bash
git clone https://github.com/nwnusun-cool/mcp-server-ssh-tools.git
```
## 配置
使用json文件配置服务器,示例:
```
{
"mcpServers": {
"ssh_sun": {
"command": "uv",
"args": [
"--directory",
"F:\\仓库\\产品\\mcp-server-ssh-tools",
"run",
"main.py"
],
"env": {
"SSH_IP": "192.168.2.127",
"SSH_USER": "root",
"SSH_PASSWORD": "123456",
"SSH_PORT": "22"
}
}
}
}
```
## 使用
## API接口
- `execute`: 执行远程命令
- `download_file`: 下载远程文件/目录
- `upload_file`: 上传本地文件/目录
- `list_directory`: 列出远程目录内容
- `test_connection`: 测试服务器连接
## 依赖
- mcp[cli]>=1.10.1
- paramiko>=3.5.1
- pyyaml>=6.0.2
- requests>=2.32.4
## 开发
```bash
# 安装开发依赖
pip install -e ".[dev]"
# 运行测试
pytest
```
## 许可证
MITTDQS
Scored across 7 tools
Each tool has a clearly distinct purpose with no overlap: add_server_config manages server configurations, list_servers enumerates them, test_connection checks connectivity, execute runs commands, list_directory browses files, and upload_file/download_file handle file transfers. The descriptions reinforce these distinct roles, making tool selection unambiguous.
All tools follow a consistent verb_noun or verb_noun_noun pattern (e.g., add_server_config, list_directory, upload_file). The naming is uniform across the set, using snake_case throughout with clear, descriptive terms that align with their functions.
With 7 tools, the count is well-scoped for an SSH management server. It covers essential operations like server configuration, connection testing, command execution, file management, and directory listing, without being overly sparse or bloated.
The tool set provides strong coverage for core SSH workflows, including CRUD-like operations for server configs, file transfers, and remote execution. A minor gap is the lack of tools for deleting or modifying server configurations, which agents might need to work around, but the surface is largely complete for the domain.