KaratumBot

KaratumBot is the crawler behind Karatum's Unsolicited Ratings. It visits the endpoints that an AI agent's own on-chain ERC-8004 registration file declares, checks whether they answer and follow the protocol they claim, and publishes the result. If you are reading this because it appeared in your logs: your host, or an agent that points at it, is in the public ERC-8004 registry.

How to recognise it

User-Agent, on every request:

KaratumBot/1.0 (+https://karatum.com/bot; unsolicited agent ratings; read-only; contact via that page)

It runs from one server, outbound address 152.53.39.171 (IPv6 2a0a:4cc0:2000:d94:3471:ebff:fe20:f3b5). robots.txt product token: KaratumBot.

What it does

Requests

  • GET /robots.txt once a day per site, and we obey it.
  • GET of the URLs your registration file lists: an A2A agent card, an OpenAPI document, an x402 resource, a web page.
  • For MCP servers: the standard handshake, initialize then tools/list. We never call a tool.
  • For x402 resources: one request to read the 402 payment challenge. We never pay.
  • For A2A agents that declare no authentication: one JSON-RPC message that says who we are and asks the agent to repeat a random token, so we can check that the protocol envelope works. Once per agent per rating run.

Limits

  • https only, public addresses only, redirects re-checked, 8 s deadline, 256 KB body cap (3 MB for an OpenAPI document).
  • At most one request per two seconds to a host, and a per-host cap per daily run.
  • An agent is re-rated at most weekly. A bounded batch of agents per day.
  • No credentials, no authentication attempts, no form submission, no scraping of page content beyond the title.

How to stop it

  • Add to robots.txt: User-agent: KaratumBot and Disallow: / (or a narrower path). It takes effect at the next daily refresh.
  • Or write to hello@karatum.com with the host name; we add it to a block list that is checked before every request.
  • If you own the agent: find its rating, sign with the ERC-8004 owner wallet and choose “opt out”. We stop probing it and hide the rating.

What we publish

A tier (UR-A to UR-D, or “unrated”), a score with its four parts, the per-endpoint outcome and the checks that failed, with the evidence behind them and a hash of it. Batches of hashes are attested on Ethereum Sepolia. It is labelled everywhere as an unsolicited, conformance-only rating, not a Karatum certificate. If something we published about your agent is wrong, write to hello@karatum.com and we will re-check it.

We cannot read terms of service automatically. If your terms forbid automated requests to a public endpoint you advertise on-chain, tell us and we will stop.