Let Agents In

Agent readiness · Headless CMS

strapi.io

7 of 14 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. 2 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://docs.strapi.io/llms.txt and https://docs.strapi.io/llms-full.txt, and the 12 links we sampled across both files all answer
  • PASS
    Docs readable without JavaScript7,244 characters of text without JS, on https://docs.strapi.io/cms/features/admin-tokens rather than on https://docs.strapi.io/
  • 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

  • FAIL
    Agent entry pointNone of the 9 known agent entry paths returns a file rather than your page shell
  • FAIL
    OAuth dynamic client registrationNo OAuth metadata on any of the 9 hosts probed, including the usual auth and api subdomains
  • FAIL
    MCP surfaceMCP mentioned 15x in your own files, but nothing answered at mcp.strapi.io, mcp.strapi.io/mcp, mcp.strapi.io/v1/mcp, api.strapi.io/mcp, /mcp or /api/mcp

C · Registration

  • UNMEASURED
    No CAPTCHA in the signup HTMLUnmeasurable: the signup form at https://cloud.strapi.io/signup 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://cloud.strapi.io/signup is reachable, but its form needs JavaScript

D · Provisioning

  • FAIL
    Programmatic key provisioningNone of the 7 provisioning phrases appears in the 6 documents we read
  • UNMEASURED
    Free tier or no-card trial stated in textUnmeasurable: https://strapi.io/pricing is larger than we read, so anything we did not find in it is a fact about our cap and not about your tiersNothing for you to do. A smaller pricing page, or one that states its tiers early, makes this measurable.

E · Integration

  • PASS
    Typed SDK on the registry@strapi/strapi@5.52.0 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://docs.strapi.io/cms/features/api-tokens.md

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 strapi.io 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