railway.app

agent readiness score · scanned Aug 18, 2026 · 7s · Infrastructure & DevOps

#241 of 979 · #24 in category

60/ 100C

Railway is an all-in-one intelligent cloud provider that simplifies the deployment, networking, scaling, monitoring, and evolution of software applications for developers and enterprises.

badge

Discovery 10/20

Access 28.3/30

Usability 11.5/40

Payments 10/10

Top fixes

  1. Brand search discoverability

    Your domain doesn't surface when agents search "Railway". Strengthen brand pages, structured data, and third-party citations (docs portals, GitHub, directories).

    +5
  2. OpenAPI spec discoverable

    Publish your OpenAPI spec at /openapi.json and link it from docs — it's the single highest-leverage artifact for agent integration.

    +5
  3. MCP handshake & tools list

    MCP endpoint https://railway.com/mcp.md failed handshake: HTTP 500. Support streamable HTTP with protocol version negotiation; if auth-gated, return RFC 9728 metadata in WWW-Authenticate.

    +4
  4. Docs quality

    Docs scored 0/5 on runnable examples. The documentation provided is a marketing landing page and contains no actual technical documentation or API references for an agent to integrate with.

    +3
  5. OAuth authorization server metadata

    Serve RFC 8414 metadata at /.well-known/oauth-authorization-server with PKCE (S256) and a registration_endpoint so agents can self-onboard.

    +3
  6. Sitemap present & fresh

    Publish /sitemap.xml, reference it from robots.txt, and include <lastmod> dates so agents can tell what's current. Freshest lastmod seen: none.

    +2.5

1.Can an agent discover and trust you?

2/8

Whether agents can crawl you, find you in the registries and searches they check, and trust what they find.

  • Sitemap present & freshrequired2/4

    Sitemap at https://railway.com/sitemap.xml is valid XML with 43 entries but contains no <lastmod> dates

    fix → Publish /sitemap.xml, reference it from robots.txt, and include <lastmod> dates so agents can tell what's current. Freshest lastmod seen: none.

    Resolved the sitemap from robots.txt or /sitemap.xml, validated XML, and checked lastmod freshness

    spec ↗
  • Brand search discoverabilityrequired0/4

    Neither search ("Railway", "Railway infrastructure devops") cited railway.app. Cited instead: https://www.era.europa.eu/sites/default/files/2026-06/report%20on%20railway%20safety%20and%20interoperability%20in%20the%20eu%202026.pdf, https://www.orr.gov.uk/annual-rail-consumer-report-2025-2026, https://www.orr.gov.uk/annual-report-health-and-safety-britains-railways-2025-2026, https://www.era.europa.eu/content/report-railway-safety-and-interoperability-eu-2026, https://assets.publishing.service.gov.uk/media/69df4f1eb0b0b93055e04fd3/R042026_260413_Denbigh_Hall_South_Junction.pdf

    fix → Your domain doesn't surface when agents search "Railway". Strengthen brand pages, structured data, and third-party citations (docs portals, GitHub, directories).

    Ran clean brand-name web searches and checked whether your domain is cited in the results

  • MCP registry listingsrecommendedna

    No MCP server detected for this product

    Queried the official MCP registry, Smithery, Glama, and PulseMCP for servers matching your domain

    spec ↗

2.Do you welcome agents?

14/16

Whether your robots policy, bot protection, and agent guidance actively admit AI agents instead of blocking them.

  • robots.txt present & parseablerequired2/2

    /robots.txt parses: 1 User-agent group(s), 4 Sitemap line(s)

    Fetched /robots.txt and validated it parses as a robots policy

    spec ↗
  • AI crawler policyrequired5/5

    All 12 AI crawler user-agents (GPTBot, ClaudeBot, PerplexityBot, …) are allowed at / by robots.txt

    Evaluated robots.txt groups for the major AI agent user-agents (GPTBot, ClaudeBot, PerplexityBot, …)

  • Content Signals directivesemerging0/2

    No Content-Signal lines in robots.txt

    fix → Declare Content Signals in robots.txt (e.g. `Content-Signal: search=yes, ai-train=no`) to express AI usage preferences machine-readably.

    Looked for Content-Signal lines in robots.txt

    spec ↗
  • Agent user-agent paritybetarequired4/4

    All three UAs get HTTP 200; bot bodies are ClaudeBot 100%, GPTBot 100% of the browser response (461558 bytes)

    Compared responses served to browser and AI-agent user-agents (informational while in beta)

  • agents.mdrecommended3/3

    Found https://railway.app/agents.md: 13118 chars of markdown with 17 heading(s)

    Fetched /agents.md and checked for substantive agent guidance

    spec ↗

3.Does an agent understand who you are and what you do?

16/18

Whether your pages carry machine-readable identity: structured data, llms.txt, clear copy an agent can quote.

  • Homepage states what you arerequired3/3

    Homepage clarity rated 5/5 — an agent can confidently say what this company does (model's one-sentence read: "Railway is an all-in-one intelligent cloud provider that simplifies the deployment, networking, scaling, monitoring, and evolution of software applications for developers and enterprises.")

    An LLM read your homepage as an agent would and rated how confidently it could say what you do

  • OpenGraph / social metadatarecommended2/2

    Homepage has og:title, og:description, and og:image (twitter:card="summary_large_image" present)

    Parsed homepage og:title / og:description / og:image and twitter:card meta tags

    spec ↗
  • llms.txtrecommended4/4

    /llms.txt is valid llmstxt.org shape: H1 "Railway", 33 markdown link(s)

    Fetched /llms.txt and validated it against the llmstxt.org shape (H1, summary, curated links)

    spec ↗
  • llms-full.txtbonusrecommended0/2

    GET /llms-full.txt returned HTTP 404

    fix → Add /llms-full.txt with expanded inline docs content so agents can load everything in one fetch.

    Fetched /llms-full.txt and checked for substantial inline markdown content

    spec ↗
  • JSON-LD structured datarequired4/4

    7 JSON-LD block(s) on homepage and pricing page (types: Organization, WebSite, SoftwareApplication, FAQPage, BreadcrumbList, Product); Organization block is well-formed

    Extracted and validated application/ld+json blocks on the homepage and pricing page

    spec ↗
  • Markdown content negotiationrecommended3/3

    https://railway.app/ returns markdown for `Accept: text/markdown` (content-type text/markdown)

    Requested key pages with Accept: text/markdown and probed .md twin URLs

4.Can an agent integrate with you?

watch →7.5/21

Whether the artifacts an agent needs to build on you — docs, API specs, SDKs, MCP servers — exist and are findable.

  • Developer resource discoverabilityrecommended1/3

    Search "Railway API documentation" cited no railway.app URL — only third-party content describes your API: https://docs.railway.com/integrations/api/graphql-overview, https://docs.railway.com/cli/api, https://docs.railway.com/llms.txt, https://apis.io/apis/railway/public-api/

    fix → Create a crawlable /docs or developers.railway.app hub and link it from your homepage footer so search-grounded agents find your official API docs.

    Searched for your brand with developer-keyword suffixes and checked which official resources are cited

  • OpenAPI spec discoverablerequired0/5

    No OpenAPI spec found: checked docs-page links and /openapi.json, /openapi.yaml, /swagger.json, /api/openapi.json, /docs/openapi.json, and api-subdomain locations

    fix → Publish your OpenAPI spec at /openapi.json and link it from docs — it's the single highest-leverage artifact for agent integration.

    Probed standard OpenAPI locations and docs links for a fetchable, parseable spec

    spec ↗
  • Docs discoverablerequired4/4

    Docs found at https://railway.com/ (via homepage link, 6995 chars of readable text)

    Followed homepage nav/footer links and probed /docs, /developers, docs.{domain}

  • MCP server discoveryrequired2.5/5

    MCP evidence found only as a mention in llms.txt: "https://railway.com/mcp.md" — no well-known server card

    fix → Publish /.well-known/mcp/server-card.json describing your MCP endpoint so agents can autodiscover it. Evidence found: llms.txt.

    Probed /.well-known/mcp/server-card.json, mcp.json, and docs mentions for an MCP endpoint

    spec ↗
  • npm SDKrecommended0/2

    No official npm SDK found: probed 6 candidate(s) (@railway/sdk, @railway/railway, railway, railway-sdk, railway-api, railway-js) — found but not domain-verified: railway, railway-sdk, railway-api, railway-js

    fix → Publish an official npm SDK (suggest @railway/sdk) with your domain in package.json homepage so agents can verify it's official.

    Searched the npm registry for an official, domain-verified SDK package

  • PyPI SDKrecommended0/2

    No official PyPI SDK found: probed 4 candidate(s) (railway, railway-sdk, railwayapi, railway-python) — found but not domain-verified: railway

    fix → Publish an official Python SDK (suggest "railway") with your domain in the project URLs so agents can verify it's official.

    Searched PyPI for an official, domain-verified SDK package

5.Is your integration well-built?

watch →0/5

Whether your specs, docs, and tools are complete and descriptive enough for an agent to use them without guessing.

  • OpenAPI validity & qualityrecommendedna

    No OpenAPI spec found — nothing to lint

    Linted the spec: descriptions, operationIds, securitySchemes, servers

  • Docs qualityrecommended0/3

    Docs at https://railway.com/ scored clarity 2/5, completeness 1/5, runnable examples 0/5, agent-friendliness 1/5 (mean 1.0/5)

    fix → Docs scored 0/5 on runnable examples. The documentation provided is a marketing landing page and contains no actual technical documentation or API references for an agent to integrate with.

    An LLM rated your docs for clarity, completeness, runnable examples, and agent-friendliness

  • Quickstart / getting startedrecommended0/2

    No quickstart/getting-started link or heading found on docs page https://railway.com/ (searched 52 links)

    fix → Add a copy-pasteable quickstart (auth → first API call) — agents follow it literally.

    Looked for a quickstart/getting-started guide containing code blocks

  • MCP tool qualityrecommendedna

    No tools listed by the MCP endpoint — nothing to lint

    Linted listed tools for descriptions, typed input schemas, and naming

6.Can an agent use you reliably in production?

watch →3/4

Response hygiene, TLS and redirect discipline, and security contact channels agents depend on at runtime.

  • TLS & redirect hygienerequired2/2

    http://railway.app/ upgrades to https in 1 hop(s), 1 redirect(s) total, final HTTP 200; no HSTS header

    Checked http→https redirect behavior, chain length, and TLS health

  • Response speed & weightrequired1/1

    Homepage TTFB 35ms, payload 451KB, Content-Encoding: gzip

    Measured homepage TTFB, payload size, and compression

  • security.txtrecommended0/1

    https://railway.app/.well-known/security.txt returned HTTP 404

    fix → Publish RFC 9116 /.well-known/security.txt with a Contact and a future Expires.

    Fetched /.well-known/security.txt and validated Contact + Expires

    spec ↗

7.Can an agent authenticate to you?

watch →0/7

Whether agents can discover your auth model machine-readably (OAuth metadata) and follow documented steps to credentials.

  • OAuth authorization server metadatarecommended0/3

    Neither /.well-known/oauth-authorization-server nor /.well-known/openid-configuration resolved (HTTP 404 / HTTP 404)

    fix → Serve RFC 8414 metadata at /.well-known/oauth-authorization-server with PKCE (S256) and a registration_endpoint so agents can self-onboard.

    Fetched /.well-known/oauth-authorization-server (and openid-configuration fallback)

    spec ↗
  • OAuth protected resource metadatarecommended0/2

    No RFC 9728 metadata: https://railway.app/.well-known/oauth-protected-resource → HTTP 404

    fix → Serve RFC 9728 metadata at /.well-known/oauth-protected-resource naming your authorization servers so agents can discover how to authenticate.

    Fetched /.well-known/oauth-protected-resource

    spec ↗
  • Auth documentationrecommended0/2

    No auth/API-key link found among 52 links on docs page https://railway.com/, and /auth.md is absent

    fix → Document auth end-to-end (key creation → header format → example call), or ship /auth.md.

    Looked for /auth.md or an authentication docs page with code examples

8.Can an agent transact with you?

watch →10/15

Whether pricing is discoverable and machine-readable, and whether you support agent payment protocols.

  • Pricing discoverablerequired5/5

    Pricing page found at https://railway.com/pricing (via homepage link) with legible price signals ("$0per monthPerfect for getting").

    Followed nav/footer links and probed /pricing for a page with legible price signals

  • Machine-readable pricingrecommended5/5

    Offer JSON-LD found on pricing page — machine-readable without inference (1 Product block(s) with an offers property at https://railway.com/pricing).

    Looked for Offer JSON-LD, then had an LLM attempt structured extraction of your plans

    spec ↗
  • x402 payment supportbonusrecommended0/2

    /.well-known/x402 returned HTTP 404. No x402 support detected (bonus check — absence costs nothing).

    fix → Support x402: serve payment requirements at /.well-known/x402, or answer unauthenticated API calls with HTTP 402 plus an x402 payment-requirements payload (x402Version, accepts[]).

    Probed /.well-known/x402 and API endpoints for HTTP 402 payment-required envelopes

    spec ↗
  • AP2 readinessemerging0/1

    No AP2 hints found — scanned llms.txt, agents.md, docs page (https://railway.com/); /.well-known/ap2 returned HTTP 404.

    fix → Adopt AP2 to accept delegated agent payments — see https://ap2-protocol.org.

    Scanned fetched artifacts and well-known paths for AP2 hints

    spec ↗
  • Agentic Commerce Protocolemerging0/1

    No Agentic Commerce Protocol hints found — scanned llms.txt, agents.md, docs page (https://railway.com/); /.well-known/acp returned HTTP 404.

    fix → Adopt the Agentic Commerce Protocol so agent checkouts can complete against your store — see https://developers.openai.com/commerce.

    Scanned docs and specs for agentic checkout endpoints

    spec ↗
  • Other agent payment protocolsbonusemerging0/1

    No UCP/MPP hints found — scanned llms.txt, agents.md, docs page (https://railway.com/).

    fix → Track emerging agent payment protocols (UCP, MPP) and adopt the ones your buyers' agents use.

    Scanned fetched artifacts for UCP/MPP protocol hints

9.Can a user act through an agent?

0/4

Whether an end user's agent can operate on their behalf: working MCP tools, published skills, agent configs.

  • Agent skill publishedbonusemergingna

    Requires the analysis phase — not yet evaluated

    Checked /skill.md, /.well-known/skills/, and skills.sh for published agent skills

  • MCP handshake & tools listrequired0/4

    MCP endpoint https://railway.com/mcp.md failed handshake: HTTP 500

    fix → MCP endpoint https://railway.com/mcp.md failed handshake: HTTP 500. Support streamable HTTP with protocol version negotiation; if auth-gated, return RFC 9728 metadata in WWW-Authenticate.

    Performed a streamable-HTTP initialize + tools/list against the MCP endpoint

    spec ↗
  • Agent configs in public repobonusemergingna

    Requires the analysis phase — not yet evaluated

    Checked your public GitHub org's main repos for AGENTS.md / .claude / .cursor configs

10.Can an agent operate your website directly?

5.5/9

Whether the site itself is legible to non-rendering and browser agents: semantic HTML, no JS walls, accessibility.

  • NLWeb endpointemerging0/1

    No NLWeb endpoint detected: /.well-known/nlweb.json returned HTTP 404 (text/html); GET /ask?query=hello returned HTTP 404 (text/html)

    fix → Consider exposing an NLWeb /ask endpoint (and /.well-known/nlweb.json) for conversational access to your content.

    Probed /.well-known/nlweb.json and the /ask endpoint

    spec ↗
  • Semantic HTML structurerequired1.5/3

    4/6 semantic signals present on the homepage (missing: <main> landmark, text-to-markup ratio ≥ 0.10)

    fix → Add the missing structure: <main> landmark, text-to-markup ratio ≥ 0.10. Agents parse structure, not pixels.

    Scored landmark elements, heading hierarchy, and text-to-markup ratio on the homepage

  • Content readable without JavaScriptrequired2/2

    Homepage raw HTML contains 6995 chars of visible text without JavaScript

    Measured visible text in the raw, unrendered homepage HTML

  • Accessibility basicsrequired2/2

    Homepage accessibility: 5/5 checks passed

    Static checks: lang attribute, title, alt coverage, labeled inputs, landmarks

  • WebMCPemerging0/1

    No WebMCP evidence on homepage: no application/webmcp script and no navigator.modelContext reference

    fix → Consider WebMCP to expose page actions as tools to browser agents.

    Looked for WebMCP script declarations on the homepage

    spec ↗