Skip to main content
Glama

MCP SSH Server

by shaike1

MCP SSH Server

A powerful SSH server implementation for Model Context Protocol (MCP). This server enables secure remote command execution and file operations through SSH protocol, supporting both password and key-based authentication.

Features

  • ✨ Secure SSH connection management
  • 🔑 Password and key-based authentication
  • 💻 Remote command execution
  • 📁 File operations (upload/download)
  • 📊 Progress tracking for file transfers
  • 🔐 Permission management
  • 📂 Directory operations
  • 🚀 Bulk file transfers
  • 📝 Detailed logging

Installation

  1. Install the package:
npm install mcp-ssh
  1. Add to your Claude desktop config (claude_desktop_config.json):
{ "mcpServers": { "ssh": { "command": "node", "args": ["%APPDATA%/npm/node_modules/mcp-ssh/dist/server.js"], "env": { "SSH_PORT": "8889", "SSH_LOG_LEVEL": "info" } } } }

Usage

Password Authentication

$body = @{ id = "test" host = "example.com" port = 22 username = "user" password = "pass123" } | ConvertTo-Json Invoke-RestMethod -Uri "http://localhost:8889/connect" -Method Post -Body $body -ContentType "application/json"

Key Authentication

$body = @{ id = "test" host = "example.com" port = 22 username = "user" privateKey = Get-Content ~/.ssh/id_rsa | Out-String passphrase = "optional-key-passphrase" # if your key is protected } | ConvertTo-Json Invoke-RestMethod -Uri "http://localhost:8889/connect" -Method Post -Body $body -ContentType "application/json"

Execute Commands

$execBody = @{ id = "test" command = "ls -la" } | ConvertTo-Json Invoke-RestMethod -Uri "http://localhost:8889/exec" -Method Post -Body $execBody -ContentType "application/json"

File Operations

# Upload file $uploadForm = @{ file = Get-Item -Path "localfile.txt" remotePath = "/remote/path/file.txt" } Invoke-RestMethod -Uri "http://localhost:8889/upload/test" -Method Post -Form $uploadForm # Download file Invoke-RestMethod -Uri "http://localhost:8889/download/test?remotePath=/remote/path/file.txt" -Method Get -OutFile "downloaded.txt"

Directory Operations

# List directory Invoke-RestMethod -Uri "http://localhost:8889/ls/test?path=/remote/path" -Method Get # Get connection status Invoke-RestMethod -Uri "http://localhost:8889/status/test" -Method Get

Development

  1. Clone the repository:
git clone https://github.com/shaike1/mcp-server-ssh.git cd mcp-server-ssh
  1. Install dependencies:
npm install
  1. Build:
npm run build
  1. Start server:
npm start

Environment Variables

  • SSH_PORT: Server port (default: 8889)
  • SSH_LOG_LEVEL: Logging level (default: info)

Contributing

  1. Fork the repository
  2. Create your feature branch (git checkout -b feature/amazing-feature)
  3. Commit your changes (git commit -m 'Add some amazing feature')
  4. Push to the branch (git push origin feature/amazing-feature)
  5. Open a Pull Request

License

MIT

-
security - not tested
F
license - not found
-
quality - not tested

remote-capable server

The server can be hosted and run remotely because it primarily relies on remote services or has no dependency on the local environment.

模型上下文协议的安全 SSH 服务器实现,支持远程命令执行和文件操作,支持密码和基于密钥的身份验证。

  1. 特征
    1. 安装
      1. 用法
        1. 密码验证
        2. 密钥认证
        3. 执行命令
        4. 文件操作
        5. 目录操作
      2. 发展
        1. 环境变量
          1. 贡献
            1. 执照

              Related MCP Servers

              • A
                security
                A
                license
                A
                quality
                A secure shell command execution server implementing the Model Context Protocol (MCP). This server allows remote execution of whitelisted shell commands with support for stdin input.
                Last updated -
                1
                126
                Python
                MIT License
                • Apple
              • A
                security
                F
                license
                A
                quality
                A Model Context Protocol server implementation that enables secure remote command execution via SSH, with features for managing and using SSH credentials.
                Last updated -
                5
                1
                9
                JavaScript
              • A
                security
                F
                license
                A
                quality
                A secure server that implements the Model Context Protocol (MCP) to enable controlled execution of authorized shell commands with stdin support.
                Last updated -
                1
                Python
              • A
                security
                F
                license
                A
                quality
                A server that enables remote command execution over SSH through the Model Context Protocol (MCP), supporting both password and private key authentication.
                Last updated -
                1
                1
                2
                JavaScript

              View all related MCP servers

              MCP directory API

              We provide all the information about MCP servers via our MCP API.

              curl -X GET 'https://glama.ai/api/mcp/v1/servers/shaike1/mcp-server-ssh'

              If you have feedback or need assistance with the MCP directory API, please join our Discord server