Let Agents In

Agent readiness · Model hosting and gateways

openrouter.ai

14 of 15 measurable points under formula 9.2, measured on 2026-08-12. 15 checks exist; each is one HTTP request with a published rule, so every sentence below can be rerun and argued with. 1 of them could not be measured from where we ask, and those are left out of the denominator rather than counted as failures.

A · Discovery

  • PASS
    Answers an agent user-agentAnswered 200 to LetAgentsIn/1.0 (+https://letagentsin.com/methodology)
  • PASS
    llms.txt publishedllms.txt and llms-full.txt present at https://openrouter.ai/llms.txt and https://openrouter.ai/llms-full.txt, and the 12 links we sampled across both files all answer
  • PASS
    Docs readable without JavaScript14,217 characters of text without JS, on https://openrouter.ai/docs/client-sdks/python/sdks/apikeys/README rather than on https://openrouter.ai/docs/quickstart
  • PASS
    On-demand agents not blockedNo on-demand agent is blocked
  • N/A
    Paths robots.txt points at answerrobots.txt names no concrete path, only patterns or nothing, so there is no claim to check
  • PASS
    No punishing crawl delayNo Crawl-delay applies to the agents we check

B · Agent entry

  • PASS
    Agent entry pointFound: https://openrouter.ai/agents.md
  • PASS
    OAuth dynamic client registrationregistration_endpoint published, but none of the 1 advertised grants (authorization_code) finishes without a person at a browser
  • PASS
    MCP surfaceLive MCP endpoint at https://mcp.openrouter.ai/mcp, answered 401 with an auth challenge

C · Registration

  • UNMEASURED
    No CAPTCHA in the signup HTMLUnmeasurable: the signup form at https://openrouter.ai/sign-up?ref=pricing-hero is not in the server HTML, so its gates are not eitherServer-render the form, or tell us the endpoint it posts to, and the gates become visible to us and to an agent.
  • FAIL
    Signup reachable without a browserhttps://openrouter.ai/sign-up?ref=pricing-hero is reachable, but its form needs JavaScript

D · Provisioning

  • PASS
    Programmatic key provisioning2 of 7 provisioning phrases across the 6 documents we read: "management api", "create an api key (or api token, access token, personal access token, service account, auth token, secret key), next to something programmatic"
  • PASS
    Free tier or no-card trial stated in textFree tier or no-card signals at https://openrouter.ai/pricing: "Get Started For Free", "Started For Free", "free models"

E · Integration

  • PASS
    Typed SDK on the registry@openrouter/sdk@1.2.27 ships types, matched from the registry by who publishes it rather than by a link on your site
  • PASS
    Machine-readable API descriptionDocs serve markdown to machines, at https://openrouter.ai/docs/quickstart

Tell me when this changes

The failures here are the kind nobody notices. An edge rule that starts refusing agents changes nothing a person sees in a browser, so the first sign is usually an integration that quietly stopped working. We rescan weekly and write only when a verdict moves.

This page is the newest scan we hold for openrouter.ai and changes when we rescan. It is not a judgement of the product: we measure whether an unattended run can get through, not whether the thing is any good. The whole corpus is published as JSON and CSV.

Scan a domain yourself