SSH MCP Server

An MCP server that provides SSH and serial console access to remote servers and network devices

Local serverstdioGo

What is the SSH MCP MCP server?

An MCP server that provides SSH and serial console access to remote servers and network devices. That is what the ssh mcp mcp server brings to an AI assistant: the same capability, reachable through the Model Context Protocol rather than a separate app or dashboard.

The short version

A Model Context Protocol (MCP) server that provides comprehensive SSH and serial console access to remote servers and network devices. Enables AI tools like Claude Desktop to securely manage Linux servers, network switches, and infrastructure devices through both network SSH connections and direct USB-to-Serial console access.

The tools it exposes

The server publishes 14 tools. What each one is for:

  • ubuntu_nginx_control — Web server control (start, stop, restart, status, reload, check-config)
  • ubuntu_update_packages — System package updates with security-only option
  • ubuntu_ssl_certificate — SSL certificate management using Let's Encrypt (issue, renew, status, list)
  • ubuntu_website_deployment — Website deployment with automatic backup and restore
  • ubuntu_ufw_firewall — Firewall (UFW) management (enable, disable, allow, deny, delete)
  • ssh_connect — The ssh_connect tool exposed by this server
  • ssh_exec — The ssh_exec tool exposed by this server
  • ssh_upload_file — The ssh_upload_file tool exposed by this server
  • ssh_download_file — The ssh_download_file tool exposed by this server
  • ssh_list_files — The ssh_list_files tool exposed by this server
  • ssh_disconnect — The ssh_disconnect tool exposed by this server
  • switch_discover_device — Discover and identify network switch device type and capabilities

Getting it running

Setup follows the usual MCP pattern — install or clone the server, register it in your client's configuration file, restart the client. The configuration blocks on this page cover the common clients.

What it needs from you

Configuration is passed through the environment: NODE_NO_WARNINGS. Treat anything key-shaped as a real credential — scope it to the minimum the server needs, and rotate it if it ever lands in a shared config.

  • Node.js 18 or higher - npm or yarn - Compatible with Windows, macOS, and Linux

How it compares

Plenty of developer tooling servers cover similar ground. The differences that matter in practice are scope of access and how much setup stands between you and a working tool call. SSH MCP's toolset — ubuntu_nginx_control, ubuntu_update_packages, ubuntu_ssl_certificate and 11 more — is a fair guide to whether it matches your workflow. It is maintained by mixelpixx; worth a glance at recent repository activity before you build anything load-bearing on it.

SyncDev reviews every entry in this directory against the project's own documentation before publishing, and revisits them as servers change.

Things to watch

  • It runs with your machine's permissions. That is convenient and also the reason to think about what you point it at before you approve a tool call.
  • With 14 tools registered it takes up a noticeable share of the context window; turn it off in projects that never touch SSH MCP.
  • Keep per-call confirmation enabled while you learn its behaviour; it is the cheapest safeguard you have.

Available tools

ToolWhat it does
ubuntu_nginx_controlWeb server control (start, stop, restart, status, reload, check-config)
ubuntu_update_packagesSystem package updates with security-only option
ubuntu_ssl_certificateSSL certificate management using Let's Encrypt (issue, renew, status, list)
ubuntu_website_deploymentWebsite deployment with automatic backup and restore
ubuntu_ufw_firewallFirewall (UFW) management (enable, disable, allow, deny, delete)
ssh_connectThe ssh_connect tool exposed by this server.
ssh_execThe ssh_exec tool exposed by this server.
ssh_upload_fileThe ssh_upload_file tool exposed by this server.
ssh_download_fileThe ssh_download_file tool exposed by this server.
ssh_list_filesThe ssh_list_files tool exposed by this server.
ssh_disconnectThe ssh_disconnect tool exposed by this server.
switch_discover_deviceDiscover and identify network switch device type and capabilities.
switch_show_interfacesThe switch_show_interfaces tool exposed by this server.
switch_show_vlansThe switch_show_vlans tool exposed by this server.

How to install the SSH MCP MCP server

{
  "mcpServers": {
    "ssh-server": {
      "command": "node",
      "args": ["/path/to/mcp-ssh-server/build/index.js"],
      "env": {
        "NODE_NO_WARNINGS": "1"
      }
    }
  }
}

Configuration as documented by the project. Restart the client after saving.

Configuration

  • Node.js 18 or higher - npm or yarn - Compatible with Windows, macOS, and Linux
VariableDescriptionRequired
NODE_NO_WARNINGSConfiguration value read at startup.Optional

Example prompts to try

  • Use SSH MCP to ubuntu nginx control.
  • Use SSH MCP to ubuntu update packages.
  • Use SSH MCP to ubuntu ssl certificate.

Frequently asked questions

It connects SSH MCP to MCP-compatible AI assistants such as Claude and Cursor, exposing 14 tools (ubuntu_nginx_control, ubuntu_update_packages, ubuntu_ssl_certificate, and more) that the assistant can call on your behalf. Instead of copying data back and forth by hand, the assistant works with SSH MCP directly.