mcpField
M
mcp-ssh-toolkit-py

mcp-ssh-toolkit-py

本地服务
github.com/VitalyMalakanov开发工具481 周前更新

关于 mcp-ssh-toolkit-py

mcp-ssh-toolkit-py 是通过 SSH 执行命令和传输文件的 MCP 服务,面向 DevOps 与服务器管理场景,支持密码或密钥认证及可配置的连接参数。

主要功能

  1. 01通过 SSH 执行命令
  2. 02使用 SFTP 上传和下载文件
  3. 03支持密码、密钥和 SSH agent 认证
  4. 04可配置端口和超时

适用场景

  1. 01从 MCP 客户端运行远程脚本
  2. 02通过聊天界面管理服务器
  3. 03使用 LLM 自动化 DevOps 任务

MCP 相关

它向 MCP 客户端提供 `ssh_execute_command` 工具,用于远程 SSH 命令执行;也支持通过 SFTP 上传和下载文件。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

mcp.json · 通用配置
{
"mcpServers": {
"ssh-toolkit-py": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"build"
]
}
}
}
启动命令docker run -i --rm build

本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。

安装包
ocibuild

工具

还没有获取到工具列表

本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。

详细介绍

mcp-ssh-toolkit-py

Build Status License: MIT Docker Author

一款用于安全 SSH 自动化的轻量级模型上下文协议(MCP)服务,基于 python-sdk 和 paramiko 构建。


目录


概述 🚀

mcp-ssh-toolkit-py 是一款功能强大的 MCP 服务,可通过模型上下文协议安全地执行 SSH 命令。

🔹 主要功能:

  • 通过 SSH 在远程服务上执行任意命令
  • 通过 SFTP 上传/下载文件
  • 与 Claude/Cline 及其他 MCP 客户端集成
  • 支持密码和 SSH 密钥身份验证
  • 可配置连接参数(超时、端口)

🔹 适用场景:

  • 通过大模型实现 DevOps 自动化
  • 通过聊天界面管理服务
  • 安全地远程执行脚本
  • 在 MCP 生态系统中集成 SSH

用法示例:

# Through MCP client
response = mcp.tool("ssh_execute_command", {
    "host": "example.com",
    "username": "user",
    "command": "docker ps"
})

功能 ✨

核心功能
  • 🛡️ 通过 MCP 安全执行 SSH 命令
  • 📁 SFTP 操作(文件上传/下载)
  • 🔑 多种身份验证方式:
    • 用户名/密码
    • SSH 密钥(RSA)
    • SSH Agent
集成
  • 🤖 完全兼容 Claude/Cline
  • 🐳 可直接使用的 Docker 镜像
  • 📦 通过 Pip 安装软件包
安全性
  • 🔒 加密连接
  • ⏱ 可配置超时
  • 🚫 不存储凭据

安装 📦

Docker(推荐)
  1. 克隆仓库:
git clone https://github.com/VitalyMalakanov/mcp-ssh-toolkit-py.git
cd mcp-ssh-toolkit-py
  1. 构建 Docker 镜像:
docker build -t mcp-ssh-toolkit-py .
  1. (可选)推送到你的 Docker 仓库:
docker tag mcp-ssh-toolkit-py yourusername/mcp-ssh-toolkit-py
docker push yourusername/mcp-ssh-toolkit-py
Pip 安装

直接从 GitHub 安装:

pip install git+https://github.com/VitalyMalakanov/mcp-ssh-toolkit-py.git

安装后运行服务:

python -m mcp_ssh_toolkit
开发环境设置

开发时,使用以下命令安装:

git clone https://github.com/VitalyMalakanov/mcp-ssh-toolkit-py.git
cd mcp-ssh-toolkit-py
pip install -e .

快速入门

使用 Docker 运行
docker run --rm -i mcp-ssh-toolkit-py
MCP 集成

添加到你的 MCP 配置中(例如 cline_mcp_settings.json):

"mcp-ssh-toolkit-py": {
  "command": "docker",
  "args": ["run", "--rm", "-i", "mcp-ssh-toolkit-py"],
  "env": {}
}

用法

工具:ssh_execute_command

说明:
通过 SSH 在远程服务上执行命令。

输入参数:

  • host(字符串,必填):SSH 服务地址
  • username(字符串,必填):SSH 用户名
  • password(字符串,可选):SSH 密码
  • privateKey(字符串,可选):SSH 私钥路径(PEM)
  • command(字符串,必填):要执行的命令
  • port(整数,可选,默认值为 22):SSH 端口
  • timeout(整数,可选,默认值为 20):连接超时时间(秒)

输出:

  • stdout:命令输出
  • stderr:错误输出
  • exit_code:退出代码

调用示例:

{
  "host": "example.com",
  "username": "user",
  "password": "secret",
  "command": "uname -a"
}

开发

在本地安装依赖:

pip install -r requirements.txt

在本地运行:

python main.py

安全性

  • SSH 凭据绝不会被存储或记录。
  • 身份验证请始终使用强密码或 SSH 密钥。
  • 不要将 MCP 服务暴露在不受信任的网络中。
  • 请查看 paramiko 安全最佳实践。
  • 如果发现安全漏洞,请通过 GitHub Issues 报告,或私下联系维护者。

许可证

MIT 许可证。详情请参阅 LICENSE。

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。