Skip to content

Il tool isitagentready.com, pubblicato da Cloudflare, esegue un audit automatizzato di una URL contro 18 standard tecnici emergenti che definiscono quanto un sito sia accessibile e utilizzabile da agenti AI: dalla discovery di base (robots.txt, sitemap, Link headers) alla content negotiation in Markdown, dal bot management crittografico (Web Bot Auth) ai protocolli di scoperta MCP, fino ai pattern di pagamento agent-native (x402, MPP, ACP). Lo scanner verifica well-known endpoint, header HTTP e direttive in robots.txt, e restituisce un punteggio progressivo per categoria. Questa guida è un walkthrough completo dei controlli eseguiti dal tool, con la spec di riferimento, il path well-known, un payload minimo di esempio e lo stato di adozione di ogni standard.

Cos’è isitagentready.com e cosa misura il tool Cloudflare

isitagentready.com è uno scanner client-side che testa una URL contro un insieme di endpoint /.well-known/, header HTTP e direttive in robots.txt rilevanti per l’accesso da parte di agenti AI. Il tool nasce all’interno dell’ecosistema Cloudflare Agents e rappresenta uno dei primi tentativi di consolidare in un’unica rubrica i protocolli che stanno definendo il cosiddetto agentic web: un web in cui il client non è più necessariamente un browser umano ma un agente AI che cerca, legge, autentica e — sempre più spesso — paga risorse in autonomia.

Il tool raggruppa i controlli in cinque categorie:

  • Discoverability: robots.txt, sitemap XML, Link HTTP headers.
  • Content Accessibility: Markdown content negotiation via Accept: text/markdown.
  • Bot Access Control: regole per user-agent AI in robots.txt, Content Signals, Web Bot Auth.
  • API, Auth, MCP & Skill Discovery: API Catalog, OAuth/OIDC discovery, OAuth Protected Resource, MCP Server Card, A2A Agent Card, Agent Skills index, WebMCP.
  • Commerce: x402, MPP, UCP, ACP.
Pannello 'Customize scan' espanso di isitagentready.com che mostra i 18 check tecnici raggruppati nelle 5 categorie Discoverability, Content Accessibility, Bot Access Control, API/Auth/MCP, Commerce.
Il pannello Customize scan di isitagentready.com mostra tutti i 18 check raggruppati nelle 5 categorie. Ogni check è disattivabile in base al tipo di sito (content site vs API/application).

Lo scoring è incrementale per categoria. Il primo gradino è Level 1 — Basic Web Presence, che corrisponde al rispetto degli standard storici del web (robots.txt, sitemap, Link headers). Il secondo è Level 2 — Bot-Aware, raggiunto quando il sito implementa anche il controllo granulare sul traffico AI (regole specifiche per user-agent AI in robots.txt e Content Signals). I gradini successivi richiedono progressivamente l’implementazione degli standard di nuova generazione: content negotiation, signed bot identity, well-known discovery di API e MCP server, fino ai protocolli di pagamento agentico. È importante chiarire che molti dei protocolli verificati sono draft, proprietari o in early adoption: il punteggio non è una metrica SEO classica e non ha un peso noto sul ranking dei motori di ricerca. È una rubrica di future-readiness.

Case study: il punteggio di evemilano.com (da 33 a 42 dopo l’intervento sul robots.txt)

Per ancorare la guida a dati concreti, riporto i risultati di due scansioni successive di evemilano.com (WordPress + Cloudflare) eseguite il 12 maggio 2026. La prima, prima di toccare il robots.txt, ha restituito 33/100, Level 1 Basic Web Presence: il profilo tipico di un blog content-first dietro Cloudflare ma non ancora ottimizzato per i protocolli agentic. La seconda, dopo l’aggiunta delle direttive Content Signals al robots.txt, ha portato il punteggio a 42/100, Level 2 Bot-Aware, con il check Content Signals che passa da Fail a Pass e la categoria Bot Access Control che chiude a 2/2.

Risultato dello scan di www.evemilano.com sul tool Cloudflare isitagentready.com: punteggio totale 42/100, livello 2 'Bot-Aware'.
Schermata dei risultati dopo l’aggiunta di Content Signals al robots.txt: punteggio totale 42/100 e classificazione Level 2 Bot-Aware.
CategoriaPrima (Level 1)Dopo (Level 2)Check superati (dopo)
Discoverability100 (3/3)100 (3/3)robots.txt, sitemap, Link headers
Content Accessibility0 (0/1)0 (0/1)no Markdown negotiation
Bot Access Control50 (1/2)100 (2/2)Content Signals presenti, AI bot rules OK
API / Auth / MCP / Skill0 (0/6)0 (0/6)nessun well-known agentic
Commerceopzionale (non e-commerce)
Breakdown del punteggio isitagentready di evemilano.com diviso nelle 5 categorie: Discoverability 3/3, Content 0/1, Bot Access Control 2/2, API/Auth/MCP/Skill 0/6, Commerce non applicabile.
Breakdown per categoria nella vista risultati di isitagentready dopo l’aggiornamento del robots.txt. Bot Access Control passa a 2/2 grazie alle Content Signals.

Il salto da 33 a 42 — e il passaggio da Level 1 a Level 2 — è arrivato con una modifica chirurgica al robots.txt (poche righe; il dettaglio è nella sezione Content Signals più avanti). L’osservazione operativa è doppia: la prima, che gli interventi a basso costo sui protocolli emergenti spostano davvero il punteggio del tool; la seconda, che la differenza tra Level 2 e i livelli successivi richiede investimenti di altra natura (Markdown negotiation lato edge, well-known agentici, eventualmente MCP server card o Agent Skills index) e raramente è giustificata per un blog content-first.

Discoverability: i tre pilastri storici del web crawlable

La prima categoria del tool è la più consolidata: i tre standard sono RFC pubblicati o convenzioni de facto con oltre vent’anni di adozione. Per un sito amministrato correttamente, questa categoria dovrebbe essere a 3/3 senza interventi.

robots.txt — RFC 9309

Il Robots Exclusion Protocol è stato finalmente standardizzato come RFC 9309 nel settembre 2022, dopo decenni di convenzione informale. Il file deve risiedere alla radice del dominio (/robots.txt), essere servito con Content-Type: text/plain in UTF-8, e contenere almeno una direttiva User-agent valida. Le direttive supportate dallo standard sono user-agent, allow, disallow e sitemap, con wildcard * e end-anchor $. La cache è di 24 ore; una risposta 5xx ripetuta equivale a un disallow totale.

Il tool verifica tre cose: status code 200, content-type corretto, presenza di almeno una direttiva User-agent valida. Non analizza la logica delle direttive (il sito non viene penalizzato se ha un disallow totale, e nemmeno premiato se distingue tra crawler diversi).

Sitemap XML

Lo standard sitemap è una convenzione de facto pubblicata su sitemaps.org (non è un RFC). Il path è libero, ma deve essere dichiarato in robots.txt tramite una direttiva Sitemap:. I limiti sono 50.000 URL e 50 MB uncompressed per singolo file; oltre quei limiti serve un sitemap index. WordPress genera automaticamente un sitemap index (/wp-sitemap.xml in versioni recenti, /sitemap_index.xml con Yoast o Rank Math), quindi questo check è in genere superato senza intervento.

Il tool estrae le direttive Sitemap: da robots.txt, fa una GET su ogni URL dichiarato e verifica che il payload sia XML valido. Non valida la struttura nel dettaglio (<loc>, <lastmod>) né controlla che gli URL elencati siano effettivamente raggiungibili.

L’header HTTP Link, definito da RFC 8288 (Web Linking), permette di dichiarare relazioni tra risorse senza aggiungere markup nel body. La sintassi è Link: <URI>; rel="relname"; param=value, con relazioni multiple separate da virgola. Per gli agenti AI, le relazioni più rilevanti sono alternate (versione alternativa della risorsa, tipicamente JSON per le pagine WordPress via WP REST API), describedby, service-desc (descrizione OpenAPI), api-catalog (puntatore al catalog dell’API) e canonical.

WordPress emette nativamente un header Link sulla homepage che include rel="https://api.w.org/" (puntatore al REST endpoint) e rel="alternate" con type="application/json" per ogni post/page renderizzata. Per il tool è sufficiente.

Link: <https://www.example.com/wp-json/>; rel="https://api.w.org/",
      <https://www.example.com/wp-json/wp/v2/pages/123>; rel="alternate"; title="JSON"; type="application/json",
      <https://www.example.com/>; rel="shortlink"

Content Accessibility: Markdown content negotiation

Il check di Content Accessibility verifica un pattern emergente: servire la stessa URL come HTML al browser e come Markdown a un agente AI che richiede esplicitamente Accept: text/markdown. Il razionale è semplice: l’HTML di una pagina moderna contiene rumore (script, nav, sidebar, footer, banner cookie) che un LLM deve filtrare a runtime, sprecando token e introducendo errori di estrazione. Servire una versione Markdown già pulita riduce il costo di processing e migliora la qualità dell’estrazione del contenuto principale.

Non esiste un RFC dedicato a questo pattern: si appoggia alla content negotiation standard di RFC 9110 (HTTP Semantics). Cloudflare promuove l’implementazione lato edge con una feature dedicata che intercetta la richiesta, controlla l’header Accept, e — se vale text/markdown — converte al volo l’HTML in Markdown rispondendo con Content-Type: text/markdown. Quando disponibile, la risposta include anche un header x-markdown-tokens che dichiara il numero di token Markdown nella risposta.

GET / HTTP/1.1
Host: www.example.com
Accept: text/markdown

HTTP/1.1 200 OK
Content-Type: text/markdown; charset=utf-8
x-markdown-tokens: 1842

# Titolo della pagina

Lead paragraph in markdown pulito, senza nav, sidebar, script.

## Sezione

Contenuto principale...

Il tool fa una GET alla homepage con Accept: text/markdown e verifica che il Content-Type di risposta sia text/markdown (e non il fallback text/html). Sui siti dietro Cloudflare l’implementazione è una toggle nel dashboard; per stack auto-ospitati va costruita a livello applicativo o di reverse proxy. Su WordPress non esiste oggi un plugin core che fornisca questa funzionalità: l’opzione pragmatica è un middleware (Cloudflare Workers, Nginx + sub_filter, Varnish VCL) che converta l’HTML renderizzato in Markdown via una libreria server-side (turndown in JavaScript, html2text in Python).

Dettaglio del check 'Markdown Negotiation' fallito sul tool isitagentready: il sito non supporta Accept: text/markdown e ritorna text/html come Content-Type.
Esempio di check fallito sul tool: l’audit Markdown Negotiation mostra request/response, conclusion e una guida sintetica all’implementazione. La struttura è ripetuta per ogni check, Pass o Fail.

Il pattern non va confuso con altri esperimenti recenti orientati a fornire una versione testuale dei contenuti agli LLM, alcuni dei quali partono da assunti diversi (file statico vs negotiation runtime) e hanno avuto un’adozione molto disomogenea. La content negotiation HTTP, al contrario, è ortodossa rispetto allo stack web standard e non richiede convenzioni nuove al di fuori del response header.

Bot Access Control: tre livelli di controllo sul traffico AI

La categoria Bot Access Control raccoglie tre meccanismi complementari: regole dichiarative per user-agent in robots.txt, segnali di intent granulari sull’uso del contenuto (Content Signals) e identità crittografica verificabile dei bot (Web Bot Auth). I tre livelli rispondono a problemi distinti e dovrebbero coesistere, non sostituirsi.

AI bot rules in robots.txt

Il check è soddisfatto quando robots.txt contiene direttive User-agent specifiche per i bot AI, distinte dalle regole wildcard (User-agent: *). La scelta tra Allow e Disallow è policy editoriale; il tool non giudica la decisione, ma verifica che la decisione esista. Una regola wildcard applicata a tutti i crawler è considerata insufficiente perché impedisce di differenziare il trattamento tra search bot (es. Googlebot) e training bot (es. GPTBot).

I principali user-agent AI da considerare in robots.txt, raccolti dalla documentazione ufficiale dei singoli vendor:

VendorUser-agentUso dichiarato
OpenAIGPTBotTraining dei modelli GPT
OpenAIOAI-SearchBotIndicizzazione per ChatGPT Search
OpenAIChatGPT-UserFetch on-demand quando l’utente chiede
AnthropicClaudeBotTraining Claude
Anthropicanthropic-ai, Claude-WebCrawler legacy / on-demand
GoogleGoogle-ExtendedTraining Gemini, Vertex (separato da Googlebot)
PerplexityPerplexityBotIndexing per Perplexity
PerplexityPerplexity-UserFetch on-demand
Common CrawlCCBotDataset pubblico (training upstream)
ByteDanceBytespiderTraining Doubao / Coze
AppleApplebot-ExtendedTraining Apple Intelligence
MetaMeta-ExternalAgentTraining Llama / fetch

Esempio di policy granulare che blocca il training ma consente l’indicizzazione per search agentica:

# Blocco training
User-agent: GPTBot
Disallow: /

User-agent: ClaudeBot
Disallow: /

User-agent: Google-Extended
Disallow: /

User-agent: CCBot
Disallow: /

User-agent: Bytespider
Disallow: /

User-agent: Applebot-Extended
Disallow: /

# Consentito on-demand fetch e search agentica
User-agent: OAI-SearchBot
Allow: /

User-agent: ChatGPT-User
Allow: /

User-agent: PerplexityBot
Allow: /

User-agent: Perplexity-User
Allow: /

# Default
User-agent: *
Allow: /
Sitemap: https://www.example.com/sitemap_index.xml

La compliance dei vendor è volontaria: l’efficacia del blocco dipende dal rispetto della direttiva da parte del bot. Per un enforcement reale serve un layer aggiuntivo (firewall per user-agent o reverse-DNS verification), su cui Web Bot Auth interviene in modo strutturale.

Content Signals: search, ai-input, ai-train

Content Signals è un’estensione di robots.txt promossa da Cloudflare a settembre 2025 per separare in tre intent distinti l’uso del contenuto: search (indicizzazione tradizionale e search agentica), ai-input (uso come grounding/RAG in risposta in tempo reale), ai-train (uso per addestramento dei modelli). Ogni intent può essere settato a yes o no. La direttiva è leggibile dai crawler che la onorano e, separatamente, è invocabile in sede legale come dichiarazione esplicita di policy editoriale (Cloudflare include un disclaimer giuridico nel testo iniettato di default).

La sintassi si innesta dentro un blocco User-agent di robots.txt:

User-Agent: *
Content-Signal: search=yes, ai-train=no, ai-input=no
Allow: /

Il vocabolario è oggetto di una proposta IETF parallela nel working group aipref: i draft draft-ietf-aipref-vocab e draft-ietf-aipref-attach stanno cercando di consolidare il vocabolo (con etichette analoghe come train-ai, search) e i meccanismi di attachment. Allo stato attuale, Content Signals è un signal dichiarativo: nessun bot AI ha annunciato pubblicamente di onorarlo in produzione, ma la sua presenza nel sito serve come prova di policy esplicita e — sui siti dietro Cloudflare — viene auto-iniettato di default. Per dichiararlo manualmente su WordPress è sufficiente modificare il robots.txt fisico (o sovrascriverlo tramite filtro robots_txt di WordPress). Come anticipato nel case study, l’aggiunta della direttiva al robots.txt di evemilano.com è stato l’intervento che ha fatto passare il check Content Signals da Fail a Pass e portato il punteggio del sito da 33 a 42.

L’intent ai-input merita attenzione: comunicare ai sistemi RAG che il contenuto non deve essere usato come grounding influenza la visibilità della risorsa nei retrieval pipeline degli LLM. Chi punta a essere citato da ChatGPT, Perplexity e Gemini ha interesse opposto a chi vuole proteggere proprietà intellettuale, quindi la scelta delle tre direttive richiede una decisione editoriale prima ancora che tecnica. Per un’analisi del retrieval lato LLM si veda RAG SEO: reverse engineering del Retrieval-Augmented Generation.

Web Bot Auth: identità crittografica dei bot

Web Bot Auth è lo standard più ambizioso della categoria. L’idea è semplice: invece di affidarsi a reverse-DNS lookup o liste di range IP per verificare l’identità di un bot, ogni bot firma le proprie richieste HTTP con una chiave Ed25519, pubblica la chiave pubblica in una directory ben definita sul proprio dominio, e il server destinatario verifica la firma in tempo reale. Il sito che vuole consumare l’identità del bot deve pubblicare a sua volta una directory analoga se ha un ruolo nello scambio (es. emette token o counter-firmate).

La spec si appoggia a RFC 9421 (HTTP Message Signatures) per la crittografia, e a due draft IETF in lavorazione: draft-meunier-web-bot-auth-architecture (directory di chiavi) e draft-meunier-http-message-signatures-bots (uso nel contesto bot). Cloudflare ha pubblicato l’implementazione di riferimento e l’approccio operativo nel proprio bot management.

Il path well-known per la directory è /.well-known/http-message-signatures-directory, servito con Content-Type: application/http-message-signatures-directory+json. Payload minimo:

{
  "keys": [
    {
      "kty": "OKP",
      "crv": "Ed25519",
      "x": "11qYAYKxCrfVS_7TyWQHOg7hcvPapiMlrwIaaPcHURo",
      "kid": "key-2026-01"
    }
  ]
}

La risposta stessa va firmata, con header Signature e Signature-Input che includano i parametri tag="http-message-signatures-directory", keyid (JWK thumbprint), created, expires e i componenti coperti (almeno @authority). Il tool isitagentready esegue una GET sul path e verifica che la risposta sia 200; non valida i campi crittografici nel dettaglio.

Per un sito content-only la pubblicazione di una propria directory ha senso solo se si vuole emettere identità per agenti propri (es. un bot di scraping interno che si autentica verso le proprie API). Per un blog WordPress il check resta in genere irrilevante: l’attivazione di Web Bot Auth lato consumer (verificare i bot in ingresso) è invece feature di Cloudflare Bot Management, e non passa dal codice del sito.

API, Auth, MCP & Skill Discovery: sette well-known per l’agentic web

La quarta categoria raccoglie sette check su altrettanti meccanismi di discovery: dall’enumerazione di API pubbliche all’esposizione di tool MCP, dall’autenticazione OAuth a protocolli di pacchettizzazione di skill riusabili. Per un sito content-only la maggior parte di questi check è inapplicabile e il punteggio resta basso. Per SaaS, API platform e siti che espongono funzionalità programmabili è qui che si concentra il valore del tool. Dal lato client, conoscere dove i server MCP vengono registrati aiuta a debuggare problemi di discovery: ho documentato il filesystem di un client MCP popolare (Claude Code) come reference.

Categoria 'API, Auth, MCP & Skill Discovery' del tool isitagentready con i 6 check (API Catalog, OAuth/OIDC discovery, OAuth Protected Resource, MCP Server Card, Agent Skills index, WebMCP) tutti in stato Fail su un sito content-only.
La categoria API/Auth/MCP/Skill su un sito content-only come evemilano.com: tutti e 6 i check risultano Fail, perché gli endpoint well-known agentic sono per definizione assenti su un blog editoriale.

API Catalog — RFC 9727

RFC 9727 definisce un meccanismo di discovery per i cataloghi di API esposti da un dominio. Il documento è servito da /.well-known/api-catalog con Content-Type: application/linkset+json, secondo il formato Linkset di RFC 9264. Ogni voce del linkset include un anchor (URI base dell’API) e un set di link relation: service-desc (specifica OpenAPI/AsyncAPI), service-doc (documentazione human-readable), status (endpoint di health).

{
  "linkset": [
    {
      "anchor": "https://api.example.com/v1",
      "service-desc": [
        { "href": "https://api.example.com/v1/openapi.json", "type": "application/openapi+json" }
      ],
      "service-doc": [
        { "href": "https://developer.example.com/v1", "type": "text/html" }
      ],
      "status": [
        { "href": "https://api.example.com/v1/health" }
      ]
    }
  ]
}

L’adozione è bassa: l’RFC è del 2024 e nessun agente major lo richiede oggi come precondizione, ma è il candidato più solido per la discovery autonoma di API da parte di agenti AI nel medio periodo.

OAuth / OIDC discovery

Il check verifica la presenza di metadati di discovery per OAuth 2.0 e OpenID Connect. Due path possibili:

  • /.well-known/oauth-authorization-serverRFC 8414, OAuth 2.0 Authorization Server Metadata.
  • /.well-known/openid-configuration — OpenID Connect Discovery 1.0, path legacy ma ancora ampiamente usato.

Il documento descrive gli endpoint dell’authorization server in JSON: issuer, authorization_endpoint, token_endpoint, jwks_uri, scopes_supported, response_types_supported, grant_types_supported, token_endpoint_auth_methods_supported. Per un agente AI che vuole autenticarsi a un’API protetta del sito, questo è il primo punto di partenza: legge il documento, identifica gli endpoint, esegue il flow OAuth appropriato.

{
  "issuer": "https://auth.example.com",
  "authorization_endpoint": "https://auth.example.com/oauth/authorize",
  "token_endpoint": "https://auth.example.com/oauth/token",
  "jwks_uri": "https://auth.example.com/.well-known/jwks.json",
  "response_types_supported": ["code"],
  "grant_types_supported": ["authorization_code", "refresh_token", "client_credentials"],
  "scopes_supported": ["openid", "profile", "read", "write"],
  "token_endpoint_auth_methods_supported": ["client_secret_basic", "client_secret_post"]
}

Per un sito content-only senza API protette, questo check è strutturalmente inapplicabile. È rilevante per SaaS, identity provider e qualsiasi piattaforma che voglia consentire ad agenti AI di operare per conto degli utenti.

OAuth Protected Resource — RFC 9728

RFC 9728, pubblicato ad aprile 2025, complementa RFC 8414: mentre quest’ultimo descrive un authorization server, RFC 9728 descrive una protected resource, cioè un’API che richiede bearer token. La resource pubblica i metadati su /.well-known/oauth-protected-resource (o un path resource-specific), dichiarando quali authorization server possono emettere token validi e quali scope sono supportati.

{
  "resource": "https://api.example.com",
  "authorization_servers": ["https://auth.example.com"],
  "bearer_methods_supported": ["header"],
  "scopes_supported": ["read", "write", "admin"],
  "resource_documentation": "https://developer.example.com/api"
}

Il pattern è alla base del nuovo flow MCP-over-OAuth: un agente che si connette a un MCP server protetto legge da qui quale authorization server consultare, esegue il flow OAuth lì, riceve il token, e lo presenta al server MCP. Anche qui, applicabilità limitata ai siti che espongono API protette.

MCP Server Card — SEP-2127

Il Model Context Protocol (MCP) è lo standard rilasciato da Anthropic per esporre tool, risorse e prompt agli agenti AI tramite un transport JSON-RPC. Fino al 2025 mancava un meccanismo di discovery pre-connessione: per scoprire le capability di un server MCP era necessario completare l’handshake. La SEP-2127 (in stato di pull request aperta sul repository ufficiale al momento della scrittura) introduce il concetto di Server Card: un documento statico, ospitato su /.well-known/mcp/server-card.json, che dichiara identità, versione, trasporti supportati, capability e — ove rilevante — il requisito di OAuth Protected Resource per autenticarsi.

{
  "$schema": "https://modelcontextprotocol.io/schemas/server-card-1.0.json",
  "name": "example-mcp-server",
  "title": "Example MCP Server",
  "description": "Esempio di server MCP per query su un dataset interno.",
  "version": "1.2.0",
  "supportedProtocolVersions": ["2025-06-18"],
  "remotes": [
    {
      "transport": "streamable-http",
      "endpoint": "https://mcp.example.com/v1",
      "auth": {
        "type": "oauth2",
        "metadata": "https://api.example.com/.well-known/oauth-protected-resource"
      }
    }
  ],
  "capabilities": {
    "tools": true,
    "resources": true,
    "prompts": false
  }
}

Lo stato della spec è in evoluzione attiva: chi implementa la Server Card oggi dovrebbe seguire la PR sul repository modelcontextprotocol/modelcontextprotocol per evitare drift rispetto alla versione che verrà merge nello standard. Per un approfondimento sull’architettura MCP si veda MCP Server: l’architettura silente del Web intelligente.

A2A Agent Card

Il protocollo Agent-to-Agent (A2A) è promosso da Google con una governance multi-stakeholder. Definisce un transport e un formato di discovery per consentire a un agente di scoprire, contattare e collaborare con un altro agente. L’analogo della Server Card MCP qui è la Agent Card, un documento JSON che descrive l’agente, le sue capability e gli endpoint di interazione.

Il path tipico è /.well-known/agent.json (le revisioni successive della spec hanno proposto anche agent-card.json per coerenza con MCP). La specifica è gestita sul repository google-a2a/A2A ed è in stato di draft attivo. L’adozione attuale è confinata all’ecosistema Google e ad alcuni partner; per un sito generalista questo check rimane oggi puramente prospettico.

Agent Skills discovery index

Il formato Skills, introdotto da Anthropic, definisce pacchetti riusabili di istruzioni e risorse (un file SKILL.md con frontmatter e contenuto, opzionalmente accompagnato da asset) che un agente AI carica al bisogno per acquisire capability puntuali. Il meccanismo di discovery è normato dal cloudflare/agent-skills-discovery-rfc v0.2.0: l’index è ospitato su /.well-known/agent-skills/index.json e referenzia uno schema su schemas.agentskills.io.

{
  "$schema": "https://schemas.agentskills.io/discovery/0.2.0/schema.json",
  "skills": [
    {
      "name": "seo-audit-checklist",
      "type": "skill-md",
      "description": "Checklist di audit SEO tecnico per siti enterprise.",
      "url": "/.well-known/agent-skills/seo-audit-checklist/SKILL.md",
      "digest": "sha256:9f86d081884c7d659a2feaa0c55ad015a3bf4f1b2b0b822cd15d6c15b0f00a08"
    },
    {
      "name": "schema-org-validator",
      "type": "archive",
      "description": "Tool per validare dati strutturati JSON-LD.",
      "url": "/.well-known/agent-skills/schema-org-validator.tar.gz",
      "digest": "sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"
    }
  ]
}

Sono previsti due tipi: skill-md (singolo file Markdown) e archive (bundle tar.gz/zip). Il digest SHA-256 protegge l’integrità del download lato agente. Il formato Skills è già onorato da numerosi client (Claude, Claude Code, Cursor, GitHub Copilot, Gemini CLI, OpenCode); la discovery via well-known è invece adoption-early. Per un sito che pubblica metodologie tecniche replicabili, esporre l’indice di skill è un investimento interessante: trasforma documentazione passiva in unità funzionali consumabili da agenti.

WebMCP: tool MCP direttamente dal browser

WebMCP è una proposta del W3C Web Machine Learning Community Group (draft pubblicato) che porta il modello MCP direttamente dentro il runtime JavaScript della pagina web. Invece di registrare i tool su un server MCP separato, lo script della pagina chiama navigator.modelContext.provideContext() e dichiara tool eseguibili lato client (con name, description, inputSchema e callback execute). Un browser-agent capace di leggere l’API può scoprire i tool a runtime senza alcuna integrazione lato server.

navigator.modelContext.provideContext({
  tools: [
    {
      name: "addToCart",
      description: "Aggiunge un prodotto al carrello del sito.",
      inputSchema: {
        type: "object",
        properties: {
          sku: { type: "string" },
          quantity: { type: "integer", minimum: 1 }
        },
        required: ["sku", "quantity"]
      },
      execute: async ({ sku, quantity }) => {
        const res = await fetch("/cart/add", {
          method: "POST",
          body: JSON.stringify({ sku, quantity })
        });
        return res.json();
      }
    }
  ]
});

Lo stato della spec è Community Group Draft: non è una Recommendation W3C e nessun browser stable ha ancora shippato l’API. È rilevante per anticipare l’adozione futura, non per la produzione 2026. Il check del tool fa il page load e verifica la presenza di navigator.modelContext con tool registrati: in assenza dell’implementazione browser, il check fallisce strutturalmente su qualsiasi sito.

Commerce: quattro protocolli di pagamento agentico

La categoria Commerce raggruppa quattro standard concorrenti per consentire ad agenti AI di pagare risorse o effettuare acquisti senza intervento umano. Il tool dichiara la categoria opzionale per i siti non e-commerce e non penalizza il punteggio in assenza di implementazione. Per piattaforme commerciali e API a consumo, è qui che si gioca la partita di lungo periodo.

x402: pagamenti HTTP nativi

x402 è un open standard sponsorizzato da Coinbase che riusa lo status HTTP 402 Payment Required (riservato da decenni nello standard HTTP e mai utilizzato) come trigger per un flow di pagamento. Il flow è:

  1. Client GET /risorsa.
  2. Server risponde 402 con un payload che dichiara importo, valuta accettata, indirizzo destinazione (tipicamente on-chain, USDC stablecoin).
  3. Client esegue la transazione (firma una tx on-chain o usa un payment channel).
  4. Client ripete la richiesta con un header che prova il pagamento.
  5. Server verifica la prova e serve la risorsa con 200.

Il protocollo è network-agnostic ma la documentazione di riferimento privilegia stablecoin su EVM. Lo use case naturale è il consumo a micropagamento di API agentiche (per fetch, per inference, per dataset). Il tool di discovery del tool isitagentready è /platform/v2/x402/discovery/resources, un endpoint bazaar gestito centralmente che enumera risorse a pagamento di provider partecipanti.

MPP — Machine Payments Protocol

MPP affronta lo stesso problema di x402 con un’angolazione enterprise/fiat. Sviluppato congiuntamente da Tempo e Stripe, è in processo di standardizzazione presso IETF. La discovery non passa da un well-known dedicato ma da un’estensione del documento OpenAPI dell’API: ogni operation che richiede pagamento dichiara nel proprio descriptor un’extension x-payment-info con intent (charge o session), method (tempo, stripe, lightning, card), amount e currency.

Il tool isitagentready verifica MPP cercando un documento OpenAPI su /openapi.json e parsando eventuali estensioni di pagamento. Per piattaforme che già espongono OpenAPI, l’integrazione è una modifica chirurgica al descriptor; il payment handling è poi gestito da SDK ufficiali (mppx per TypeScript, pympp per Python) e middleware framework-specific (Hono, Express, Next.js, Elysia).

UCP — Universal Commerce Protocol

Il check UCP testa la presenza di /.well-known/ucp. Allo stato della scrittura, la spec primaria di UCP non è pubblicamente verificabile: il tool isitagentready elenca il check ma il repository di riferimento non è facilmente reperibile e la documentazione pubblica appare scarsa. È plausibile che si tratti di una proposta Cloudflare in early stage o non ancora resa pubblica nella versione completa. Chi vuole implementarlo dovrebbe attendere il rilascio della spec ufficiale o cercare comunicazione diretta con il team Cloudflare Agents. Riporto il dettaglio per completezza del walkthrough, ma sconsiglio di investire in UCP fino a quando non sarà disponibile una specifica con un percorso di governance chiaro.

ACP — Agentic Commerce Protocol

ACP è il protocollo dietro la feature “Buy it in ChatGPT” lanciata nel settembre 2025, sviluppato congiuntamente da OpenAI e Stripe. Definisce il flow agente-merchant-utente per consentire l’acquisto di un prodotto direttamente da una conversazione con un agente, senza dover passare dal sito del merchant. Il merchant pubblica un documento di discovery su /.well-known/acp.json che dichiara endpoint di catalog, checkout, conferma ordine e webhook di stato.

Lo stato della spec è in shaping pubblico: il sito agentcommerceprotocol.com è online ma la documentazione canonica si è spostata di recente e alcuni asset (schema JSON, repository GitHub) non sono sempre accessibili. Prima di implementare ACP è prudente recuperare l’ultima versione del materiale dal sito ufficiale e dai canali OpenAI/Stripe. Per un e-commerce italiano l’esposizione su ChatGPT shopping è oggi limitata a partnership selezionate, ma il pattern ACP è il candidato di riferimento per la prossima generazione di commerce agentico.

Mappa di priorità per tipo di sito

Non tutti gli standard hanno senso su qualunque sito. La tabella che segue mappa i 18 check in tre profili tipici: content site (blog, magazine, sito corporate), SaaS/API platform, e-commerce. La priorità alta significa che il check è applicabile e ha un ritorno concreto; media significa che è applicabile ma il valore è prospettico (draft/early adoption); bassa significa strutturalmente inapplicabile o non rilevante.

StandardContent siteSaaS / APIE-commerce
robots.txtAltaAltaAlta
Sitemap XMLAltaMediaAlta
Link headersAltaAltaAlta
Markdown negotiationAltaMediaAlta
AI bot rulesAltaMediaAlta
Content SignalsAltaBassaMedia
Web Bot AuthBassaMediaMedia
API CatalogBassaAltaMedia
OAuth / OIDC discoveryBassaAltaMedia
OAuth Protected ResourceBassaAltaMedia
MCP Server CardBassaAltaMedia
A2A Agent CardBassaMediaBassa
Agent Skills indexMediaAltaMedia
WebMCPBassaMediaMedia
x402BassaMediaMedia
MPPBassaMediaMedia
UCPBassaBassaBassa
ACPBassaBassaAlta

L’osservazione operativa è che un content site WordPress oggi può puntare a un punteggio sostenibile concentrandosi su sette standard: i tre della Discoverability (già coperti out-of-the-box), Markdown negotiation (richiede edge o middleware), AI bot rules (modifica al robots.txt), Content Signals (modifica al robots.txt) e — opzionalmente — Agent Skills se il sito pubblica metodologie operative. Web Bot Auth come emettitore non porta valore al content site lato pubblicazione; vale invece come consumer lato firewall, ma quella feature è disponibile tramite Cloudflare Bot Management senza intervento sul codice.

Cosa non misura il tool

Un punteggio alto su isitagentready certifica che gli endpoint well-known esistono e sono ben formati, non che il sito sia effettivamente leggibile da un agente AI. Le aree non coperte dal tool sono spesso quelle dove si gioca la visibilità reale nei sistemi LLM:

  • Rendering JavaScript lato bot AI. Il tool fa una GET alla homepage e legge gli header, non valuta come ChatGPT, Claude o Gemini eseguono il rendering del DOM. Molti siti SPA in React/Next.js senza SSR funzionano in browser ma sono opachi per i fetcher AI. Per un’analisi pratica si veda Test SEO: ChatGPT, Gemini e Claude riescono a leggere siti JavaScript?.
  • Dati strutturati Schema.org. Nessuno dei check verifica JSON-LD nel body, le tipologie schema usate (Article, Product, FAQPage, HowTo, Organization), la consistenza dell’entity graph del sito. Eppure lo schema è uno dei segnali più forti per la disambiguazione semantica degli LLM.
  • Qualità del contenuto per il retrieval. Densità informativa, struttura semantica delle heading, chunking compatibile con i RAG pipeline degli LLM: tutto fuori dal perimetro del tool.
  • Accessibilità classica WCAG. Pur essendo un fattore che molti LLM-fetcher rispettano (attributi alt, struttura heading, ruoli ARIA), nessun check di isitagentready la valuta.
  • Performance e budget di crawl AI. Time-to-first-byte, dimensione della risposta, stabilità del server sotto carico bot — non misurati.
  • Verifica reale del rispetto delle direttive. Il tool valida che robots.txt esista e contenga AI bot rules, ma non testa se i bot dichiarati onorano effettivamente le direttive. Quella verifica richiede log analysis lato server.

In altri termini: isitagentready è una checklist di conformità protocollare, non un audit di accessibilità AI a tutto tondo. Le due metriche correlano debolmente. Un sito può avere punteggio 100 e restare di fatto opaco agli LLM (es. SPA non renderizzabile lato bot); un sito può avere punteggio basso e essere comunque ben citato da ChatGPT e Perplexity (es. blog statico con HTML pulito e schema completo).

Conclusioni: agent-readiness come vettore SEO 2026

Il valore di isitagentready non sta nel punteggio assoluto ma nella mappa di standard che consolida. Per chi presidia SEO tecnico, conoscere i 18 check significa conoscere la roadmap dei protocolli che stanno definendo l’accesso autonomo al web da parte degli agenti AI: da quali RFC seguire (9421, 9727, 9728, draft aipref WG) a quali well-known anticipare (Web Bot Auth, MCP Server Card, Agent Skills). La maggioranza degli standard è ancora in early adoption e l’effetto sul ranking dei motori di ricerca tradizionali è nullo. Ma l’inerzia favorisce chi si muove prima: implementare oggi Markdown negotiation, Content Signals e AI bot rules costa poco e qualifica il sito come early mover su un asse che diventerà rilevante in 12-24 mesi.

Per i siti più complessi — JavaScript-heavy, multilingua, e-commerce con catalogo grande, portali editoriali con archivi profondi — il tool restituisce una foto incompleta: non testa il rendering, non valida lo schema, non misura la qualità semantica del contenuto per il retrieval LLM. Se vuoi un audit completo della reale accessibilità del tuo sito a motori di ricerca, agenti e LLM — che integra l’analisi dei protocolli emergenti con l’analisi di rendering, entity graph, dati strutturati e crawlability lato bot AI — il servizio Analisi Accessibilità Web per Motori di Ricerca e AI copre l’intero perimetro.

Articoli correlati

22 min lettura

Un audit SEO tecnico completo richiede un approccio manuale rigoroso che supera i limiti intrinseci dei tool automatici. Metodo strutturato e template professionale per identificare criticità di scansione, valutare i fattori di ranking e ottimizzare le performance dei siti web.
41 mi piace
17 min lettura

L'esportazione massiva da Google Search Console a BigQuery supera i limiti dell'interfaccia nativa, garantendo retention illimitata e assenza di cap sulle righe. Configura il flusso per gestire big data SEO, storicizzare il traffico ed eseguire analisi avanzate tramite query SQL.
24 mi piace

Autore

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *

Ultimi articoli aggiornati

17 min lettura

Configurare il file robots.txt secondo il Robot Exclusion Protocol permette di governare il traffico dei bot e ottimizzare il crawl budget. Analisi tecnica della sintassi e delle direttive di scansione, distinguendo il controllo del crawling dalle regole di indicizzazione noindex.
4 mi piace
54 min lettura

Superare i limiti dei tool GUI analizzando i dati grezzi da riga di comando. Utilizza pipeline CLI con curl, jq e awk per ispezionare header HTTP, log server e catene di redirect, costruendo audit SEO tecnici riproducibili e output deterministici direttamente dal terminale.
3 mi piace

Richiedi un preventivo SEO e Google Ads

Porta il tuo sito web al livello successivo con l’esperienza di EVE Milano. La nostra agenzia di Search Marketing ha ricevuto oltre 1208 richieste di preventivo, un segnale chiaro della fiducia che imprenditori e manager, come te, ripongono nella nostra specializzazione tecnica e verticale nella SEO e PPC. Se la tua organizzazione cerca competenze specifiche per emergere nei risultati di Google, noi siamo pronti a fornire quel valore aggiunto. Richiedi un preventivo ora e scopri la differenza tra noi e gli altri.
Richiedi un preventivo

Vuoi ricevere un avviso al mese con le nuove guide pubblicate?

Iscriviti alla newsletter!