Guida

A2A: lascia che gli agenti AI chiamino il tuo sito

Un agente AI ha appena validato questo sito senza aprire un browser, cliccare un pulsante o fare scraping di una pagina — ha letto un piccolo file JSON, inviato una richiesta tipizzata e ricevuto un risultato strutturato. Questo scambio è A2A, e qualsiasi sito web può offrirlo.

Cos'è A2A

A2A (Agent2Agent) è un protocollo aperto — ora sotto la Linux Foundation — che consente agli agenti AI di scoprirsi e chiamarsi a vicenda tramite HTTP standard. Pensatelo come la controparte agente-a-agente di una API pubblica: invece di un essere umano che legge la documentazione e scrive un'integrazione, un altro agente legge una descrizione machine-readable di ciò che fa il tuo servizio e lo chiama direttamente.

Ha due parti: un documento di discovery (l'agent card) e un endpoint richiamabile (la skill).

1. L'agent card — il discovery

Pubblichi un file JSON in /.well-known/agent-card.json che descrive chi sei e cosa puoi fare. I campi obbligatori sono name, description, version, url (il tuo endpoint A2A) e almeno una 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. L'endpoint — una skill richiamabile

L'url della card punta a un endpoint JSON-RPC 2.0. Un agente chiama il metodo message/send con un messaggio; tu esegui il lavoro e restituisci un Task. Ecco una chiamata reale al nostro agente:

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

…e la risposta — un task completato con un riepilogo leggibile dall'uomo e dati strutturati:

{ "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 } } } }
  ] }] } }

Nessun browser, nessun parsing HTML — l'agente ottiene esattamente i dati che ha richiesto.

A2A vs WebMCP vs MCP

Sono complementari: A2A raggiunge gli agenti in rete, WebMCP raggiunge quelli nel browser. Scopri come i tre si integrano tra loro.

Come qualsiasi sito può aggiungerne uno

Non hai bisogno dell'intero protocollo per iniziare — scegli una cosa reale che il tuo servizio fa:

L'unica regola: supporta la card con un endpoint reale

La card è un contratto, non un meta tag. Se pubblichi una card il cui url non risponde effettivamente a message/send, ogni agente che si fida di essa incontra un vicolo cieco. Esponi A2A solo per le capacità che puoi davvero servire — è così che abbiamo costruito la nostra, ed è per questo che il nostro report contrassegna il segnale come presente solo quando un endpoint funzionante lo supporta. Vuoi vederlo dal vivo? Recupera la nostra agent card.

Continua a leggere

Convalida il tuo llms.txt →