railway-sandbox-mcp
railway-sandbox-mcp
Небольшой MCP-мост, который позволяет ChatGPT использовать Railway Sandboxes в качестве изолированной среды разработки и выполнения.
Архитектура
Оба долгоживущих сервиса Railway развертываются из этого репозитория GitHub через интеграцию Railway с GitHub:
Railway-сервис | Ветка GitHub | Корневой каталог Railway | Файл конфигурации как код | Назначение |
|
|
|
| Node MCP-сервер на базе Railway Sandbox SDK |
|
|
|
| Клиент OpenAI Secure MCP Tunnel |
Dockerfile для tunnel-client наследует официальный образ ghcr.io/openai/tunnel-client:latest и лишь оборачивает его entrypoint, чтобы вышестоящий сервер проверки готовности/health привязывался к внедряемому Railway PORT. Railway отвечает за жизненный цикл развертывания, а OpenAI остается вышестоящим поставщиком образа.
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Ни одному из сервисов Railway не нужен публичный домен.
Related MCP server: Railway MCP Server
Конфигурация как код
Поведение развертывания зафиксировано в этом репозитории:
/railway.jsonопределяет сборщик MCP-сервиса, пути отслеживания, команду запуска, проверку здоровья и политику перезапуска./tunnel-client/railway.jsonопределяет Docker-сборку tunnel-client, пути отслеживания, проверку готовности и политику перезапуска./tunnel-client/Dockerfileвыбирает официальный образ OpenAI tunnel-client и адаптирует его health-прослушиватель к внедряемому RailwayPORT./.github/workflows/ci.ymlпроверяет Node-сервис и конфигурационные файлы Railway, а также собирает образ tunnel-client при пушах и pull request.
Конфигурация Railway, зафиксированная в коде, переопределяет эквивалентные значения сборки/развертывания из панели управления для каждого развертывания.
Разовое подключение сервисов Railway
Привязка источника, триггерная ветка и пользовательский путь к конфигурационному файлу являются метаданными сервиса Railway, а не полями внутри railway.json, поэтому настройте их один раз в Railway:
sandbox-mcp
Репозиторий-источник:
erwinkn/railway-sandbox-mcpВетка:
mainКорневой каталог:
/Путь к конфигурационному файлу:
/railway.jsonАвторазвертывание GitHub: включено
Ожидание CI: включено
tunnel-client
Репозиторий-источник:
erwinkn/railway-sandbox-mcpВетка:
mainКорневой каталог:
/tunnel-clientПуть к конфигурационному файлу:
/tunnel-client/railway.jsonАвторазвертывание GitHub: включено
Ожидание CI: включено
Без пользовательской команды запуска; используется entrypoint из Dockerfile репозитория
Специфичные для сервисов пути отслеживания означают, что изменения только в MCP не пересобирают tunnel-client, а изменения только в тоннеле не пересобирают MCP-сервер.
Требуемые переменные окружения
sandbox-mcp
RAILWAY_API_TOKEN: API-токен Railway с доступом к окружению, где включены Sandboxes.RAILWAY_ENVIRONMENT_ID: внедряется автоматически Railway.
tunnel-client
MCP_SERVER_URL=http://sandbox-mcp.railway.internal:8080/mcpCONTROL_PLANE_TUNNEL_ID=tunnel_...CONTROL_PLANE_API_KEY=...: ограниченный ключ среды выполнения OpenAI с разрешениями Tunnel Read + Use.LOG_LEVEL=infoLOG_FORMAT=json
tunnel-client публикует /healthz, /readyz и /metrics на внедряемом Railway порту. Railway использует /readyz как проверку здоровья развертывания, поэтому успешное развертывание tunnel-client подтверждает и запуск тоннеля, и готовность нижестоящего MCP.
Процесс развертывания
Пуш в main запускает GitHub Actions. С включенной опцией Railway Wait for CI Railway ждет прохождения CI, а затем автоматически развертывает только те сервисы, чьи шаблоны отслеживания соответствуют измененным файлам.
Инструменты MCP
sandbox_createsandbox_listsandbox_getsandbox_execsandbox_read_filesandbox_list_filessandbox_write_filesandbox_write_filessandbox_checkpointsandbox_destroy
This server cannot be deployed
Maintenance
Related MCP Connectors
Develop, manage, and debug Railway projects, services, and deployments from within agents.
Linux VMs for AI agents: create VMs, run commands, edit files and open preview URLs.
Use your Mac, Windows or Linux computer from ChatGPT, Claude or Codex: files, commands, documents.
A persistent Linux computer for your AI: what it installs and writes survives the session.
Related MCP Servers
AlicenseNot gradedqualityDmaintenanceEnables 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.27MIT- AlicenseAqualityDmaintenanceEnables AI systems like Claude and Cursor to directly manage Railway projects, deployments, services, environment variables, and monitor logs through natural language commands.910 npmMIT
- FlicenseNot gradedqualityCmaintenanceEnables AI agents to operate a persistent Linux sandbox in the cloud, running commands, managing files, using Git, and publishing artifacts through a Streamable HTTP MCP endpoint.-
- AlicenseNot gradedqualityBmaintenanceEnables ChatGPT to securely inspect and administer a Linux VPS over Streamable HTTP, with OAuth protection, workspace file tools, and optional root command execution.MIT