
Ssh Mcp
- Updated June 19, 2026
- naoto256/ssh-mcp
ssh-mcp is a Claude Code skill in the AI & Agent Building category. Wires the ssh-mcp MCP server and its PreToolUse policy hook into Claude Code or Codex.
Key points
- ssh-mcp
- AI & Agent Building
- AI-coding skill
Ssh Mcp by the numbers
- Data as of Jul 7, 2026 (Skillselion catalog sync)
/plugin marketplace add naoto256/ssh-mcp/plugin install ssh-mcp@naoto256-ssh-mcpAdd your badge
Show developers this skill is listed on Skillselion. Paste this into your README.
| Last updated | June 19, 2026 |
|---|---|
| Repository | naoto256/ssh-mcp ↗ |
What it does
Wires the ssh-mcp MCP server and its PreToolUse policy hook into Claude Code or Codex.
README.md
ssh-mcp Plugin
This plugin wires ssh-mcp into Claude Code and Codex as a bundled MCP server
plus the matching PreToolUse policy hook.
What it does
- MCP server registration (
.mcp.json). Adds thesshMCP server over stdio withssh-mcp serve. - Policy hook (
hooks/hooks.json->tools/ssh-mcp-hook.sh). Routes host-affecting MCP tool calls (exec,get,put,sync_get,sync_put) throughssh-mcp hook, which asks the resident daemon for the strictest policy decision. - Claude Code settings defaults (
settings.json). Protects thessh-mcptrust-root files from agent edits, asks before rawsshfromBash, and asks before edits to the default~/.local/bin/ssh-mcpbinary.
The hook deliberately does not gate list_hosts, list_agent_keys, trace,
or propose_host: those tools are read-only, inspect session-local state, or
write only disabled pending host entries that require a later manual edit.
Prerequisites
ssh-mcp daemonis running as your user.ssh-mcpis available on the host runtimePATH.
If the host runtime does not inherit your shell PATH, set SSH_MCP_BIN to an
absolute binary path before starting the host app, or edit plugin/.mcp.json
during local development.
Claude Code
From a published GitHub remote:
/plugin marketplace add naoto256/ssh-mcp
/plugin install ssh-mcp@naoto256-ssh-mcp
From a local checkout:
/plugin marketplace add /absolute/path/to/ssh-mcp
/plugin install ssh-mcp@naoto256-ssh-mcp
Restart the Claude Code session after installing so the MCP server, hook, and settings defaults are loaded. The standard hook trust review still applies.
Codex
Add the repo marketplace and install the plugin:
codex plugin marketplace add /absolute/path/to/ssh-mcp
codex plugin add ssh-mcp@naoto256-ssh-mcp
Then restart Codex. Codex reads the plugin from
plugin/.codex-plugin/plugin.json, the shared plugin/.mcp.json, and
plugin/hooks/hooks.json.
Codex plugin hooks are non-managed hooks, so Codex will skip them until you review and trust the current hook definition.
Migrating from manual configuration
Remove the manual ssh MCP server entry and manual PreToolUse hook only
after the plugin has been installed and trusted.
Manual Claude Code entries that this plugin replaces:
{
"mcpServers": {
"ssh": {
"type": "stdio",
"command": "<path>/ssh-mcp",
"args": ["serve"],
"env": {},
"timeout": 900000
}
},
"hooks": {
"PreToolUse": [
{
"matcher": "mcp__ssh__(exec|get|put|sync_get|sync_put)",
"hooks": [
{ "type": "command", "command": "<path>/ssh-mcp hook" }
]
}
]
}
}
Manual Codex entries that this plugin replaces:
[mcp_servers.ssh]
command = "<path>/ssh-mcp"
args = ["serve"]
{
"hooks": {
"PreToolUse": [
{
"matcher": "mcp__ssh__(exec|get|put|sync_get|sync_put)",
"hooks": [
{ "type": "command", "command": "<path>/ssh-mcp hook" }
]
}
]
}
}