Token导航 LogoToken导航TokenDH.com
linuxssh MCP logo
安全风控stdio官方级别未说明来源级核验

linuxssh MCP

MCP Server

基于MCP协议的Linux SSH远程运维工具集,支持命令执行、文件传输、目录管理和交互式会话等功能。

工具数

14

提示词数

0

GitHub Stars

1

资源数

0
PythonClaude安全Claude DesktopClaude

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

wutian122

提供方

wutian122

最后核验

2026/5/17 20:53

运行时

Python

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

命令预览

python -m venv .venv

详细介绍

Linux SSH MCP 远程命令执行工具

基于 MCP (Model Context Protocol) 的 Linux SSH 远程运维工具集,支持命令执行、文件传输、目录管理、交互式会话等功能。

功能特性

功能模块描述
SSH连接池每主机最大5并发,连接复用,后台清理空闲连接,请求合并防惊群
安全校验黑名单拦截(rm -rf /、mkfs等)、危险命令警告、可扩展白名单
异常体系6级结构化异常层次,统一 to_error_dict() 序列化
类型安全TypedDict 强类型返回值,mypy strict 模式
缓存系统TTL+LRU,静态/动态分层,最大128条
命令执行单命令/批量/脚本执行,危险命令拦截与警告
Token优化全量/正则过滤/按Token截断三种模式
文件传输SFTP上传/下载,MD5/SHA256校验,分块传输
交互式会话会话复用,超时清理
凭据管理keyring存储密码/私钥路径

快速开始

1. 安装

cd LinuxSSH_MCP
python -m venv .venv

# Windows
.\.venv\Scripts\python -m pip install -e ".[dev]"

# Linux/macOS
.venv/bin/pip install -e ".[dev]"

2. 启动

# Windows
.\.venv\Scripts\python main.py

# Linux/macOS
.venv/bin/python main.py

MCP 客户端配置

Claude Desktop / Claude Code 配置

在 MCP 配置文件中添加以下内容(将 PATH 替换为实际路径):

{
  "mcpServers": {
    "linux-ssh-mcp": {
      "command": "PATH/LinuxSSH_MCP/.venv/Scripts/python.exe",
      "args": [
        "PATH/LinuxSSH_MCP/main.py"
      ]
    }
  }
}

模块方式配置

{
  "mcpServers": {
    "linux-ssh-mcp": {
      "command": "PATH/LinuxSSH_MCP/.venv/Scripts/python.exe",
      "args": ["-m", "linux_ssh_mcp"]
    }
  }
}

环境变量配置

支持通过环境变量覆盖默认配置(前缀:SSH_MCP_):

环境变量默认值说明
SSH_MCP_LOG_LEVELINFO日志级别
SSH_MCP_PER_HOST_MAX_CONNECTIONS5每主机最大连接数
SSH_MCP_COMMAND_TIMEOUT_SECONDS30命令超时时间(秒)
SSH_MCP_IDLE_CONNECTION_TTL_SECONDS300空闲连接TTL(秒)
SSH_MCP_CONNECTION_RETRY_COUNT3连接重试次数
SSH_MCP_CONNECTION_RETRY_DELAY_SECONDS1.0连接重试间隔(秒)
SSH_MCP_KNOWN_HOSTS_POLICYignoreknown_hosts策略(ignore/warn/reject)
SSH_MCP_HASH_ALGORITHMmd5哈希算法(md5/sha256/both)
SSH_MCP_CACHE_MAXSIZE128缓存最大容量

MCP 工具清单 (14个)

凭据管理

  • auth_store_credentials - 存储SSH凭据到keyring

命令执行

  • ssh_execute - 执行单条命令
  • ssh_execute_batch - 批量执行命令
  • ssh_execute_script - 执行Shell脚本
  • ssh_system_info - 获取系统信息
  • ssh_search_content - 远端grep搜索
  • ssh_health_check - SSH连接健康检查

缓存管理

  • ssh_session_info - 查看缓存状态
  • ssh_clear_cache - 清理缓存

文件传输

  • file_upload - 上传文件
  • file_download - 下载文件
  • file_info - 获取文件信息

目录操作

  • dir_list - 目录列表(分页)
  • dir_interactive - 交互式会话

项目结构

LinuxSSH_MCP/
├── linux_ssh_mcp/              # 核心模块
│   ├── __init__.py             # 包初始化
│   ├── __main__.py             # 模块入口
│   ├── mcp_server.py           # MCP协议层,14个工具接口
│   ├── ssh_manager.py          # SSH命令执行核心
│   ├── connection_pool.py      # 连接池(后台清理+请求合并+索引)
│   ├── security.py             # 命令安全校验(黑名单/警告/白名单)
│   ├── exceptions.py           # 6级结构化异常层次
│   ├── types.py                # TypedDict 类型定义
│   ├── cache_manager.py        # TTL+LRU缓存管理
│   ├── directory_manager.py    # 目录管理与交互式会话
│   ├── file_transfer_manager.py # 文件上传下载
│   ├── auth_manager.py         # 凭据管理(keyring)
│   ├── config_manager.py       # 配置文件管理
│   ├── settings.py             # Pydantic配置
│   ├── constants.py            # 常量定义
│   ├── token_optimizer.py      # Token优化器
│   └── logger.py               # 日志配置(loguru)
├── tests/                      # 测试用例 (76个测试)
│   ├── test_connection_pool.py # 连接池测试 (34个)
│   ├── test_security.py        # 安全校验测试 (27个)
│   ├── test_exceptions.py      # 异常体系测试 (15个)
│   ├── test_ssh_manager.py     # SSH管理测试
│   ├── test_auth_manager.py    # 凭据管理测试
│   ├── test_cache_manager.py   # 缓存管理测试
│   └── ...                     # 其他模块测试
├── main.py                     # 入口文件
├── pyproject.toml              # 项目配置(构建/mypy/ruff/pytest)
├── requirements.txt            # 依赖列表
├── .env.example                # 环境变量示例
└── .gitignore                  # Git忽略规则

技术栈

技术用途
Python 3.10+运行时
asyncsshSSH异步连接
MCP (FastMCP)Model Context Protocol 服务端
Pydantic v2配置验证
keyring凭据安全存储
loguru结构化日志
pytest + pytest-asyncio异步测试
mypy (strict)静态类型检查
ruff代码风格检查

开发

运行测试

# 运行全部测试
.venv/Scripts/python -m pytest tests/ -v

# 运行特定模块测试
.venv/Scripts/python -m pytest tests/test_connection_pool.py -v

# 查看覆盖率
.venv/Scripts/python -m pytest tests/ --cov=linux_ssh_mcp --cov-report=term-missing

代码质量检查

# 类型检查
.venv/Scripts/python -m mypy linux_ssh_mcp/

# 代码风格检查
.venv/Scripts/python -m ruff check linux_ssh_mcp/

# 自动修复
.venv/Scripts/python -m ruff check --fix linux_ssh_mcp/

许可证

MIT License

目录标签

目录标签

PythonClaude安全SSH运维本地部署远程命令执行文件传输交互式会话安全校验

支持客户端

Claude DesktopClaude

接入字段

传输方式(transport,传输协议)

stdio

鉴权方式(authType,认证方式)

token

运行时(runtime,运行环境)

Python

工具数量(toolCount,工具数)

14

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

stdiotoken部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

来源信息

继续浏览同类 MCP