variable_copy moves an entire environment's configuration across with an overwrite flag, and variable_bulk_set does the same from a payload you assemble, which is the difference between a five-minute setup and an afternoon of retyping connection strings. The destructive calls are just as direct and take no confirmation parameter: project_delete removes a project and every resource inside it, and volume_delete takes only a volumeId.
A Railway control surface in 38 tools, grouped by the thing you are changing: projects and their environments, services and their deployments, domains and TCP proxies, environment variables, persistent volumes, and Railway's own database and service templates.
- The account's projects, one project's detail, its environments and its services with configuration and status
- Services created from a GitHub repository or from a Docker image, and updated afterwards — build command, start command, replica count, health-check path, region, root directory
- A deployment triggered at a commit SHA, then its status, its logs and the history of earlier ones
- Environment variables set or deleted one at a time, written in bulk, or copied wholesale from one environment into another
- HTTPS domains checked for availability, created, retargeted to a different port, and deleted; TCP proxies for the services that need a raw port instead
- Persistent volumes attached at a mount path, plus Railway's supported database types and its template catalogue for deploying one
A Railway account and its API token. The token can sit in the environment, or be handed to the server at runtime through configure_api_token.
One command plus a key — npx -y @jasontanswe/railway-mcp <RAILWAY_API_TOKEN>, then supply credentials
