SSH nativo para agentes
Un servidor MCP para SSH.
Termalin es un cliente SSH/terminal normal — con un servidor MCP integrado. Añádelo a claude.ai o ChatGPT como connector, o apunta Claude Code o cualquier agente que hable el Model Context Protocol a tus hosts — ejecuta comandos y lee o escribe archivos por SSH y SFTP. Tus claves nunca salen del agente de claves, y cada movimiento se refleja en vivo, se graba y se escribe en un registro de auditoría.
El servidor alojado está listado en el MCP Registry oficial como in.termal/termalin-web.
Qué hace
MCP es el estándar abierto para conectar agentes de IA con herramientas. La mayoría de los servidores MCP envuelven una API; el de Termalin envuelve tus servidores — así un agente puede operar infraestructura de verdad: seguir un log, reiniciar un servicio, revisar el disco, editar una config, desplegar. Se autentica a través del agente de claves SSH de Termalin, de modo que ninguna clave privada llega jamás al agente ni al modelo.
Las herramientas
El endpoint alojado expone 8 herramientas; el servidor local termalin-mcp expone 22 — el núcleo común de abajo, más herramientas de sesión, túnel y terminal en vivo. La lista completa con argumentos está en la referencia de herramientas MCP (en inglés). Las ocho del núcleo:
| Herramienta | Qué hace |
|---|---|
hosts_list | Lista los hosts que el agente puede alcanzar. |
ssh_exec | Ejecuta un comando puntual en un host y devuelve su salida y código de salida. |
sftp_list | Lista un directorio por SFTP. |
sftp_read | Lee un archivo de texto por SFTP (con límite, solo texto) — endpoint alojado; el servidor local usa sftp_get. |
sftp_write | Escribe un archivo de texto por SFTP — endpoint alojado; el servidor local usa sftp_put. |
generate_password | Genera una contraseña fuerte a demanda — longitud y conjuntos de caracteres bajo tu control. |
data_query | Consulta una base de datos en un host — sin contraseña: ejecuta el cliente propio del motor sobre el túnel sin clave usando la confianza local (peer auth de Postgres, socket auth de MySQL, redis-cli, mongosh, sqlite3). Solo lectura por defecto. |
data_tables | Lista las tablas / colecciones / claves de una base de datos en un host — por la misma vía sin contraseña. |
El servidor local añade estas encima:
| Herramienta | Qué hace |
|---|---|
session_open / exec / close / list | Abre una sesión SSH persistente, ejecuta comandos en ella y gestiónala. |
sftp_get / sftp_put | Descarga y sube archivos. |
tunnel_open / close / list | Abre reenvíos de puertos en un host — alcanza un servicio detrás de él, expón uno local o enruta a través de él — y gestiónalos. |
terminal_open / run / run_many / sessions / hosts | Controla la app de escritorio en marcha: abre pestañas de terminal en vivo, o entra en una sesión que ya tienes abierta y trabaja a tu lado (requiere consentimiento). |
data_list / tables / schema / query | Explora y consulta tus bases de datos guardadas — lista bases de datos, tablas y columnas, y ejecuta una consulta de solo lectura. Desactivado por defecto, por conexión, requiere consentimiento. |
Tres formas de conectar
1 · claude.ai / ChatGPT — en el chat que ya usas
Sin instalar nada, sin clave que pegar. Añade Termalin como connector y gestiona tus servidores hablando:
- claude.ai: abre la ficha de Termalin en el directorio → Connect (o Settings → Connectors → Add custom connector →
https://termal.in/mcp) - ChatGPT: Settings → Connectors (modo desarrollador) → la misma URL
El chat abre la página de inicio de sesión de Termalin; apruebas una vez y puede listar tus servidores, ejecutar comandos y leer o escribir archivos — «revisa el disco en prod», «sigue el log de nginx», «arregla esa config» directamente desde la conversación. El acceso se concede con OAuth — limitado a tus propios servidores dados de alta, auditado y revocable en cualquier momento.
Guías completas: el connector de ChatGPT y el connector de claude.ai (en inglés).
Dos requisitos que se saltan los que empiezan: el chat solo alcanza los servidores dados de alta — inicia sesión en termal.in/account, pulsa Añadir → Connector, copia el comando de instalación de una línea y ejecútalo en el servidor (un host que solo existe en la app de escritorio queda fuera de alcance). Y en la propia conversación, activa Termalin desde el menú de herramientas del cuadro de texto — añadir el connector en los ajustes no siempre basta.
2 · Servidor local (corre en tu máquina)
Apunta el cliente MCP de tu agente al binario termalin-mcp incluido. Con Claude Code:
claude mcp add termalin -- <ruta>/termalin-mcp
O en la configuración de un cliente MCP:
{
"mcpServers": {
"termalin": { "command": "<ruta>/termalin-mcp" }
}
} Alcanza los hosts que elijas en Ajustes → MCP (guardados con autenticación solo-agente — sin contraseñas en disco). Cada host lleva además su propio nivel de acceso del agente — completo, una lista de comandos permitidos o bloqueado — fijado en el propio host.
3 · Endpoint alojado con una clave API (CI, scripts, otros agentes)
Crea una clave API en el panel web y apunta cualquier agente al endpoint MCP HTTP:
{
"mcpServers": {
"termalin": {
"url": "https://termal.in/api/v1/mcp",
"headers": { "Authorization": "Bearer tk_live_…" }
}
}
} Ejecuta comandos y mueve archivos en tus servidores tunelizados — los que corren el agente de instalación de una línea — aunque no haya nada abierto en tu máquina. Se autentica con un certificado de corta duración, así que no se entrega ninguna clave. Las claves pueden limitarse a servidores concretos, llevar una política de comandos — acceso completo, una lista de comandos permitidos o solo lectura — tener caducidad (30 / 90 / 365 días) y revocarse en cualquier momento.
Guías de configuración
Paso a paso para cada cliente:
- Claude Code — una sola línea
claude mcp add. - ChatGPT y claude.ai (en inglés) — el connector de chat con OAuth.
- Cursor — una entrada en
mcp.json. - Codex — una entrada en
config.toml. - Gemini CLI — el CLI de Google por SSH.
Mantienes el control
- El acceso de agentes está desactivado por defecto; dejar que un agente escriba en tus sesiones en vivo es otro interruptor aparte.
- El acceso es granular: por host en el escritorio (completo / lista de permitidos / bloqueado) y por clave API en el endpoint alojado — así un agente puede ser de solo lectura en un servidor y ejecutar solo
giten otro. - El agente nunca tiene una clave — se autentica a través del agente de claves SSH de Termalin o un certificado de corta duración.
- Cada comando del agente queda marcado en la grabación de la sesión, visible en vivo en el watch grid y escrito en el registro de auditoría.
- Las ejecuciones alojadas tienen límite de tasa y de tiempo por clave API.
Preguntas frecuentes
¿Cómo conecto mis servidores a claude.ai o ChatGPT?
En claude.ai: abre la ficha de Termalin en el directorio de connectors y pulsa Connect (o añádela por URL en Settings → Connectors → Add custom connector → https://termal.in/mcp). Se abre la página de inicio de sesión de Termalin; apruebas y Claude puede listar tus servidores, ejecutar comandos y gestionar archivos dentro del chat. En ChatGPT es la misma URL en Settings → Connectors (modo desarrollador). Sin clave API que pegar — el acceso se concede con OAuth, limitado a tus propios servidores dados de alta, y revocable en cualquier momento.
¿Qué es un servidor MCP para SSH?
Un servidor MCP para SSH expone SSH y SFTP como herramientas que un agente de IA puede invocar a través del Model Context Protocol, de modo que el agente puede ejecutar comandos y leer o escribir archivos en tus servidores. Termalin trae uno integrado en el cliente SSH: tú eliges qué hosts puede alcanzar el agente y Termalin se encarga de autenticar, así que el agente nunca maneja una clave privada.
¿Cómo le doy a un agente de IA acceso a mis servidores por SSH?
Instala Termalin, activa los hosts que quieras en Ajustes → MCP y registra el servidor incluido con claude mcp add termalin -- <ruta>/termalin-mcp. Cualquier agente compatible con MCP — Claude Code, Cursor o el tuyo propio — puede entonces listar esos hosts y trabajarlos por SSH y SFTP. Si el agente corre donde tu escritorio no está, apúntalo al endpoint alojado https://termal.in/api/v1/mcp con una clave API.
¿Puede un agente de IA usar SSH sin ver mi clave privada?
Sí. Termalin actúa como custodio de claves: desbloqueas tus claves una vez y firma en nombre del agente, de modo que ninguna clave privada llega jamás al agente ni pasa al modelo. El endpoint alojado va más allá y autentica cada ejecución con un certificado SSH de corta duración en lugar de una clave.
¿Cuál es el mejor cliente SSH con servidor MCP integrado para agentes de IA?
Termalin es un cliente SSH con un servidor MCP integrado para Windows, macOS, Linux e iOS — a diferencia de las alternativas de una sola plataforma — y además ofrece un endpoint alojado, así que un agente puede alcanzar tus servidores desde CI o la nube sin ningún escritorio abierto. Las claves se quedan con un custodio, cada acción del agente queda grabada y auditada, y ves las sesiones en vivo. Consulta la comparativa completa del panorama (en inglés).
¿Funciona el servidor MCP sin la app de escritorio abierta?
Existen los dos modos. El servidor local corre junto a la app de escritorio para los hosts que exportas desde ella. El endpoint alojado en https://termal.in/api/v1/mcp no necesita ningún escritorio — alcanza servidores dados de alta con el Termalin Connector sin clave, autenticándose con certificados de corta duración, así que también funcionan los agentes en CI o en sandboxes de la nube. Está listado en el MCP Registry oficial como in.termal/termalin-web.
Docs completas (en inglés) → · Modelo de seguridad → · Descargar →