首页
学习
活动
专区
圈层
工具
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
首页
学习
活动
专区
圈层
工具
MCP广场
MCP广场 >详情页
railway-mcp2025-05-300分享
github
让克劳德和光标通过自然语言管理您的铁路基础设施。自主且安全地部署、配置和监控。
By jason-tan-swe
2025-05-300
github
详情内容

Railway MCP 服务器

Railway    MCP

让 Claude 和其他 MCP 客户端管理你的 Railway.app 基础设施。通过自然语言部署服务、管理变量并监控部署。

请注意:此项目正在开发中,并非所有功能都可用。🚧

railway-mcp MCP 服务器

这是一个用于与 Railway.app 平台集成的 模型上下文协议 (MCP) 服务器。

smithery 徽章

目录

功能安装可用工具示例工作流安全性故障排除贡献

功能

状态 含义
完成
🚧🔨⏳ 正在构建或需要测试
目前未构建
  • ✅ 使用 Railway API 令牌进行身份验证
  • ✅ 项目管理(列出、信息、删除)
  • ✅ 部署管理(列出、重启)
  • ✅ 服务管理(从 GitHub 仓库或 Docker 镜像创建、列出)
  • ✅ 变量管理(列出、创建/更新、删除)
  • ✅ 服务网络管理
  • ✅ 卷管理
  • ❌ 对所有模板的完整支持
    • 🚧🔨⏳ 数据库模板支持
    • 自动数据库和网络工作流
  • 🚧🔨⏳ 最常用的工作流
  • ❌ 服务的自动 GitHub 仓库链接

安装

先决条件

  • Node.js 18+(支持内置的 fetch API)
  • 一个活跃的 Railway 账户
  • 一个 Railway API 令牌(在 https://railway.app/account/tokens 创建)

快速开始

此 MCP 服务器设计用于与以下 MCP 客户端配合使用:

  • Claude for Desktop | ✅ 经过测试
  • Cursor | ✅ 需要测试
  • Cline | 🚧🔨⏳ 需要测试
  • Windsurf | 🚧🔨⏳ 需要测试
  • 其他 MCP 客户端 | 🚧🔨⏳ 需要测试

通过 Smithery 安装

我们推荐使用 Smithery 自动安装 railway-mcp。

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\"}"

手动安装 Cursor

  1. 前往你的 Cursor 设置并找到 MCP 部分。
  2. 点击“添加新的 MCP 服务器”。
  3. 随意命名,我们建议使用 railway-mcp 以便更清晰。
  4. 将以下命令粘贴到“命令”部分,其中 <RAILWAY_API_TOKEN> 是你的 Railway 账户令牌:
npx -y @jasontanswe/railway-mcp <RAILWAY_API_TOKEN>

手动安装 Claude

  1. 创建或编辑你的 Claude for Desktop 配置文件:

    • macOS: ~/Library/Application\ Support/Claude/claude_desktop_config.json
    • Windows: %APPDATA%\Claude\claude_desktop_config.json
  2. 将 railway-mcp 服务器添加到你的配置中,并使用你的 API 令牌:

   "railway": {
      "command": "npx",
      "args": ["-y", "@jasontanswe/railway-mcp"],
      "env": {
         "RAILWAY_API_TOKEN": "your-railway-api-token-here"
      }
   }

当你有多个 MCP 服务器时,你的配置文件可能如下所示:

{
  "mcpServers": {
    // ... 你现有的所有 MCP 服务器 ...

    // 将 railway-mcp 服务器添加到你的配置中,并使用你的 API 令牌
    "railway": {
      "command": "npx",
      "args": ["-y", "@jasontanswe/railway-mcp"],
      "env": {
        "RAILWAY_API_TOKEN": "your-railway-api-token-here"
      }
    }
  }
}
  1. 重启 Claude for Desktop。

  2. 你现在可以直接在 Claude 中使用 Railway 工具。例如:

请列出我所有的 Railway 项目
  1. 或者,如果你不想将令牌添加到配置文件中,可以在 Claude 中配置它:
请使用我的令牌配置 Railway API:{YOUR_API_TOKEN_HERE}

建议和其他信息

此服务器最好与具有终端访问权限或 Git 访问权限的 MCP 客户端(如 Cursor, Windsurf)结合使用。使用此 MCP 与其他客户端时,建议 railway-mcp 能够无缝地编排容器并简化你的部署流程。

推荐结合的 MCP 服务器

对于 Claude

  • 开箱即用,Claude 没有终端访问权限,因此它无法触发部署,因为它无法获取最新的提交。
  • 启动不同的服务并监控它们是 Claude 的最佳用例。

对于 Cursor

  • 与 GitHub MCP 结合使用,或者已经在 GitHub 上设置并克隆到本地机器上的仓库,以充分利用 railway-mcp 的集成。
  • 当 Cursor 进行更改时,它可能会忘记将更改推送到 GitHub,导致它尝试部署 Railway 无法拉取的提交。
    • 解决方案: 始终在你的提示中询问或包含:你是否已将我们的更改推送到 GitHub?

安全考虑

  • Railway API 令牌提供对你账户的完全访问权限。请妥善保管。
  • 使用环境变量方法时,你的令牌会存储在 Claude Desktop 配置文件中。
  • 敏感变量值在显示时会自动屏蔽。
  • 所有 API 调用均使用 HTTPS 进行安全通信。
  • 服务器的内存令牌存储意味着你的令牌永远不会写入磁盘(配置文件除外)。

故障排除

如果遇到问题:

  1. 令牌身份验证问题

    • 确保你的 API 令牌有效并具有必要的权限
    • 如果使用环境变量方法,请检查配置文件中的令牌格式是否正确
    • 如果环境令牌无效,请尝试直接在 Claude 中使用 configure 工具
  2. 服务器连接问题

    • 检查你是否安装了最新版本的服务器
    • 验证是否安装了 Node.js 18 或更高版本
    • 更改配置后重启 Claude for Desktop
  3. API 错误

    • 验证你是否使用了正确的项目、环境和服务 ID
    • 检查 Railway 的状态页面以查看是否有服务中断
    • Railway API 有速率限制——避免在短时间内发出过多请求

贡献

我们欢迎社区的贡献!请参阅我们的贡献指南,了解如何开始、开发指南和调试信息。

可用工具

查看全部

身份验证

  • configure - 设置你的 Railway API 令牌(仅在未在环境变量中提供时需要)

项目

  • project-list - 列出你账户中的所有项目
  • project-info - 获取特定项目的详细信息
  • project-create - 使用可选的团队 ID 创建新项目
  • project-delete - 删除项目
  • project-environments - 列出项目中的所有环境

服务

  • service-list - 列出特定项目中的所有服务
  • service-info - 获取特定服务的详细信息
  • service-create-from-repo - 从 GitHub 仓库创建新服务
  • service-create-from-image - 从 Docker 镜像创建新服务
  • service-delete - 从项目中删除服务
  • service-restart - 在特定环境中重启服务
  • service-update - 更新服务配置(构建命令、启动命令等) | 🚧 需要测试

部署

  • deployment-list - 列出服务的最近部署
  • deployment-trigger - 触发服务的新部署
  • deployment-logs - 获取特定部署的日志
  • deployment-health-check - 检查部署的健康/状态

变量

  • variable-list - 列出服务或环境的变量
  • variable-set - 创建或更新变量
  • variable-delete - 删除变量
  • variable-bulk-set - 批量更新服务的变量 | 🚧 需要测试
  • variable-copy - 在环境之间复制变量 | 🚧 需要测试

数据库

  • database-list-types - 列出所有可部署的数据库类型
  • database-deploy - 部署新的数据库服务
示例工作流

设置新服务

  1. 列出项目以获取项目 ID
  2. 从模板创建新服务
  3. 添加环境变量
  4. 查看服务部署

管理环境变量

  1. 列出项目以找到你的项目 ID
  2. 列出变量以查看当前设置的内容
  3. 根据需要创建或更新变量
  4. 删除任何过时的变量
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档