
Company News
Socket Named Top Sales Organization by RepVue
Socket won two 2026 Reppy Awards from RepVue, ranking in the top 5% of all sales orgs. AE Alexandra Lister shares what it's like to grow a sales career here.
@iflow-mcp/mcp-ssh-manager
Advanced tools
MCP SSH Manager: Model Context Protocol server for SSH remote server management. Control SSH connections from Claude Code and OpenAI Codex - execute commands, transfer files, database operations, backups, health monitoring, and DevOps automation. NEW: Too
Looking for MCP SSH tools? This is the MCP SSH Manager - a complete Model Context Protocol (MCP) server for SSH remote server management compatible with Claude Code and OpenAI Codex.
A powerful Model Context Protocol (MCP) server that enables Claude Code and OpenAI Codex to manage multiple SSH connections seamlessly. Control remote servers, execute commands, transfer files, manage databases, and automate DevOps tasks directly from your AI assistant.
Keywords: MCP SSH, MCP SSH Manager, SSH MCP, Model Context Protocol SSH, Claude Code SSH, SSH MCP Server, Remote SSH Management, MCP Server SSH
Tool Activation System (Released: November 15, 2025)
ssh-manager tools list/configure/enable/disableThis release adds 12 new MCP tools transforming SSH Manager into a comprehensive DevOps automation platform:
๐ Total: 37 MCP Tools | ๐ง ~4,100 Lines of Code Added | โ Production Ready
.env file setup with guided configuration toolNEW in v3.1: Reduce Claude Code context usage by 92% with tool activation management!
MCP SSH Manager includes 37 tools organized into 6 groups. By default, all tools are enabled, but you can optimize for your specific workflow:
# Interactive configuration wizard
ssh-manager tools configure
# View current configuration
ssh-manager tools list
# Enable/disable specific groups
ssh-manager tools enable monitoring
ssh-manager tools disable backup
| Mode | Tools | Context Usage | Best For |
|---|---|---|---|
| All (default) | 37 tools | ~43.5k tokens | Full feature set, most users |
| Minimal | 5 tools | ~3.5k tokens | Basic SSH operations only |
| Custom | 5-37 tools | Varies | Tailored to your workflow |
๐ Complete Tool Management Guide โ
Looking for:
This is the MCP SSH Manager you've been searching for! ๐ฏ
brew install hudochenkov/sshpass/sshpassapt-get install sshpassOption A: Install from npm (recommended)
# Install globally from npm
npm install -g mcp-ssh-manager
# Or install locally
npx mcp-ssh-manager
Option B: Install from source
# Clone and install
git clone https://github.com/bvisible/mcp-ssh-manager.git
cd mcp-ssh-manager
npm install
# Install the Bash CLI
cd cli && ./install.sh
# Configure your first server
ssh-manager server add
# For personal use (current user only)
claude mcp add ssh-manager node /path/to/mcp-ssh-manager/src/index.js
# For team sharing (creates .mcp.json in project)
claude mcp add ssh-manager --scope project node /path/to/mcp-ssh-manager/src/index.js
# For all your projects
claude mcp add ssh-manager --scope user node /path/to/mcp-ssh-manager/src/index.js
To avoid being prompted for approval on every SSH command, add auto-approve configuration:
Edit ~/.config/claude-code/claude_code_config.json:
{
"mcpServers": {
"ssh-manager": {
"command": "node",
"args": ["/path/to/mcp-ssh-manager/src/index.js"],
"autoApprove": [
"mcp__ssh-manager__ssh_execute",
"mcp__ssh-manager__ssh_list_servers",
"mcp__ssh-manager__ssh_upload",
"mcp__ssh-manager__ssh_download",
"mcp__ssh-manager__ssh_sync",
"mcp__ssh-manager__ssh_alias"
]
}
}
}
Important: Restart Claude Code after making this change.
For full auto-approval of all SSH tools, see the complete list in examples/claude-code-config.example.json.
In Claude Code, you can now:
"List all my SSH servers"
"Execute 'ls -la' on production server" # Uses default directory if set
"Run 'docker ps' on staging"
"Upload config.json to production:/etc/app/config.json"
"Download logs from staging:/var/log/app.log"
With Default Directories:
If you set /var/www/html as default for production, these commands are equivalent:
"Run 'ls' on production" โ executes in /var/www/html"Run 'ls' on production in /tmp" โ executes in /tmp (overrides default)Same installation as Claude Code (see above), then configure for Codex:
# Set up Codex integration
ssh-manager codex setup
# Migrate existing servers to TOML format (if you have .env servers)
ssh-manager codex migrate
# Test the integration
ssh-manager codex test
If you prefer manual setup, add to ~/.codex/config.toml:
[mcp_servers.ssh-manager]
command = "node"
args = ["/absolute/path/to/mcp-ssh-manager/src/index.js"]
env = { SSH_CONFIG_PATH = "/Users/you/.codex/ssh-config.toml" }
startup_timeout_ms = 20000
Create or edit ~/.codex/ssh-config.toml:
[ssh_servers.production]
host = "prod.example.com"
user = "admin"
password = "secure_password" # or use key_path
key_path = "~/.ssh/id_rsa" # for SSH key auth (recommended)
port = 22
default_dir = "/var/www"
description = "Production server"
[ssh_servers.staging]
host = "staging.example.com"
user = "deploy"
key_path = "~/.ssh/staging_key"
port = 2222
default_dir = "/home/deploy/app"
๐ก See examples/codex-ssh-config.example.toml for more complete examples!
In OpenAI Codex, you can now:
"List my SSH servers"
"Execute 'docker ps' on production"
"Upload file.txt to staging:/tmp/"
"Monitor CPU usage on all servers"
"Download production:/var/log/app.log to ./logs/"
Switch easily between Claude Code (.env) and Codex (TOML):
# Convert .env to TOML (for Codex)
ssh-manager codex convert to-toml
# Convert TOML back to .env (for Claude Code)
ssh-manager codex convert to-env
Both formats can coexist! The system supports both simultaneously.
ssh_list_serversLists all configured SSH servers with their details.
ssh_executeExecute commands on remote servers.
server (name), command, cwd (optional working directory)cwd is provided, uses the server's default directory if configuredssh_uploadUpload files to remote servers.
server, local_path, remote_pathssh_downloadDownload files from remote servers.
server, remote_path, local_pathssh_backup_createCreate backup of database or files on remote server.
server, type, name, database, paths, retentionssh_backup_listList all available backups on remote server.
server, type (optional filter)ssh_backup_restoreRestore from a previous backup.
server, backupId, database, targetPathssh_backup_scheduleSchedule automatic backups using cron.
server, schedule (cron format), type, namessh_health_checkPerform comprehensive health check on remote server.
ssh_service_statusCheck status of services (nginx, mysql, docker, etc.).
server, services (array)ssh_process_managerList, monitor, or kill processes on remote server.
ssh_alert_setupConfigure health monitoring alerts and thresholds.
ssh_db_dumpCreate database dump/backup on remote server.
server, type, database, outputFile, dbUser, dbPassword, dbHost, dbPortcompress (gzip), tables (specific tables only)ssh_db_importImport SQL dump or restore database on remote server.
server, type, database, inputFile, dbUser, dbPassword, dbHost, dbPortdrop (drop database before restore for MongoDB)ssh_db_listList databases or tables on remote server.
server, type, database (optional), dbUser, dbPassword, dbHost, dbPortssh_db_queryExecute read-only SQL queries on remote database.
server, type, database, query, dbUser, dbPassword, dbHost, dbPortcollection parameter for find queriesssh_deploy ๐Deploy files with automatic permission and backup handling.
server, files (array), options (owner, permissions, backup, restart)ssh_execute_sudo ๐Execute commands with sudo privileges.
server, command, password (optional), cwd (optional)ssh_alias ๐ท๏ธManage server aliases for easier access.
action (add/remove/list), alias, serverssh_command_alias ๐Manage command aliases for frequently used commands.
action (add/remove/list/suggest), alias, commandssh_hooks ๐ฃManage automation hooks for SSH operations.
action (list/enable/disable/status), hookssh_profile ๐Manage configuration profiles for different project types.
action (list/switch/current), profileSSH Manager uses profiles to configure aliases and hooks for different project types:
Set active profile:
export SSH_MANAGER_PROFILE=frappe.ssh-manager-profile with profile namedefault profile if not specifiedAvailable profiles:
default - Basic SSH operationsfrappe - Frappe/ERPNext specificdocker - Docker container managementnodejs - Node.js applicationsprofiles/ directoryServers are configured in the .env file with this pattern:
# Server configuration pattern
SSH_SERVER_[NAME]_HOST=hostname_or_ip
SSH_SERVER_[NAME]_USER=username
SSH_SERVER_[NAME]_PASSWORD=password # For password auth
SSH_SERVER_[NAME]_KEYPATH=~/.ssh/key # For SSH key auth
SSH_SERVER_[NAME]_PORT=22 # Optional, defaults to 22
SSH_SERVER_[NAME]_DEFAULT_DIR=/path/to/dir # Optional, default working directory
SSH_SERVER_[NAME]_DESCRIPTION=Description # Optional
# Example
SSH_SERVER_PRODUCTION_HOST=prod.example.com
SSH_SERVER_PRODUCTION_USER=admin
SSH_SERVER_PRODUCTION_PASSWORD=secure_password
SSH_SERVER_PRODUCTION_PORT=22
SSH_SERVER_PRODUCTION_DEFAULT_DIR=/var/www/html
SSH_SERVER_PRODUCTION_DESCRIPTION=Production Server
SSH_SERVER_PRODUCTION_SUDO_PASSWORD=secure_sudo_pass # Optional, for automated deployments
The Python management tool (tools/server_manager.py) provides:
mcp-ssh-manager/
โโโ src/
โ โโโ index.js # Main MCP server implementation
โโโ tools/
โ โโโ server_manager.py # Interactive server management
โ โโโ test-connection.py # Connection testing utility
โ โโโ requirements.txt # Python dependencies
โโโ examples/
โ โโโ .env.example # Example configuration
โ โโโ claude-code-config.example.json
โ โโโ backup-workflow.js # Backup and restore examples
โ โโโ codex-ssh-config.example.toml
โโโ package.json # Node.js dependencies
โโโ .env # Your server configurations (create from .env.example)
โโโ README.md # This file
python tools/test-connection.py production
claude mcp list
/mcp
.env files - Always use .env.example as templateSymptoms:
Solution: v3.1.1 includes automatic fixes:
Performance Tuning (add to .env):
# Reduce output size (default: 10000 characters)
MCP_SSH_MAX_OUTPUT_LENGTH=5000
# Increase timeout for slow commands (default: 120000ms)
MCP_SSH_DEFAULT_TIMEOUT=180000
# Use compact JSON to save tokens (default: false)
MCP_SSH_COMPACT_JSON=true
For large outputs:
# Instead of: cat huge-log.txt
# Use: tail -n 100 huge-log.txt
# Or: grep ERROR huge-log.txt | tail -n 50
See docs/TROUBLESHOOTING.md for complete guide.
claude mcp listssh-manager server test [server_name]chmod 600 ~/.ssh/your_keyOnce installed in Claude Code, you'll have access to these powerful tools:
ssh_execute - Execute commands on remote serversssh_upload - Upload files to remote serversssh_download - Download files from remote serversssh_list_servers - List all configured SSH serversssh_sync - Bidirectional file synchronization with rsyncssh_tail - Real-time log monitoring with follow modessh_monitor - System metrics monitoring (CPU, RAM, disk, network)ssh_history - View command execution historyssh_session_start - Start persistent SSH sessionssh_session_send - Send commands to active sessionssh_session_list - List active sessionsssh_session_close - Close specific sessionssh_execute_group - Execute commands on server groupsssh_group_manage - Manage server groups (create, update, delete)ssh_tunnel_create - Create SSH tunnels (local, remote, SOCKS)ssh_tunnel_list - List active tunnels with statisticsssh_tunnel_close - Close specific or all tunnelsssh_deploy - Smart deployment with permission handlingssh_execute_sudo - Execute commands with sudo privilegesssh_alias - Manage server aliases"Backup production MySQL database before deployment"
"List all backups on production server"
"Restore backup from yesterday"
"Schedule daily database backup at 2 AM"
"Backup website files excluding cache and logs"
For detailed backup examples, see examples/backup-workflow.js and docs/BACKUP_GUIDE.md.
# Basic server management
ssh-manager server list
ssh-manager server add
ssh-manager ssh prod1
# File synchronization
ssh-manager sync push prod1 ./app /var/www/
ssh-manager sync pull prod1 /var/log/app.log ./
# SSH tunnels
ssh-manager tunnel create prod1 local 3307:localhost:3306
ssh-manager tunnel list
# Execute commands
ssh-manager exec prod1 "docker ps"
Once installed, simply ask your AI assistant:
Claude Code examples:
OpenAI Codex examples:
Both AI assistants support the same MCP tools! ๐
We welcome contributions! Please see CONTRIBUTING.md for details.
./scripts/setup-hooks.sh
This project uses automated quality checks:
Run validation manually: ./scripts/validate.sh
This project is licensed under the MIT License - see the LICENSE file for details.
For issues, questions, or suggestions:
Made with โค๏ธ for the Claude Code community
timeout command directly in your commandsshpass to be installedssh_connection_status tool with reconnect actionFor issues, feature requests, or contributions, please visit: https://github.com/bvisible/mcp-ssh-manager
FAQs
MCP SSH Manager: Model Context Protocol server for SSH remote server management. Control SSH connections from Claude Code and OpenAI Codex - execute commands, transfer files, database operations, backups, health monitoring, and DevOps automation. NEW: Too
The npm package @iflow-mcp/mcp-ssh-manager receives a total of 39 weekly downloads. As such, @iflow-mcp/mcp-ssh-manager popularity was classified as not popular.
We found that @iflow-mcp/mcp-ssh-manager demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago.ย It has 2 open source maintainers collaborating on the project.
Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Company News
Socket won two 2026 Reppy Awards from RepVue, ranking in the top 5% of all sales orgs. AE Alexandra Lister shares what it's like to grow a sales career here.

Security News
NIST will stop enriching most CVEs under a new risk-based model, narrowing the NVD's scope as vulnerability submissions continue to surge.

Company News
/Security News
Socket is an initial recipient of OpenAI's Cybersecurity Grant Program, which commits $10M in API credits to defenders securing open source software.