m2m -ssh-client
MCP server from Machine-To-Machine/m2m-mcp-server-ssh-client
claude mcp add --transport stdio machine-to-machine-m2m-mcp-server-ssh-client uvx m2m-mcp-server-ssh-client --host mcp-beta.machinetomachine.ai --port 8022 --use-key-server \ --env SSH_HOST_DEFAULT="mcp-beta.machinetomachine.ai" \ --env SSH_PORT_DEFAULT="8022"
How to use
This MCP server acts as a remote SSH client proxy, allowing you to access and utilize MCP tools that are hosted on remote servers through a secure SSH tunnel. It mirrors the capabilities of the remote MCP server and forwards all MCP protocol requests over SSH, so you can work with tools on remote machines as if they were running locally. The client supports key-based authentication and can leverage a key server to manage dynamic key exchange, simplifying usage in environments with multiple remote servers.
To use it, run the MCP SSH Client via your preferred MCP runner (for example uvx) and point it at the remote SSH server hosting the MCP services. You can connect to a demo or your own remote MCP server by providing host, port, and authentication options. Tools such as Claude Desktop integration or MCP Inspector can connect to the remote MCP server through this SSH client, enabling seamless tool discovery and execution across machines.
How to install
Prerequisites:
- Python environment (Python 3.8+)
- uv (or uvx) tooling installed in your project
- Access to a remote MCP SSH server or the ability to run the accompanying SSH server
Installation steps:
- Install the Python package directly from PyPI or from source
- From PyPI (recommended in most cases): uv install m2m-mcp-server-ssh-client
- From source: git clone https://github.com/Machine-To-Machine/m2m-mcp-server-ssh-client.git cd m2m-mcp-server-ssh-client pip install -e .
- Add the client to your uv project dependencies if using uv in a managed project
- Example (uv managed project): uv add m2m-mcp-server-ssh-client
- Verify installation by listing available commands
- uvx --help
- Run the MCP SSH Client against a remote MCP SSH server
- uvx m2m-mcp-server-ssh-client --host <remote-host> --port <ssh-port> [additional options]
Optional: Integrate with a key server for automatic key exchange as described in the usage notes.
Additional notes
Tips and common scenarios:
- Use key-based authentication for better security; prefer --client-key and --known-hosts when possible.
- If you are testing locally with a local SSH server, the default port is 8022; you can override with --port.
- The key server integration (--use-key-server) can simplify key exchange, but must be supported and enabled on the remote server.
- Never disable host key checking in production. Only use --disable-host-key-checking for development or trusted networks.
- For Claude Desktop or CLI-based tooling, configure the mcpServers entry to point to the uvx command and include host/port and authentication defaults as needed.
Related MCP Servers
mcp-vegalite
MCP server from isaacwasserman/mcp-vegalite-server
github-chat
A Model Context Protocol (MCP) for analyzing and querying GitHub repositories using the GitHub Chat API.
nautex
MCP server for guiding Coding Agents via end-to-end requirements to implementation plan pipeline
pagerduty
PagerDuty's official local MCP (Model Context Protocol) server which provides tools to interact with your PagerDuty account directly from your MCP-enabled client.
futu-stock
mcp server for futuniuniu stock
mcp -boilerplate
Boilerplate using one of the 'better' ways to build MCP Servers. Written using FastMCP