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 installed
Maintenance
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
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 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.3649MIT
- AlicenseAqualityDmaintenanceEnables management of Railway.app infrastructure through natural language, including deploying services, managing environment variables, monitoring deployments, and handling databases and volumes.3649MIT
- AlicenseAqualityDmaintenanceEnables AI systems like Claude and Cursor to directly manage Railway projects, deployments, services, environment variables, and monitor logs through natural language commands.97MIT
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.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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