home / mcp / railway mcp server
An unofficial and community-built MCP server for integrating with https://railway.app
Configuration
View docs{
"mcpServers": {
"kruglyak-railway-mcp": {
"command": "npx",
"args": [
"-y",
"@smithery/cli",
"install",
"@jason-tan-swe/railway-mcp",
"--client",
"claude"
],
"env": {
"RAILWAY_API_TOKEN": "YOUR_API_TOKEN"
}
}
}
}This MCP server lets you connect MCP clients to Railway.app, enabling you to manage projects, deployments, services, and variables from natural language prompts. It centralizes Railway operations so you can control infrastructure with familiar MCP workflows.
You interact with the Railway MCP Server using an MCP client that supports stdio-based commands. Once connected, you can list projects, view and manage services, deploy updates, handle variables, and monitor deployments. You can issue natural language requests such as listing projects, inspecting a service, restarting a deployment, or creating a new service from a repository or image.
Prerequisites: you need Node.js 18 or newer, an active Railway account, and a Railway API token.
Install via Claude Desktop (recommended if you use Claude as your MCP client):
npx -y @smithery/cli install @jason-tan-swe/railway-mcp --client claudeInstall via Cursor (for Cursor users):
npx -y @smithery/cli@latest run @jason-tan-swe/railway-mcp --config "{\"railwayApiToken\":\"token\"}"Set or update the Railway API token used by the MCP server when not provided via environment variables. This enables authenticating subsequent commands.
List all projects in your Railway account to identify project IDs and scope for further actions.
Get detailed information about a specific project, including environments and services.
Create a new Railway project, optionally associating it with a team.
Remove a project from your Railway account.
List all environments within a given project to plan deployments.
List all services within a specific project to view existing deployments.
Get detailed information about a particular service including status and configuration.
Create a new service by connecting a GitHub repository.
Create a new service from a Docker image.
Delete a service from a project.
Restart a service in a specified environment to redeploy changes.
Update service configuration such as build and start commands.
List recent deployments for a service to review changes.
Trigger a new deployment for a service to apply updates.
Fetch logs for a specific deployment to diagnose issues.
Check the health status of a deployment to ensure it is running correctly.
List variables for a service or environment to review configuration.
Create or update a variable for a service or environment.
Delete a variable from a service or environment.
Bulk update environment variables for a service (when supported).
Copy variables between environments to standardize configurations.
List available database templates/types that can be deployed.
Deploy a new database service from a supported template.