Website SEO auditing for AI agents. Crawls up to 500 pages and scores 20 categories across 200 rules: technical health, Core Web Vitals, structured data, crawlability, redirects, hreflang, accessibility, E-E-A-T and AI-search visibility. Returns structured JSON findings ranked by severity, plus an AI-written action plan and free-form analysis grounded in the audit. Pay-per-call in USDC on Base via x402 — no API key, no account.
The seven checks, with their evidence
7 recordedRegistered?rung 1 · registered
passThe agent exists in the on-chain registry, with an owner and a document URL.
passed
- block_number
- 52281733
- chain_id
- 8453
- token_id
- 59958
checked at 2026-10-07T15:58:19.797429Z
Reachable?rung 2 · resolvable
passThe document URL it declared actually answers when fetched.
passed
- bytes
- 1900
- data_uri_variant
- base64
- inline
- true
- scheme
- data
- uri
data:application/json;base64,ewogICJ0eXBlIjogImh0dHBzOi8vZWlwcy5ldGhlcmV1bS5vcmcvRUlQUy9laXAtODAwNCNyZWdpc3RyYXRpb24tdjE… (2,565 chars — expand)
data:application/json;base64,ewogICJ0eXBlIjogImh0dHBzOi8vZWlwcy5ldGhlcmV1bS5vcmcvRUlQUy9laXAtODAwNCNyZWdpc3RyYXRpb24tdjEiLAogICJuYW1lIjogIlBhMW0gU0VPIiwKICAiZGVzY3JpcHRpb24iOiAiV2Vic2l0ZSBTRU8gYXVkaXRpbmcgZm9yIEFJIGFnZW50cy4gQ3Jhd2xzIHVwIHRvIDUwMCBwYWdlcyBhbmQgc2NvcmVzIDIwIGNhdGVnb3JpZXMgYWNyb3NzIDIwMCBydWxlczogdGVjaG5pY2FsIGhlYWx0aCwgQ29yZSBXZWIgVml0YWxzLCBzdHJ1Y3R1cmVkIGRhdGEsIGNyYXdsYWJpbGl0eSwgcmVkaXJlY3RzLCBocmVmbGFuZywgYWNjZXNzaWJpbGl0eSwgRS1FLUEtVCBhbmQgQUktc2VhcmNoIHZpc2liaWxpdHkuIFJldHVybnMgc3RydWN0dXJlZCBKU09OIGZpbmRpbmdzIHJhbmtlZCBieSBzZXZlcml0eSwgcGx1cyBhbiBBSS13cml0dGVuIGFjdGlvbiBwbGFuIGFuZCBmcmVlLWZvcm0gYW5hbHlzaXMgZ3JvdW5kZWQgaW4gdGhlIGF1ZGl0LiBQYXktcGVyLWNhbGwgaW4gVVNEQyBvbiBCYXNlIHZpYSB4NDAyIOKAlCBubyBBUEkga2V5LCBubyBhY2NvdW50LiIsCiAgImltYWdlIjogImh0dHBzOi8vaHlwYTFtLnh5ei9wYTFtbG9nby5wbmciLAogICJzZXJ2aWNlcyI6IFsKICAgIHsKICAgICAgIm5hbWUiOiAid2ViIiwKICAgICAgImVuZHBvaW50IjogImh0dHBzOi8vc2VvLmh5cGExbS54eXovIgogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAieDQwMiIsCiAgICAgICJlbmRwb2ludCI6ICJodHRwczovL3Nlby5oeXBhMW0ueHl6LyIKICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogIm9wZW5hcGkiLAogICAgICAiZW5kcG9pbnQiOiAiaHR0cHM6Ly9zZW8uaHlwYTFtLnh5ei9vcGVuYXBpLmpzb24iCiAgICB9LAogICAgewogICAgICAibmFtZSI6ICJNQ1AiLAogICAgICAiZW5kcG9pbnQiOiAiaHR0cHM6Ly9zZW8uaHlwYTFtLnh5ei9tY3AiLAogICAgICAidmVyc2lvbiI6ICIyMDI1LTA2LTE4IgogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAiQTJBIiwKICAgICAgImVuZHBvaW50IjogImh0dHBzOi8vc2VvLmh5cGExbS54eXovLndlbGwta25vd24vYWdlbnQtY2FyZC5qc29uIiwKICAgICAgInZlcnNpb24iOiAiMC4zLjAiCiAgICB9LAogICAgewogICAgICAibmFtZSI6ICJPQVNGIiwKICAgICAgImVuZHBvaW50IjogImh0dHBzOi8vc2VvLmh5cGExbS54eXovLndlbGwta25vd24vb2FzZi5qc29uIiwKICAgICAgInZlcnNpb24iOiAidjAuOC4wIiwKICAgICAgInNraWxscyI6IFsKICAgICAgICAiY29udGVudF93cml0aW5nX21hcmtldGluZy9zZW8vc2VvX2F1ZGl0aW5nIiwKICAgICAgICAiY29udGVudF93cml0aW5nX21hcmtldGluZy9zZW8vYW5zd2VyX2VuZ2luZV9vcHRpbWl6YXRpb24iLAogICAgICAgICJjb250ZW50X3dyaXRpbmdfbWFya2V0aW5nL3Nlby9zdHJ1Y3R1cmVkX2RhdGFfbWFya3VwIiwKICAgICAgICAic29mdHdhcmVfZW5naW5lZXJpbmcvd2ViX2RldmVsb3BtZW50L3dlYl9hY2Nlc3NpYmlsaXR5IiwKICAgICAgICAiZGF0YV9lbmdpbmVlcmluZ19hbmFseXRpY3Mvd2ViX2RhdGFfYWNxdWlzaXRpb24vd2ViX2NyYXdsaW5nIgogICAgICBdLAogICAgICAiZG9tYWlucyI6IFsKICAgICAgICAibWFya2V0aW5nX2FuZF9hZHZlcnRpc2luZy9kaWdpdGFsX21hcmtldGluZyIsCiAgICAgICAgIm1hcmtldGluZ19hbmRfYWR2ZXJ0aXNpbmcvbWFya2V0aW5nX2FuYWx5dGljcyIsCiAgICAgICAgInRlY2hub2xvZ3kvaW5mb3JtYXRpb25fdGVjaG5vbG9neSIKICAgICAgXQogICAgfQogIF0sCiAgInJlZ2lzdHJhdGlvbnMiOiBbXSwKICAic3VwcG9ydGVkVHJ1c3RzIjogWwogICAgImNyeXB0by1lY29ub21pYyIsCiAgICAicmVwdXRhdGlvbiIKICBdLAogICJhY3RpdmUiOiB0cnVlLAogICJ4NDAyc3VwcG9ydCI6IHRydWUKfQ==
checked at 2026-10-07T15:58:19.797429Z
Readable?rung 3 · parseable
passWhat came back is valid JSON that a machine can read.
passed
- body_bytes
- 1900
- body_sha256
- 162c7e73986fba88cd89efbbb30d77fa2072935c7d014d6b52648ab86cc90a98
- content_type
- —
checked at 2026-10-07T15:58:19.797429Z
Follows the spec?rung 4 · conformant
passThe document meets what ERC-8004 requires of it.
passed
- both_fields_present
- false
- legacy_endpoints_field
- false
- may_gaps
- x402Support, supportedTrust
- must_violations
- (empty)
- registrations_checked
- 0
- services_field_source
- services
- services_status
- present
- should_gaps
- services[].version, registrations
- spec_commit
- 68fc6765761a10fb26f0692df21c8a6f9d12b1be
checked at 2026-10-07T15:58:19.797429Z
Claims its identity?rung 5 · bound
unclaimedThe document names the on-chain agent it belongs to, rather than leaving it unsaid.
unclaimed — the document made no claim to check
- declared_agent_id
- —
- declared_chain
- —
- declared_registry
- —
- match
- —
- reason
- unclaimed
- registrations_seen
- 0
checked at 2026-10-07T15:58:19.797429Z
Answers?rung 6 · live
passA declared endpoint responds to a probe. Not implemented yet, so nobody passes or fails it.
passed
- endpoints
{"declared":"https://seo.hypa1m.xyz/","elapsed_ms":748,"final_url":"https://seo.hypa1m.xyz/","http_status":200,"index":0… (1,521 chars — expand)
{"declared":"https://seo.hypa1m.xyz/","elapsed_ms":748,"final_url":"https://seo.hypa1m.xyz/","http_status":200,"index":0,"kind":"https","name":"web","outcome":"live","probed":true,"probed_url":"https://seo.hypa1m.xyz/"}, {"declared":"https://seo.hypa1m.xyz/","elapsed_ms":748,"final_url":"https://seo.hypa1m.xyz/","http_status":200,"index":1,"kind":"https","name":"x402","outcome":"live","probed":true,"probed_url":"https://seo.hypa1m.xyz/"}, {"declared":"https://seo.hypa1m.xyz/openapi.json","elapsed_ms":437,"final_url":"https://seo.hypa1m.xyz/openapi.json","http_status":200,"index":2,"kind":"https","name":"openapi","outcome":"live","probed":true,"probed_url":"https://seo.hypa1m.xyz/openapi.json"}, {"declared":"https://seo.hypa1m.xyz/mcp","elapsed_ms":1345,"final_url":"https://seo.hypa1m.xyz/mcp","http_status":200,"index":3,"kind":"https","name":"MCP","outcome":"live","probed":true,"probed_url":"https://seo.hypa1m.xyz/mcp"}, {"declared":"https://seo.hypa1m.xyz/.well-known/agent-card.json","elapsed_ms":1175,"final_url":"https://seo.hypa1m.xyz/.well-known/agent-card.json","http_status":200,"index":4,"kind":"https","name":"A2A","outcome":"live","probed":true,"probed_url":"https://seo.hypa1m.xyz/.well-known/agent-card.json"}, {"declared":"https://seo.hypa1m.xyz/.well-known/oasf.json","elapsed_ms":916,"final_url":"https://seo.hypa1m.xyz/.well-known/oasf.json","http_status":200,"index":5,"kind":"https","name":"OASF","outcome":"live","probed":true,"probed_url":"https://seo.hypa1m.xyz/.well-known/oasf.json"}- endpoints_answered_not_live
- 0
- endpoints_declared
- 6
- endpoints_live
- 6
- endpoints_our_error
- 0
- endpoints_payment_gated
- 0
- endpoints_probeable
- 6
- endpoints_probed
- 6
- endpoints_refused
- 0
checked at 2026-10-07T19:37:51.488079Z
Has feedback?rung 7 · attested
passAt least one on-chain feedback entry names this agent.
passed
- distinct_authors
- 1
- feedback_count
- 1
checked at 2026-10-07T15:58:19.797429Z
Check it again, now
outside the censusOn-chain snapshot
base- token id
- 59958
- owner
- 0xe43b08f2031e3332ce97c0e0ea6e8bb00bd04fb4
- block
- 52,281,733
- observed
- 2026-10-07T15:58:19.801002Z
What the fetch saw
data- scheme
- data
- request url
- —
- final url
- —
- http status
- —
- content type
- —
- size
- 1,900 bytes
- sha256
- 162c7e73986fba88cd89efbbb30d77fa2072935c7d014d6b52648ab86cc90a98
- elapsed
- 0 ms
This run
reproducible- run
- c67de707-a82d-4589-8936-acd5a584c720
- chain
- base
- pinned block
- 52,281,733
- agents
- 98,319
- started
- 2026-10-07T06:00:13.662398Z
- finished
- 2026-10-07T19:18:37.899751Z
- checker
- 0.7.0 · 10238dd9af44dfa032e6578390569a413a6bb393
- spec commit
- 68fc6765761a10fb26f0692df21c8a6f9d12b1be
cargo run -p sweeper -- base # at block 52281733