Apariencia
🌐 Servidor MCP SSH Nativo (Gestión Remota y Optimización de Tokens)
Context Code incluye un servidor MCP (Model Context Protocol) SSH integrado directamente en su núcleo. Esto permite al agente de IA conectarse a servidores o máquinas remotas de forma segura, explorar directorios, leer/escribir archivos y ejecutar comandos directamente, todo ello optimizando de manera crítica el consumo de tokens y el contexto de la conversación.
🚀 ¿Qué es el Servidor MCP SSH?
Es un puente de comunicación seguro que implementa la especificación de Model Context Protocol sobre SSH. El agente de Context Code actúa como un MCP Client y se conecta a este servidor interno para interactuar con tus entornos de staging, producción, bases de datos o servidores en la nube sin que tengas que salir de tu terminal de trabajo.
🛡️ Optimización de Tokens de Contexto
Las interacciones tradicionales de agentes con consolas remotas suelen consumir decenas de miles de tokens de contexto innecesarios al transferir buffers crudos gigantes. Este servidor mitiga el problema mediante:
- Truncamiento Inteligente Local: Las salidas de comandos muy largas (
stdout) se recortan localmente antes de ser entregadas a la IA. - SFTP Paginado: Lectura de archivos extensos mediante rangos de líneas controlados.
- Parcheo Remoto Directo (
ssh_apply_patch): Permite aplicar cambios quirúrgicos de líneas de código en el servidor remoto en un solo turno, eliminando la necesidad de leer, reescribir y volver a subir archivos enteros. - Listados Compactos: Oculta automáticamente directorios masivos de control (
node_modules,.git) en el host remoto.
⚙️ Configuración y Activación
1. Levantar el Servidor por Consola (Modo stdio)
El servidor MCP SSH está integrado en el binario de Context Code y se puede levantar mediante el flag --ssh-mcp:
bash
context --ssh-mcp(Este comando inicia el servidor en espera de peticiones JSON-RPC bajo el transporte de entrada/salida estándar).
2. Registrar el Servidor en Context Code
Para que Context Code detecte automáticamente el servidor MCP SSH en todas tus sesiones del CLI, agrégalo a tu archivo de configuración global de MCP en ~/.context/mcp.json (o .mcp.json en la raíz de tu proyecto):
json
{
"mcpServers": {
"context-ssh": {
"command": "node",
"args": ["d:/Documents/GitHub/Claude/claude-code_V1/Context_Code_V1/apps/cli/dist/context-bootstrap.js", "--ssh-mcp"]
}
}
}🔧 Herramientas Expuestas al Agente
Una vez activo, el agente de IA tendrá acceso a las siguientes herramientas de control remoto:
1. ssh_connect
Establece una conexión segura con el host.
- Parámetros:
host(string, requerido): Nombre de host o dirección IP.username(string, requerido): Usuario de autenticación.port(number, opcional): Puerto SSH (por defecto22).password(string, opcional): Contraseña del usuario.privateKey(string, opcional): Contenido de tu llave privada PEM/OpenSSH.passphrase(string, opcional): Contraseña para descifrar tu llave privada.
2. ssh_execute_command
Ejecuta comandos de consola en el host remoto con control de timeout.
- Parámetros:
command(string, requerido): Comando a ejecutar.timeoutMs(number, opcional): Tiempo de espera en milisegundos (por defecto30000).
3. ssh_list_directory
Lista el contenido de una ruta de forma compacta (oculta .git y node_modules para ahorrar tokens).
- Parámetros:
path(string, opcional): Ruta a explorar (por defecto.o home del usuario).
4. ssh_read_file
Lee archivos remotos de forma paginada o completa vía SFTP.
- Parámetros:
path(string, requerido): Ruta del archivo.startLine(number, opcional): Línea inicial (1-indexed).endLine(number, opcional): Línea final (inclusive).
5. ssh_write_file
Crea o sobrescribe archivos remotos vía SFTP de forma segura.
- Parámetros:
path(string, requerido): Ruta del archivo.content(string, requerido): Contenido completo.
6. ssh_apply_patch
Aplica diferencias y ediciones parciales rápidas y baratas en tokens.
- Parámetros:
path(string, requerido): Ruta del archivo.targetContent(string, requerido): Bloque exacto de código a buscar.replacementContent(string, requerido): Nuevo código para reemplazar el original.
💬 Ejemplos Prácticos de Uso
Una vez registrado el servidor, puedes interactuar de forma completamente natural en el chat de Context Code:
- Conexión inicial:
"Conéctate a mi host de pruebas en
192.168.1.10con el usuariorootusando mi llave privada que te pego aquí..." - Diagnóstico de recursos:
"Revisa cuál es el espacio de disco libre y el uso de memoria en el servidor remoto."
- Inspección de logs:
"Lee las últimas 50 líneas del log de errores en
/var/log/nginx/error.log" - Modificación de configuraciones (Parcheo barato):
"En el archivo
/etc/nginx/nginx.conf, cambia el puerto de escucha de80a8080." (El agente utilizará de forma automáticassh_apply_patchpara realizar el cambio en milisegundos con un costo de tokens mínimo).
🔒 Seguridad y Multiplataforma
- Sandboxing y Permisos: Context Code mantiene su robusta política de seguridad. Cada vez que el agente intente realizar una acción de conexión SSH, ejecución de comandos o escritura de archivos remotos, solicitará tu aprobación explícita en consola o a través de la WebApp antes de proceder.
- Compatibilidad Multiplataforma: La implementación es 100% compatible con Windows, macOS (Intel/Apple Silicon) y Linux. Utiliza un motor nativo multiplataforma que no requiere compilación C++ obligatoria, facilitando su despliegue y uso en cualquier entorno de desarrollo.
