Skip to main content
Glama
erwinkn

railway-sandbox-mcp

by erwinkn

railway-sandbox-mcp

Eine kleine MCP-Brücke, die es ChatGPT ermöglicht, Railway-Sandboxes als isolierte Entwicklungs-/Ausführungsumgebung zu steuern.

Architektur

Beide dauerhaft laufenden Railway-Dienste werden aus diesem GitHub-Repository über die GitHub-Integration von Railway bereitgestellt:

Railway-Dienst

GitHub-Branch

Railway-Stammverzeichnis

Config-as-code-Datei

Zweck

sandbox-mcp

main

/

/railway.json

Node-MCP-Server, unterstützt durch das Railway-Sandbox-SDK

tunnel-client

main

/tunnel-client

/tunnel-client/railway.json

OpenAI Secure MCP Tunnel-Client

Das tunnel-client-Dockerfile erbt das offizielle ghcr.io/openai/tunnel-client:latest-Image und umschließt nur dessen Entrypoint, sodass der Upstream-Health-/Readiness-Server an den von Railway injizierten PORT bindet. Railway besitzt den Deployment-Lebenszyklus, während OpenAI der Upstream-Image-Anbieter bleibt.

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

Keiner der Railway-Dienste benötigt eine öffentliche Domain.

Related MCP server: Railway MCP Server

Konfiguration als Code

Das Deployment-Verhalten ist in diesem Repository festgehalten:

  • /railway.json definiert den MCP-Dienst-Builder, Watch-Pfade, Startbefehl, Health-Check und Neustartrichtlinie.

  • /tunnel-client/railway.json definiert den Docker-Build des Tunnel-Clients, Watch-Pfade, Readiness-Check und Neustartrichtlinie.

  • /tunnel-client/Dockerfile wählt das offizielle OpenAI-Tunnel-Client-Image aus und passt dessen Health-Listener an den von Railway injizierten PORT an.

  • /.github/workflows/ci.yml validiert den Node-Dienst und die Railway-Konfigurationsdateien und erstellt das Tunnel-Client-Image bei Pushes und Pull Requests.

In Code festgehaltene Railway-Konfiguration überschreibt für jedes Deployment die entsprechenden Dashboard-Build-/Deploy-Werte.

Einmalige Railway-Dienst-Verdrahtung

Quellzuordnung, Trigger-Branch und der benutzerdefinierte Konfigurationsdateipfad sind Railway-Dienstmetadaten und keine Felder in railway.json. Konfigurieren Sie diese daher einmalig in Railway:

sandbox-mcp

  • Quell-Repository: erwinkn/railway-sandbox-mcp

  • Branch: main

  • Stammverzeichnis: /

  • Konfigurationsdateipfad: /railway.json

  • GitHub-Autodeploy: aktiviert

  • Warte auf CI: aktiviert

tunnel-client

  • Quell-Repository: erwinkn/railway-sandbox-mcp

  • Branch: main

  • Stammverzeichnis: /tunnel-client

  • Konfigurationsdateipfad: /tunnel-client/railway.json

  • GitHub-Autodeploy: aktiviert

  • Warte auf CI: aktiviert

  • Kein benutzerdefinierter Startbefehl; übernehmen Sie den Entrypoint des Repository-Dockerfiles.

Die dienstspezifischen Watch-Pfade bedeuten, dass reine MCP-Änderungen den Tunnel-Client nicht neu erstellen und reine Tunnel-Änderungen den MCP-Server nicht neu erstellen.

Erforderliche Umgebungsvariablen

sandbox-mcp

  • RAILWAY_API_TOKEN: Railway-API-Token mit Zugriff auf die Umgebung, in der Sandboxes aktiviert sind.

  • RAILWAY_ENVIRONMENT_ID: wird automatisch von Railway injiziert.

tunnel-client

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

  • CONTROL_PLANE_TUNNEL_ID=tunnel_...

  • CONTROL_PLANE_API_KEY=...: eingeschränkter OpenAI-Runtime-Schlüssel mit Tunnel-Lese- und -Nutzungsberechtigungen.

  • LOG_LEVEL=info

  • LOG_FORMAT=json

tunnel-client stellt /healthz, /readyz und /metrics auf dem von Railway injizierten Port bereit. Railway verwendet /readyz als Health-Check für das Deployment, sodass ein erfolgreiches Tunnel-Client-Deployment sowohl den Tunnelstart als auch die nachgelagerte MCP-Bereitschaft verifiziert.

Deployment-Ablauf

Ein Push auf main startet GitHub Actions. Mit aktiviertem Warte auf CI von Railway wartet Railway, bis CI erfolgreich ist, und stellt dann nur die Dienste automatisch bereit, deren Watch-Muster mit den geänderten Dateien übereinstimmen.

MCP-Tools

  • 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