MCP ExplorerExplorer

Mcp Ssh Toolkit Py

@VitalyMalakanovon a year ago
4 MIT
FreeCommunity
AI Systems
mcp-ssh-toolkit-py is a powerful MCP server for secure SSH command execution via Model Context Protocol.

Overview

What is Mcp Ssh Toolkit Py

mcp-ssh-toolkit-py is a powerful MCP server designed for secure SSH command execution using the Model Context Protocol.

Use cases

Use cases include automating DevOps tasks with LLMs, managing servers via a chat interface, executing scripts securely on remote machines, and integrating SSH functionalities within the MCP framework.

How to use

To use mcp-ssh-toolkit-py, install it via pip or use the provided Docker image. Then, you can execute commands on remote servers through the MCP client by calling the ‘ssh_execute_command’ function with the necessary parameters.

Key features

Key features include secure SSH command execution, SFTP file transfer capabilities, support for multiple authentication methods (password and SSH keys), and configurable connection parameters.

Where to use

mcp-ssh-toolkit-py can be used in various fields such as DevOps automation, server management, and secure remote script execution, particularly in environments that leverage the MCP ecosystem.

Content

mcp-ssh-toolkit-py

Build Status
License: MIT
Docker
Author

A minimal Model Context Protocol (MCP) server for secure SSH automation, built with python-sdk and paramiko.


Table of Contents


Overview 🚀

mcp-ssh-toolkit-py is a powerful MCP server for secure SSH command execution via Model Context Protocol.

🔹 Key Features:

  • Execute arbitrary commands on remote servers via SSH
  • Upload/download files via SFTP
  • Integration with Claude/Cline and other MCP clients
  • Supports password and SSH key authentication
  • Configurable connection parameters (timeouts, ports)

🔹 Use Cases:

  • DevOps automation via LLMs
  • Server management through chat interface
  • Secure remote script execution
  • SSH integration in MCP ecosystem

Example usage:

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

Features ✨

Core Functionality

  • 🛡️ Secure SSH command execution via MCP
  • 📁 SFTP operations (file upload/download)
  • 🔑 Multiple authentication methods:
    • Username/password
    • SSH keys (RSA)
    • SSH agent

Integration

  • 🤖 Full compatibility with Claude/Cline
  • 🐳 Ready-to-use Docker image
  • 📦 Pip package installation

Security

  • 🔒 Encrypted connections
  • ⏱ Configurable timeouts
  • 🚫 No credential storage

Installation 📦

Docker (Recommended)

  1. Clone the repository:
git clone https://github.com/VitalyMalakanov/mcp-ssh-toolkit-py.git
cd mcp-ssh-toolkit-py
  1. Build the Docker image:
docker build -t mcp-ssh-toolkit-py .
  1. (Optional) Push to your Docker registry:
docker tag mcp-ssh-toolkit-py yourusername/mcp-ssh-toolkit-py
docker push yourusername/mcp-ssh-toolkit-py

Pip Installation

Install directly from GitHub:

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

Run the server after installation:

python -m mcp_ssh_toolkit

Development Setup

For development, install with:

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

Quickstart

Run with Docker

docker run --rm -i mcp-ssh-toolkit-py

MCP Integration

Add to your MCP configuration (e.g., cline_mcp_settings.json):


Usage

Tool: ssh_execute_command

Description:
Execute a command on a remote server via SSH.

Input parameters:

  • host (string, required): SSH server address
  • username (string, required): SSH username
  • password (string, optional): SSH password
  • privateKey (string, optional): Path to SSH private key (PEM)
  • command (string, required): Command to execute
  • port (integer, optional, default 22): SSH port
  • timeout (integer, optional, default 20): Connection timeout (seconds)

Output:

  • stdout: Command output
  • stderr: Error output
  • exit_code: Exit code

Example call:

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

Development

Install dependencies locally:

pip install -r requirements.txt

Run locally:

python main.py

Security

  • SSH credentials are never stored or logged.
  • Always use strong passwords or SSH keys for authentication.
  • Do not expose the MCP server to untrusted networks.
  • Review paramiko security best practices.
  • If you discover a security vulnerability, please report it via GitHub Issues or contact the maintainer privately.

License

MIT License. See LICENSE for details.

Tools

No tools

Comments

Recommend MCP Servers

View All MCP Servers