NHN Server MCP
NHN Server MCP
Un servidor MCP (Model Context Protocol) para conectarse a servidores y ejecutar comandos a través de un SSH Gateway.
Funcionalidades
Conexión al servidor a través de SSH Gateway
Soporte para autenticación Kerberos (kinit)
Confirmación de ejecución de comandos mediante diálogo nativo de macOS
Opción "Permitir siempre" para la aprobación automática de comandos idénticos
Consulta de información del servidor (la IA puede verificar rutas de registro, etc.)
Carga/descarga de archivos SCP a través de Gateway
Prevención de bloqueo de procesos mediante tiempo de espera (timeout) en comandos remotos
Recarga dinámica de configuración
Instalación
npm install
npm run buildConfiguración
1. Crear config.json
{
"gatewayConnection": "user@gateway.example.com:22",
"gatewayPassword": "your-password",
"kinitPassword": "your-kerberos-password",
"allowedHosts": ["server1", "server2"],
"confirmDialog": true,
"serverInfo": {
"서버에 대한 user 정보 필수": "exec 할때 user 를 같이 보냅니다.",
"나머지는": "원하는 내용으로",
"ex - logPaths": {
"app": "/var/log/app.log",
"nginx": "/var/log/nginx/access.log"
}
}
}2. Configuración del cliente
Claude Code (CLI)
Registrar mediante comando CLI:
# 프로젝트 단위 (해당 프로젝트에서만 사용)
claude mcp add --scope project nhn-server -e CONFIG_FILE=/path/to/config.json -e DEBUG=false -- node /path/to/nhn-server-mcp/dist/index.js
# 글로벌 (모든 프로젝트에서 사용)
claude mcp add --scope user nhn-server -e CONFIG_FILE=/path/to/config.json -e DEBUG=false -- node /path/to/nhn-server-mcp/dist/index.jsO también puede editar el archivo de configuración directamente.
Por proyecto — Crear .mcp.json en la raíz del proyecto:
{
"mcpServers": {
"nhn-server": {
"command": "node",
"args": ["/path/to/nhn-server-mcp/dist/index.js"],
"env": {
"CONFIG_FILE": "/path/to/config.json",
"DEBUG": "false"
}
}
}
}Global — Añadir a ~/.claude.json:
{
"mcpServers": {
"nhn-server": {
"command": "node",
"args": ["/path/to/nhn-server-mcp/dist/index.js"],
"env": {
"CONFIG_FILE": "/path/to/config.json",
"DEBUG": "false"
}
}
}
}
.mcp.json— Se utiliza solo en ese proyecto. Se puede compartir con el equipo si se confirma en git (tenga en cuenta que la ruta deconfig.jsonpuede variar para cada usuario)
~/.claude.json— Se utiliza en todos los proyectos. Para configuraciones de entorno personal
Claude Desktop
~/Library/Application Support/Claude/claude_desktop_config.json:
{
"mcpServers": {
"nhn-server": {
"command": "node",
"args": ["/path/to/nhn-server-mcp/dist/index.js"],
"env": {
"CONFIG_FILE": "/path/to/config.json",
"DEBUG": "false"
}
}
}
}Opciones de configuración
Clave | Descripción | Valor predeterminado |
| Conexión SSH del Gateway (usuario@host:puerto) | - |
| Contraseña SSH del Gateway | - |
| Contraseña de autenticación Kerberos | - |
| Lista de hosts permitidos para conexión | [] (todos permitidos) |
| Mostrar diálogo de confirmación antes de ejecutar comandos | true |
| Información del servidor expuesta a la IA | {} |
| Tiempo de espera de comando remoto (segundos). Envuelto con GNU timeout | 300 |
Variables de entorno
Variable | Descripción |
| Ruta del archivo config.json |
| Activar registros de depuración ( |
Herramientas MCP
exec
Ejecuta un comando en el servidor.
{
"host": "server-hostname",
"user": "appuser",
"command": "tail -100 /var/log/app.log"
}Si confirmDialog está activado, se mostrará un diálogo nativo de macOS:
Cancelar: No ejecutar el comando
Confirmar: Ejecutar solo esta vez
Permitir siempre: Ejecutar + ejecutar comandos idénticos futuros sin confirmación (se reinicia al finalizar la sesión)
get_config
Consulta la información de configuración del servidor. (Hosts permitidos, información del servidor)
reload_config
Recarga el archivo de configuración.
disconnect_server
Finaliza la conexión al Gateway.
connection_status
Verifica el estado actual de la conexión.
scp_upload
Sube el contenido de un archivo al servidor. (SCP a través de Gateway)
{
"host": "server-hostname",
"user": "appuser",
"remotePath": "/path/to/remote/file.txt",
"content": "파일 내용"
}scp_download
Descarga un archivo desde el servidor. (SCP a través de Gateway)
{
"host": "server-hostname",
"user": "appuser",
"remotePath": "/path/to/remote/file.txt",
"localPath": "/path/to/local/file.txt"
}Si se especifica
localPath, se guarda como archivo localSi no se especifica
localPath, solo se devuelve el contenido del archivo
Seguridad
No confirme
config.jsonen git, ya que contiene información sensible (contraseñas)Se solicita confirmación del usuario antes de ejecutar comandos mediante
confirmDialogSe restringen los servidores conectables mediante
allowedHostsDesconexión automática tras 5 minutos de inactividad
Limpieza automática de sesiones incluso en caso de excepciones
Licencia
MIT
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Latest Blog Posts
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/nhn-server-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server