mcpField
R
railway-projects

railway-projects

github.com/davila7Cloud & DevOps33.0k281 installsUpdated 1d ago
Repository

About railway-projects

railway-projects is a project management skill for Railway users. It lists projects and workspaces, switches the active project, and changes project settings through the Railway CLI and GraphQL API.

Key features

  1. 01List projects and their workspaces
  2. 02View workspace listings
  3. 03Switch the active project
  4. 04Rename projects and edit descriptions
  5. 05Configure PR deploys and visibility

Use cases

  1. 01Review projects and workspaces in an account
  2. 02Link the current directory to another project
  3. 03Change a project name or description
  4. 04Enable PR deploys or change project visibility

Install

Copy the command and run it in a terminal.

$npx skills add https://github.com/davila7/claude-code-templates --skill railway-projects

After installing, type/railway-projectsin Claude Code to confirm it loaded.

Details

From the project README

Railway Project Management

List, switch, and configure Railway projects.

When to Use

  • User asks "show me all my projects" or "what projects do I have"
  • User asks about projects across workspaces
  • User asks "what workspaces do I have"
  • User wants to switch to a different project
  • User asks to rename a project
  • User wants to enable/disable PR deploys
  • User wants to make a project public or private
  • User asks about project settings

List Projects

The railway list --json output can be very large. Run in a subagent and return only essential fields:

  • Project: id, name
  • Workspace: id, name
  • Services: name (optional, if user needs service context)
railway list --json

Extract and return a simplified summary, not the full JSON.

List Workspaces

railway whoami --json

Returns user info including all workspaces the user belongs to.

Switch Project

Link a different project to the current directory:

railway link -p <project-id-or-name>

Or interactively:

railway link

After switching, use railway-status skill to see project details.

Update Project

Modify project settings via GraphQL API.

Get Project ID
railway status --json

Extract project.id from the response.

Update Mutation
bash <<'SCRIPT'
${CLAUDE_PLUGIN_ROOT}/skills/lib/railway-api.sh \
  'mutation updateProject($id: String!, $input: ProjectUpdateInput!) {
    projectUpdate(id: $id, input: $input) { name prDeploys isPublic botPrEnvironments }
  }' \
  '{"id": "PROJECT_ID", "input": {"name": "new-name"}}'
SCRIPT
ProjectUpdateInput Fields
FieldTypeDescription
nameStringProject name
descriptionStringProject description
isPublicBooleanMake project public/private
prDeploysBooleanEnable/disable PR deploys
botPrEnvironmentsBooleanEnable Dependabot/Renovate PR environments
Examples

Rename project:

${CLAUDE_PLUGIN_ROOT}/skills/lib/railway-api.sh '<mutation>' '{"id": "uuid", "input": {"name": "new-name"}}'

Enable PR deploys:

${CLAUDE_PLUGIN_ROOT}/skills/lib/railway-api.sh '<mutation>' '{"id": "uuid", "input": {"prDeploys": true}}'

Make project public:

${CLAUDE_PLUGIN_ROOT}/skills/lib/railway-api.sh '<mutation>' '{"id": "uuid", "input": {"isPublic": true}}'

Multiple fields:

${CLAUDE_PLUGIN_ROOT}/skills/lib/railway-api.sh '<mutation>' '{"id": "uuid", "input": {"name": "new-name", "prDeploys": true}}'

Composability

  • View project details: Use railway-status skill
  • Create new project: Use railway-new skill
  • Manage environments: Use railway-environment skill

Error Handling

Not Authenticated
Not authenticated. Run `railway login` first.
No Projects
No projects found. Create one with `railway init`.
Permission Denied
You don't have permission to modify this project. Check your Railway role.
Project Not Found
Project "foo" not found. Run `railway list` to see available projects.

Comments

Markdown supported