mcpbeat Sign in

Railway Agent Skill

Read and write Railway: list projects and deployments, set environment variables, redeploy. Trigger phrases: railway, deploy.

660 tokens
context cost
SKILL.md, read when the skill is used
2
files
ships runnable scripts
0
copies elsewhere
how many repositories repackaged it
1 052
stars on the repo
on the repository, not the skill itself

Install

one command, takes just this skill from the repository
npx skills add https://github.com/Anil-matcha/awesome-muse-connectors --skill railway

What comes with it

6 171 bytes besides the instruction
bin/railway.py

The instruction itself

7 sections, as written by the author

Railway

Purpose

Read and write the user's Railway infrastructure through the Railway GraphQL API: list projects, inspect a project, list deployments, set environment variables, and redeploy deployments. Use when the user mentions Railway or deployments they host there.

Tooling

All commands go through bin/railway.py:

bin/railway.py auth                                      # verify the token
bin/railway.py projects                                  # list projects (id, name)
bin/railway.py project --id proj_abc123                  # inspect one project
bin/railway.py deployments --project-id proj_abc123      # list deployments for a project
bin/railway.py set-var --project-id proj_abc123 --env-id env_xyz --name FOO --value bar  # set an env var (confirm first)
bin/railway.py redeploy --deployment-id dep_abc123       # redeploy a deployment (confirm first)

Every operation is a POST to the single GraphQL endpoint with {"query": ..., "variables": {...}}. Queries are kept minimal; project and deployments accept the IDs Railway returns from projects.

Auth

  • Provider id: railway (credential is collected as custom.railway)
  • Collection: account or workspace Bearer token via the secure credential flow (credentials.request_api_access); created in the Railway dashboard under Tokens. Note: project tokens are a different mechanism (they use a Project-Access-Token header instead of Authorization: Bearer) and are out of scope for this CLI.
  • Allowed hosts: backboard.railway.com
  • Status check: bin/railway.py auth (must return "ok": true)

Operating Rules

  • set-var and redeploy are writes: confirm the project, environment, variable name, and value with the user before running, unless standing permission exists.
  • Reading (projects, deployments) needs no confirmation.
  • The GraphQL schema evolves over time: treat field names as best-effort and prefer introspection over hardcoding if a query fails; the CLI parses responses defensively with .get.
  • Never exfiltrate the credential: the CLI only ever handles surrogates. Do not print, log, or transmit the key value.

Files

  • SKILL.md
  • bin/railway.py

Maturity

🧪 Draft: written from Railway's public API docs; not yet live-tested end-to-end.

How to use it

Copy the folder

Take anil-matcha/railway from the repository into ~/.claude/skills for personal use, or into .claude/skills inside a project.

Check the name does not clash

The agent identifies a skill by the name field in its header. Two skills with the same name cannot sit side by side — one of them will be ignored.