Certificato AgentReady.md verificato
Emesso il sig: 9f47fc247d8c1993 Verifica →

URL analizzato

https://manus.im

Analizza un altro URL

Punteggio AI-Ready

56 / D

Scarso

su 100

Risparmio di token

Token HTML 82.843
Token Markdown 685
Risparmio 99%

Dettaglio del punteggio

HTML Semantico 47/100
Efficienza dei contenuti 60/100
Scopribilità IA 35/100
Dati Strutturati 70/100
Accessibilità 85/100

Protocolli emergenti

0 di 3 rilevati

Endpoint well-known cercati dagli agenti IA. Rilevato significa che un agente può scoprire e connettersi automaticamente al tuo servizio.

  • OAuth Discovery RFC 8414
    /.well-known/oauth-authorization-server
  • MCP Server Card Anthropic
    /.well-known/mcp.json
  • A2A Agent Card Google
    /.well-known/agent.json

Il tuo sito non ha un file llms.txt. Questo è lo standard emergente per aiutare gli agenti IA a comprendere la struttura del tuo sito.

Come implementare

Crea un file /llms.txt seguendo la specifica llmstxt.org. Includi una descrizione del sito e link alle tue pagine principali.

La tua pagina non utilizza elementi <article> o <main>. Questi contenitori semantici aiutano gli agenti IA a identificare l'area del contenuto principale e ignorare navigazione, barre laterali e piè di pagina.

Come implementare

Aggiungi un elemento <main> attorno al contenuto principale della tua pagina e usa <article> per blocchi di contenuto autonomi come post del blog o descrizioni di prodotti.

La tua pagina ha un basso rapporto tra contenuto reale e HTML totale. Gran parte del peso della pagina è markup, script o stili anziché contenuto.

Come implementare

Sposta i CSS in fogli di stile esterni, rimuovi gli stili inline, minimizza JavaScript e assicurati che l'HTML si concentri sulla struttura del contenuto.

Il tuo sito non supporta Markdown for Agents. Questo standard Cloudflare permette agli agenti IA di richiedere contenuti in formato markdown, riducendo l'uso dei token di ~80%.

Come implementare

Implementa uno o più: (1) Rispondere a Accept: text/markdown con contenuto markdown. (2) Servire URL .md (es: /pagina.md). (3) Aggiungere tag <link rel="alternate" type="text/markdown">. (4) Aggiungere header HTTP Link per la scoperta markdown.

{\n res.setHeader('Vary', 'Accept');\n res.setHeader('Link', '; rel=\"alternate\"; type=\"text/markdown\"');\n if ((req.headers.accept || '').includes('text/markdown')) {\n res.type('text/markdown; charset=utf-8');\n return res.send(renderMarkdown('page'));\n }\n res.render('page');\n});"},{"id":"fastify","label":"Fastify","language":"javascript","filename":"server.js","code":"// Mechanisms 1 + 4: content negotiation + Link header\nfastify.get('/page', async (req, reply) => {\n reply.header('Vary', 'Accept');\n reply.header('Link', '; rel=\"alternate\"; type=\"text/markdown\"');\n if ((req.headers.accept || '').includes('text/markdown')) {\n return reply.type('text/markdown; charset=utf-8').send(renderMarkdown('page'));\n }\n return reply.view('/page.ejs');\n});"},{"id":"nextjs","label":"Next.js","language":"typescript","filename":"app/page/route.ts","code":"// Next.js App Router — Route Handler returning Markdown\nimport { NextRequest } from 'next/server';\nimport { renderMarkdown } from '@/lib/md';\nexport async function GET(req: NextRequest) {\n const accept = req.headers.get('accept') || '';\n if (accept.includes('text/markdown')) {\n return new Response(await renderMarkdown('page'), {\n headers: {\n 'Content-Type': 'text/markdown; charset=utf-8',\n 'Vary': 'Accept',\n },\n });\n }\n // Fall through to the page component\n return new Response(null, { status: 404 });\n}"},{"id":"wordpress","label":"WordPress","language":"php","filename":"functions.php","code":"post_content));\n exit;\n});"},{"id":"static","label":"Hugo / Jekyll / Astro","language":"txt","filename":"static/page.md","code":"# Mechanism 2: serve .md alongside .html\n# Hugo: place page.md in /static/ — built unchanged\n# Jekyll: drop page.md in /assets/ — copied as-is\n# Astro: src/pages/page.md.ts that exports a GET returning markdown\n\n# Then advertise with mechanism 3 in :\n# "}] }'>

Nessuna direttiva Content-Signal trovata. Queste indicano agli agenti IA come possono usare i tuoi contenuti (indicizzazione, input IA, dati di addestramento). La posizione consigliata è robots.txt.

Come implementare

Aggiungi Content-Signal al tuo robots.txt: User-agent: *\nContent-Signal: search=yes, ai-input=yes, ai-train=no. Puoi anche aggiungerlo come header HTTP nelle risposte markdown.

{\n res.setHeader('Content-Signal', 'search=yes, ai-input=yes, ai-train=no');\n next();\n});\n\n// Fastify\nfastify.addHook('onSend', (request, reply, payload, done) => {\n reply.header('Content-Signal', 'search=yes, ai-input=yes, ai-train=no');\n done();\n});"}] }'>

Nessun dato strutturato Schema.org trovato. JSON-LD aiuta gli agenti IA a estrarre informazioni fattuali e strutturate dalle tue pagine.

Come implementare

Aggiungi un blocco <script type="application/ld+json"> con markup Schema.org. Usa tipi appropriati: Article per post del blog, Product per pagine prodotto, Organization per la pagina aziendale.

La tua pagina si basa molto sugli elementi <div>. Elementi semantici come <section>, <nav>, <header>, <footer> e <aside> forniscono una struttura significativa per gli agenti IA.

Come implementare

Sostituisci i contenitori <div> generici con elementi semantici appropriati. Usa <section> per gruppi tematici, <nav> per la navigazione, <header>/<footer> per intestazioni e piè di pagina.

La tua pagina ha elementi <div> profondamente annidati. L'annidamento profondo aggiunge rumore e rende più difficile l'estrazione dei contenuti per gli agenti IA.

Come implementare

Semplifica la struttura HTML rimuovendo div wrapper non necessari. Usa CSS Grid o Flexbox per il layout invece di div contenitore annidati.

Molti elementi hanno attributi di stile inline. Questi aggiungono rumore per gli agenti IA che estraggono contenuti.

Come implementare

Sposta tutti gli stili inline in classi CSS nel tuo foglio di stile. Usa framework CSS utility come Tailwind se hai bisogno di molti stili unici.

Token Markdown: 685
[

](https://manus.im/?index=1)

[

](https://manus.im/?index=1)

Features

Solutions

Resources

[

Events

](https://events.manus.im/)[

Business

](https://manus.im/team)[

Pricing

](https://manus.im/pricing)

[

Manus is now part of Meta — bringing AI to businesses worldwide

](https://manus.im/team)

## What can I do for you?

Create slides

Build website

Develop desktop apps

Design

More

## Less structure,
more intelligence.

### Product[Pricing](https://manus.im/pricing)[Web app](https://manus.im/features/webapp)[AI design](https://manus.im/tools/ai-design)[AI slides](https://manus.im/tools/nano-banana-pro-slides)[AI image generator](https://manus.im/tools/ai-image-generator)[AI music generator](https://manus.im/tools/ai-music-generator)[Manus browser operator](https://manus.im/features/manus-browser-operator)[Wide Research](https://manus.im/features/wide-research)[Mail Manus](https://manus.im/features/mail)[Slack integration](https://manus.im/integrations/slack)

### Resources[Blog](https://manus.im/blog)[Docs](https://manus.im/docs)[Updates](https://manus.im/updates)[Help center](https://help.manus.im/)[Trust center](https://trust.manus.im/)[API](https://open.manus.ai/docs)[Team plan](https://manus.im/team)[Startups](https://manus.im/startups)[Playbook](https://manus.im/playbook)[Brand assets](https://manus.im/brand)

### Community[Events](https://events.manus.im/)[Fellows](https://manus.im/fellows)

### Compare[VS ChatGPT](https://manus.im/compare/vs-chatgpt)[VS Lovable](https://manus.im/compare/lovable)[VS Replit](https://manus.im/compare/manus-vs-replit)

### Download[Mobile app](https://manus.go.link/eyNGY)[Desktop app](https://manus.im/desktop)My Browser

### Business[Team plan](https://manus.im/team)[SSO](https://help.manus.im/en/articles/12807937-where-can-i-enable-subscribe-to-a-single-sign-on-sso-subscription-for-manus-team)[API](https://open.manus.ai/docs)

### Company[About us](https://manus.im/about)[Careers](https://www.metacareers.com/jobsearch?q=Manus)[For business](mailto:[email protected])[For media](mailto:[email protected])[Terms of service](https://manus.im/terms)[Privacy policy](https://manus.im/privacy)

[](https://www.linkedin.com/company/manus-im/)[](https://x.com/manusai)[](https://www.youtube.com/@Manus-AI/videos)[](https://www.instagram.com/manus/)[](http://www.tiktok.com/@manusaiofficial)

© 2026 Meta

Manus: Hands On AI
[

](https://manus.im/?index=1)

Sign inSign up

[

](https://manus.im/?index=1)

Features

Solutions

Resources

[

Events

](https://events.manus.im/)[

Business

](https://manus.im/team)[

Pricing

](https://manus.im/pricing)

Sign inSign up

[

Manus is now part of Meta — bringing AI to businesses worldwide

](https://manus.im/team)

# What can I do for you?

Create slides

Build website

Develop desktop apps

Design

More

## Less structure,
more intelligence.

### Product[Pricing](https://manus.im/pricing)[Web app](https://manus.im/features/webapp)[AI design](https://manus.im/tools/ai-design)[AI slides](https://manus.im/tools/nano-banana-pro-slides)[AI image generator](https://manus.im/tools/ai-image-generator)[AI music generator](https://manus.im/tools/ai-music-generator)[Manus browser operator](https://manus.im/features/manus-browser-operator)[Wide Research](https://manus.im/features/wide-research)[Mail Manus](https://manus.im/features/mail)[Slack integration](https://manus.im/integrations/slack)

### Resources[Blog](https://manus.im/blog)[Docs](https://manus.im/docs)[Updates](https://manus.im/updates)[Help center](https://help.manus.im/)[Trust center](https://trust.manus.im/)[API](https://open.manus.ai/docs)[Team plan](https://manus.im/team)[Startups](https://manus.im/startups)[Playbook](https://manus.im/playbook)[Brand assets](https://manus.im/brand)

### Community[Events](https://events.manus.im/)[Fellows](https://manus.im/fellows)

### Compare[VS ChatGPT](https://manus.im/compare/vs-chatgpt)[VS Lovable](https://manus.im/compare/lovable)[VS Replit](https://manus.im/compare/manus-vs-replit)

### Download[Mobile app](https://manus.go.link/eyNGY)[Desktop app](https://manus.im/desktop)My Browser

### Business[Team plan](https://manus.im/team)[SSO](https://help.manus.im/en/articles/12807937-where-can-i-enable-subscribe-to-a-single-sign-on-sso-subscription-for-manus-team)[API](https://open.manus.ai/docs)

### Company[About us](https://manus.im/about)[Careers](https://www.metacareers.com/jobsearch?q=Manus)[For business](mailto:[email protected])[For media](mailto:[email protected])[Terms of service](https://manus.im/terms)[Privacy policy](https://manus.im/privacy)

[](https://www.linkedin.com/company/manus-im/)[](https://x.com/manusai)[](https://www.youtube.com/@Manus-AI/videos)[](https://www.instagram.com/manus/)[](http://www.tiktok.com/@manusaiofficial)

English

© 2026 Meta

Manus: Hands On AI

Carica questo file come /index.md sul tuo server affinché gli agenti IA possano accedere a una versione pulita della tua pagina. Puoi anche configurare la negoziazione dei contenuti Accept: text/markdown per servirlo automaticamente.

llms.txt generato per questa singola pagina

Scarica llms.txt
# manus.im

> Manus is the action engine that goes beyond answers to execute tasks, automate workflows, and extend your human reach.

## Documentation
- [Docs](https://manus.im/docs)

## Main
- [Manus: Hands On AI](https://manus.im): Manus is the action engine that goes beyond answers to execute tasks, automate workflows, and extend your human reach.
- [Business](https://manus.im/team)
- [Pricing](https://manus.im/pricing)

Il llms.txt completo richiede un'analisi dell'intero dominio (prossimamente)

Carica questo file come https://manus.im/llms.txt nella radice del tuo dominio. Agenti IA come ChatGPT, Claude e Perplexity controllano questo file per comprendere la struttura del tuo sito.

HTML Semantico

Utilizza elemento article o main (0/100)

Missing <article> and <main> elements

Gerarchia di intestazioni corretta (100/100)

Clean heading hierarchy

Utilizza elementi HTML semantici (8/100)

2 semantic elements, 82 divs (ratio: 2%)

Testi alt delle immagini significativi (100/100)

No images found

Bassa profondità di annidamento div (25/100)

Avg div depth: 12.5, max: 19

Efficienza dei contenuti

Buon rapporto di riduzione token (100/100)

99% token reduction (HTML→Markdown)

Buon rapporto contenuto-rumore (0/100)

Content ratio: 0.4% (668 content chars / 169904 HTML bytes)

Stili inline minimi (50/100)

8/413 elements with inline styles (1.9%)

Peso della pagina ragionevole (80/100)

HTML size: 166KB

Scopribilità IA

Ha file llms.txt (0/100)

No llms.txt found

Ha file robots.txt (100/100)

robots.txt exists

robots.txt consente bot IA (100/100)

All major AI bots allowed

Ha sitemap.xml (100/100)

Sitemap found

Supporto Markdown for Agents (0/100)
&#10007; Accept: text/markdown &#10007; .md URL &#10007; <link> tag &#10007; Link header
Ha Content-Signal (robots.txt o header HTTP) (0/100)
&#10003; robots.txt &#10003; HTTP header &#10007; Policy

Dati Strutturati

Ha Schema.org / JSON-LD (0/100)

No JSON-LD / Schema.org found

Ha tag Open Graph (100/100)

All OG tags present

Ha meta descrizione (100/100)

Meta description: 118 chars

Ha URL canonico (100/100)

Canonical URL present

Ha attributo lang (100/100)

lang="en"

Accessibilità

Contenuto disponibile senza JavaScript (100/100)

Content available without JavaScript

Dimensione della pagina ragionevole (100/100)

Page size: 166KB

Il contenuto appare presto nell'HTML (50/100)

Main content starts at 52% of HTML

{
  "url": "https://manus.im",
  "timestamp": 1778268410726,
  "fetch": {
    "mode": "simple",
    "timeMs": 175,
    "htmlSizeBytes": 169904,
    "supportsMarkdown": false,
    "markdownAgents": {
      "contentNegotiation": false,
      "mdUrl": {
        "found": false,
        "url": null
      },
      "linkTag": {
        "found": false,
        "url": null
      },
      "linkHeader": {
        "found": false,
        "url": null
      },
      "responseHeaders": {
        "contentSignal": null,
        "xMarkdownTokens": null,
        "vary": null
      },
      "frontmatter": {
        "present": false,
        "fields": [],
        "level": "none"
      },
      "level": "none"
    },
    "statusCode": 200
  },
  "extraction": {
    "title": "Manus: Hands On AI",
    "excerpt": "Manus is the action engine that goes beyond answers to execute tasks, automate workflows, and extend your human reach.",
    "byline": null,
    "siteName": null,
    "lang": "en",
    "contentLength": 668,
    "metadata": {
      "description": "Manus is the action engine that goes beyond answers to execute tasks, automate workflows, and extend your human reach.",
      "ogTitle": "Manus: Hands On AI",
      "ogDescription": "Manus is the action engine that goes beyond answers to execute tasks, automate workflows, and extend your human reach.",
      "ogImage": "https://files.manuscdn.com/webapp/media/ogBanner.png",
      "ogType": "website",
      "canonical": "https://manus.im/",
      "lang": "en",
      "schemas": [],
      "robotsMeta": null,
      "author": null,
      "generator": null,
      "markdownAlternateHref": null
    }
  },
  "markdown": "[\n\n](https://manus.im/?index=1)\n\n[\n\n](https://manus.im/?index=1)\n\nFeatures\n\nSolutions\n\nResources\n\n[\n\nEvents\n\n](https://events.manus.im/)[\n\nBusiness\n\n](https://manus.im/team)[\n\nPricing\n\n](https://manus.im/pricing)\n\n[\n\nManus is now part of Meta — bringing AI to businesses worldwide\n\n](https://manus.im/team)\n\n## What can I do for you?\n\nCreate slides\n\nBuild website\n\nDevelop desktop apps\n\nDesign\n\nMore\n\n## Less structure,\nmore intelligence.\n\n### Product[Pricing](https://manus.im/pricing)[Web app](https://manus.im/features/webapp)[AI design](https://manus.im/tools/ai-design)[AI slides](https://manus.im/tools/nano-banana-pro-slides)[AI image generator](https://manus.im/tools/ai-image-generator)[AI music generator](https://manus.im/tools/ai-music-generator)[Manus browser operator](https://manus.im/features/manus-browser-operator)[Wide Research](https://manus.im/features/wide-research)[Mail Manus](https://manus.im/features/mail)[Slack integration](https://manus.im/integrations/slack)\n\n### Resources[Blog](https://manus.im/blog)[Docs](https://manus.im/docs)[Updates](https://manus.im/updates)[Help center](https://help.manus.im/)[Trust center](https://trust.manus.im/)[API](https://open.manus.ai/docs)[Team plan](https://manus.im/team)[Startups](https://manus.im/startups)[Playbook](https://manus.im/playbook)[Brand assets](https://manus.im/brand)\n\n### Community[Events](https://events.manus.im/)[Fellows](https://manus.im/fellows)\n\n### Compare[VS ChatGPT](https://manus.im/compare/vs-chatgpt)[VS Lovable](https://manus.im/compare/lovable)[VS Replit](https://manus.im/compare/manus-vs-replit)\n\n### Download[Mobile app](https://manus.go.link/eyNGY)[Desktop app](https://manus.im/desktop)My Browser\n\n### Business[Team plan](https://manus.im/team)[SSO](https://help.manus.im/en/articles/12807937-where-can-i-enable-subscribe-to-a-single-sign-on-sso-subscription-for-manus-team)[API](https://open.manus.ai/docs)\n\n### Company[About us](https://manus.im/about)[Careers](https://www.metacareers.com/jobsearch?q=Manus)[For business](mailto:[email protected])[For media](mailto:[email protected])[Terms of service](https://manus.im/terms)[Privacy policy](https://manus.im/privacy)\n\n[](https://www.linkedin.com/company/manus-im/)[](https://x.com/manusai)[](https://www.youtube.com/@Manus-AI/videos)[](https://www.instagram.com/manus/)[](http://www.tiktok.com/@manusaiofficial)\n\n© 2026 Meta\n\nManus: Hands On AI\n",
  "fullPageMarkdown": "[\n\n](https://manus.im/?index=1)\n\nSign inSign up\n\n[\n\n](https://manus.im/?index=1)\n\nFeatures\n\nSolutions\n\nResources\n\n[\n\nEvents\n\n](https://events.manus.im/)[\n\nBusiness\n\n](https://manus.im/team)[\n\nPricing\n\n](https://manus.im/pricing)\n\nSign inSign up\n\n[\n\nManus is now part of Meta — bringing AI to businesses worldwide\n\n](https://manus.im/team)\n\n# What can I do for you?\n\nCreate slides\n\nBuild website\n\nDevelop desktop apps\n\nDesign\n\nMore\n\n## Less structure,\nmore intelligence.\n\n### Product[Pricing](https://manus.im/pricing)[Web app](https://manus.im/features/webapp)[AI design](https://manus.im/tools/ai-design)[AI slides](https://manus.im/tools/nano-banana-pro-slides)[AI image generator](https://manus.im/tools/ai-image-generator)[AI music generator](https://manus.im/tools/ai-music-generator)[Manus browser operator](https://manus.im/features/manus-browser-operator)[Wide Research](https://manus.im/features/wide-research)[Mail Manus](https://manus.im/features/mail)[Slack integration](https://manus.im/integrations/slack)\n\n### Resources[Blog](https://manus.im/blog)[Docs](https://manus.im/docs)[Updates](https://manus.im/updates)[Help center](https://help.manus.im/)[Trust center](https://trust.manus.im/)[API](https://open.manus.ai/docs)[Team plan](https://manus.im/team)[Startups](https://manus.im/startups)[Playbook](https://manus.im/playbook)[Brand assets](https://manus.im/brand)\n\n### Community[Events](https://events.manus.im/)[Fellows](https://manus.im/fellows)\n\n### Compare[VS ChatGPT](https://manus.im/compare/vs-chatgpt)[VS Lovable](https://manus.im/compare/lovable)[VS Replit](https://manus.im/compare/manus-vs-replit)\n\n### Download[Mobile app](https://manus.go.link/eyNGY)[Desktop app](https://manus.im/desktop)My Browser\n\n### Business[Team plan](https://manus.im/team)[SSO](https://help.manus.im/en/articles/12807937-where-can-i-enable-subscribe-to-a-single-sign-on-sso-subscription-for-manus-team)[API](https://open.manus.ai/docs)\n\n### Company[About us](https://manus.im/about)[Careers](https://www.metacareers.com/jobsearch?q=Manus)[For business](mailto:[email protected])[For media](mailto:[email protected])[Terms of service](https://manus.im/terms)[Privacy policy](https://manus.im/privacy)\n\n[](https://www.linkedin.com/company/manus-im/)[](https://x.com/manusai)[](https://www.youtube.com/@Manus-AI/videos)[](https://www.instagram.com/manus/)[](http://www.tiktok.com/@manusaiofficial)\n\nEnglish\n\n© 2026 Meta\n\nManus: Hands On AI\n",
  "markdownStats": {
    "images": 0,
    "links": 47,
    "tables": 0,
    "codeBlocks": 0,
    "headings": 9
  },
  "tokens": {
    "htmlTokens": 82843,
    "markdownTokens": 685,
    "reduction": 82158,
    "reductionPercent": 99
  },
  "score": {
    "score": 56,
    "grade": "D",
    "dimensions": {
      "semanticHtml": {
        "score": 47,
        "weight": 20,
        "grade": "D",
        "checks": {
          "uses_article_or_main": {
            "score": 0,
            "weight": 20,
            "details": "Missing <article> and <main> elements"
          },
          "proper_heading_hierarchy": {
            "score": 100,
            "weight": 25,
            "details": "Clean heading hierarchy"
          },
          "semantic_elements": {
            "score": 8,
            "weight": 20,
            "details": "2 semantic elements, 82 divs (ratio: 2%)"
          },
          "meaningful_alt_texts": {
            "score": 100,
            "weight": 15,
            "details": "No images found"
          },
          "low_div_nesting": {
            "score": 25,
            "weight": 20,
            "details": "Avg div depth: 12.5, max: 19"
          }
        }
      },
      "contentEfficiency": {
        "score": 60,
        "weight": 25,
        "grade": "C",
        "checks": {
          "token_reduction_ratio": {
            "score": 100,
            "weight": 40,
            "details": "99% token reduction (HTML→Markdown)"
          },
          "content_to_noise_ratio": {
            "score": 0,
            "weight": 30,
            "details": "Content ratio: 0.4% (668 content chars / 169904 HTML bytes)"
          },
          "minimal_inline_styles": {
            "score": 50,
            "weight": 15,
            "details": "8/413 elements with inline styles (1.9%)"
          },
          "reasonable_page_weight": {
            "score": 80,
            "weight": 15,
            "details": "HTML size: 166KB"
          }
        }
      },
      "aiDiscoverability": {
        "score": 35,
        "weight": 25,
        "grade": "F",
        "checks": {
          "has_llms_txt": {
            "score": 0,
            "weight": 20,
            "details": "No llms.txt found"
          },
          "has_robots_txt": {
            "score": 100,
            "weight": 10,
            "details": "robots.txt exists"
          },
          "robots_allows_ai_bots": {
            "score": 100,
            "weight": 15,
            "details": "All major AI bots allowed"
          },
          "has_sitemap": {
            "score": 100,
            "weight": 10,
            "details": "Sitemap found"
          },
          "supports_markdown_negotiation": {
            "score": 0,
            "weight": 25,
            "details": "No Markdown for Agents support detected"
          },
          "has_content_signals": {
            "score": 0,
            "weight": 20,
            "details": "No Content-Signal found (robots.txt or HTTP headers)"
          }
        }
      },
      "structuredData": {
        "score": 70,
        "weight": 15,
        "grade": "C",
        "checks": {
          "has_schema_org": {
            "score": 0,
            "weight": 30,
            "details": "No JSON-LD / Schema.org found"
          },
          "has_open_graph": {
            "score": 100,
            "weight": 25,
            "details": "All OG tags present"
          },
          "has_meta_description": {
            "score": 100,
            "weight": 20,
            "details": "Meta description: 118 chars"
          },
          "has_canonical_url": {
            "score": 100,
            "weight": 15,
            "details": "Canonical URL present"
          },
          "has_lang_attribute": {
            "score": 100,
            "weight": 10,
            "details": "lang=\"en\""
          }
        }
      },
      "accessibility": {
        "score": 85,
        "weight": 15,
        "grade": "B",
        "checks": {
          "content_without_js": {
            "score": 100,
            "weight": 40,
            "details": "Content available without JavaScript"
          },
          "reasonable_page_size": {
            "score": 100,
            "weight": 30,
            "details": "Page size: 166KB"
          },
          "fast_content_position": {
            "score": 50,
            "weight": 30,
            "details": "Main content starts at 52% of HTML"
          }
        }
      }
    }
  },
  "recommendations": [
    {
      "id": "add_llms_txt",
      "priority": "critical",
      "category": "aiDiscoverability",
      "titleKey": "rec.add_llms_txt.title",
      "descriptionKey": "rec.add_llms_txt.description",
      "howToKey": "rec.add_llms_txt.howto",
      "effort": "quick-win",
      "estimatedImpact": 10,
      "checkScore": 0,
      "checkDetails": "No llms.txt found"
    },
    {
      "id": "add_article_main",
      "priority": "critical",
      "category": "semanticHtml",
      "titleKey": "rec.add_article_main.title",
      "descriptionKey": "rec.add_article_main.description",
      "howToKey": "rec.add_article_main.howto",
      "effort": "quick-win",
      "estimatedImpact": 8,
      "checkScore": 0,
      "checkDetails": "Missing <article> and <main> elements"
    },
    {
      "id": "improve_content_ratio",
      "priority": "critical",
      "category": "contentEfficiency",
      "titleKey": "rec.improve_content_ratio.title",
      "descriptionKey": "rec.improve_content_ratio.description",
      "howToKey": "rec.improve_content_ratio.howto",
      "effort": "moderate",
      "estimatedImpact": 6,
      "checkScore": 0,
      "checkDetails": "Content ratio: 0.4% (668 content chars / 169904 HTML bytes)"
    },
    {
      "id": "add_markdown_negotiation",
      "priority": "critical",
      "category": "aiDiscoverability",
      "titleKey": "rec.add_markdown_negotiation.title",
      "descriptionKey": "rec.add_markdown_negotiation.description",
      "howToKey": "rec.add_markdown_negotiation.howto",
      "effort": "significant",
      "estimatedImpact": 6,
      "checkScore": 0,
      "checkDetails": "No Markdown for Agents support detected"
    },
    {
      "id": "add_content_signals",
      "priority": "critical",
      "category": "aiDiscoverability",
      "titleKey": "rec.add_content_signals.title",
      "descriptionKey": "rec.add_content_signals.description",
      "howToKey": "rec.add_content_signals.howto",
      "effort": "quick-win",
      "estimatedImpact": 5,
      "checkScore": 0,
      "checkDetails": "No Content-Signal found (robots.txt or HTTP headers)"
    },
    {
      "id": "add_schema_org",
      "priority": "high",
      "category": "structuredData",
      "titleKey": "rec.add_schema_org.title",
      "descriptionKey": "rec.add_schema_org.description",
      "howToKey": "rec.add_schema_org.howto",
      "effort": "moderate",
      "estimatedImpact": 6,
      "checkScore": 0,
      "checkDetails": "No JSON-LD / Schema.org found"
    },
    {
      "id": "add_semantic_elements",
      "priority": "high",
      "category": "semanticHtml",
      "titleKey": "rec.add_semantic_elements.title",
      "descriptionKey": "rec.add_semantic_elements.description",
      "howToKey": "rec.add_semantic_elements.howto",
      "effort": "moderate",
      "estimatedImpact": 5,
      "checkScore": 8,
      "checkDetails": "2 semantic elements, 82 divs (ratio: 2%)"
    },
    {
      "id": "reduce_div_nesting",
      "priority": "high",
      "category": "semanticHtml",
      "titleKey": "rec.reduce_div_nesting.title",
      "descriptionKey": "rec.reduce_div_nesting.description",
      "howToKey": "rec.reduce_div_nesting.howto",
      "effort": "significant",
      "estimatedImpact": 4,
      "checkScore": 25,
      "checkDetails": "Avg div depth: 12.5, max: 19"
    },
    {
      "id": "remove_inline_styles",
      "priority": "medium",
      "category": "contentEfficiency",
      "titleKey": "rec.remove_inline_styles.title",
      "descriptionKey": "rec.remove_inline_styles.description",
      "howToKey": "rec.remove_inline_styles.howto",
      "effort": "moderate",
      "estimatedImpact": 3,
      "checkScore": 50,
      "checkDetails": "8/413 elements with inline styles (1.9%)"
    }
  ],
  "llmsTxtPreview": "# manus.im\n\n> Manus is the action engine that goes beyond answers to execute tasks, automate workflows, and extend your human reach.\n\n## Documentation\n- [Docs](https://manus.im/docs)\n\n## Main\n- [Manus: Hands On AI](https://manus.im): Manus is the action engine that goes beyond answers to execute tasks, automate workflows, and extend your human reach.\n- [Business](https://manus.im/team)\n- [Pricing](https://manus.im/pricing)\n\n",
  "llmsTxtExisting": null,
  "emergingProtocols": {
    "oauthDiscovery": {
      "exists": false,
      "url": "https://manus.im/.well-known/oauth-authorization-server"
    },
    "mcpServerCard": {
      "exists": false,
      "url": "https://manus.im/.well-known/mcp.json"
    },
    "a2aAgentCard": {
      "exists": false,
      "url": "https://manus.im/.well-known/agent.json"
    },
    "count": 0
  },
  "snippets": [
    {
      "id": "add_llms_txt",
      "title": "Create /llms.txt",
      "description": "Upload this file to your web root. It tells AI agents what your site is about and which pages matter.",
      "language": "markdown",
      "code": "# manus.im\n\n> Manus is the action engine that goes beyond answers to execute tasks, automate workflows, and extend your human reach.\n\n## Documentation\n- [Docs](https://manus.im/docs)\n\n## Main\n- [Manus: Hands On AI](https://manus.im): Manus is the action engine that goes beyond answers to execute tasks, automate workflows, and extend your human reach.\n- [Business](https://manus.im/team)\n- [Pricing](https://manus.im/pricing)\n\n",
      "filename": "/llms.txt"
    },
    {
      "id": "add_schema_org",
      "title": "Add Schema.org JSON-LD",
      "description": "Structured data helps AI agents understand the type, author, and purpose of your content.",
      "language": "html",
      "code": "<script type=\"application/ld+json\">\n{\n  \"@context\": \"https://schema.org\",\n  \"@type\": \"WebPage\",\n  \"name\": \"Manus: Hands On AI\",\n  \"description\": \"Manus is the action engine that goes beyond answers to execute tasks, automate workflows, and extend your human reach.\",\n  \"url\": \"https://manus.im\",\n  \"inLanguage\": \"en\"\n}\n</script>",
      "filename": "<head>"
    },
    {
      "id": "add_article_main",
      "title": "Wrap content in <main> and <article>",
      "description": "Semantic HTML landmarks help AI agents identify the main content of your page.",
      "language": "html",
      "code": "<main>\n  <article>\n    <h1>Your Page Title</h1>\n    <p>Your content here...</p>\n  </article>\n</main>",
      "filename": "<body>"
    },
    {
      "id": "add_content_signals",
      "title": "Add Content-Signal directives",
      "description": "Content-Signal tells AI agents how they may use your content. The canonical location is robots.txt, but you can also expose it as an HTTP header from any stack.",
      "language": "txt",
      "code": "User-agent: *\nContent-Signal: search=yes, ai-input=yes, ai-train=no",
      "filename": "/robots.txt",
      "stacks": [
        {
          "id": "robots",
          "label": "robots.txt",
          "language": "txt",
          "filename": "/robots.txt",
          "code": "User-agent: *\nContent-Signal: search=yes, ai-input=yes, ai-train=no"
        },
        {
          "id": "nginx",
          "label": "Nginx",
          "language": "nginx",
          "filename": "server block",
          "code": "# Inside your server { } block:\nadd_header Content-Signal \"search=yes, ai-input=yes, ai-train=no\" always;"
        },
        {
          "id": "apache",
          "label": "Apache",
          "language": "apache",
          "filename": ".htaccess",
          "code": "# In .htaccess (or VirtualHost):\nHeader set Content-Signal \"search=yes, ai-input=yes, ai-train=no\""
        },
        {
          "id": "wordpress",
          "label": "WordPress",
          "language": "php",
          "filename": "functions.php",
          "code": "<?php\n// In your theme's functions.php or a small mu-plugin\nadd_action('send_headers', function () {\n    header('Content-Signal: search=yes, ai-input=yes, ai-train=no');\n});\n\n// Optional: also append the directive to the dynamic robots.txt\nadd_filter('robots_txt', function ($output) {\n    return $output . \"\\nContent-Signal: search=yes, ai-input=yes, ai-train=no\\n\";\n}, 10, 1);"
        },
        {
          "id": "nextjs",
          "label": "Next.js",
          "language": "typescript",
          "filename": "middleware.ts",
          "code": "// middleware.ts (Next.js 13+ App Router or Pages Router)\nimport { NextResponse } from 'next/server';\nexport function middleware() {\n  const res = NextResponse.next();\n  res.headers.set(\n    'Content-Signal',\n    'search=yes, ai-input=yes, ai-train=no'\n  );\n  return res;\n}\nexport const config = { matcher: '/:path*' };"
        },
        {
          "id": "cloudflare",
          "label": "Cloudflare Workers",
          "language": "javascript",
          "filename": "worker.js",
          "code": "// Cloudflare Worker that proxies your origin and adds the header\nexport default {\n  async fetch(request, env, ctx) {\n    const res = await fetch(request);\n    const newRes = new Response(res.body, res);\n    newRes.headers.set(\n      'Content-Signal',\n      'search=yes, ai-input=yes, ai-train=no'\n    );\n    return newRes;\n  },\n};"
        },
        {
          "id": "express",
          "label": "Express / Fastify",
          "language": "javascript",
          "filename": "server.js",
          "code": "// Express\napp.use((req, res, next) => {\n  res.setHeader('Content-Signal', 'search=yes, ai-input=yes, ai-train=no');\n  next();\n});\n\n// Fastify\nfastify.addHook('onSend', (request, reply, payload, done) => {\n  reply.header('Content-Signal', 'search=yes, ai-input=yes, ai-train=no');\n  done();\n});"
        }
      ]
    },
    {
      "id": "add_markdown_negotiation",
      "title": "Support Markdown for Agents",
      "description": "Let AI agents request a clean Markdown version of any page via content negotiation, .md alternate URLs, link tags or Link headers.",
      "language": "html",
      "code": "<!-- Mechanism 3: link tag advertising the .md alternate -->\n<link rel=\"alternate\" type=\"text/markdown\" href=\"/page.md\">",
      "filename": "<head>",
      "stacks": [
        {
          "id": "html",
          "label": "HTML <head>",
          "language": "html",
          "filename": "<head>",
          "code": "<!-- Mechanism 3: link tag advertising the .md alternate -->\n<link rel=\"alternate\" type=\"text/markdown\" href=\"/page.md\">"
        },
        {
          "id": "express",
          "label": "Express",
          "language": "javascript",
          "filename": "server.js",
          "code": "// Mechanisms 1 + 4: content negotiation + Link header\napp.get('/page', (req, res) => {\n  res.setHeader('Vary', 'Accept');\n  res.setHeader('Link', '</page.md>; rel=\"alternate\"; type=\"text/markdown\"');\n  if ((req.headers.accept || '').includes('text/markdown')) {\n    res.type('text/markdown; charset=utf-8');\n    return res.send(renderMarkdown('page'));\n  }\n  res.render('page');\n});"
        },
        {
          "id": "fastify",
          "label": "Fastify",
          "language": "javascript",
          "filename": "server.js",
          "code": "// Mechanisms 1 + 4: content negotiation + Link header\nfastify.get('/page', async (req, reply) => {\n  reply.header('Vary', 'Accept');\n  reply.header('Link', '</page.md>; rel=\"alternate\"; type=\"text/markdown\"');\n  if ((req.headers.accept || '').includes('text/markdown')) {\n    return reply.type('text/markdown; charset=utf-8').send(renderMarkdown('page'));\n  }\n  return reply.view('/page.ejs');\n});"
        },
        {
          "id": "nextjs",
          "label": "Next.js",
          "language": "typescript",
          "filename": "app/page/route.ts",
          "code": "// Next.js App Router — Route Handler returning Markdown\nimport { NextRequest } from 'next/server';\nimport { renderMarkdown } from '@/lib/md';\nexport async function GET(req: NextRequest) {\n  const accept = req.headers.get('accept') || '';\n  if (accept.includes('text/markdown')) {\n    return new Response(await renderMarkdown('page'), {\n      headers: {\n        'Content-Type': 'text/markdown; charset=utf-8',\n        'Vary': 'Accept',\n      },\n    });\n  }\n  // Fall through to the page component\n  return new Response(null, { status: 404 });\n}"
        },
        {
          "id": "wordpress",
          "label": "WordPress",
          "language": "php",
          "filename": "functions.php",
          "code": "<?php\n// Mechanism 1: respond to Accept: text/markdown on the same URL\nadd_action('template_redirect', function () {\n    if (!is_singular()) return;\n    $accept = $_SERVER['HTTP_ACCEPT'] ?? '';\n    if (strpos($accept, 'text/markdown') === false) return;\n    header('Content-Type: text/markdown; charset=utf-8');\n    header('Vary: Accept');\n    $post = get_queried_object();\n    echo \"# \" . get_the_title($post) . \"\\n\\n\";\n    echo wp_strip_all_tags(apply_filters('the_content', $post->post_content));\n    exit;\n});"
        },
        {
          "id": "static",
          "label": "Hugo / Jekyll / Astro",
          "language": "txt",
          "filename": "static/page.md",
          "code": "# Mechanism 2: serve .md alongside .html\n# Hugo: place page.md in /static/ — built unchanged\n# Jekyll: drop page.md in /assets/ — copied as-is\n# Astro: src/pages/page.md.ts that exports a GET returning markdown\n\n# Then advertise with mechanism 3 in <head>:\n#   <link rel=\"alternate\" type=\"text/markdown\" href=\"/page.md\">"
        }
      ]
    }
  ]
}

Usa la nostra API per ottenere questo programmaticamente (prossimamente)

Questo JSON è per uso interno — a differenza dei file Markdown e llms.txt, non è destinato ad essere caricato sul tuo sito. Salvalo come riferimento per monitorare il tuo punteggio nel tempo, condividilo con il tuo team di sviluppo o integralo nella tua pipeline CI/CD.

Condividi i tuoi risultati

Twitter LinkedIn

Incorpora il tuo badge

Aggiungi questo badge al tuo sito. Si aggiorna automaticamente quando cambia il tuo punteggio di prontezza IA.

AgentReady.md score for manus.im
Script Consigliato
<script src="https://agentready.md/badge.js" data-id="2982fd24-115d-4ba5-a790-f0262b34921d" data-domain="manus.im"></script>
Markdown
[![AgentReady.md score for manus.im](https://agentready.md/badge/manus.im.svg)](https://agentready.md/it/r/2982fd24-115d-4ba5-a790-f0262b34921d)

Prossimamente: Analisi completa del dominio

Scansiona l'intero dominio, genera llms.txt e monitora il tuo punteggio di prontezza IA nel tempo. Iscriviti alla lista d'attesa.

Sei nella lista! Ti avviseremo quando sarà disponibile.