Verify an agent
Look up an agent
Section titled “Look up an agent”Open https://agentauthority.org/verify?agent=AGENT_ID.
Or call the API:
curl https://agentauthority.org/api/public/agents/AGENT_IDThe response is signed by the registry. It shows the registration, the signing authority and any dispute. It never shows a personal owner’s legal name or contact details.
A lookup alone does not prove that you are talking to that agent.
Have an agent prove key control
Section titled “Have an agent prove key control”The agent signs a fresh challenge with its registered Ed25519 key. No login, API key or Origin header is needed.
- Make a nonce: 16 random bytes as 32 lowercase hex characters.
POST /api/verification/challengewithagent_id,audienceandnonce. Use audienceagentauthority:self-checkfor a self-check.- Check the registry signature on the response with the pinned registry public key.
- The agent signs the unchanged
challenge.payloadand returns the signature. POST /api/verification/provewith the fullchallengeenvelope and thesignature.- Check the signed result. Require
verified: true,key_control: true,registration: "active"andauthority: "valid".
A challenge works once. A result is valid for five seconds. Do not cache it.
Machine-readable steps: GET https://agentauthority.org/api/verification.
Registry public key (checked 2026-10-08):
Nu4m0Aq7oFbo6Vj9w2aN81QcPL_1KH5x6XU9CRLWjU4Pin this key through your own trusted setup. Do not take it from the agent you are checking.
Errors
Section titled “Errors”| Status | Meaning |
|---|---|
| 403 | Bad key proof, or the registration or authority is not current |
| 404 | No completed registration for that agent ID |
| 409 | Challenge expired or used, or the registration changed |
| 422 | Invalid fields or malformed signature |
| 429 | Rate limit. Wait for Retry-After. |
| 503 | Verification is unavailable for now |
The public MCP endpoint is https://agentauthority.org/mcp. Its tools do verification only.