ssh_connectLABSCO SUMMARY
SSH plus a serial console, so a switch with no management address is still reachable.
The SSH half is what you would expect — connect, run commands, move files over SFTP. The half that is hard to find anywhere else is the console side: it drives a USB-to-serial adapter, which is the only way in before a switch has an address, and one tool walks the entire console-to-SSH handover on Cisco and Aruba gear rather than leaving you to type the configuration in by hand.
What it is
An MCP server with two ways onto a device: an SSH client for hosts that are already reachable, and a serial console client that talks through a USB-to-serial adapter to gear that is not. On top of both sit switch-specific tools for Cisco IOS, IOS-XE and Aruba, and a set of Ubuntu server chores.
What you get
- SSH sessions and file transfer: ssh_connect, ssh_exec, ssh_upload_file, ssh_download_file, ssh_list_files, ssh_disconnect
- Serial console access over a USB adapter: serial_list_ports, serial_connect, serial_send_command, serial_discover_device, serial_list_connections, serial_disconnect
- Reading a switch: switch_discover_device, switch_show_interfaces, switch_show_vlans, switch_show_mac_table, switch_backup_config, switch_network_diagnostics
- Turning a console-only switch into an SSH-managed one: switch_generate_ssh_config, switch_apply_ssh_config, switch_verify_ssh_status, switch_test_ssh_connection, switch_complete_ssh_setup, console_to_ssh_transition, quick_ssh_check
- Firmware work with a rollback path: switch_check_firmware, switch_check_storage, switch_upload_firmware, switch_verify_firmware, switch_install_firmware, switch_prepare_rollback
- Ubuntu server chores: ubuntu_nginx_control, ubuntu_update_packages, ubuntu_ssl_certificate, ubuntu_website_deployment, ubuntu_ufw_firewall
Requirements
Node on the machine and a build from the repository checkout, which the client then launches by file path. SSH work needs the usual credentials for the target — a password, or a private key and its passphrase — and the switch tools also want the enable password wherever the device asks for privileged mode. The console tools need hardware you have to physically have: a USB-to-serial adapter, a console cable that fits the switch, and on Windows the adapter's driver.
Setup effort
Build from source — git clone https://github.com/mixelpixx/SSH-MCP
USE CASES
Bringing up a switch that has no management address yet
Find the serial port the adapter showed up on, open the console session, and run the handover that configures hostname, address, gateway and an SSH login in one pass.
Working out what is on the far end of the cable
Identify the device and its capabilities before sending it anything, so a Cisco command does not get typed at an Aruba box.
Chasing an intermittent port before the complaints start
Read interface status, look at which addresses are learned where, and run ping or traceroute from the switch itself rather than from your laptop.
Taking a switch configuration backup you can actually restore from
Capture the running or startup configuration and bring the file back to your machine in the same session.
Upgrading switch firmware with a way back
Check there is room before uploading, verify the uploaded image by checksum, install it, and gather the current boot configuration and available images first so a rollback is possible.
Ordinary maintenance on a Ubuntu box
Open a session, check a service and reload it, apply package updates, and adjust the firewall without leaving the conversation.
36 tools
Listed in project docs. Your client may show a different list.
ssh_execssh_upload_filessh_download_filessh_list_filesssh_disconnectswitch_discover_deviceswitch_show_interfacesswitch_show_vlansswitch_backup_configswitch_network_diagnosticsswitch_show_mac_tableserial_list_portsserial_connectserial_send_commandserial_discover_deviceserial_list_connectionsserial_disconnectubuntu_nginx_controlubuntu_update_packagesubuntu_ssl_certificateubuntu_website_deploymentubuntu_ufw_firewallswitch_generate_ssh_configswitch_apply_ssh_configswitch_verify_ssh_statusswitch_test_ssh_connectionswitch_complete_ssh_setupconsole_to_ssh_transitionquick_ssh_checkswitch_check_firmwareswitch_check_storageswitch_upload_firmwareswitch_verify_firmwareswitch_install_firmwareswitch_prepare_rollbackBEFORE YOU INSTALL
What to know first
Tools you get
36 tools named in the project's documentation.
Requires
Node.js 18 or later
Where it runs
Both documented clients run the server on your machine.
INSTALLATION
Connect your client
Server setup
git clone https://github.com/mixelpixx/SSH-MCP
cd SSH-MCP
npm install
npm run buildMCP Clients
Claude Desktop
{
"mcpServers": {
"ssh-server": {
"command": "node",
"args": [
"<YOUR_PATH_TO_SSH_MCP>/build/index.js"
],
"env": {
"NODE_NO_WARNINGS": "1"
}
}
}
}<YOUR_PATH_TO_SSH_MCP> is the absolute path of your clone. build/index.js is what npm run build produces.
VS Code
{
"servers": {
"ssh-server": {
"command": "node",
"args": [
"<YOUR_PATH_TO_SSH_MCP>/build/index.js"
]
}
}
}<YOUR_PATH_TO_SSH_MCP> is the absolute path of your clone. build/index.js is what npm run build produces.