User-agent: * Allow: / Allow: /llms.txt Allow: /llms-full.txt # Block admin / provider dashboard / private user account pages from indexing. # These ALSO carry X-Robots-Tag: noindex, nofollow HTTP headers (netlify.toml) # The header is the authoritative signal; this Disallow is an advisory hint. Disallow: /admin Disallow: /labs/ Disallow: /provider- Disallow: /auth/ Disallow: /account Disallow: /profile Disallow: /settings Disallow: /my-passes Disallow: /my-bookings Disallow: /my-subscription Disallow: /my-subscriptions Disallow: /my-ticket Disallow: /ticket/ Disallow: /remove Disallow: /vendor-dashboard # Sitemap location. Both addresses serve the same index; /sitemap-index.xml was added # Oct 15 2026 as a fresh address for Search Console (see netlify/edge-functions/sitemap.js). Sitemap: https://madeira.fun/sitemap.xml Sitemap: https://madeira.fun/sitemap-index.xml # LLM/AI agent information # See /llms.txt for a concise site overview # See /llms-full.txt for detailed content structure and Schema.org types # Language guide pages have Markdown versions: append .md to a /{locale}/{slug} URL # Open data (free, no key, CC BY 4.0). Documentation, methodology and rule changes: # https://madeira.fun/hiking/permit-data#open-data # Feeds (please cache; they are data, not pages, so they are not in the sitemaps): # /api/public/hiking-availability (+ .csv) every bookable permit trail # /api/public/hiking-availability/{seo_slug} (+ .csv) one trail, up to 120 days ahead # /api/public/madeira-weather (+ .csv) live weather by place (method: /weather/data) # OpenAPI 3.1: /api/public/openapi.json # Read-only MCP server: https://madeira.fun/api/mcp # AI agents: ALL crawlers and live user-fetch agents (GPTBot, ChatGPT-User, # OAI-SearchBot, ClaudeBot, Claude-User, Claude-SearchBot, PerplexityBot, # Perplexity-User, Applebot, Meta-ExternalAgent, Bytespider, etc.) are welcome # under the wildcard group above - max-visibility policy (May 2026 SEO # decision). Deliberately NO dedicated per-crawler groups: under RFC 9309 a # crawler that matches a dedicated group IGNORES the * group, so the old # "User-agent: GPTBot / Allow: /" courtesy blocks accidentally waived the # privacy Disallows above for exactly those bots (fixed Aug 2026). The two # groups below are the exception: they are AI-usage POLICY TOKENS, not # fetching crawlers - a dedicated group is the only way to signal them. # Google AI grounding/training (Gemini, Vertex AI). Does NOT affect Google # Search ranking, controls AI surface usage only. User-agent: Google-Extended Allow: / # Apple Intelligence training opt-in (Applebot itself crawls under *). User-agent: Applebot-Extended Allow: /