Skip to main content
Glama
erwinkn

railway-sandbox-mcp

by erwinkn

railway-sandbox-mcp

Un pequeño puente MCP que permite a ChatGPT controlar Railway Sandboxes como un entorno de desarrollo/ejecución aislado.

Arquitectura

Ambos servicios Railway de larga duración se despliegan desde este repositorio de GitHub mediante la integración de GitHub de Railway:

Servicio Railway

Rama de GitHub

Directorio raíz de Railway

Archivo de configuración como código

Propósito

sandbox-mcp

main

/

/railway.json

Servidor MCP Node respaldado por el SDK de Railway Sandbox

tunnel-client

main

/tunnel-client

/tunnel-client/railway.json

Cliente de túnel MCP seguro de OpenAI

El Dockerfile de tunnel-client hereda la imagen oficial ghcr.io/openai/tunnel-client:latest y solo envuelve su punto de entrada para que el servidor de salud/disponibilidad ascendente se vincule al PORT inyectado por Railway. Railway posee el ciclo de vida del despliegue mientras que OpenAI sigue siendo el proveedor de la imagen ascendente.

ChatGPT
  |
  v
OpenAI Secure MCP Tunnel
  ^
  | outbound HTTPS
  |
tunnel-client (Railway)
  |
  | Railway private network
  v
sandbox-mcp:8080/mcp (Railway)
  |
  v
Railway Sandbox SDK
  |
  v
Ephemeral isolated Linux sandboxes with outbound Internet

Ninguno de los servicios Railway necesita un dominio público.

Related MCP server: Railway MCP Server

Configuración como código

El comportamiento de despliegue está comprometido en este repositorio:

  • /railway.json define el constructor del servicio MCP, rutas de observación, comando de inicio, verificación de salud y política de reinicio.

  • /tunnel-client/railway.json define la compilación Docker del cliente de túnel, rutas de observación, verificación de disponibilidad y política de reinicio.

  • /tunnel-client/Dockerfile selecciona la imagen oficial del cliente de túnel de OpenAI y adapta su listener de salud al PORT inyectado por Railway.

  • /.github/workflows/ci.yml valida el servicio Node y los archivos de configuración de Railway y compila la imagen del cliente de túnel en pushes y pull requests.

La configuración de Railway comprometida en código anula los valores equivalentes de compilación/despliegue del panel para cada despliegue.

Configuración única del servicio Railway

La asociación de fuente, la rama de activación y la ruta personalizada del archivo de configuración son metadatos del servicio Railway, no campos dentro de railway.json, por lo que se configuran una vez en Railway:

sandbox-mcp

  • Repositorio de origen: erwinkn/railway-sandbox-mcp

  • Rama: main

  • Directorio raíz: /

  • Ruta del archivo de configuración: /railway.json

  • Autodespliegue de GitHub: habilitado

  • Esperar a CI: habilitado

tunnel-client

  • Repositorio de origen: erwinkn/railway-sandbox-mcp

  • Rama: main

  • Directorio raíz: /tunnel-client

  • Ruta del archivo de configuración: /tunnel-client/railway.json

  • Autodespliegue de GitHub: habilitado

  • Esperar a CI: habilitado

  • Sin comando de inicio personalizado; heredar el punto de entrada del Dockerfile del repositorio

Las rutas de observación específicas del servicio significan que los cambios solo de MCP no reconstruyen el cliente de túnel, y los cambios solo de túnel no reconstruyen el servidor MCP.

Variables de entorno requeridas

sandbox-mcp

  • RAILWAY_API_TOKEN: Token de API de Railway con acceso al entorno donde los Sandboxes están habilitados.

  • RAILWAY_ENVIRONMENT_ID: inyectado automáticamente por Railway.

tunnel-client

  • MCP_SERVER_URL=http://sandbox-mcp.railway.internal:8080/mcp

  • CONTROL_PLANE_TUNNEL_ID=tunnel_...

  • CONTROL_PLANE_API_KEY=...: clave de runtime de OpenAI restringida con permisos de Lectura y Uso de Túnel.

  • LOG_LEVEL=info

  • LOG_FORMAT=json

tunnel-client expone /healthz, /readyz y /metrics en el puerto inyectado por Railway. Railway usa /readyz como verificación de salud del despliegue, por lo que un despliegue exitoso del cliente de túnel verifica tanto el inicio del túnel como la disponibilidad del MCP descendente.

Flujo de despliegue

Un push a main ejecuta GitHub Actions. Con Esperar a CI de Railway habilitado, Railway espera a que CI pase y luego autodespliega solo los servicios cuyos patrones de observación coinciden con los archivos modificados.

Herramientas MCP

  • sandbox_create

  • sandbox_list

  • sandbox_get

  • sandbox_exec

  • sandbox_read_file

  • sandbox_list_files

  • sandbox_write_file

  • sandbox_write_files

  • sandbox_checkpoint

  • sandbox_destroy

F
license - not found
Not graded
quality - not tested
B
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 spawning ephemeral Linux sandbox containers using Docker and executing commands through an interactive TTY interface. Supports collaborative terminal sessions where both AI clients and humans can simultaneously interact with the same container.
    27
    MIT
  • A
    license
    A
    quality
    D
    maintenance
    Enables management of Railway.app infrastructure through natural language, including deploying services from GitHub repos or Docker images, managing environment variables, monitoring deployments, and configuring networking and volumes.
    36
    49
    MIT

View all related MCP servers

Related MCP Connectors

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

  • Provides cloud browser automation capabilities using Stagehand and Browserbase, enabling LLMs to i…

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

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/erwinkn/railway-sandbox-mcp'

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