Railway MCP Server
Gestiona la infraestructura de Railway mediante lenguaje natural usando la API de Railway.
Documentación
Railway MCP Server
Permite que Claude y otros clientes MCP gestionen tu infraestructura de Railway.app. Despliega servicios, gestiona variables y monitorea despliegues, todo mediante lenguaje natural.
| Nota: Esto está en desarrollo y no todas las funciones están disponibles aún. 🚧 |
|---|
Un servidor de Model Context Protocol (MCP) para integrarse con la plataforma Railway.app.
Tabla de Contenidos
Características • Instalación • Herramientas Disponibles • Ejemplos de Flujos de Trabajo • Seguridad • Solución de Problemas • Contribuciones
Características
| Estado | Significado |
|---|---|
| ✅ | Completo |
| 🚧🔨⏳ | En construcción o necesita pruebas |
| ❌ | No construido por el momento |
- ✅ Autenticación con tokens de API de Railway
- ✅ Gestión de proyectos (listar, información, eliminar)
- ✅ Gestión de despliegues (listar, reiniciar)
- ✅ Gestión de servicios (crear desde repositorio de GitHub o imagen Docker, listar)
- ✅ Gestión de variables (listar, crear/actualizar, eliminar)
- ✅ Gestión de red de servicios
- ✅ Gestión de volúmenes
- ❌ Soporte completo para todas las plantillas
- 🚧🔨⏳ Soporte de plantillas de bases de datos
- Flujos de trabajo automáticos de bases de datos y redes
- 🚧🔨⏳ Los flujos de trabajo más utilizados
- ❌ Vinculación automática de repositorios de GitHub para servicios
Instalación
Requisitos previos
- Node.js 18+ (para soporte de la API fetch integrada)
- Una cuenta activa de Railway
- Un token de API de Railway (crea uno en https://railway.app/account/tokens)
Inicio rápido
Este servidor MCP está diseñado para funcionar con clientes MCP como:
- Claude for Desktop | ✅ Probado en batalla
- Cursor | ✅ Necesita pruebas
- Cline | 🚧🔨⏳ Necesita pruebas
- Windsurf | 🚧🔨⏳ Necesita pruebas
- Otros clientes MCP | 🚧🔨⏳ Necesita pruebas
Instalación mediante Smithery
Para instalar railway-mcp automáticamente, recomendamos usar Smithery
Claude Desktop
npx -y @smithery/cli install @jason-tan-swe/railway-mcp --client claude
Cursor
npx -y @smithery/cli@latest run @jason-tan-swe/railway-mcp --config "{\"railwayApiToken\":\"token\"}"
Instalación manual para Cursor
-
Ve a la configuración de Cursor y encuentra la sección MCP
-
Haz clic en 'Agregar nuevo servidor MCP'
-
Nómbralo como quieras, recomendamos
railway-mcppara mayor claridad -
Pega este comando en la sección 'Comando', donde <RAILWAY_API_TOKEN> es el token de Railway de tu cuenta:
npx -y @jasontanswe/railway-mcp <RAILWAY_API_TOKEN>
Instalación manual para Claude
-
Crea o edita tu archivo de configuración de Claude for Desktop:
- macOS:
~/Library/Application\ Support/Claude/claude_desktop_config.json - Windows:
%APPDATA%\Claude\claude_desktop_config.json
- macOS:
-
Agrega el servidor railway-mcp a tu configuración con tu token de API:
"railway": {
"command": "npx",
"args": ["-y", "@jasontanswe/railway-mcp"],
"env": {
"RAILWAY_API_TOKEN": "your-railway-api-token-here"
}
}
Cuando tengas varios servidores MCP, tu archivo de configuración podría verse así:
{
"mcpServers": {
// ... All of your existing MCP servers ...
// Add the railway-mcp server to your configuration with your API token
"railway": {
"command": "npx",
"args": ["-y", "@jasontanswe/railway-mcp"],
"env": {
"RAILWAY_API_TOKEN": "your-railway-api-token-here"
}
}
}
}
-
Reinicia Claude for Desktop
-
Ahora puedes empezar a usar las herramientas de Railway directamente en Claude. Por ejemplo:
Please list all my Railway projects
- Alternativamente, si no quieres agregar tu token al archivo de configuración, puedes configurarlo dentro de Claude usando:
Please configure the Railway API with my token: {YOUR_API_TOKEN_HERE}
Recomendaciones y otra información
Este servidor se combina mejor con clientes MCP que tengan acceso a terminal o con Git (Cursor, Windsurf). Se recomienda usar este MCP con otros, ya que railway-mcp orquesta contenedores y agiliza tu proceso de despliegue sin problemas.
Servidores MCP recomendados para combinar
- Git || Enlace oficial
- GitHub || Oficial || Smithery
Para Claude
- De fábrica, Claude no tiene acceso a terminal, por lo que no puede activar despliegues ya que no podrá obtener el último commit.
- Levantar diferentes servicios y monitorearlos es el mejor caso de uso con Claude.
Para Cursor
- Usa con GitHub MCP o ten el repositorio ya configurado en GitHub y clonado localmente en tu máquina para aprovechar la integración completa con railway-mcp.
- Cuando Cursor hace un cambio, puede olvidar enviar sus cambios a GitHub, lo que provoca que intente desplegar un commit que Railway no puede extraer.
- SOLUCIÓN: Siempre pregunta o incluye en algún lugar de tu prompt:
Have you pushed our changes to GitHub yet?
- SOLUCIÓN: Siempre pregunta o incluye en algún lugar de tu prompt:
Consideraciones de seguridad
- Los tokens de API de Railway proporcionan acceso completo a tu cuenta. Mantenlos seguros.
- Cuando se usa el método de variable de entorno, tu token se almacena en el archivo de configuración de Claude Desktop.
- Los valores de variables sensibles se enmascaran automáticamente al mostrarse.
- Todas las llamadas a la API usan HTTPS para una comunicación segura.
- El almacenamiento de tokens solo en memoria del servidor significa que tu token nunca se escribe en disco fuera del archivo de configuración.
Solución de problemas
Si encuentras problemas:
-
Problemas de autenticación de token
- Asegúrate de que tu token de API sea válido y tenga los permisos necesarios
- Si usas el método de variable de entorno, verifica que el token esté correctamente formateado en el archivo de configuración
- Intenta usar la herramienta
configuredirectamente en Claude si el token de entorno no funciona
-
Problemas de conexión del servidor
- Verifica que hayas instalado la última versión del servidor
- Verifica que esté instalada la versión 18 o superior de Node.js
- Reinicia Claude for Desktop después de hacer cambios en la configuración
-
Errores de API
- Verifica que estés usando los IDs correctos de proyecto, entorno y servicio
- Revisa la página de estado de Railway para ver si hay interrupciones del servicio
- La API de Railway tiene límites de velocidad: evita hacer demasiadas solicitudes en un período corto
Contribuciones
¡Damos la bienvenida a contribuciones de la comunidad! Consulta nuestras Guías de contribución para obtener detalles sobre cómo comenzar, pautas de desarrollo e información de depuración.
Herramientas disponibles
Ver todo
Autenticación
configure- Establece tu token de API de Railway (solo necesario si no se proporciona en variables de entorno)
Proyectos
project-list- Lista todos los proyectos en tu cuentaproject-info- Obtén información detallada sobre un proyecto específicoproject-create- Crea un nuevo proyecto con ID de equipo opcionalproject-delete- Elimina un proyectoproject-environments- Lista todos los entornos en un proyecto
Servicios
service-list- Lista todos los servicios en un proyecto específicoservice-info- Obtén información detallada sobre un servicio específicoservice-create-from-repo- Crea un nuevo servicio desde un repositorio de GitHubservice-create-from-image- Crea un nuevo servicio desde una imagen Dockerservice-delete- Elimina un servicio de un proyectoservice-restart- Reinicia un servicio en un entorno específicoservice-update- Actualiza la configuración del servicio (comando de compilación, comando de inicio, etc.) | 🚧 Necesita pruebas
Despliegues
deployment-list- Lista los despliegues recientes de un serviciodeployment-trigger- Activa un nuevo despliegue para un serviciodeployment-logs- Obtén los registros de un despliegue específicodeployment-health-check- Verifica la salud/estado de un despliegue
Variables
variable-list- Lista las variables de un servicio o entornovariable-set- Crea o actualiza una variablevariable-delete- Elimina una variablevariable-bulk-set- Actualización masiva de variables para un servicio | 🚧 Necesita pruebasvariable-copy- Copia variables entre entornos | 🚧 Necesita pruebas
Bases de datos
database-list-types- Lista todos los tipos de bases de datos disponibles que se pueden desplegardatabase-deploy- Despliega un nuevo servicio de base de datos
Ejemplos de flujos de trabajo
Configuración de un nuevo servicio
- Lista los proyectos para obtener el ID del proyecto
- Crea un nuevo servicio desde una plantilla
- Agrega variables de entorno
- Visualiza el despliegue del servicio
Gestión de variables de entorno
- Lista los proyectos para encontrar tu ID de proyecto
- Lista las variables para ver lo que está configurado actualmente
- Crea o actualiza variables según sea necesario
- Elimina cualquier variable obsoleta
