---
title: "TUI: the 360 agent-readiness check | Agent Ready Checkout"
description: "TUI on Ora's agent-readiness scan, read 2026-11-14: 45 of 100, grade D. The pay layer did not apply. Every layer, the fixes worth most and the editors' read."
canonical: https://agentreadycheckout.com/blog/tui-agent-readiness
site: "Agent Ready Checkout"
last_updated: 2026-11-14
date: 2026-11-09
section: "360 checks"
---

# TUI: the 360 agent-readiness check | Agent Ready Checkout

> TUI on Ora's agent-readiness scan, read 2026-11-14: 45 of 100, grade D. The pay layer did not apply. Every layer, the fixes worth most and the editors' read.

Source: https://agentreadycheckout.com/blog/tui-agent-readiness
Site: Agent Ready Checkout
Last reviewed: 2026-11-14

360 check, 9 Nov 2026

# TUI on the pay layer: the 360 agent-readiness check

In short

TUI scores 45 of 100 on Ora's agent-readiness scan, a D, read 14 Nov 2026. The six payment checks did not apply to tui.com on this read, which is how Ora treats a site it does not read as a shop. A German page title the search could not place, and a shield on the docs paths.

On 14 Nov 2026 the public site at tui.com scored **45 of 100** on [Ora's](https://ora.ai/?utm_source=agentreadycheckout.com&utm_medium=referral&utm_campaign=check) agent-readiness scan, a D. TUI is Europe's largest tour operator, selling packages and flights online, so this check reads the Payments layer first: the six checks that look for x402, MPP, UCP, ACP and AP2 on the domain, the same protocols this site's matrix tracks row by row. The other layers follow, with every check Ora ran and what it saw. Ora's one-line summary: Blocks agents from getting in: bot detection is not the blocker here, so agents face a site with no OpenAPI spec, no MCP server, and no declared OAuth scopes.

## The score

| Layer | Points | Share | What the layer asks |
| --- | --- | --- | --- |
| Discovery | 7 of 13 | 54% | Can agents find and recommend it |
| Access | 19 of 38 | 50% | Can agents read it |
| Usability | 20 of 55 | 36% | Can agents use it |
| Payments | 0 of 0 | none apply | Can agents pay |
|  |
| Total | 45 of 100 | 45% | Grade D |

## The pay layer

Ora did not run the six payment checks against tui.com on this read: it marks them not applicable on a site it does not read as a shop, so the layer has no maximum and costs nothing. A travel seller that sells online can still publish any of the five protocols; the matrix says which processors and platforms carry each one. Each protocol links to its matrix row, where the processors and platforms that carry it are dated and sourced.

| Payment check | Result | Points | Matrix row | What Ora saw |
| --- | --- | --- | --- | --- |
| x402 | Does not apply | 0 of 2 | x402 in the matrix | No commerce signals detected - agent-payment protocols are optional for non-commerce sites |
| MPP | Does not apply | 0 of 2 | MPP in the matrix | No commerce signals detected - agent-payment protocols are optional for non-commerce sites |
| UCP | Does not apply | 0 of 3 | UCP in the matrix | No commerce signals detected - agent-payment protocols are optional for non-commerce sites |
| ACP | Does not apply | 0 of 3 | ACP in the matrix | No commerce signals detected - agent-payment protocols are optional for non-commerce sites |
| ACP delegate payment | Does not apply | 0 of 3 | ACP in the matrix | No commerce signals detected - agent-payment protocols are optional for non-commerce sites |
| AP2 | Does not apply | 0 of 3 | AP2 in the matrix | No commerce signals detected - agent-payment protocols are optional for non-commerce sites |

## The other layers, check by check

Every check Ora ran on tui.com, grouped by layer, with the result, the points and what Ora recorded where its wording passes this site's gate.

### Discovery: 7 of 13

| Check | Result | Points | What Ora saw |
| --- | --- | --- | --- |
| ARD discovery | Fail | 0 of 1 | No /.well-known/ard.json, no same-site rel="ard" link, and no legacy /.well-known/ai-catalog.json |
| Developer resource discoverability | Fail | 0 of 3 | In a search for your API docs, none of the 10 results is your official docs |
| Brand name discoverability | Partial | 1 of 3 | tui.com ranks #8 for "Urlaub buchen" (searched your brand name alone: no main product term from your homepage qualified) |
| Wikipedia / Wikidata entity presence | Partial | 2 of 4 | Wikidata Q573103 (TUI Group) verified - draft a Wikipedia page with cited references to complete knowledge graph coverage |
| robots.txt AI crawler policy | Pass | 2 of 2 | AI search crawlers: allowed in 3 of 3 checks (3 crawlers on 1 page). AI training crawlers: allowed in 2 of 2 checks (2 crawlers on 1 page), not scored. |
| NPM/PyPI SDK package | Pass | 1 of 1 | Pass, no detail recorded. |
| Agent platform configs | Fail | 0 of 1 | Could not locate a public repo containing agent configs or rules. If our probes missed it, AI coding agents likely will too - link the repo from your homepage or docs so it's discoverable. |
| Agent Plugins manifest | Fail | 0 of 1 | No Agent Plugins manifest (plugin.json) found in discovered repos |
| ChatGPT app listed | Fail | 0 of 2 | Not found in ChatGPT app directory |
| Homepage not hidden from search | Pass | 1 of 1 | No noindex on the homepage: no robots, googlebot or bingbot meta tag and no X-Robots-Tag header hides it from search. |

### Access: 19 of 38

| Check | Result | Points | What Ora saw |
| --- | --- | --- | --- |
| Sitemap exists | Pass | 2 of 2 | Valid sitemap found at https://www.tui.com/sitemap.xml with multiple sitemaps entries |
| Content without JavaScript | Partial | 2 of 3 | Homepage: 10852 chars with H1, but heading hierarchy skips H2 to H4. 4 of 4 sampled inner pages have text without JavaScript. |
| Not blocked by bot detection | Pass | 2 of 2 | Site accessible to 4 agent user-agents (ChatGPT-User, OAI-SearchBot, Claude-User, PerplexityBot). |
| A2A / agent-card | Fail | 0 of 2 | No A2A agent card found at /.well-known/agent-card.json |
| Listed on skills.sh | Fail | 0 of 1 | No official skills self-published on skills.sh (100 community skills with potential relation to this domain found, but only self-published official skills count) |
| pricing.md exists | Fail | 0 of 2 | No pricing.md found - agents need machine-readable pricing to compare products and make purchase recommendations |
| NLWeb Schema Feeds | Fail | 0 of 1 | No schemamap: directive in robots.txt |
| MCP well-known discovery | Fail | 0 of 2 | No MCP server URL discovered |
| Agent mode view | Fail | 0 of 2 | ?mode=agent returns same content as homepage (no dedicated agent view) |
| HTTP Link headers (RFC 8288) | Fail | 0 of 1 | No HTTP Link response headers (RFC 8288) found |
| Markdown URL fallback | Fail | 0 of 2 | Homepage does not support the .md suffix. Probed https://tui.com/index.md and it did not return markdown (expected text/markdown content-type or a heading-led non-HTML body). |
| Modular llms.txt per product area | Fail | 0 of 1 | No section-level llms.txt found. Tried /docs/llms.txt, /api/llms.txt, /developers/llms.txt, /guides/llms.txt, /reference/llms.txt, /hilfe/llms.txt, /reisebuero/llms.txt, /urlaub/llms.txt, /pauschalreisen/llms.txt, /autoreisen/llms.txt. |
| Sitemap freshness (lastmod) | Pass | 1 of 1 | Pass, no detail recorded. |
| robots.txt agent-user policy | Pass | 2 of 2 | No applicable crawl or usage restriction found for 3 user-triggered agents (chatgpt-user, claude-user, perplexity-user) on 1 public page: https://tui.com/. Declared policy only |
| llms.txt exists | Fail | 0 of 1 | No llms.txt found at https://tui.com/llms.txt. Publish it at the site root, where agents that follow the llms.txt spec look for it. |
| llms.txt formatting | Fail | 0 of 2 | No llms.txt found to evaluate quality |
| JSON-LD structured data | Partial | 1 of 4 | JSON-LD found (1 block(s)) but no identity type - use SoftwareApplication, Product, Organization, Person, or Article so agents can tell what this site is |
| Skills.sh skill quality | Fail | 0 of 2 | No official skills on skills.sh to evaluate |
| JSON-LD entity linking (sameAs) | Fail | 0 of 2 | No sameAs entity linking in JSON-LD - agents cannot disambiguate your brand |
| Metadata completeness | Pass | 2 of 2 | All metadata signals present: canonical URL, lang="de-DE", og:image, og:type |
| Organization schema completeness | Fail | 0 of 2 | No Organization type found in JSON-LD |
| Schema type breadth | Partial | 1 of 2 | Some extended schema types found: FAQPage - add 2 more types that match what the homepage shows, for full coverage |
| Markdown alternate link | Fail | 0 of 1 | No sampled page advertises a markdown alternate. Add <link rel="alternate" type="text/markdown" href="..."> (or the equivalent Link response header) pointing at a markdown twin of the page. |
| Redirect hygiene | Pass | 1 of 1 | Pass, no detail recorded. |
| Page token budget | Pass | 1 of 1 | All 5 measured pages fit an agent context budget (largest ~3K tokens) |
| Content behind auth | Pass | 2 of 2 | All 4 sampled pages are publicly readable (4 with substantive content) |
| OpenAPI spec published | Fail | 0 of 7 | No OpenAPI/Swagger specification found |
| API catalog (RFC 9727) | Fail | 0 of 2 | No /.well-known/api-catalog found (RFC 9727) |
| Markdown agent docs | Fail | 0 of 1 | Missing markdown content negotiation. Homepage returned text/html when probed with Accept: text/markdown (expected text/markdown), and none of the well-known root paths (/llms.md, /auth.md, /agents.md, /developers.md |
| Markdown content negotiation (acceptmarkdown.com) | Fail | 0 of 1 | Homepage https://tui.com does not meet the Markdown negotiation requirements: Accept: text/markdown returned text/html; Vary header missing Accept (got "accept-encoding, origin") |
| Bot-UA markdown serving | Fail | 0 of 1 | No probed bot User-Agent (ChatGPT-User, Claude-User, Perplexity-User) receives markdown when requesting HTML. Optional: detect AI-bot UAs server-side and serve them a markdown representation directly. |
| Agent crawler reachability | Pass | 2 of 2 | Reachable to every agent we tested - ChatGPT-User: reachable, OAI-SearchBot: reachable, Claude-User: reachable, PerplexityBot: reachable |

### Usability: 20 of 55

| Check | Result | Points | What Ora saw |
| --- | --- | --- | --- |
| Public API with reachable endpoints | Pass | 7 of 7 | GraphQL endpoint at https://api.tui.com/graphql is reachable; introspection requires authentication (API key / OAuth), which is expected for agent access. Best-of-protocols score: 7/7. |
| Scoped permissions | Fail | 0 of 5 | No declared OAuth scopes, security schemes, or scoped-permission documentation found |
| Web Bot Auth directory | Fail | 0 of 2 | No /.well-known/http-message-signatures-directory found |
| OAuth Protected Resource metadata (RFC 9728) | Fail | 0 of 2 | No /.well-known/oauth-protected-resource found (RFC 9728) |
| auth.md exists | Fail | 0 of 2 | No /auth.md found at site root |
| auth.md structure | Fail | 0 of 2 | No /auth.md found at site root |
| Agent auth discovery metadata | Fail | 0 of 3 | Neither /.well-known/oauth-protected-resource nor /.well-known/oauth-authorization-server found. Probed: tui.com, api.tui.com. |
| agent_auth endpoints reachable | Fail | 0 of 2 | No agent_auth endpoint URIs found in AS metadata or /auth.md prose; nothing to probe |
| MCP server / manifest | Fail | 0 of 6 | No MCP server or manifest found |
| WebMCP support | Fail | 0 of 5 | No WebMCP support detected - no document.modelContext / navigator.modelContext usage found |
| Rate limit response headers | Fail | 0 of 2 | GraphQL introspection auth-gated and no header convention documented on GraphQL-tagged pages |
| Idempotency-Key support | Fail | 0 of 3 | GraphQL introspection auth-gated and no idempotency documentation found on GraphQL-tagged pages |
| NLWeb /ask endpoint | Fail | 0 of 1 | No NLWeb-conformant /ask endpoint found via GET or POST |
| MCP server-card.json | Fail | 0 of 2 | No MCP server card found (checked /.well-known/mcp/server-card.json, the site's ai-catalog.json, servers[].card in mcp.json, and <server>/server-card) |
| Product + docs MCP coverage | Fail | 0 of 2 | This bonus needs two MCP servers: one for your product so agents can take actions, and a separate one for your documentation so agents can answer questions from your docs. |
| GraphQL typed error model | Fail | 0 of 3 | GraphQL introspection auth-gated and no typed graphql error model documentation found on GraphQL-tagged pages |
| GraphQL versioning / deprecation policy | Fail | 0 of 2 | GraphQL introspection auth-gated and no graphql versioning / deprecation policy documentation found on GraphQL-tagged pages |
| GraphQL pagination pattern | Fail | 0 of 2 | GraphQL introspection auth-gated and no graphql pagination pattern documentation found on GraphQL-tagged pages |
| GraphQL async-job pattern | Fail | 0 of 2 | GraphQL introspection auth-gated and no graphql async-job pattern documentation found on GraphQL-tagged pages |
| Agent-friendly 404s | Partial | 1 of 2 | The nonexistent path https://tui.com/__ora-404-probe-94kovgiy correctly returns HTTP 404. Partial credit: no Markdown error body was detected. |
| Accessible document structure | Pass | 3 of 3 | Pass, no detail recorded. |
| Native interactive controls | Pass | 3 of 3 | Pass, no detail recorded. |
| Accessible names on controls | Pass | 2 of 2 | Pass, no detail recorded. |
| Form control labeling | Pass | 2 of 2 | Pass, no detail recorded. |
| Accessibility-tree injection safety (bonus) | Pass | 2 of 2 | Pass, no detail recorded. |
| MCP Apps support | Fail | 0 of 4 | No MCP Apps support detected - this product has an in-agent UI surface but exposes no ui:// resources or tool UI metadata for agents to render. |

## The fixes worth most points

Ora attaches an estimate to each failing or partial check: how many points the site would gain by passing it. These are the 5 with the largest estimates for TUI.

OpenAPI spec published

Fail, 0 of 7, about 6.1 points to gain. Ora saw: No OpenAPI/Swagger specification found.

Developer resource discoverability

Fail, 0 of 3, about 5.1 points to gain. Ora saw: In a search for your API docs, none of the 10 results is your official docs.

MCP server / manifest

Fail, 0 of 6, about 4.8 points to gain. Ora saw: No MCP server or manifest found.

Scoped permissions

Fail, 0 of 5, about 4 points to gain. Ora saw: No declared OAuth scopes, security schemes, or scoped-permission documentation found.

WebMCP support

Fail, 0 of 5, about 4 points to gain. Ora saw: No WebMCP support detected - no document.modelContext / navigator.modelContext usage found.

## Our read

TUI's home page gives 11,126 characters with an H1, though the heading tree skips from H2 to H4; the door is open to all four agent user agents, robots.txt allows the search and training crawlers and the sitemap is valid. The JSON-LD block has no identity type and there is no llms.txt. The brand search ran on the page title, Urlaub buchen, book a holiday in German, and tui.com was not in the top ten for it, 5.1 points that describe a German page read by an English probe. Ora read no commerce signals on Europe's largest tour operator, so the six payment checks did not apply on this read. The act layer is a GraphQL endpoint at api.tui.com with introspection gated; a bot shield answered 403 at tui.com/docs, tui.com/console and tui.com/agents.md, so those rows are unverified, and Ora found neither an OpenAPI specification nor an MCP server, and no OAuth discovery. An Organization block in the JSON-LD would give the search a name to find.

## Test your own checkout

The scan above is free and needs no account: enter a domain at [ora.ai](https://ora.ai/?utm_source=agentreadycheckout.com&utm_medium=referral&utm_campaign=check) and read the same layers for your own site, with the six payment checks mapped to this matrix on [the Ora Payments page](https://agentreadycheckout.com/method/ora-payments-layer). The command below runs the same audit from a terminal and exits with 1 under the score you set, so it can gate a deploy. [Why Ora, and its limits](https://agentreadycheckout.com/guides/best-ai-readiness-tools-2026).

```bash
npx ax@0.10 audit https://example.com --min-score 70
```

[All 360 checks](https://agentreadycheckout.com/blog), one company a day. Corrections to [the corrections page](https://agentreadycheckout.com/corrections).

## Sources

1.  [ora.ai/api/score/tui.com, Ora's scan (vendor)](https://ora.ai/api/score/tui.com?utm_source=agentreadycheckout.com&utm_medium=referral&utm_campaign=check), read 14 Nov 2026
2.  [Ora's scoring rules, version 2 (vendor)](https://ora.ai/api/ranker/releases/2/rules?utm_source=agentreadycheckout.com&utm_medium=referral&utm_campaign=check), read 14 Nov 2026
3.  [Ora check catalog (GET /api/checks)](https://ora.ai/api/checks?utm_source=agentreadycheckout.com&utm_medium=referral&utm_campaign=check), read 14 Nov 2026
4.  [tui.com, the company's site](https://www.tui.com/), read 14 Nov 2026

Last reviewed 14 Nov 2026

## Edition

Matrix edition of 4 Nov 2026.

Reviewed 14 Nov 2026, [4 sources](#sources-h).

## Method

Every number on this page is read from Ora's score file for the domain on the date shown. The verdict is ours.

[Methodology](https://agentreadycheckout.com/method)
