Built-in MCP server: your SSH servers, reachable from Claude Code and Cursor on Mac
SSHive includes a built-in MCP server that lets Claude Code, Cursor, and Claude Desktop interact with your SSH and SFTP sessions, directly from your machine.
MCP Server (Model Context Protocol)
Lets AI assistants (Claude, Cursor, Cline…) access active SSH sessions.
Model Context Protocol, the bridge between AI and your infrastructure
MCP (Model Context Protocol) is an open standard created by Anthropic that allows AI assistants to interact with external tools and data sources. SSHive implements an MCP server that exposes your active SSH and SFTP sessions as tools, so Claude can execute commands, read files, and browse your remote servers without leaving the conversation.
Instant access
No copy-paste, no context switching. Your AI assistant directly queries your servers through SSHive's active sessions.
Local server only
The MCP server listens on 127.0.0.1 only and asks for the Bearer token on every request. No SSHive relay sits in between; what your AI client reads, that client sends to its own model provider.
Copy-paste setup
Enable MCP in Settings, then copy the JSON config into your AI client. Claude Code users can run a single CLI command.
NAMES STATUS api-gateway Up 14 days web-frontend Up 14 days postgres-db Up 14 days
Execute commands through natural language
Ask Claude to check Docker containers, view logs, restart services, or run any command on your remote servers. SSHive's MCP server bridges the conversation to your live SSH sessions.
- Claude picks the right session automatically from your active connections
- Full stdout/stderr output returned directly in the conversation
- Works with any SSH session, no special server-side setup needed
Browse and read remote files with AI
Claude can list directories, read configuration files, and even write files on your remote servers through SSHive's SFTP tools. Perfect for debugging config issues or reviewing logs.
- List directory contents on any active SFTP session
- Read remote files, configs, logs, scripts, directly in Claude's context
- Write files back to the server for quick fixes
server {
listen 443 ssl;
server_name api.example.com;
location / {
proxy_pass http://127.0.0.1:3000;
}
}20 tools for full server access
Each tool maps to a specific SSH or SFTP operation, giving AI assistants precise control over your remote servers. The main ones are below; ssh_list_profiles, ssh_connect and ssh_disconnect only appear if you let the assistant open sessions.
ssh_list_sessionsLists all active SSH sessions with host, user, port, and connection status.
ssh_executeExecutes a command on a specific SSH session and returns stdout/stderr.
sftp_listLists files and directories at a given path on a remote server.
sftp_read_fileReads the content of a remote file and returns it as text.
sftp_write_fileWrites content to a file on the remote server (in-memory).
sftp_write_file_chunkAppends base64 chunks (4 MB each) for large files.
sftp_write_from_local_pathSends a local file straight from disk to the server, with no base64, up to 32 MB per call; above that, sftp_upload_start takes over in the background.
ssh_list_profilesssh_connectssh_disconnectsftp_edit_filesftp_upload_startsftp_download_startsftp_transfer_statussftp_transfer_cancelsftp_download_to_local_pathsftp_mkdirsftp_chmodsftp_renamesftp_delete
What fits in one call, and what streams
Each file tool is built for a size of job:
sftp_read_file,sftp_write_fileandsftp_edit_filehandle UTF-8 text up to 1 MB. Past that, or for a binary file, the assistant switches to the transfer tools.sftp_write_file_chunkwrites content that exists only in the conversation, in blocks of up to 4 MB each.sftp_write_from_local_pathsends a file straight from your Mac's disk to the server and waits for the transfer to finish, for files up to 32 MB; above that it refuses and points the assistant tosftp_upload_start.sftp_download_to_local_pathdoes the reverse, with no size limit. Either way, the file never passes through the model's context.sftp_upload_startandsftp_download_startmove a file of any size in the background and return at once;sftp_transfer_statusreports progress andsftp_transfer_cancelstops a transfer. SSHive has to stay open until they finish.
Ready in 3 clicks
Copy the ready-to-paste config into your AI client, or run the one-shot Claude Code CLI command below.
- 1
Open SSHive Settings
Navigate to Settings > MCP in the SSHive sidebar.
- 2
Enable the MCP server
Toggle the switch to activate the local MCP server on port 49422. A Bearer token is automatically generated and shown in Settings, you'll paste it into the snippets below.
Paste the config, or run the Claude Code one-liner
For Claude Desktop, install the SSHive extension in one click, or connect it through npx mcp-remote over SSE. For Cursor and Cline, copy the JSON config and paste it into the client's MCP settings file. For Claude Code (CLI + IDE), copy the claude mcp add command shown in Settings > MCP: it registers SSHive in ~/.claude.json in one step. Restart your client and you're connected.
claude mcp remove sshive --scope user 2>/dev/null; claude mcp add --transport http --scope user sshive http://127.0.0.1:49422/mcp --header "Authorization:Bearer <your-token>"
{
"mcpServers": {
"sshive": {
"type": "http",
"url": "http://127.0.0.1:49422/mcp",
"headers": {
"Authorization": "Bearer <your-token>"
}
}
}
}{
"mcpServers": {
"sshive": {
"command": "npx",
"args": [
"-y",
"mcp-remote",
"http://127.0.0.1:49422/sse",
"--header",
"Authorization:Bearer <your-token>",
"--transport",
"sse"
]
}
}
}{
"mcpServers": {
"sshive": {
"transport": {
"type": "sse",
"url": "http://127.0.0.1:49422/sse",
"requestHeaders": {
"Authorization": "Bearer <your-token>"
}
}
}
}
}Works with your favorite AI tools
Claude Code
A one-line CLI command: claude mcp add registers SSHive in ~/.claude.json.
Cursor
Paste the JSON snippet into Cursor's MCP settings file, SSHive shows the exact config in Settings.
Claude Desktop
Install the SSHive extension (.mcpb) in one click, or connect through npx mcp-remote over SSE.
Cline
Compatible via manual Streamable HTTP configuration.
Secure by design
The server never puts your sessions on the network: it listens on 127.0.0.1 only, answers only requests that carry its token, and no SSHive server relays anything between your Mac and your servers. That protection stops at what the assistant reads: the client sends it to its model provider, as the next section explains.
Where your data goes when an assistant uses SSHive
- 1
Your AI client calls the server on 127.0.0.1, with the token. Nothing listens on the network.
- 2
SSHive carries out the request through an SSH or SFTP session it holds, from your Mac straight to your server. No SSHive server sits in between.
- 3
The result (command output, file contents, a directory listing) goes back to the AI client.
- 4
The client adds it to the conversation and sends that to its model provider: Anthropic for Claude Code and Claude Desktop, the provider you chose in Cursor.
So the rule is the one you already apply to a chat window: if a file or an output should not reach that provider, do not ask the assistant to read it.
The token, and how to change it
SSHive creates the token when you switch the server on and keeps it in its settings file, settings.json, not in the Keychain. Restarting SSHive does not change it. Any program on this Mac that holds it can call the server, so treat it like a password. To replace it, use "Regenerate" in Settings > MCP: from then on the server refuses the old one, so every client you set up by hand (the Claude Code command, Cursor's JSON, the mcp-remote block, the Claude Desktop extension) needs the new token pasted in.
An assistant in the terminal, free, with your own key
MCP lets an outside assistant work on your sessions. The Mac app also has an assistant of its own, in the SSH terminal: select some output and ask what an error means, or ask a question in plain words. It uses your own API key for Claude, OpenAI, Gemini, or Mistral, or any OpenAI-compatible endpoint, which is how local models served by LM Studio or Ollama fit in. It is part of the free version, on the Mac only. As with MCP, what you send it goes to the provider whose key you entered.
MCP FAQ
What is MCP and why use it with SSH?+
Are my servers exposed to the internet?+
How do I set up Claude Code with SSHive?+
~/.claude.json. SSHive does not edit that file itself; an App Store app is not allowed to. claude mcp list then shows sshive as connected. The Claude Code guide goes through it step by step.Which MCP tools does SSHive expose?+
Does MCP work with Cursor, Claude Desktop and Cline?+
npx mcp-remote over SSE (Claude Desktop guide). Restart the client if it does not pick the change up.Does the MCP server send my data to Anthropic?+
Give your AI superpowers
Download SSHive and connect Claude Code, Cursor, or Claude Desktop to your servers in seconds.