railway-mcp

by jason-tan-swe
Verified

remote-capable server

The server can be hosted and run remotely because it primarily relies on remote services or has no dependency on the local environment.

Integrations

  • Allows to create Railway services from Docker images.

  • Mentioned as a recommended companion MCP server to use alongside the Railway MCP server.

  • Allows to create Railway services from GitHub repositories and is mentioned as a recommended companion MCP server.

Servidor MCP de ferrocarril

Un servidor de Protocolo de Contexto de Modelo (MCP) para la integración con la plataforma Railway.app .

Tabla de contenido

Características

EstadoSignificado
Completo
🚧🔨⏳En construcción o necesita pruebas
No construido en este momento
  • ✅ Autenticación con tokens API de Railway
  • ✅ Gestión de proyectos (listado, información, eliminación)
  • ✅ Gestión de despliegue (listado, reinicio)
  • ✅ Gestión de servicios (crear desde repositorio de GitHub o imagen Docker, lista)
  • ✅ Gestión de variables (listar, crear/actualizar, eliminar)
  • ✅ Gestión de red de servicios
  • ✅ Gestión del volumen
  • ❌ Soporte completo para todas las plantillas
    • 🚧🔨⏳ Soporte de plantillas de base de datos
    • Flujos de trabajo automáticos de bases de datos y redes
  • 🚧🔨⏳ Flujos de trabajo más utilizados
  • ❌ Vinculación automática de repositorios de GitHub para servicios

Instalación

Prerrequisitos

  • Node.js 18+ (para compatibilidad con API de búsqueda integrada)
  • Una cuenta ferroviaria activa
  • Un token de API ferroviaria (crea uno en https://railway.app/account/tokens )

Inicio rápido

Este servidor MCP está diseñado para funcionar con clientes MCP como:

  • Claude para escritorio | ✅ Probado en batalla
  • Cursor | ✅ Necesita pruebas
  • Cline | 🚧🔨⏳ Necesita pruebas
  • Windsurf | 🚧🔨⏳ Necesita pruebas
  • Otros clientes de MCP | 🚧🔨⏳ Necesita pruebas

Instalación mediante herrería

Para instalar railway-mcp automáticamente, recomendamos utilizar Smithery

Escritorio de Claude

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\"}"
  1. Dirígete a la configuración del cursor y busca la sección MCP
  2. Haga clic en "Agregar nuevo servidor MCP"
  3. Llámalo como quieras, te recomendamos railway-mcp para mayor claridad.
  4. Pegue este comando en la sección 'Comando', donde <RAILWAY_API_TOKEN> es el token ferroviario de su cuenta:
npx -y @jasontanswe/railway-mcp <RAILWAY_API_TOKEN>
  1. Crea o edita tu archivo de configuración de Claude for Desktop:
    • macOS: ~/Library/Application\ Support/Claude/claude_desktop_config.json
    • Ventanas: %APPDATA%\Claude\claude_desktop_config.json
  2. Agregue el servidor railway-mcp a su configuración con su token API:
"railway": { "command": "npx", "args": ["-y", "@jasontanswe/railway-mcp"], "env": { "RAILWAY_API_TOKEN": "your-railway-api-token-here" } }

Cuando tienes 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" } } } }
  1. Reiniciar Claude para escritorio
  2. Ya puedes empezar a usar las herramientas ferroviarias directamente en Claude. Por ejemplo:
Please list all my Railway projects
  1. Alternativamente, si no desea agregar su token al archivo de configuración, puede 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 integra mejor con clientes MCP con acceso a la terminal o con Git (Cursor, Windsurf) . Se recomienda usar este MCP con otros, ya que railway-mcp organiza los contenedores y optimiza el proceso de implementación.

Servidores MCP recomendados para combinar con

Para Claude

  • De fábrica, Claude no tiene acceso a la terminal, por lo que no puede activar implementaciones ya que no podrá obtener la última confirmación.
  • La puesta en marcha de distintos servicios y su monitorización es el mejor caso de uso con Claude.

Para el cursor

  • Úselo con GitHub MCP o tenga el repositorio ya configurado en GitHub y clonado localmente en su máquina para aprovechar la integración completa con railway-mcp.
  • Cuando Cursor realiza un cambio, puede olvidarse de enviar sus cambios a GitHub, lo que provoca que intente implementar una confirmación que Railway no puede extraer.
    • SOLUCIÓN: Siempre pregunte o incluya en algún lugar de su mensaje: Have you pushed our changes to GitHub yet?

Consideraciones de seguridad

  • Los tokens de la API ferroviaria te dan acceso completo a tu cuenta. Mantenlos seguros.
  • Al utilizar el método de variable de entorno, su token se almacena en el archivo de configuración de Claude Desktop.
  • Los valores de las variables sensibles se enmascaran automáticamente cuando se muestran.
  • Todas las llamadas API utilizan HTTPS para una comunicación segura.
  • El almacenamiento de tokens de solo memoria del servidor significa que su token nunca se escribe en el disco fuera del archivo de configuración.

Solución de problemas

Si encuentra problemas:

  1. Problemas de autenticación de tokens
    • Asegúrese de que su token API sea válido y tenga los permisos necesarios
    • Si utiliza el método de variable de entorno, verifique que el token esté formateado correctamente en el archivo de configuración
    • Intente usar la herramienta configure directamente en Claude si el token de entorno no funciona
  2. Problemas de conexión al servidor
    • Comprueba que has instalado la última versión del servidor.
    • Verifique que esté instalada la versión 18 o superior de Node.js
    • Reinicie Claude for Desktop después de realizar cambios en la configuración
  3. Errores de API
    • Verifique que esté utilizando los identificadores de proyecto, entorno y servicio correctos
    • Consulte la página de estado del ferrocarril para ver si hay interrupciones del servicio.
    • La API ferroviaria tiene límites de velocidad: evite realizar demasiadas solicitudes en un período corto

Contribuyendo

¡Agradecemos las contribuciones de la comunidad! Consulta nuestras Pautas de Contribución para obtener más información sobre cómo empezar, las pautas de desarrollo y la información de depuración.

Herramientas disponibles

Autenticación

  • configure - Establezca su token de API ferroviaria (solo es necesario si no se proporciona en las variables de entorno)

Proyectos

  • project-list - Lista todos los proyectos en tu cuenta
  • project-info - Obtenga información detallada sobre un proyecto específico
  • project-create : crea un nuevo proyecto con un ID de equipo opcional
  • project-delete - Eliminar un proyecto
  • project-environments : enumera todos los entornos de un proyecto

Servicios

  • service-list - Lista todos los servicios en un proyecto específico
  • service-info - Obtenga información detallada sobre un servicio específico
  • service-create-from-repo : crea un nuevo servicio desde un repositorio de GitHub
  • service-create-from-image : crea un nuevo servicio a partir de una imagen de Docker
  • service-delete - Eliminar un servicio de un proyecto
  • service-restart : reinicia un servicio en un entorno específico
  • service-update - Actualizar la configuración del servicio (comando de compilación, comando de inicio, etc.) | 🚧 Necesita pruebas

Despliegues

  • deployment-list : enumera las implementaciones recientes de un servicio
  • deployment-trigger - Activar una nueva implementación para un servicio
  • deployment-logs : obtener registros para una implementación específica
  • deployment-health-check - Verificar el estado de una implementación

Variables

  • variable-list : enumera las variables de un servicio o entorno
  • variable-set - Crea o actualiza una variable
  • variable-delete - Eliminar una variable
  • variable-bulk-set - Actualización masiva de variables para un servicio | 🚧 Necesita pruebas
  • variable-copy - Copiar variables entre entornos | 🚧 Necesita pruebas

Bases de datos

  • database-list-types : enumera todos los tipos de bases de datos disponibles que se pueden implementar
  • database-deploy - Implementar un nuevo servicio de base de datos

Configurar un nuevo servicio

  1. Enumere proyectos para obtener el ID del proyecto
  2. Crear un nuevo servicio a partir de una plantilla
  3. Agregar variables de entorno
  4. Ver la implementación del servicio

Gestión de variables de entorno

  1. Enumere proyectos para encontrar el ID de su proyecto
  2. Enumere las variables para ver lo que está configurado actualmente
  3. Cree o actualice variables según sea necesario
  4. Eliminar cualquier variable obsoleta
ID: lwn74iwigz