Saltar al contenido principal
Solo macOS · Pro
El editor de código con IA basado en VS Code

Cursor + SSH con el servidor MCP de SSHive

Por Lucas Russo, desarrollador de SSHive · Actualizado el

Deja que Cursor consulte tus servidores en marcha mientras edita el código: listar contenedores, leer logs, comparar configuraciones por SFTP. Servidor MCP local, sin relé de por medio.

Cursor es un editor de código basado en VS Code y construido en torno a un agente de IA. Con MCP puede llamar a herramientas externas, y el servidor de SSHive le da 20: listar las sesiones SSH abiertas en SSHive, ejecutar comandos, recorrer, leer y escribir archivos por SFTP y mover archivos grandes en segundo plano sin que pasen por el contexto del modelo. Solo llega a las sesiones conectadas en SSHive, por la conexión que hizo SSHive, así que Cursor nunca tiene tus credenciales SSH. El servidor escucha solo en 127.0.0.1. La combinación compensa cuando el código depende del estado remoto: un Dockerfile que debe coincidir con lo que apt list --installed muestra en el host, una configuración de nginx que tiene que cuadrar con la desplegada, una migración que necesita saber qué tablas existen. En lugar de adivinar, o de pedirte que pegues, Cursor le pregunta a SSHive. Configurarlo es un bloque JSON, copiado en SSHive y pegado en el archivo MCP de Cursor.

Configura Cursor con SSHive en 4 pasos

  1. 1

    Activa el servidor MCP en SSHive

    En SSHive, abre Ajustes > MCP y activa «Activar el servidor MCP»; en ese momento se crea el token Bearer. Deja el panel abierto, ahí está el bloque para Cursor. MCP forma parte de Pro.

  2. 2

    Pega el bloque JSON en el archivo MCP de Cursor

    SSHive muestra el bloque para Cursor con tu token real; el de abajo lleva <your-token> en su lugar. Pégalo en ~/.cursor/mcp.json para usar SSHive en todos tus proyectos, o en .cursor/mcp.json en la raíz de un solo proyecto. Si el archivo ya tiene servidores, añade la entrada sshive dentro del objeto mcpServers existente. SSHive no escribe este archivo por ti, porque una app de la App Store no puede hacerlo.

    Para copiar
    {
      "mcpServers": {
        "sshive": {
          "type": "http",
          "url": "http://127.0.0.1:49422/mcp",
          "headers": {
            "Authorization": "Bearer <your-token>"
          }
        }
      }
    }
  3. 3

    Reinicia Cursor y comprueba las herramientas

    Reinicia Cursor, o recarga su ventana, para que vuelva a leer el archivo. sshive debería aparecer entonces con sus herramientas en Available Tools: 20, o 17 mientras «Permitir que el asistente abra sesiones» esté desactivado en SSHive. Si en su lugar muestra un error, los logs de MCP del panel Output de Cursor (Cmd+Shift+U) dicen por qué; lo habitual es un token erróneo o el servidor apagado en SSHive.

  4. 4

    Conecta las sesiones a las que Cursor debe llegar

    En SSHive, conéctate a los servidores con los que Cursor debe trabajar; solo ve las sesiones conectadas. Después pregunta en el chat de Cursor: «¿Qué contenedores están corriendo en prod?». Cursor llama a ssh_list_sessions, elige prod, ejecuta docker ps con ssh_execute y responde.

Qué pedirle a Cursor una vez conectado

Tú preguntas

«Refactoriza este Dockerfile para que coincida con las versiones de paquetes realmente instaladas en prod.»

Lo que ocurre

Cursor obtiene apt list --installed con ssh_execute en la sesión de prod, lo compara con tu Dockerfile y propone el mínimo de cambios.

Tú preguntas

«Genera el docker-compose.yml a partir del stack de compose que corre en staging.»

Lo que ocurre

Cursor lee el archivo compose desplegado con sftp_read_file y la salida de docker compose config con ssh_execute, y escribe un archivo compose limpio que coincide con lo que de verdad corre.

Tú preguntas

«Mira las últimas 500 líneas de los logs de api-gateway en prod y explícame los errores 500.»

Lo que ocurre

Cursor ejecuta docker logs --tail 500 api-gateway 2>&1 con ssh_execute, localiza las peticiones que acabaron en 500 y resume la traza de pila que hay detrás.

Por qué combinar Cursor con SSHive

Cursor rinde más cuando escribe código y menos cuando tiene que adivinar qué está desplegado. Tu repositorio y tus servidores se van separando, y sin ayuda Cursor no ve la diferencia. El servidor de SSHive la cubre: Cursor edita el código, SSHive aporta los datos de las máquinas en marcha, y el cambio encaja con la realidad a la primera en lugar de después de un despliegue fallido. El equilibrio de seguridad es razonable. Las sesiones ya están autenticadas en SSHive, en el Mac donde corre Cursor, así que Cursor nunca maneja credenciales. El servidor solo responde en la interfaz de loopback y solo a las peticiones que llevan el token; otro programa del Mac también necesitaría ese token. Y MCP es un protocolo abierto: puedes apagar el servidor, pasarte a Claude Code o a otro cliente, o comprobar exactamente qué herramientas se exponen, cuando quieras.

Preguntas frecuentes

¿Puede Cursor ejecutar por accidente un comando destructivo?+
Por defecto, Cursor te pide aprobación antes de usar una herramienta MCP, ssh_execute incluida, y te muestra la llamada que quiere hacer. Sus ajustes de ejecución permiten que algunas herramientas se ejecuten sin preguntar; deja ssh_execute y las herramientas de escritura con aprobación en las sesiones que apuntan a producción. Del lado de SSHive, Cursor solo trabaja con las sesiones que tú abriste, salvo que actives «Permitir que el asistente abra sesiones».
¿Funciona con el agente de Cursor?+
Sí. El agente usa las herramientas MCP que aparecen en Available Tools cuando vienen al caso, y puede encadenar varias llamadas a SSHive, por ejemplo ssh_list_sessions, luego ssh_execute y luego sftp_read_file. Cada llamada sigue esperando tu aprobación, salvo que hayas dejado que esa herramienta se ejecute sola.
¿SSHive va en el archivo global o en un proyecto?+
Los dos sirven. ~/.cursor/mcp.json, en tu carpeta de usuario, deja SSHive disponible en todos tus proyectos; .cursor/mcp.json en la raíz de un proyecto lo limita a ese proyecto. El token está en claro en el archivo, así que deja un archivo de proyecto fuera de tu repositorio Git.
¿Qué pasa con lo que Cursor lee en mis servidores?+
Cursor llega a SSHive en tu Mac y SSHive llega a tus servidores; nada retransmite ese tráfico. Pero la salida de los comandos y el contenido de los archivos que Cursor lee pasan a la conversación, que Cursor envía a su proveedor de modelos junto con tu código. Trátalos como el código que pegarías en el chat.

Otros clientes y páginas relacionadas

Claude Code + SSH con el servidor MCP de SSHive

El asistente de código de Anthropic, en el terminal y en el IDE

Claude Desktop + SSH con el servidor MCP de SSHive

La app de escritorio de Anthropic para conversar con Claude

Prueba SSHive gratis en macOS

Consigue el cliente todo en uno de SSH, SFTP, RDP y VNC para Mac. Descarga gratuita, sin registro.

Descargar SSHive gratis