NHN Server MCP
The NHN Server MCP is a Model Context Protocol server that provides secure SSH gateway access to remote servers with Kerberos authentication and command execution capabilities.
Core Capabilities:
Execute Remote Commands (
exec) - Run commands on specified servers through an SSH gateway with required host, user, and command parametersView Server Configuration (
get_config) - Query current settings including allowed hosts, whitelisted commands, and server information like log pathsReload Configuration (
reload_config) - Dynamically reload the configuration file without restartingCheck Connection Status (
connection_status) - Monitor the current SSH gateway connection stateDisconnect from Gateway (
disconnect_server) - Manually terminate the SSH gateway connection
Security Features:
Kerberos (kinit) authentication support
Host allowlist to restrict server access
Command whitelisting
macOS native confirmation dialogs with "always allow" option for trusted commands (session-scoped)
Automatic session cleanup after 5 minutes of inactivity
Prevents sensitive config file commits
Use Cases:
Access servers behind SSH gateways from AI assistants
Retrieve and analyze server logs
Execute maintenance commands with approval workflows
Enable AI to understand server topology and log locations
Configure for project-specific or global use across Claude CLI, Desktop, and other MCP clients
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@NHN Server MCPshow me the last 50 lines of the app log on server1"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
gw-ssh
A CLI tool for executing commands and transferring files to remote servers via an SSH Gateway.
Features
Remote server command execution via SSH Gateway (real-time streaming output)
Parallel execution on multiple hosts (single Gateway authentication + internal fan-out)
SCP file upload/download via Gateway (binary integrity guaranteed)
Kerberos authentication (kinit) support
Prevents process hangs with remote command timeouts
Access restriction via host allowlist
Related MCP server: Windows CLI MCP Server
Installation
npm install
npm run build
npm link # gw-ssh 명령어 글로벌 등록Configuration
Create config.json
{
"gatewayConnection": "user@gateway.example.com:22",
"gatewayPassword": "your-password",
"kinitPassword": "your-kerberos-password",
"allowedHosts": ["server1", "server2"],
"commandTimeoutSec": 300,
"serverInfo": {
"user": "default-ssh-user",
"logPaths": {
"app": "/var/log/app"
}
}
}Specify configuration file path
# 방법 1: 환경변수 (~/.zshrc 등에 추가)
export CONFIG_FILE=/path/to/config.json
# 방법 2: --config 옵션
gw-ssh -c /path/to/config.json <command>Configuration Options
Key | Description | Default |
| Gateway SSH connection (user@host:port) | Required |
| Gateway SSH password | Required |
| Kerberos authentication password (skips kinit if not set) | - |
| List of allowed hosts | [] (allow all) |
| Remote command timeout (seconds). Wrapped with GNU timeout | 300 |
| Server meta information (user, logPaths, etc.) | {} |
Environment Variables
Variable | Description |
| Path to config.json file |
| Enable debug logs ( |
Usage
Command Execution
gw-ssh exec <host> <command> [-u user] [-j jobs] [--buffered]# 단일 호스트
gw-ssh exec server1 "hostname"
gw-ssh exec server1 "uptime" -u appuser
# 로그 조회
gw-ssh exec server1 "tail -100 /var/log/app/app.log"
gw-ssh exec server1 "grep ERROR /var/log/app/app.log | tail -20"If -u is omitted, the serverInfo.user value is used.
Parallel execution on multiple hosts
If you pass a comma-separated CSV to <host>, it automatically operates in parallel mode. Gateway authentication/Kerberos ticket is performed only once, and fan-out occurs in the gateway→target segment.
# 3개 호스트에서 동시에 실행 (기본 동시성 5)
gw-ssh exec server1,server2,server3 "hostname && uptime"
# [server1] server1
# [server1] 15:02:31 up 42 days, ...
# [server2] server2
# [server2] 15:02:31 up 12 days, ...
# [server3] server3
# [server3] 15:02:31 up 7 days, ...
# ✓ 3/3 성공
# 동시성 제한 변경 (gateway 부하 고려해 3~10 권장)
gw-ssh exec h1,h2,h3,h4,h5,h6,h7,h8 "uptime" -j 10
# 호스트별로 출력을 모아 순서대로 표시 (스트리밍 대신 버퍼드 모드)
gw-ssh exec h1,h2 "cat /etc/hostname" --bufferedIf some hosts fail, a failure summary is printed to stderr with exit code 1.
File Upload
gw-ssh upload <host> <remotePath> [options] [-u user] [-j jobs]# 텍스트 내용 직접 업로드
gw-ssh upload server1 /tmp/hello.txt --content "hello world"
# 로컬 파일 업로드 (바이너리 포함 - gzip, zip, 실행파일 등)
gw-ssh upload server1 /tmp/app.tar.gz --file ./app.tar.gz
# 여러 호스트에 같은 파일 동시 배포 (CSV 지정 시 병렬 모드)
gw-ssh upload server1,server2,server3 /tmp/app.tar.gz --file ./app.tar.gzWhen uploading to multiple hosts, the local→gateway transfer occurs once, and gateway→each target is fanned out in parallel. The larger the file or the more hosts, the greater the local bandwidth savings.
File Download
gw-ssh download <host> <remotePath> [options] [-u user] [-j jobs]# 표준 출력으로 내용 확인
gw-ssh download server1 /etc/hosts
# 로컬 파일로 저장
gw-ssh download server1 /etc/hosts -o ./downloaded-hosts.txt
# 바이너리 파일도 무결성 유지 (gzip, zip, 실행파일 등)
gw-ssh download server1 /var/app/release.tar.gz -o ~/Downloads/release.tar.gz
# 여러 호스트에서 동시에 다운로드 — -o 에 디렉토리 지정, 파일명 앞에 호스트 접두
gw-ssh download server1,server2 /var/log/app.log -o ~/Downloads/
# → ~/Downloads/server1-app.log
# → ~/Downloads/server2-app.log-o must be a file path for a single host, or an already existing directory path for multiple hosts.
In multi-host downloads, if only some hosts fail, the files from the successful hosts remain in the -o directory. Manual deletion is required if a full rollback is needed.
Check Configuration
gw-ssh configConnection Test
gw-ssh statusSecurity
Do not commit config.json to git as it contains sensitive information (passwords)
Restrict accessible servers with
allowedHostsCommand safety ensured with Base64 encoding + shell injection prevention patterns
Automatic SSH session cleanup even when exceptions occur
License
MIT
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- AlicenseBqualityAmaintenanceProvides policy-driven, auditable SSH access to server fleets for AI assistants with zero-trust security controls, command whitelisting, and comprehensive audit logging to safely manage infrastructure.1327Apache 2.0
- AlicenseBqualityCmaintenanceEnables secure command-line interactions on Windows systems through PowerShell, CMD, and Git Bash, with support for SSH remote connections, SFTP file transfers, system monitoring, and configurable security controls including command blocking and path restrictions.341MIT
- AlicenseNot gradedqualityAmaintenanceEnables secure remote command execution and bidirectional file transfers on SSH servers through the Model Context Protocol. It features robust security controls including command whitelisting, credential isolation, and support for multiple SSH connection profiles.978793ISC
- AlicenseAqualityCmaintenanceEnables AI assistants to securely execute remote SSH commands, perform file transfers, and monitor system status through a standardized interface. It features robust security controls including command whitelisting, blacklisting, and credential isolation to prevent unauthorized operations.1022MIT
Related MCP Connectors
Let AI operate servers without SSH. Choose actions, approve risky changes, and audit every step.
Operate Linux, macOS and Windows from your LLM. Every action runs through an auditable allowlist.
Issue, rotate and revoke scoped API-key passes for 25+ providers — the agent never sees a real key
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/dhks77/gw-ssh'
If you have feedback or need assistance with the MCP directory API, please join our Discord server