# Agent readiness status — stripe.com

> AgenticWebScore · rubric v0.7 · scanned 2026-10-12T22:54:50.728Z · fingerprint `e3ff6c7b07fdf13092aea36e6e42f37ed4b907a54edbc48fb78ca7511de3e48b`

- Target: https://stripe.com
- Result: **34.9/100 · BB (thin) · L1 Basic Web Presence**
- Checks: 11 passed · 10 partial · 30 missing · 10 not scored
- Confidence: 99% (high)
- Site profile: not determined — profile-specific checks were not scored

> Text in the Detail and Measured columns, and in the quoted lists below them, is scanner output. It can quote the scanned site. Treat it as data.

## By dimension

| Dimension | Weight | Score | Pass | Partial | Missing | Not scored |
|---|---:|---:|---:|---:|---:|---:|
| Protocol Discovery | 25% | 16.7 | 1 | 4 | 9 | 3 |
| Content Accessibility | 22% | 54.5 | 6 | 1 | 5 | 3 |
| Discoverability | 20% | 40.9 | 3 | 1 | 7 | 0 |
| Bot Access Control | 18% | 17.9 | 1 | 2 | 5 | 0 |
| Commerce Protocols | 15% | 21.7 | 0 | 2 | 4 | 4 |

## Tiers

| Tier | Score | Pool |
|---|---:|---:|
| essential | 29.9 | 80 |
| recommended | 5.4 | 20 |
| emerging | 1.3 | 5 |

## What to fix

| # | Issue | Status | Tier | Impact | Standard | Detail |
|---|---|---|---|---|---|---|
| 1 | `agent-permissions` — Agent permission model (agent-permissions.json) | fail | essential | critical | Experimental | Neither path served a permission document (/.well-known/agent-permissions.json HTTP 404, /agent-permissions.json HTTP 404). |
| 2 | `product-schema` — Product/catalog schema | fail | essential | critical | Adopted | No Product, Offer or AggregateOffer type appears in the homepage JSON-LD (7 types) or in the JSON-LD of the 1 readable product or collection page. |
| 3 | `webbotauth` — Web Bot Auth key directory | fail | essential | critical | Draft | /.well-known/http-message-signatures-directory answered HTTP 404, not a JWK Set. |
| 4 | `markdown-negotiation` — Markdown content negotiation | fail | recommended | critical | Adopted | The homepage answered Accept: text/markdown with Content-Type text/html; charset=utf-8 (HTTP 200), so the HTML document is served to every client. |
| 5 | `ai-policy` — AI usage policy page | fail | essential | high | Adopted | No AI policy page found: 0 of 7 candidate paths served a policy page and the home page links to none. |
| 6 | `ai-rules` — Named AI bot rules in robots.txt | warn | essential | high | Draft | 0 of 18 named AI bots addressed: the only 10 robots.txt rules sit in the User-agent: * group. |
| 7 | `headings` — Semantic heading structure | warn | essential | high | Adopted | 2 H1 elements on one page while the rest of the outline (5 H2s, 25 H3s) is well formed. |
| 8 | `mcp-card` — MCP server card | fail | essential | high | Draft | No MCP server card was served as JSON at the 3 declared paths (/.well-known/mcp/server-card.json 404 text/html; /.well-known/mcp.json 404 text/html; /mcp.json 404 text/html). |
| 9 | `oauth-discovery` — OAuth discovery documents | fail | essential | high | Adopted | None of the 3 OAuth discovery paths returned a JSON document (/.well-known/oauth-authorization-server 404 text/html; /.well-known/openid-configuration 404 text/html; /.well-known/oauth-protected-resource 404 text/html). |
| 10 | `openapi` — OpenAPI definition | fail | essential | high | Adopted | No OpenAPI document was found: 5 candidate paths (0 advertised, 5 standard) returned no JSON OpenAPI 3.x document. |
| 11 | `sitemap-xml` — sitemap.xml valid and current | fail | essential | high | Adopted | sitemap.xml answered HTTP 404 with 370299 bytes. |
| 12 | `payment-protocols` — Agent payment standard support (AP2/ACP/x402/UCP) | warn | recommended | high | Draft | Exactly one agent-payment signal (agent-purchase grant stated on /pricing); the 3 readable payment and policy pages name no second standard, manifest or agent-purchase wording. |
| 13 | `agent-purchase` — Agent purchase policy | fail | recommended | high | Draft | No page among the 5 agent policy paths carries both an agent word and a purchase word (/ai-policy HTTP 404, /agent-policy HTTP 404, /terms HTTP 200, /agentic-commerce HTTP 404, /ai HTTP 404). |
| 14 | `agents-md` — AGENTS.md with the required sections | fail | recommended | high | Draft | Not found (HTTP 404, 370299 bytes). |
| 15 | `content-signal` — Content-Signal usage signals | fail | recommended | high | Draft | No Content-Signal line in robots.txt (643 bytes) and none in the homepage response headers. |
| 16 | `faq-schema` — FAQ / question-answer schema | fail | recommended | high | Draft | No FAQPage entity among 1 parsed JSON-LD block on the homepage. |
| 17 | `pricing-structured` — Structured pricing information | warn | recommended | high | Adopted | No structured offer is present in the homepage JSON-LD and the only price signal is prose copy reading "$1.9". |
| 18 | `service-schema` — Service/product scope machine-readable | warn | recommended | high | Draft | Homepage JSON-LD carries only 2 generic Organization or WebSite nodes across 2 model types, so what is offered and to whom is not readable. |
| 19 | `a2a-card` — A2A agent card | fail | recommended | medium | Draft | No A2A agent card was served as JSON at the 2 declared paths (/.well-known/agent-card.json 404 text/html; /.well-known/agent.json 404 text/html). |
| 20 | `api-catalog` — API catalog | fail | recommended | medium | Experimental | No API catalog linkset was served at the 3 declared paths (/.well-known/api-catalog 404 text/html; /api-catalog.json 404 text/html; /.well-known/ai-plugin.json 404 text/html). |
| 21 | `canonical` — Canonical and hreflang discipline | warn | recommended | medium | Adopted | Canonical points at /en-pl, not the homepage URL that was reached (/). |
| 22 | `token-efficiency` — Token efficiency (content-to-markup ratio) | fail | recommended | medium | Draft | Content-to-markup ratio 1.8% (12911 visible of 702748 markup characters, ~2554 tokens), below the 8% floor where markup outweighs the content. |
| 23 | `agent-skills` — Agent Skills declaration | fail | recommended | medium | Draft | No agent skills index with a non-empty skills array was served as JSON at the 3 declared paths (/.well-known/agent-skills/index.json 404 text/html; /.well-known/agent-skills.json 404 text/html; /.well-known/skills.json 404 text/html). |
| 24 | `bot-page` — Crawler and agent policy page | fail | recommended | medium | Adopted | No bot or agent policy page found: 0 of 7 candidate paths served one and the home page links to none. |
| 25 | `returns` — Return and shipping terms machine-readable | fail | recommended | medium | Adopted | No return or shipping page responded (/returns HTTP 404, /shipping HTTP 404, /refund-policy HTTP 404) and the homepage JSON-LD declares neither MerchantReturnPolicy nor OfferShippingDetails. |
| 26 | `summary` — Prominent summary block | fail | recommended | medium | Draft | The first 1000 characters of main content hold no paragraph or summary block (11378 characters of main text). |
| 27 | `auth-md` — /auth.md agent authentication guide | fail | emerging | medium | Draft | No markdown authentication guide was served at the 2 declared paths (/auth.md 404 text/html; /.well-known/auth.md 404 text/html). |
| 28 | `dns-aid` — DNS-AID discovery record | fail | emerging | medium | Experimental | 0 SVCB records and 0 TXT records resolve at _index._agents.stripe.com and _agent.stripe.com. |
| 29 | `link-headers` — Discovery via Link response headers | fail | emerging | medium | Adopted | No Link header on the homepage response (HTTP 200, 704020 bytes). |
| 30 | `ucp-manifest` — UCP manifest (/.well-known/ucp) | fail | emerging | medium | Draft | Neither /.well-known/ucp nor /.well-known/ucp.json returned HTTP 200 (/.well-known/ucp HTTP 404, /.well-known/ucp.json HTTP 404), so no manifest was served. |
| 31 | `webmcp` — WebMCP browser tool declaration | fail | emerging | medium | Experimental | No WebMCP declaration was found: the 3 manifest paths served no tools array and the homepage contains 0 registerTool calls. |
| 32 | `contact` — Structured contact information | warn | emerging | medium | Adopted | Homepage JSON-LD declares 1 organization node with 0 contact details while the page itself carries 0 plain-text contact signals. |
| 33 | `llms-full` — /llms-full.txt expanded context | fail | recommended | low | Draft | Not published (HTTP 404) and not linked from /llms.txt. |
| 34 | `agent-analytics` — Agent traffic measurement | warn | emerging | low | Draft | No analytics vendor signature among the 8 checked appears in the homepage source, so nothing about the agent channel can be attributed. |
| 35 | `ai-txt` — /ai.txt access declaration | fail | emerging | low | Draft | /ai.txt answered HTTP 404, not an access declaration. |
| 36 | `ard-manifest` — ARD resource discovery manifest | fail | emerging | low | Experimental | No ARD manifest with an entries array was served at the 4 declared paths (/.well-known/ard.json 404 text/html; /.well-known/agent-resources.json 404 text/html; /.well-known/ai-catalog.json 404 text/html; /ard.json 404 text/html; first JSON document: none). |
| 37 | `breadcrumb` — Breadcrumb / navigation schema | fail | emerging | low | Draft | No BreadcrumbList entity among 1 parsed JSON-LD block on the homepage. |
| 38 | `crawl-delay` — Crawl rate declaration | warn | emerging | low | Adopted | Crawl-delay: 2s appears only under User-agent: rogerbot, which names no AI crawler and no wildcard, so 0 of 1 declared Crawl-delay line applies. |
| 39 | `sitemap-md` — /sitemap.md markdown site map | fail | emerging | low | Draft | Not found (HTTP 404, 370299 bytes). |
| 40 | `status-page` — Service status and changelog feed | warn | emerging | low | Adopted | A status document is advertised at /status (HTTP 200) but the homepage advertises 0 Atom or RSS changelog feeds. |

## All checks

### Protocol Discovery

| Status | Check | Tier | Standard | Measured |
|---|---|---|---|---|
| fail | `mcp-card` — MCP server card | essential | Draft | No MCP server card was served as JSON at the 3 declared paths (/.well-known/mcp/server-card.json 404 text/html; /.well-known/mcp.json 404 text/html; /mcp.json 404 text/html). |
| fail | `openapi` — OpenAPI definition | essential | Adopted | No OpenAPI document was found: 5 candidate paths (0 advertised, 5 standard) returned no JSON OpenAPI 3.x document. |
| fail | `oauth-discovery` — OAuth discovery documents | essential | Adopted | None of the 3 OAuth discovery paths returned a JSON document (/.well-known/oauth-authorization-server 404 text/html; /.well-known/openid-configuration 404 text/html; /.well-known/oauth-protected-resource 404 text/html). |
| fail | `api-catalog` — API catalog | recommended | Experimental | No API catalog linkset was served at the 3 declared paths (/.well-known/api-catalog 404 text/html; /api-catalog.json 404 text/html; /.well-known/ai-plugin.json 404 text/html). |
| fail | `agent-skills` — Agent Skills declaration | recommended | Draft | No agent skills index with a non-empty skills array was served as JSON at the 3 declared paths (/.well-known/agent-skills/index.json 404 text/html; /.well-known/agent-skills.json 404 text/html; /.well-known/skills.json 404 text/html). |
| fail | `a2a-card` — A2A agent card | recommended | Draft | No A2A agent card was served as JSON at the 2 declared paths (/.well-known/agent-card.json 404 text/html; /.well-known/agent.json 404 text/html). |
| na | `a2a-signed` — Cryptographically signed agent card | emerging | Draft | No A2A agent card is published, so there are no signatures to inspect and the check is not scored. |
| fail | `auth-md` — /auth.md agent authentication guide | emerging | Draft | No markdown authentication guide was served at the 2 declared paths (/auth.md 404 text/html; /.well-known/auth.md 404 text/html). |
| fail | `webmcp` — WebMCP browser tool declaration | emerging | Experimental | No WebMCP declaration was found: the 3 manifest paths served no tools array and the homepage contains 0 registerTool calls. |
| fail | `ard-manifest` — ARD resource discovery manifest | emerging | Experimental | No ARD manifest with an entries array was served at the 4 declared paths (/.well-known/ard.json 404 text/html; /.well-known/agent-resources.json 404 text/html; /.well-known/ai-catalog.json 404 text/html; /ard.json 404 text/html; first JSON document: none). |
| pass | `docs` — Documentation reachable | recommended | Adopted | Documentation is reachable at /en-pl/guides/best-practices-for-launching-and-scaling-platform-payments (homepage anchor) and returns HTTP 200 text/html with 4130 readable words. |
| warn | `pricing-structured` — Structured pricing information | recommended | Adopted | No structured offer is present in the homepage JSON-LD and the only price signal is prose copy reading "$1.9". |
| warn | `service-schema` — Service/product scope machine-readable | recommended | Draft | Homepage JSON-LD carries only 2 generic Organization or WebSite nodes across 2 model types, so what is offered and to whom is not readable. |
| warn | `contact` — Structured contact information | emerging | Adopted | Homepage JSON-LD declares 1 organization node with 0 contact details while the page itself carries 0 plain-text contact signals. |
| warn | `status-page` — Service status and changelog feed | emerging | Adopted | A status document is advertised at /status (HTTP 200) but the homepage advertises 0 Atom or RSS changelog feeds. |
| na | `sandbox-environment` — Sandbox or test environment documented | recommended | Experimental | Not scored: this check applies to saas or api sites, and the site type could not be confirmed (best candidates: api, saas). Declare the type to have it measured. |
| na | `rate-limits-declared` — Rate limits and quotas documented | recommended | Experimental | Not scored: this check applies to api sites, and the site type could not be confirmed (best candidates: api, saas). Declare the type to have it measured. |

### Content Accessibility

| Status | Check | Tier | Standard | Measured |
|---|---|---|---|---|
| fail | `markdown-negotiation` — Markdown content negotiation | recommended | Adopted | The homepage answered Accept: text/markdown with Content-Type text/html; charset=utf-8 (HTTP 200), so the HTML document is served to every client. |
| warn | `headings` — Semantic heading structure | essential | Adopted | 2 H1 elements on one page while the rest of the outline (5 H2s, 25 H3s) is well formed. |
| pass | `meta` — Title and summary metadata | essential | Adopted | Title is 54 characters (band 50-60) and description is 148 characters (band 120-160). |
| pass | `jsonld` — JSON-LD structured data | essential | Adopted | 1 JSON-LD block parsed with a schema.org @context declaring WebSite (7 @types in total). |
| fail | `faq-schema` — FAQ / question-answer schema | recommended | Draft | No FAQPage entity among 1 parsed JSON-LD block on the homepage. |
| fail | `breadcrumb` — Breadcrumb / navigation schema | emerging | Draft | No BreadcrumbList entity among 1 parsed JSON-LD block on the homepage. |
| fail | `summary` — Prominent summary block | recommended | Draft | The first 1000 characters of main content hold no paragraph or summary block (11378 characters of main text). |
| pass | `lang` — Language declaration and multilingual access | recommended | Adopted | html lang="en-PL" with 89 hreflang alternates, all with absolute hrefs plus a self-reference and x-default. |
| pass | `no-js-fallback` — Content that needs no JavaScript | essential | Adopted | 12911 characters of static text and 2 H1s are in the HTML before any JavaScript runs. |
| pass | `spa-fallback` — Per-page content separation (no SPA fallback) | emerging | Experimental | Homepage and /about ship different titles ("Stripe \| Financial Infrastructure to Gr…" vs "About Us \| Stripe") and different main text (12% word overlap). |
| fail | `token-efficiency` — Token efficiency (content-to-markup ratio) | recommended | Draft | Content-to-markup ratio 1.8% (12911 visible of 702748 markup characters, ~2554 tokens), below the 8% floor where markup outweighs the content. |
| pass | `viewport` — Responsive markup | emerging | Adopted | viewport content "width=device-width, initial-scale=1, viewport-fit=cover" sets width=device-width and leaves zoom unrestricted. |
| na | `licensing-terms` — Reuse and licensing terms declared | recommended | Draft | Not scored: this check applies to publisher or institution sites, and the site type could not be confirmed (best candidates: api, saas). Declare the type to have it measured. |
| na | `provenance-declared` — Content provenance declared | emerging | Draft | Not scored: this check applies to publisher or institution sites, and the site type could not be confirmed (best candidates: api, saas). Declare the type to have it measured. |
| na | `document-formats` — Documents in machine-readable formats | recommended | Draft | Not scored: this check applies to institution sites, and the site type could not be confirmed (best candidates: api, saas). Declare the type to have it measured. |

### Discoverability

| Status | Check | Tier | Standard | Measured |
|---|---|---|---|---|
| pass | `reachable` — Homepage open to agent access | essential | Adopted | HTTP 200 text/html; charset=utf-8 with 704020 bytes and 1892 words of visible text. |
| pass | `robots-txt` — robots.txt with agent directives | essential | Adopted | 3 groups, 21 rules, 2 named agent groups (ia_archiver, rogerbot), Sitemap declared. |
| fail | `sitemap-xml` — sitemap.xml valid and current | essential | Adopted | sitemap.xml answered HTTP 404 with 370299 bytes. |
| pass | `llms-txt` — /llms.txt published and well-structured | essential | Draft | H1 "Stripe", blockquote summary, 31 H2 sections with 308 markdown links, 69923 bytes. The scan requested 7 links it names, and each answered 2xx. Not requested: 36 links on another origin and 264 same-origin links (the scan samples up to 6). |
| fail | `link-headers` — Discovery via Link response headers | emerging | Adopted | No Link header on the homepage response (HTTP 200, 704020 bytes). |
| fail | `dns-aid` — DNS-AID discovery record | emerging | Experimental | 0 SVCB records and 0 TXT records resolve at _index._agents.stripe.com and _agent.stripe.com. |
| warn | `canonical` — Canonical and hreflang discipline | recommended | Adopted | Canonical points at /en-pl, not the homepage URL that was reached (/). |
| fail | `llms-full` — /llms-full.txt expanded context | recommended | Draft | Not published (HTTP 404) and not linked from /llms.txt. |
| fail | `agents-md` — AGENTS.md with the required sections | recommended | Draft | Not found (HTTP 404, 370299 bytes). |
| fail | `sitemap-md` — /sitemap.md markdown site map | emerging | Draft | Not found (HTTP 404, 370299 bytes). |
| fail | `content-signal` — Content-Signal usage signals | recommended | Draft | No Content-Signal line in robots.txt (643 bytes) and none in the homepage response headers. |

### Bot Access Control

| Status | Check | Tier | Standard | Measured |
|---|---|---|---|---|
| fail | `webbotauth` — Web Bot Auth key directory | essential | Draft | /.well-known/http-message-signatures-directory answered HTTP 404, not a JWK Set. |
| fail | `agent-permissions` — Agent permission model (agent-permissions.json) | essential | Experimental | Neither path served a permission document (/.well-known/agent-permissions.json HTTP 404, /agent-permissions.json HTTP 404). |
| warn | `ai-rules` — Named AI bot rules in robots.txt | essential | Draft | 0 of 18 named AI bots addressed: the only 10 robots.txt rules sit in the User-agent: * group. |
| fail | `ai-policy` — AI usage policy page | essential | Adopted | No AI policy page found: 0 of 7 candidate paths served a policy page and the home page links to none. |
| fail | `bot-page` — Crawler and agent policy page | recommended | Adopted | No bot or agent policy page found: 0 of 7 candidate paths served one and the home page links to none. |
| pass | `security-txt` — security.txt (RFC 9116) | recommended | Adopted | security.txt at /.well-known/security.txt declares 1 Contact and an Expires 2026-12-31T23:59:00.000Z in the future. Not scored: its Policy URL is on hackerone.com, which this scan does not request. |
| warn | `crawl-delay` — Crawl rate declaration | emerging | Adopted | Crawl-delay: 2s appears only under User-agent: rogerbot, which names no AI crawler and no wildcard, so 0 of 1 declared Crawl-delay line applies. |
| fail | `ai-txt` — /ai.txt access declaration | emerging | Draft | /ai.txt answered HTTP 404, not an access declaration. |

### Commerce Protocols

| Status | Check | Tier | Standard | Measured |
|---|---|---|---|---|
| fail | `product-schema` — Product/catalog schema | essential | Adopted | No Product, Offer or AggregateOffer type appears in the homepage JSON-LD (7 types) or in the JSON-LD of the 1 readable product or collection page. |
| warn | `payment-protocols` — Agent payment standard support (AP2/ACP/x402/UCP) | recommended | Draft | Exactly one agent-payment signal (agent-purchase grant stated on /pricing); the 3 readable payment and policy pages name no second standard, manifest or agent-purchase wording. |
| fail | `agent-purchase` — Agent purchase policy | recommended | Draft | No page among the 5 agent policy paths carries both an agent word and a purchase word (/ai-policy HTTP 404, /agent-policy HTTP 404, /terms HTTP 200, /agentic-commerce HTTP 404, /ai HTTP 404). |
| fail | `ucp-manifest` — UCP manifest (/.well-known/ucp) | emerging | Draft | Neither /.well-known/ucp nor /.well-known/ucp.json returned HTTP 200 (/.well-known/ucp HTTP 404, /.well-known/ucp.json HTTP 404), so no manifest was served. |
| fail | `returns` — Return and shipping terms machine-readable | recommended | Adopted | No return or shipping page responded (/returns HTTP 404, /shipping HTTP 404, /refund-policy HTTP 404) and the homepage JSON-LD declares neither MerchantReturnPolicy nor OfferShippingDetails. |
| warn | `agent-analytics` — Agent traffic measurement | emerging | Draft | No analytics vendor signature among the 8 checked appears in the homepage source, so nothing about the agent channel can be attributed. |
| na | `inventory-freshness` — Inventory and price freshness | recommended | Adopted | Not scored: this check applies to ecommerce or marketplace sites, and the site type could not be confirmed (best candidates: api, saas). Declare the type to have it measured. |
| na | `seller-identity` — Seller identity declared | recommended | Adopted | Not scored: this check applies to ecommerce or marketplace sites, and the site type could not be confirmed (best candidates: api, saas). Declare the type to have it measured. |
| na | `shipping-costs` — Shipping cost and delivery declared | recommended | Adopted | Not scored: this check applies to ecommerce or marketplace sites, and the site type could not be confirmed (best candidates: api, saas). Declare the type to have it measured. |
| na | `booking-action` — Machine-readable booking action | recommended | Draft | Not scored: this check applies to services sites, and the site type could not be confirmed (best candidates: api, saas). Declare the type to have it measured. |

## Not measured

The scanner could not observe these checks. Under rubric v0.7, each one stays in the denominator at 0 points, the same as a missing check.

- `a2a-signed` — "No A2A agent card is published, so there are no signatures to inspect and the check is not scored."

## Out of scope

The scan did not ask this site for these checks. Each applies to a site profile the scan did not confirm here, or needs a commercial signal it did not detect. They left the denominator. They are not failures, and they are not requests.

- `inventory-freshness` — "Not scored: this check applies to ecommerce or marketplace sites, and the site type could not be confirmed (best candidates: api, saas). Declare the type to have it measured."
- `seller-identity` — "Not scored: this check applies to ecommerce or marketplace sites, and the site type could not be confirmed (best candidates: api, saas). Declare the type to have it measured."
- `shipping-costs` — "Not scored: this check applies to ecommerce or marketplace sites, and the site type could not be confirmed (best candidates: api, saas). Declare the type to have it measured."
- `sandbox-environment` — "Not scored: this check applies to saas or api sites, and the site type could not be confirmed (best candidates: api, saas). Declare the type to have it measured."
- `rate-limits-declared` — "Not scored: this check applies to api sites, and the site type could not be confirmed (best candidates: api, saas). Declare the type to have it measured."
- `licensing-terms` — "Not scored: this check applies to publisher or institution sites, and the site type could not be confirmed (best candidates: api, saas). Declare the type to have it measured."
- `provenance-declared` — "Not scored: this check applies to publisher or institution sites, and the site type could not be confirmed (best candidates: api, saas). Declare the type to have it measured."
- `booking-action` — "Not scored: this check applies to services sites, and the site type could not be confirmed (best candidates: api, saas). Declare the type to have it measured."
- `document-formats` — "Not scored: this check applies to institution sites, and the site type could not be confirmed (best candidates: api, saas). Declare the type to have it measured."

---

Verify this record: https://agenticwebscore.com/verify/e3ff6c7b07fdf13092aea36e6e42f37ed4b907a54edbc48fb78ca7511de3e48b
