how we rate.

6 binary criteria per level. need 4/6 to pass.
your level is the highest one you pass. L0 means no level passed yet.

L1

Basic Accessibility

can agents read your content?

Uses semantic HTML elements (header, nav, main, article, section, footer) instead of just divs
l1_semantic_html
Has proper meta tags (title, description, og:tags, twitter:card)
l1_meta_tags
Includes Schema.org JSON-LD structured data
l1_schema_org
Does not block automated access with CAPTCHAs on public content
l1_no_captcha
Content is server-side rendered (visible in HTML source, not just JS-rendered)
l1_ssr_content
Uses clean, readable URLs (no excessive query params or hash fragments)
l1_clean_urls
L2

Discoverability

can agents find things on your site?

Has a robots.txt that allows legitimate bot access
l2_robots_txt
Provides an XML sitemap
l2_sitemap
Has a /llms.txt file describing the site for LLMs
l2_llms_txt
Publishes an OpenAPI/Swagger specification for its API
l2_openapi_spec
Has comprehensive, machine-readable documentation
l2_documentation
Primary content is text-based (not locked in images/videos/PDFs)
l2_text_content
L3

Structured Interaction

can agents talk to your APIs?

Provides a structured REST or GraphQL API
l3_structured_api
API returns JSON responses with consistent schema
l3_json_responses
API supports search and filtering parameters
l3_search_filter_api
Has an A2A agent card at /.well-known/agent.json
l3_a2a_agent_card
Rate limits are documented and return proper 429 responses with Retry-After
l3_rate_limits_documented
API returns structured error responses with error codes and messages
l3_structured_errors
L4

Agent Integration

can agents do real work on your site?

Provides an MCP (Model Context Protocol) server
l4_mcp_server
Supports WebMCP for browser-based agent interaction
l4_webmcp
API supports write operations (POST/PUT/PATCH/DELETE), not just reads
l4_write_api
Supports agent-friendly authentication (API keys, OAuth client credentials)
l4_agent_auth
Supports webhooks for event notifications
l4_webhooks
Write operations support idempotency keys
l4_idempotency
L5

Autonomous Operation

can agents operate autonomously?

Supports event streaming (SSE, WebSockets) for real-time updates
l5_event_streaming
Supports agent-to-agent capability negotiation
l5_agent_negotiation
Has a subscription/management API for agents
l5_subscription_api
Supports multi-step workflow orchestration
l5_workflow_orchestration
Can proactively notify agents of relevant changes
l5_proactive_notifications
Supports cross-service handoff between agents
l5_cross_service_handoff