关于 Railway MCP Server
Railway MCP Server 是面向 Railway.app 平台的非官方社区 MCP 服务,允许 Claude 等 MCP 客户端通过自然语言管理 Railway 基础设施。项目仍在开发中,部分功能尚未完成。
主要功能
- 01项目、服务与部署管理
- 02变量的列出、设置与删除
- 03卷(Volume)管理
- 04通过 GitHub 仓库或 Docker 镜像创建服务
- 05基于 API 令牌的身份验证
适用场景
- 01通过 MCP 客户端部署并监控服务
- 02批量管理或复制不同环境之间的变量
- 03在 Claude 或 Cursor 中查看项目与部署状态
MCP 相关
该项目是一个 MCP 服务,向 MCP 客户端暴露 Railway 的项目、服务、部署、变量和数据库相关工具。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
工具
本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。
详细介绍
Railway MCP 服务
让 Claude 和其他 MCP 客户端管理你的 Railway.app 基础设施。通过自然语言部署服务、管理变量和监控部署。
| 请注意:此项目仍在开发中,目前并非所有功能都可用。🚧 |
|---|
用于与 Railway.app 平台集成的 Model Context Protocol(MCP) 服务。
目录
功能 • 安装 • 可用工具 • 工作流示例 • 安全 • 故障排除 • 参与贡献
功能
| 状态 | 含义 |
|---|---|
| ✅ | 已完成 |
| 🚧🔨⏳ | 正在开发或需要测试 |
| ❌ | 暂未开发 |
- ✅ 使用 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
-
前往 Cursor 设置,找到 MCP 部分
-
点击“Add new MCP server”
-
为其命名,你可以随意命名;我们建议使用
railway-mcp,以便更清楚地识别 -
将此命令粘贴到“Command”部分,其中 <RAILWAY_API_TOKEN> 是你 Railway 账户的令牌:
npx -y @jasontanswe/railway-mcp <RAILWAY_API_TOKEN>
手动安装 Claude
-
创建或编辑 Claude for Desktop 配置文件:
- macOS:
~/Library/Application\ Support/Claude/claude_desktop_config.json - Windows:
%APPDATA%\Claude\claude_desktop_config.json
- macOS:
-
使用你的 API 令牌,将 railway-mcp 服务添加到配置中:
"railway": {
"command": "npx",
"args": ["-y", "@jasontanswe/railway-mcp"],
"env": {
"RAILWAY_API_TOKEN": "your-railway-api-token-here"
}
}
如果有多个 MCP 服务,你的配置文件可能如下所示:
{
"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"
}
}
}
}
-
重启 Claude for Desktop
-
现在可以直接在 Claude 中使用 Railway 工具。例如:
Please list all my Railway projects
- 或者,如果你不想将令牌添加到配置文件中,可以在 Claude 中使用以下方式进行配置:
Please configure the Railway API with my token: {YOUR_API_TOKEN_HERE}
建议和其他信息
此服务最适合与可访问终端的 MCP 客户端或 Git (Cursor、Windsurf) 配合使用。建议将此 MCP 与其他工具搭配使用,因为 railway-mcp 可以编排容器,并简化部署流程。
建议搭配使用的 MCP 服务
Claude 使用建议
- Claude 开箱即用时无法访问终端,因此无法触发部署,因为它无法获取最新提交。
- 使用 Claude 时,启动不同的服务并监控它们是最适合的场景。
Cursor 使用建议
- 与 GitHub MCP 配合使用,或确保代码仓库已在 GitHub 上设置并克隆到本地机器,以充分利用 railway-mcp 的集成功能。
- Cursor 做出更改后,可能会忘记将更改推送到 GitHub,导致它尝试部署 Railway 无法拉取的提交。
- 解决方案: 务必询问,或在提示词中加入:
Have you pushed our changes to GitHub yet?
- 解决方案: 务必询问,或在提示词中加入:
安全注意事项
- Railway API 令牌可完全访问你的账户。请妥善保管。
- 使用环境变量方式时,令牌会存储在 Claude Desktop 配置文件中。
- 显示敏感变量值时,系统会自动将其隐藏。
- 所有 API 调用均使用 HTTPS 进行安全通信。
- 服务仅在内存中存储令牌,这意味着令牌不会写入配置文件之外的磁盘。
故障排除
如果遇到问题:
-
令牌身份验证问题
- 确保 API 令牌有效且具备必要权限
- 如果使用环境变量方式,请检查配置文件中的令牌格式是否正确
- 如果环境令牌无法使用,请尝试直接在 Claude 中使用
configure工具
-
服务连接问题
- 检查是否已安装最新版本的服务
- 确认已安装 Node.js 18 或更高版本
- 修改配置后,重启 Claude for Desktop
-
API 错误
- 确认使用的项目、环境和服务 ID 正确
- 查看 Railway 状态页面,了解是否存在服务中断
- Railway API 有速率限制,请避免在短时间内发送过多请求
贡献
欢迎社区贡献!请查看我们的贡献指南,了解如何开始、开发指南和调试信息。
可用工具
查看全部
身份验证
configure- 设置你的 Railway API 令牌(仅当未通过环境变量提供时才需要)
项目
project-list- 列出你账户中的所有项目project-info- 获取特定项目的详细信息project-create- 创建新项目,可选指定团队 IDproject-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- 部署新的数据库服务
示例工作流
设置新服务
- 列出项目以获取项目 ID
- 根据模板创建新服务
- 添加环境变量
- 查看服务部署
管理环境变量
- 列出项目以查找项目 ID
- 列出变量以查看当前设置
- 根据需要创建或更新变量
- 删除所有过时的变量
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。
