Railway MCP

官方

Railway MCP服务器支持通过自然语言与您的Railway项目和基础设施进行交互。您可以指示IDE或AI助手创建项目、部署模板、管理环境、拉取变量、重新部署服务等。

你可以用 Railway MCP 做什么?

  • 创建和部署应用 — 通过 create_projectgenerate_domain 请求搭建 Next.js 应用、部署并分配域名。
  • 从模板部署 — 使用 search_templatesdeploy_template 搜索并部署现成模板,如 Postgres。
  • 管理环境变量 — 通过 list_variablesset_variables 将变量拉取到 .env 文件或进行设置。
  • 重新部署服务 — 使用 redeploy 工具在特定环境中触发服务的重新部署。
  • 调试失败的部署 — 将自然语言调试请求交给 railway-agent 以诊断崩溃问题。
  • 管理功能开关 — 通过 list-feature-flagsset-feature-flag 列出、获取或设置项目上的功能开关。

文档

Railway MCP Server 实现了 Model Context Protocol (MCP)。它允许 AI 助手创建项目、部署模板、管理环境、拉取变量以及重新部署服务。

Railway 提供两个 MCP 服务器:

  • Local MCP 通过你机器上的 Railway CLI 运行,并使用本地 CLI 上下文。
  • Remote MCP 运行在 mcp.railway.com。可以直接使用 OAuth 连接,或运行 railway mcp proxy 以复用你 railway login 会话中的凭据。

快速开始

安装 Railway CLI,并通过一条命令配置 agent 技能、MCP 和身份验证。选择选项以生成设置命令:

如果 CLI 已安装,可跳过引导步骤,直接运行:

railway setup agent                  # Local MCP
railway setup agent --remote         # Remote MCP through the CLI proxy
railway setup agent --remote --oauth # Remote MCP with OAuth

继续阅读以了解各编辑器的手动配置、可用工具列表和安全注意事项。

各编辑器配置

如果你更愿意手动配置编辑器,或想查看 railway mcp install 写入的内容,请使用选择器在本地 stdio、通过 CLI 代理的 Remote MCP 以及使用 OAuth 的 Remote MCP 之间切换:

railway mcp install 会将 Railway 服务器条目合并到现有配置中,而不会移除其他 MCP 服务器。可随时重新运行以更新。

理解 MCP

Model Context Protocol (MCP) 定义了一种标准,规定了 AI 应用程序(主机)如何通过客户端-服务器架构与外部工具和数据源进行交互。

  • 主机(Hosts):连接 MCP 服务器的应用程序,如 Cursor、VS Code、Claude Code 或 Windsurf。
  • 客户端(Clients):主机内部与各个 MCP 服务器保持一对一连接的层。
  • 服务器(Servers):独立的程序(如 Railway MCP Server),用于暴露管理外部系统的工具和工作流。

Local MCP 服务器将自然语言请求转换为由 Railway CLI 驱动的 CLI 工作流。Remote MCP 运行在 Railway 的基础设施上并支持 OAuth。CLI 代理通过将你 railway login 会话中的凭据传递给 Remote MCP,提供了另一种连接路径。

前提条件

服务器和身份验证方法决定了你需要哪些本地工具和凭据。

  • Local MCP 需要已安装并完成身份验证的 Railway CLI
  • Remote MCP 需要一个 Railway 账户。直接 OAuth 不需要 CLI。CLI 代理需要已安装的 CLI 和 railway login 会话,以便复用这些凭据。

使用示例

使用描述你希望 agent 达成的 Railway 结果的提示词。

  • 创建并部署新应用

    Create a Next.js app in this directory and deploy it to Railway.
    Also assign it a domain.
    
  • 从模板部署

    Deploy a Postgres database
    
  • 拉取环境变量

    Pull environment variables for my project and save them to a .env file
    
  • 调试失败的部署(仅远程的 railway-agent 工具)

    Use the railway agent to figure out why my backend service is
    crashing on deploy
    
  • 重新部署服务

    Redeploy my api service in the production environment
    
  • 管理功能开关

    List feature flags for project <projectId>
    
    Set the checkout-v2 feature flag to true on project <projectId>
    

可用的 MCP 工具

Railway MCP Server 提供以下工具。你的 AI 助手会根据你的请求选择工具。

Local MCP

Local MCP 通过 Railway CLI 运行,并提供以下工具:

  • 账户: whoami
  • 项目和服务: list_workspaceslist_projectscreate_projectlist_servicescreate_serviceremove_serviceconnect_service_sourcedisconnect_service_sourcelink_serviceget_service_configupdate_servicescale_service
  • 环境与部署: create_environmentlink_environmentenvironment_statuslist_deploymentsdeploy
  • 变量: list_variablesset_variablesadd_reference_variable
  • 域名: generate_domainlist_domainsdomain_statusupdate_domaindelete_domainretry_domain_certificate
  • 网络: list_tcp_proxiesget_tcp_proxycreate_tcp_proxyremove_tcp_proxyprivate_network_statusprivate_network_update
  • 模板: search_templatesdeploy_template
  • 存储: create_bucketremove_bucketcreate_volumeupdate_volumeremove_volume
  • 可观测性: get_logsservice_metricshttp_requestshttp_error_ratehttp_response_time
  • 文档: docs_searchdocs_fetch

Remote MCP

Remote MCP 提供以下工具。对于多步骤操作,请使用 railway-agent

  • 账户
    • whoami
  • 项目
    • list-projectscreate-projectlist-services
  • 功能开关
    • list-feature-flagsget-feature-flag
    • set-feature-flagdelete-feature-flag(管理员;破坏性删除已在协议层面标记)
  • 部署
    • redeploy
    • accept-deploy:提交暂存的更改并部署(破坏性操作;客户端会提示确认)
  • Agent
    • railway-agent:将自然语言请求交给 Railway 的 AI agent,用于多步骤操作,如日志分析、调试和服务配置

安全注意事项

Railway MCP Server 会代表你运行 CLI 命令或调用 Railway API。Local MCP 会使用协议级别的提示标记破坏性工具,并在要求 confirm: true 之前返回预览。你仍应:

  • 审查操作:在批准 LLM 请求的操作之前进行审查,尤其是破坏性操作(remove_servicedelete_domainremove_tcp_proxyremove_bucketremove_volumeredeployaccept-deployrailway-agent)。
  • 限制访问:确保只有受信任的用户才能调用 MCP 服务器。
  • 避免生产环境风险:尽可能将使用限制在非关键环境中。

对于 Remote MCP:

  • CLI 代理身份验证。 代理会读取并刷新你的 railway login 凭据。编辑器配置中不包含长期有效的 Railway 凭据。
  • OAuth 作用域。 使用直接 OAuth 时,你可以选择客户端可以访问的工作区和项目。令牌有效期较短,并且可以从你的 Railway 账户设置中撤销。
  • 破坏性操作已在协议层面标记。遵循这些提示的客户端会提示确认。
  • 不接受项目令牌。 Remote MCP 需要用户身份以进行计费和审计追踪。

功能请求

请在 Railway MCP Server Central Station 帖子 上分享功能请求。