ssh-client
MCP server exposing SSH control for Linux servers via Model Context Protocol.
claude mcp add --transport stdio jordanburke-ssh-client-mcp-server npx ssh-client-mcp-server -y -- --host=1.2.3.4 --port=22 --user=root --password=pass --key=path/to/key
How to use
SSH Client MCP Server exposes SSH control capabilities through an MCP endpoint so LLMs and MCP clients can securely execute shell commands on remote Linux or Windows hosts. The server implements a minimal set of MCP tools with the primary capability being the exec tool, which runs a shell command on the configured remote machine via SSH. You can integrate this MCP server with MCP clients like Claude Desktop or Cursor by configuring a server entry that points to the npx invocation of the server. Once configured, you can issue natural-language prompts that translate to remote shell commands executed over SSH, enabling remote management tasks, scripting, and automation without exposing direct SSH access in your UI. The server supports password or key-based authentication, making it suitable for both quick experiments and more secure deployments.
How to install
Prerequisites:
- Node.js and npm or pnpm installed on your development machine
- Internet access to install dependencies from npm registry
-
Clone the repository: git clone https://github.com/jordanburke/ssh-client-mcp-server.git cd ssh-client-mcp-server
-
Install dependencies (the README uses pnpm): pnpm install
-
Build (if the project requires a build step, otherwise skip): pnpm run build
-
Run the server locally (example): pnpm run start
-
Verify the server is running and accessible via MCP tooling, then proceed to configure your MCP client (e.g., Claude Desktop) with the provided mcpServers entry.
Notes:
- Ensure your environment has network access to the target SSH hosts.
- If you plan to expose the server publicly or in a shared environment, consider additional security measures (restricted network access, keys management, and auditing).
Additional notes
Tips and caveats:
- The example MCP configuration uses npx to run the server from the npm package name ssh-client-mcp-server. Ensure the package name matches what is published as ssh-mcp (as shown in the badges) or adjust accordingly in your environment.
- When using key-based authentication, ensure the path to the private key is accessible by the runtime and the key has appropriate permissions.
- If you see authentication failures, verify SSH server accessibility (firewalls, host keys, and allowed authentication methods).
- For debugging, you can test commands directly via SSH before integrating into MCP to validate command behavior and permissions.
- Check MCP Inspector for visual debugging and status of the MCP server during development and testing.
Related MCP Servers
zen
Selfhosted notes app. Single golang binary, notes stored as markdown within SQLite, full-text search, very low resource usage
MCP -Deepseek_R1
A Model Context Protocol (MCP) server implementation connecting Claude Desktop with DeepSeek's language models (R1/V3)
mcp-fhir
A Model Context Protocol implementation for FHIR
mcp
Inkdrop Model Context Protocol Server
mcp-appium-gestures
This is a Model Context Protocol (MCP) server providing resources and tools for Appium mobile gestures using Actions API..
dubco -npm
The (Unofficial) dubco-mcp-server enables AI assistants to manage Dub.co short links via the Model Context Protocol. It provides three MCP tools: create_link for generating new short URLs, update_link for modifying existing links, and delete_link for removing short links.