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: SSH Read-Only MCP 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 prepareCodeSnippet ) Y HAYA CONFIRMADO EXPLÍCITAMENTE que desea ejecutar la mutación.

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 prepareCodeSnippet antes de ejecutar cualquier mutación con executeCodeSnippetMutate . La responsabilidad de confirmar las mutaciones recae en el usuario y la IA que las realiza.

Licencia

Instituto Tecnológico de Massachusetts (MIT)

A
license - permissive license
Not graded
quality - not tested
D
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Servers

  • A
    license
    Not graded
    quality
    D
    maintenance
    Enables SSH connections and remote command execution with persistent session management and real-time browser-based terminal monitoring. Supports multiple simultaneous SSH sessions with command history tracking and live WebSocket streaming of terminal output.
    6
    MIT
  • F
    license
    A
    quality
    D
    maintenance
    Enables secure remote SSH command execution with strict read-only enforcement, allowing safe delegation of SSH access to Claude while preventing write operations. Supports connection pooling, command validation, and comprehensive logging for audit trails.
    5
    1
  • A
    license
    Not graded
    quality
    C
    maintenance
    Enables AI assistants to securely execute SSH commands on remote servers with connection pooling, session isolation, and a web audit panel.
    3
    MIT

View all related MCP servers

Related MCP Connectors

  • Let AI operate servers without SSH. Choose actions, approve risky changes, and audit every step.

  • Operate Linux, macOS and Windows from your LLM. Every action runs through an auditable allowlist.

  • Read-only access to Auralogs production logs: search logs, inspect errors, review AI analyses.

View all MCP Connectors

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