Skip to main content
Glama
tadasant

MCP Server: SSH Rails Runner

by tadasant

Servidor MCP: SSH Rails Runner

Un servidor MCP que permite la ejecución remota segura de comandos de la consola Rails mediante SSH. Este servidor proporciona herramientas para operaciones de solo lectura y mutaciones cuidadosamente gestionadas en un entorno Rails implementado.

Esto funciona de maravilla con Cursor. Puedes usar Cursor Composer para extraer los archivos de tu modelo de Rails como contexto y luego usar las herramientas execute_read_only , dry_run_mutate y execute_mutate para realizar cambios en la base de datos. Olvídate de las complejas interfaces de administración para gestionar y analizar tus datos.

Ejemplo

Ejemplo

Related MCP server: MCP SSH Server

Características

  • Ejecución remota de la consola Rails a través de SSH

  • Operaciones seguras de solo lectura

  • Capacidad de ejecución en seco de mutaciones

  • Ejecución de mutaciones aprobadas

  • Gestión de recursos para fragmentos de código

Instalación

npm install
npm run build

Configuración

Establezca las siguientes variables de entorno:

SSH_HOST=your.remote.host
SSH_USER=your_ssh_user
SSH_PRIVATE_KEY_PATH=your_SSH_PRIVATE_KEY_PATH
RAILS_WORKING_DIR=/path/to/rails/app

Uso con Claude Desktop

Añade a tu configuración de Claude Desktop:

{
  "mcpServers": {
    "ssh-rails-runner": {
      "command": "npx",
      "args": ["mcp-server-ssh-rails-runner"],
      "env": {
        "SSH_HOST": "your.remote.host",
        "SSH_USER": "your_ssh_user",
        "SSH_PRIVATE_KEY_PATH": "your_SSH_PRIVATE_KEY_PATH",
        "RAILS_WORKING_DIR": "/path/to/rails/app/root",
        "PROJECT_NAME_AS_CONTEXT": "Name that shows up in tool descriptions to help the LLM describe what kind of Rails project we're working with.",
        "CODE_SNIPPET_FILE_DIRECTORY": "/path/to/store/code/snippets/locally"
      }
    }
  }
}

Si no se proporciona CODE_SNIPPET_FILE_DIRECTORY , los fragmentos se almacenarán en un directorio temporal (p. ej., /tmp/mcp-ssh-rails-runner-code-snippets ). PROJECT_NAME_AS_CONTEXT es opcional y ayuda a identificar el contexto del proyecto en las descripciones de las herramientas.

Herramientas disponibles

El servidor ahora utiliza un flujo de trabajo Preparar -> Ejecutar:

mcp_ssh_rails_runner_prepare_code_snippet

  • Argumentos : name (cadena, para nombre de archivo), type (enumeración: "readOnly" | "mutate"), code (cadena, código Ruby), description (cadena, opcional).

  • Función : guarda el código Ruby proporcionado en un archivo local llamado code_snippet_<name>.json , lo marca como de solo lectura o mutado y abre el archivo para revisión.

  • Devuelve : El URI file:// del fragmento creado.

mcp_ssh_rails_runner_execute_code_snippet_read_only

  • Argumentos : uri (cadena, file:// URI de prepareCodeSnippet ).

  • Función : lee el fragmento de código de la URI, verifica que esté marcado como readOnly , realiza una verificación de seguridad en el código y lo ejecuta.

  • Devuelve : La salida del comando Rails.

mcp_ssh_rails_runner_execute_code_snippet_mutate

  • Argumentos : uri (cadena, file:// URI de prepareCodeSnippet ).

  • Función : ¡ZONA DE PELIGRO! Lee el fragmento de código, verifica que esté marcado como mutate y lo ejecuta directamente . Esta herramienta no requiere simulacros ni comprobaciones de seguridad adicionales.

  • Devuelve : La salida del comando Rails.

  • Uso : LLAME A ESTO SOLO DESPUÉS DE QUE EL USUARIO HAYA REVISADO el código preparado (a través del archivo abierto desde

Consideraciones de seguridad

  • Úselo solo con puntos finales SSH confiables de su propia máquina local a la que se le proporciona acceso (temporalmente) al entorno remoto.

  • Es fundamental revisar siempre el código guardado por La responsabilidad de confirmar las mutaciones recae en el usuario y la IA que las realiza.

Licencia

Instituto Tecnológico de Massachusetts (MIT)

-
security - not tested
A
license - permissive license
-
quality - not tested

Resources

Looking for Admin?

Admins can modify the Dockerfile, update the server description, and track usage metrics. If you are the server author, to access 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/tadasant/mcp-server-ssh-rails-runner'

If you have feedback or need assistance with the MCP directory API, please join our Discord server