home / mcp / railway mcp server

Railway MCP Server

An unofficial and community-built MCP server for integrating with https://railway.app

Installation
Add the following to your MCP client configuration file.

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.

How to use

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.

How to install

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 claude

Install via Cursor (for Cursor users):

npx -y @smithery/cli@latest run @jason-tan-swe/railway-mcp --config "{\"railwayApiToken\":\"token\"}"

Available tools

configure

Set or update the Railway API token used by the MCP server when not provided via environment variables. This enables authenticating subsequent commands.

project-list

List all projects in your Railway account to identify project IDs and scope for further actions.

project-info

Get detailed information about a specific project, including environments and services.

project-create

Create a new Railway project, optionally associating it with a team.

project-delete

Remove a project from your Railway account.

project-environments

List all environments within a given project to plan deployments.

service-list

List all services within a specific project to view existing deployments.

service-info

Get detailed information about a particular service including status and configuration.

service-create-from-repo

Create a new service by connecting a GitHub repository.

service-create-from-image

Create a new service from a Docker image.

service-delete

Delete a service from a project.

service-restart

Restart a service in a specified environment to redeploy changes.

service-update

Update service configuration such as build and start commands.

deployment-list

List recent deployments for a service to review changes.

deployment-trigger

Trigger a new deployment for a service to apply updates.

deployment-logs

Fetch logs for a specific deployment to diagnose issues.

deployment-health-check

Check the health status of a deployment to ensure it is running correctly.

variable-list

List variables for a service or environment to review configuration.

variable-set

Create or update a variable for a service or environment.

variable-delete

Delete a variable from a service or environment.

variable-bulk-set

Bulk update environment variables for a service (when supported).

variable-copy

Copy variables between environments to standardize configurations.

database-list-types

List available database templates/types that can be deployed.

database-deploy

Deploy a new database service from a supported template.