Handleiding

A2A: laat AI-agents uw site aanroepen

Een AI-agent heeft deze site zojuist gevalideerd zonder een browser te openen, op een knop te klikken of een pagina te scrapen — hij las een klein JSON-bestand, stuurde één getypeerd verzoek en ontving een gestructureerd resultaat. Die uitwisseling is A2A, en elke website kan dit aanbieden.

Wat A2A is

A2A (Agent2Agent) is een open protocol — nu ondergebracht bij de Linux Foundation — waarmee AI-agents elkaar kunnen ontdekken en aanroepen via gewone HTTP. Beschouw het als het agent-naar-agent-equivalent van een publieke API: in plaats van een mens die uw documentatie leest en een integratie schrijft, leest een andere agent een machinebeschrijving van wat uw service doet en roept die rechtstreeks aan.

Het bestaat uit twee delen: een ontdekkingsdocument (de agent card) en een aanroepbaar eindpunt (de skill).

1. De agent card — ontdekking

U publiceert een JSON-bestand op /.well-known/agent-card.json dat beschrijft wie u bent en wat u kunt doen. De verplichte velden zijn name, description, version, url (uw A2A-eindpunt) en ten minste één skill:

{
  "protocolVersion": "0.3.0",
  "name": "llms.txt Validator",
  "description": "Validate a website's llms.txt and return a score with findings.",
  "url": "https://llms-txt-validator.dev/a2a",
  "skills": [{ "id": "validate_llms_txt", "name": "Validate llms.txt",
              "description": "Given a domain or URL, fetch and validate its llms.txt." }]
}

2. Het eindpunt — een aanroepbare skill

De url in de card verwijst naar een JSON-RPC 2.0-eindpunt. Een agent roept de methode message/send aan met een bericht; u verwerkt het verzoek en geeft een Task terug. Hier is een echte aanroep naar onze agent:

POST /a2a
{ "jsonrpc": "2.0", "id": "1", "method": "message/send",
  "params": { "message": { "role": "user",
    "parts": [{ "kind": "text", "text": "validate llmstxt.org" }] } } }

…en het antwoord — een voltooide taak met een leesbare samenvatting en gestructureerde data:

{ "result": { "kind": "task", "status": { "state": "completed" },
  "artifacts": [{ "parts": [
    { "kind": "text", "text": "Validated llmstxt.org: score 100/100..." },
    { "kind": "data", "data": { "ok": true, "report": { "scores": { "overall": 100 } } } }
  ] }] } }

Geen browser, geen HTML-parsing — de agent krijgt precies de data waarnaar hij vroeg.

A2A vs WebMCP vs MCP

Ze vullen elkaar aan: A2A bereikt netwerk-agents, WebMCP bereikt in-browser-agents. Zie hoe de drie samen passen.

Hoe elke site er één kan toevoegen

U hoeft niet het volledige protocol te implementeren om te beginnen — kies één echte functie die uw service biedt:

De ene regel: ondersteun de card met een echt eindpunt

De card is een contract, geen meta-tag. Als u een card publiceert waarvan de url niet daadwerkelijk reageert op message/send, loopt elke agent die erop vertrouwt vast. Bied A2A alleen aan voor functionaliteit die u werkelijk kunt leveren — zo hebben wij de onze gebouwd, en daarom markeert ons eigen rapport het signaal alleen als aanwezig wanneer er een werkend eindpunt achter zit. Wilt u het live zien? Haal onze agent card op.

Verder lezen

Valideer je llms.txt →