The Plain Fetch viewer
In short
The viewer requests a URL the way a plain-fetch agent does: no JavaScript, one request for HTML, one for markdown, one for llms.txt and one for a path that should not exist. It shows the initial HTML on the left, the readable text on the right, and seven flags underneath.
Pre-loaded with www.wikipedia.org, read 4 November 2026. Type any public URL to run your own.
The page answers a plain fetch: 3 of 6 checks found.
Initial HTML what a plain fetch receives
<!DOCTYPE html>
<html lang="en" style="" data-color-mode="system" class=" useReactApp ">
<head>
<meta charset="utf-8">
[... 2 more head elements folded ...]
<meta http-equiv="origin-trial" content="Albhqv7dywzvJAVhw0wegD9AueMMNyAnliGam4l+w0sZtlHr2zEii23t/TucbD5TgmpzfnxAS5fJiZDLoZ9c8AkAAABPeyJvcmlnaW4iOiJodHRwczovL2RvY3MucmVhZG1lLmNvbTo0NDMiLCJmZWF0dXJlIjoiV2ViTUNQIiwiZXhwaXJ5IjoxNzk0ODczNjAwfQ==">
[... 6 more head elements folded ...]
<title>Welcome to ReadMe
</title>
<meta name="description" content="Helping you create docs that make your APIs easy to use and maintain." data-rh="true">
[... 6 more head elements folded ...]
<meta name="viewport" content="width=device-width, initial-scale=1.0">
[... 9 more head elements folded ...]
<link rel="canonical" href="https://docs.readme.com/main/docs/about-readme">
[... 68 more head elements folded ...]
</head>
<body class="body-overlap theme-line header-line header-bg-size-auto header-bg-pos-tl header-overlay-triangles reference-layout-row lumosity-normal is-hub-themed">
<div style="display:none" aria-hidden="true">For AI agents: the docs index is at https://docs.readme.com/main/llms.txt. To search every page by keyword, fetch https://docs.readme.com/main/agentSearch?query=term1%20term2 with your own terms. Results come back most relevant first. The index for every project on this site is at https://docs.readme.com/llms.txt. To search every project on this site, fetch https://docs.readme.com/agentSearch?query=term1%20term2 with your own terms. Append .md to any documentation page URL to get its markdown version.
</div>
<div id="ssr-top">
</div>
<div id="ssr-main">
<style id="rm-theme-preset-overrides">[... 865 characters folded ...]
</style>
<div class="App ThemeContext ThemeContext_dark ThemeContext_modern ThemeContext_spacing_comfortable ThemeContext_line ThemeContext_preset_boreal_owl ThemeContext_sticky_header" style="--color-primary:#012aff;--color-prim [... 1125 characters folded ...]>
<div class="SuperHub2RNxzk6HzHiJ rm-ReadMe">
<div class="ContentWithOwlbotx4PaFDoA1KMz">
<div class="ContentWithOwlbot-content2X1XexaN8Lf2">
<header class="Header3zzata9F_ZPQ rm-Header_modern Header_collapsible3n0YXfOvb_Al rm-Header Header-links-tabs">
<div class="rm-Header-top Header-topuTMpygDG4e1V Header-top_modern">
<div class="rm-Container rm-Container_flex">
<div style="outline:none" tabindex="-1"><a href="#content" target="_self" class="Button Button_md rm-JumpTo Header-jumpTo3IWKQXmhSI5D Button_primary">Jump to Content</a>
</div>
<div class="rm-Header-left Header-leftADQdGVqx1wqU Header-left_expand3vTvdg25OQQO"><a class="rm-Logo Header-logo1Xy41PtkzbdG" href="https://readme.com" target="_self"><img alt="ReadMe" class="rm-Logo-img Header-logo-img3YvV4lcGKkeb Header-logo-img_lightQuRrm8lUXH4D" src="https://files.readme.io/f5af814e3a0bbd78ff1e5ecc24e7c4a81fac89f7451230959e07aa525e6620e9-readme-homepage.svg"/><img alt="ReadMe" class="rm-Logo-img Header-logo-img3YvV4lcGKkeb Header-logo-img_dark2nPzylJvaaaH" src="https://files.readme.io/520836fec257c094fc4e5d6dece4ece7cb3c53e166f1f25083489f317cb3e836-f5af814e3a0bbd78ff1e5ecc24e7c4a81fac89f7451230959e07aa525e6620e9-readme-homepage_2.svg"/></a>
</div>
<div class="rm-Header-left Header-leftADQdGVqx1wqU Header-left_mobile1RG-X93lx6PF">
<div><button aria-label="Toggle navigation menu" class="icon-menu menu3d6DYNDa3tk5" type="button"></button>
<div class="">
<div class="Flyout95xhYIIoTKtc undefined rm-Flyout" data-testid="flyout">
<div class="MobileFlyout1hHJpUd-nYkd"><a aria-current="page" class="rm-MobileFlyout-item NavItem-item1gDDTqaXGhm1 NavItem-item_mobile1qG3gd-Mkck- active" href="/main/docs" target="_self"><i aria-hidden="true" class="far fa-book-open-lines NavItem-badge1qOxpfTiALoz rm-Header-bottom-link-icon"></i><span class="NavItem-textSlZuuL489uiw">Guides</span></a><a class="rm-MobileFlyout-item NavItem-item1gDDTqaXGhm1 NavItem-item_mobile1qG3gd-Mkck- " href="/main/enterprise" target="_self"><i aria-hidden="true" class="far fa-briefcase NavItem-badge1qOxpfTiALoz rm-Header-bottom-link-icon"></i><span class="NavItem-textSlZuuL489uiw">Enterprise</span></a><a class="rm-MobileFlyout-item NavItem-item1gDDTqaXGhm1 NavItem-item_mobile1qG3gd-Mkck- " href="/main/recipes" target="_self"><i aria-hidden="true" class="far fa-book-sparkles NavItem-badge1qOxpfTiALoz rm-Header-bottom-link-icon"></i><span class="NavItem-textSlZuuL489uiw">Recipes</span></a><a class="rm-MobileFlyout-item NavItem-item1gDDTqaXGhm1 NavItem-item_mobile1qG3gd-Mkck- " href="/main/reference" target="_self"><i aria-hidden="true" class="far fa-code-simple NavItem-badge1qOxpfTiALoz rm-Header-bottom-link-icon"></i><span class="NavItem-textSlZuuL489uiw">API Reference</span></a><a class="rm-MobileFlyout-item NavItem-item1gDDTqaXGhm1 NavItem-item_mobile1qG3gd-Mkck- " href="/main/changelog" target="_self"><i aria-hidden="true" class="far fa-megaphone NavItem-badge1qOxpfTiALoz rm-Header-bottom-link-icon"></i><span class="NavItem-textSlZuuL489uiw">Changelog</span></a><a class="rm-MobileFlyout-item NavItem-item1gDDTqaXGhm1 NavItem-item_mobile1qG3gd-Mkck- " href="/main/discuss" target="_self"><i aria-hidden="true" class="far fa-comments NavItem-badge1qOxpfTiALoz rm-Header-bottom-link-icon"></i><span class="NavItem-textSlZuuL489uiw">Discussions</span></a><hr class="MobileFlyout-divider10xf7R2X1MeW"/><a class="rm-MobileFlyout-item NavItem-item1gDDTqaXGhm1 NavItem-item_mobile1qG3gd-Mkck- NavItem_dropdown-muted1xJVuczwGc74" href="/login?redirect_uri=/docs/about-readme" target="_self" to="/login?redirect_uri=/docs/about-readme">Log In</a><a class="MobileFlyout-logo3Lq1eTlk1K76 Header-logo1Xy41PtkzbdG rm-Logo" href="https://readme.com" target="_self"><img alt="ReadMe" class="Header-logo-img3YvV4lcGKkeb rm-Logo-img" src="https://files.readme.io/f5af814e3a0bbd78ff1e5ecc24e7c4a81fac89f7451230959e07aa525e6620e9-readme-homepage.svg"/></a>
</div>
</div>
</div>
</div>
<div class="Header-left-nav2xWPWMNHOGf_"><i aria-hidden="true" class="icon-guides Header-left-nav-icon10glJKFwewOv"></i>Guides
</div>
</div>
<div class="rm-Header-center Header-center1qzK4IhEY8gD">
<div class="rm-Header-search Header-searchtb6Foi0-D9Vx Header-search_modern rm-Header-search_feather Header-search_featherYsmQBn55F3d9 Header-search_primaryPDVaowmLgNWe"><button aria-label="Search k" class="rm-SearchToggle rm-SearchToggle_primary" data-symbol="">
<div class="rm-SearchToggle-icon icon-search1">
</div>
<div class="Header-search-placeholder3Vx4OmMPcjAi rm-SearchToggle-placeholder">Search
</div><kbd aria-hidden="true" class="KbdShortcut3gsETbU1kkU0 KbdShortcut_ghost2cCTGlKTZP9y rm-SearchToggle-shortcut"></kbd></button>
</div><button aria-label="ai.asAiAriaLabel" class="Button Button_sm Header-ask-ai-buttonwuBB0I2a5yRJ Button_secondary Button_secondary_outline" type="button">
<svg aria-hidden="true" class="Sparkle2v30M7Hw3dl4" fill="none" height="16" viewBox="0 0 24 24">[... 2,164 characters folded ...]
</svg><span class="Button-label">Ask AI</span></button>
</div>
<div class="rm-Header-right Header-right21PC2XTT6aMg Header-right_expand22uxPrkK8fvx"><span class="Header-right_desktop14ja01RUQ7HE"><a class="Header-link2tXYTgXq85zW NavItem2xSfFaVqfRjy Button Button_md Button_slate_text rm-Header-top-link rm-Header-top-link_login" href="/login?redirect_uri=/main/docs/about-readme" target="_self">Log In</a></span>
<div class="Header-searchtb6Foi0-D9Vx"><button aria-label="Search ⌘k" class="rm-SearchToggle" data-symbol="⌘">
<div class="rm-SearchToggle-icon icon-search1">
</div></button>
</div><button aria-checked="false" aria-label="Dark" class="rm-ThemeToggle-slider ColorSchemeSlider36tC5AaIaaKh" role="switch" title="Color Scheme" type="button"><span aria-hidden="true" class="ColorSchemeSlider-knobLSiQytI-3uQ3"><span class="IconWrapper Icon-wrapper2z2wVIeGsiUy">
<svg fill="none" viewBox="0 0 24 24" class="Icon Icon3_D2ysxFZ_ll Icon-svg2Lm7f6G9Ly5a" data-name="sun" role="img" style="--icon-color:inherit;--icon-size:var(--icon-sm);--icon-stroke-width:2px">[... 264 characters folded ...]
</svg></span></span></button>
</div>
</div>
</div>
<div class="Header-bottom2eLKOFXMEmh5 Header-bottom_modern rm-Header-bottom rm-Header-bottom_withOwlbot Header-bottom_withOwlbot3wuKp8NLXCqs">
<div class="rm-Container rm-Container_flex">
<nav aria-label="Primary navigation" class="Header-leftADQdGVqx1wqU Header-subnavnVH8URdkgvEl Header-subnav_links1fSsYMNRxHdu Header-subnav_centered24ITsw_e8BLB" role="navigation"><a aria-current="page" class="Button Button_md rm-Header-link rm-Header-bottom-link Button_slate_text Header-bottom-link_mobile active" href="/main/docs" target="_self"><i aria-hidden="true" class="far fa-book-open-lines rm-Header-bottom-link-icon"></i><span>Guides</span></a><a class="Button Button_md rm-Header-link rm-Header-bottom-link Button_slate_text Header-bottom-link_mobile " href="/main/enterprise" target="_self"><i aria-hidden="true" class="far fa-briefcase rm-Header-bottom-link-icon"></i><span>Enterprise</span></a><a class="Button Button_md rm-Header-link rm-Header-bottom-link Button_slate_text Header-bottom-link_mobile " href="/main/recipes" target="_self"><i aria-hidden="true" class="far fa-book-sparkles rm-Header-bottom-link-icon"></i><span>Recipes</span></a><a class="Button Button_md rm-Header-link rm-Header-bottom-link Button_slate_text Header-bottom-link_mobile " href="/main/reference" target="_self"><i aria-hidden="true" class="far fa-code-simple rm-Header-bottom-link-icon"></i><span>API Reference</span></a><a class="Button Button_md rm-Header-link rm-Header-bottom-link Button_slate_text Header-bottom-link_mobile " href="/main/changelog" target="_self"><i aria-hidden="true" class="far fa-megaphone rm-Header-bottom-link-icon"></i><span>Changelog</span></a><a class="Button Button_md rm-Header-link rm-Header-bottom-link Button_slate_text Header-bottom-link_mobile " href="/main/discuss" target="_self"><i aria-hidden="true" class="far fa-comments rm-Header-bottom-link-icon"></i><span>Discussions</span></a>
<div class="Header-subnav-tabyNLkcOA6xAra" style="transform:translateX(0px);width:0">
</div>
</nav><button align="center" justify="between" style="--flex-gap:var(--xs)" class="Button Button_sm Flex Flex_row MobileSubnav1DsTfasXloM2 Button_secondary Button_secondary_outline" type="button"><span class="Button-label">Welcome to ReadMe</span><span class="IconWrapper Icon-wrapper2z2wVIeGsiUy">
<svg fill="none" viewBox="0 0 24 24" class="Icon Icon3_D2ysxFZ_ll Icon-svg2Lm7f6G9Ly5a" data-name="chevron-up-down" role="img" style="--icon-color:inherit;--icon-size:inherit;--icon-stroke-width:2px">[... 140 characters folded ...]
</svg></span></button>
</div>
</div>
<div class="hub-search-results--reactApp " id="hub-search-results">
<div class="hub-container">
<div class="modal-backdrop rm-SearchModal rm-SearchModal_unified" role="button" tabindex="0">
</div>
</div>
</div>
</header>
<main class="SuperHubDoc3Z-1XSVTg-Q1 rm-Guides" id="content">
<div class="SuperHubDoc-container2RY1FPE4Ewze SuperHubDoc-container_tocHiddenpQbe4stqbj7f rm-Container rm-Container_flex">
<nav aria-label="Secondary navigation" class="rm-Sidebar hub-sidebar reference-redesign Nav3C5f8FcjkaHj rm-Sidebar_guides" id="hub-sidebar" role="navigation">
<div class="Sidebar1t2G1ZJq-vU1 rm-Sidebar hub-sidebar-content">
<section class="Sidebar-listWrapper6Q9_yUrG906C Sidebar-listWrapper_expandedvCieTVZJcoub rm-Sidebar-section">
<h2 class="Sidebar-headingTRQyOa2pk0gh rm-Sidebar-heading">Getting Started
</h2>
<ul class="Sidebar-list_sidebarLayout3RaX72iQNOEI Sidebar-list3cZWQLaBf9k8 Sidebar-list_expandedWy9fQM8vmtOc rm-Sidebar-list">
<li class="Sidebar-item23D-2Kd61_k3"><a aria-current="page" class="Sidebar-link2Dsha-r-GKh2 childless text-wrap rm-Sidebar-link active" target="_self" href="/main/docs/about-readme"><span class="Sidebar-link-textLuTE1ySm4Kqn"><span class="Sidebar-link-iconnjiqEiZlPn0W Sidebar-link-pageIcon2sQE9C4g_faB"><i class="far fa-hand-wave"></i></span><span class="Sidebar-link-text_label1gCT_uPnx7Gu">Welcome to ReadMe</span></span></a>
</li>
<li class="Sidebar-item23D-2Kd61_k3"><a class="Sidebar-link2Dsha-r-GKh2 childless text-wrap rm-Sidebar-link" target="_self" href="/main/docs/quickstart"><span class="Sidebar-link-textLuTE1ySm4Kqn"><span class="Sidebar-link-iconnjiqEiZlPn0W Sidebar-link-pageIcon2sQE9C4g_faB"><i class="far fa-rocket"></i></span><span class="Sidebar-link-text_label1gCT_uPnx7Gu">Quickstart</span></span></a>
</li>
<li class="Sidebar-item23D-2Kd61_k3"><a class="Sidebar-link2Dsha-r-GKh2 childless text-wrap rm-Sidebar-link" target="_self" href="/main/docs/ai-overview"><span class="Sidebar-link-textLuTE1ySm4Kqn"><span class="Sidebar-link-iconnjiqEiZlPn0W Sidebar-link-pageIcon2sQE9C4g_faB"><i class="far fa-sparkle"></i></span><span class="Sidebar-link-text_label1gCT_uPnx7Gu">Build with AI</span></span></a>
</li>
<li class="Sidebar-item23D-2Kd61_k3"><a class="Sidebar-link2Dsha-r-GKh2 childless text-wrap rm-Sidebar-link" target="_self" href="/main/docs/migrate"><span class="Sidebar-link-textLuTE1ySm4Kqn"><span class="Sidebar-link-iconnjiqEiZlPn0W Sidebar-link-pageIcon2sQE9C4g_faB"><i class="far fa-box-heart"></i></span><span class="Sidebar-link-text_label1gCT_uPnx7Gu">Migrating to ReadMe</span></span></a>
</li>
</ul>
</section>
<section class="Sidebar-listWrapper6Q9_yUrG906C rm-Sidebar-section">
<h2 class="Sidebar-headingTRQyOa2pk0gh rm-Sidebar-heading">AI
</h2>
<ul class="Sidebar-list_sidebarLayout3RaX72iQNOEI Sidebar-list3cZWQLaBf9k8 rm-Sidebar-list">
<li class="Sidebar-item23D-2Kd61_k3"><a class="Sidebar-link2Dsha-r-GKh2 childless text-wrap rm-Sidebar-link" target="_self" href="/main/docs/restless"><span class="Sidebar-link-textLuTE1ySm4Kqn"><span class="Sidebar-link-iconnjiqEiZlPn0W Sidebar-link-pageIcon2sQE9C4g_faB"><i class="fad fa-chart-line"></i></span><span class="Sidebar-link-text_label1gCT_uPnx7Gu">Restless by ReadMe</span></span></a>
</li>
<li class="Sidebar-item23D-2Kd61_k3"><a class="Sidebar-link2Dsha-r-GKh2 Sidebar-link_parent text-wrap rm-Sidebar-link" target="_self" href="/main/docs/aiagent"><span class="Sidebar-link-textLuTE1ySm4Kqn"><span class="Sidebar-link-iconnjiqEiZlPn0W Sidebar-link-pageIcon2sQE9C4g_faB"><i class="far fa-message-smile"></i></span><span class="Sidebar-link-text_label1gCT_uPnx7Gu">Agent</span></span><button aria-expanded="false" aria-label="Show subpages for Agent" class="Sidebar-link-buttonWrapper3hnFHNku8_BJ" type="button"><i aria-hidden="true" class="Sidebar-link-iconnjiqEiZlPn0W Sidebar-link-expandIcon2yVH6SarI6NW icon-chevron-rightward"></i></button></a>
<ul class="subpages Sidebar-list3cZWQLaBf9k8 rm-Sidebar-list">
<li class="Sidebar-item23D-2Kd61_k3"><a class="Sidebar-link2Dsha-r-GKh2 childless subpage text-wrap rm-Sidebar-link" target="_self" href="/main/docs/inline-ai"><span class="Sidebar-link-textLuTE1ySm4Kqn"><span class="Sidebar-link-iconnjiqEiZlPn0W Sidebar-link-pageIcon2sQE9C4g_faB"><i class="far fa-diagram-subtask"></i></span><span class="Sidebar-link-text_label1gCT_uPnx7Gu">The Agent in the Editor</span></span></a>
</li>
</ul>
</li>
<li class="Sidebar-item23D-2Kd61_k3"><a class="Sidebar-link2Dsha-r-GKh2 childless text-wrap rm-Sidebar-link" target="_self" href="/main/docs/linter"><span class="Sidebar-link-textLuTE1ySm4Kqn"><span class="Sidebar-link-iconnjiqEiZlPn0W Sidebar-link-pageIcon2sQE9C4g_faB"><i class="far fa-pen-swirl"></i></span><span class="Sidebar-link-text_label1gCT_uPnx7Gu">Linter</span></span></a>
</li>
<li class="Sidebar-item23D-2Kd61_k3"><a class="Sidebar-link2Dsha-r-GKh2 childless text-wrap rm-Sidebar-link" target="_self" href="/main/docs/docs-audit"><span class="Sidebar-link-textLuTE1ySm4Kqn"><span class="Sidebar-link-iconnjiqEiZlPn0W Sidebar-link-pageIcon2sQE9C4g_faB"><i class="far fa-brain"></i></span><span class="Sidebar-link-text_label1gCT_uPnx7Gu">Docs Audit</span></span></a>
</li>
<li class="Sidebar-item23D-2Kd61_k3"><a class="Sidebar-link2Dsha-r-GKh2 Sidebar-link_parent text-wrap rm-Sidebar-link" target="_self" href="/main/docs/github-ai-writer"><span class="Sidebar-link-textLuTE1ySm4Kqn"><span class="Sidebar-link-iconnjiqEiZlPn0W Sidebar-link-pageIcon2sQE9C4g_faB"><i class="far fa-code-pull-request"></i></span><span class="Sidebar-link-text_label1gCT_uPnx7Gu">AI Writer</span></span><button aria-expanded="false" aria-label="Show subpages for AI Writer" class="Sidebar-link-buttonWrapper3hnFHNku8_BJ" type="button"><i aria-hidden="true" class="Sidebar-link-iconnjiqEiZlPn0W Sidebar-link-expandIcon2yVH6SarI6NW icon-chevron-rightward"></i></button></a>
<ul class="subpages Sidebar-list3cZWQLaBf9k8 rm-Sidebar-list">
<li class="Sidebar-item23D-2Kd61_k3"><a class="Sidebar-link2Dsha-r-GKh2 childless subpage text-wrap rm-Sidebar-link" target="_self" href="/main/docs/github-ai-writer-setup"><span class="Sidebar-link-textLuTE1ySm4Kqn"><span class="Sidebar-link-iconnjiqEiZlPn0W Sidebar-link-pageIcon2sQE9C4g_faB"><i class="fab fa-github"></i></span><span class="Sidebar-link-text_label1gCT_uPnx7Gu">GitHub AI Writer</span></span></a>
</li>
<li class="Sidebar-item23D-2Kd61_k3"><a class="Sidebar-link2Dsha-r-GKh2 childless subpage text-wrap rm-Sidebar-link" target="_self" href="/main/docs/slack-ai-writer"><span class="Sidebar-link-textLuTE1ySm4Kqn"><span class="Sidebar-link-iconnjiqEiZlPn0W Sidebar-link-pageIcon2sQE9C4g_faB"><i class="fab fa-slack"></i></span><span class="Sidebar-link-text_label1gCT_uPnx7Gu">Slack AI Writer</span></span></a>
</li>
</ul>
</li>
<li class="Sidebar-item23D-2Kd61_k3"><a class="Sidebar-link2Dsha-r-GKh2 childless text-wrap rm-Sidebar-link" target="_self" href="/main/docs/ask-ai"><span class="Sidebar-link-textLuTE1ySm4Kqn"><span class="Sidebar-link-iconnjiqEiZlPn0W Sidebar-link-pageIcon2sQE9C4g_faB"><i class="far fa-sparkles"></i></span><span class="Sidebar-link-text_label1gCT_uPnx7Gu">Ask AI</span></span></a>
</li>
<li class="Sidebar-item23D-2Kd61_k3"><a class="Sidebar-link2Dsha-r-GKh2 childless text-wrap rm-Sidebar-link" target="_self" href="/main/docs/ai-ready-docs"><span class="Sidebar-link-textLuTE1ySm4Kqn"><span class="Sidebar-link-iconnjiqEiZlPn0W Sidebar-link-pageIcon2sQE9C4g_faB"><i class="far fa-sparkles"></i></span><span class="Sidebar-link-text_label1gCT_uPnx7Gu">AI-Ready Docs</span></span></a>
</li>
<li class="Sidebar-item23D-2Kd61_k3"><a class="Sidebar-link2Dsha-r-GKh2 Sidebar-link_parent text-wrap rm-Sidebar-link" target="_self" href="/main/docs/mcp"><span class="Sidebar-link-textLuTE1ySm4Kqn"><span class="Sidebar-link-iconnjiqEiZlPn0W Sidebar-link-pageIcon2sQE9C4g_faB"><i class="far fa-robot"></i></span><span class="Sidebar-link-text_label1gCT_uPnx7Gu">MCP</span></span><button aria-expanded="false" aria-label="Show subpages for MCP" class="Sidebar-link-buttonWrapper3hnFHNku8_BJ" type="button"><i aria-hidden="true" class="Sidebar-link-iconnjiqEiZlPn0W Sidebar-link-expandIcon2yVH6SarI6NW icon-chevron-rightward"></i></button></a>
<ul class="subpages Sidebar-list3cZWQLaBf9k8 rm-Sidebar-list">
<li class="Sidebar-item23D-2Kd61_k3"><a class="Sidebar-link2Dsha-r-GKh2 childless subpage text-wrap rm-Sidebar-link" target="_self" href="/main/docs/mcp-metrics"><span class="Sidebar-link-textLuTE1ySm4Kqn"><span class="Sidebar-link-iconnjiqEiZlPn0W Sidebar-link-pageIcon2sQE9C4g_faB"><i class="far fa-chart-fft"></i></span><span class="Sidebar-link-text_label1gCT_uPnx7Gu">MCP Metrics</span></span></a>
</li>
</ul>
</li>
<li class="Sidebar-item23D-2Kd61_k3"><a class="Sidebar-link2Dsha-r-GKh2 childless text-wrap rm-Sidebar-link" target="_self" href="/main/docs/ai-discoverability"><span class="Sidebar-link-textLuTE1ySm4Kqn"><span class="Sidebar-link-iconnjiqEiZlPn0W Sidebar-link-pageIcon2sQE9C4g_faB"><i class="far fa-telescope"></i></span><span class="Sidebar-link-text_label1gCT_uPnx7Gu">AI Discoverability</span></span></a>
</li>
<li class="Sidebar-item23D-2Kd61_k3"><a class="Sidebar-link2Dsha-r-GKh2 childless text-wrap rm-Sidebar-link" target="_self" href="/main/docs/llmstxt"><span class="Sidebar-link-textLuTE1ySm4Kqn"><span class="Sidebar-link-iconnjiqEiZlPn0W Sidebar-link-pageIcon2sQE9C4g_faB"><i class="far fa-comment-text"></i></span><span class="Sidebar-link-text_label1gCT_uPnx7Gu">LLMs.txt</span></span></a>
</li>
Shown with 37 long blocks (scripts, styles, long tags) folded into a marker that says how many characters they hide; line breaks added before block tags because the source is minified; the pane stops after the first 200 words; the page is 465 KB.
Reading view the text a plain-fetch client can extract
title: Welcome to ReadMe
Welcome to ReadMe
For AI agents: the docs index is at https://docs.readme.com/main/llms.txt. To search every page by keyword, fetch https://docs.readme.com/main/agentSearch?query=term1%20term2 with your own terms. Results come back most relevant first. The index for every project on this site is at https://docs.readme.com/llms.txt. To search every project on this site, fetch https://docs.readme.com/agentSearch?query=term1%20term2 with your own terms. Append .md to any documentation page URL to get its markdown version. Jump to Content Guides Enterprise Recipes API Reference Changelog Discussions Log In Guides Search Ask AI Log In Guides Enterprise Recipes API Reference Changelog Discussions Welcome to ReadMe Getting Started Welcome to ReadMe Quickstart Build with AI Migrating to ReadMe AI Restless by ReadMe Agent The Agent in the Editor Linter Docs Audit AI Writer GitHub AI Writer Slack AI Writer Ask AI AI-Ready Docs MCP MCP Metrics AI Discoverability LLMs.txt AI Dropdown ReadMe's MCP Server ReadMe MCP Plugin for Cursor Project Setup Creating a Project Your Dashboard and Profile Navigate Your Docs Custom Domain & SSL Having Problems Generating SSL? URL Paths in ReadMe Turn Off Cloudflare Proxy Using a Reverse Proxy System Configuration Login Expiration Internal Documentation Error Pages and Redirects Redirect Scenarios Outbound IP Addresses OpenAPI Support Categories, Pages, and Subpages Re-syncing Your OpenAPI
570 more words follow in the initial HTML.
| Check | Result | Detail |
|---|---|---|
| H1 in the initial HTML | Found 2 H1 elements | First H1: Welcome to ReadMe |
| First 200 words in the initial HTML | Found 200 of 200 words | The initial HTML carries 770 words of visible text; the first 200 are marked in the left pane. |
| llms.txt present and linked | Note present, not linked | 67444 bytes, 400 links. Structure grade A (6 of 6). Nothing on the home page points to it. Ora's lab found 86 percent of llms.txt fetches arrived through a link. |
| Markdown on request | Missing 200 text/plain | Accept: text/markdown returned 200 with text/plain; charset=utf-8. The server ignores the header. |
| Status of a made-up path | Missing 200 (soft 404) | /agent-ready-html-missing-path-check returned 200. A missing page that answers 200 looks like a live page to an agent. |
| JSON-LD types | Found TechArticle | 1 schema.org type in JSON-LD blocks on the home page: TechArticle. |
| OpenAPI link | Note none on the home page | No OpenAPI link on the home page. It matters only for a site that ships an API. |
Run the full check
The viewer read one page with four requests. The full check we recommend next is Ora's scan. Its Access layer runs 42 checks worth 30 of its 100 points, among them content without JavaScript, bot detection, llms.txt, markdown on request, JSON-LD and the sitemap (Ora's check catalogue, contract 1.38.0, read 5 November 2026). Open Ora's report for docs.readme.com.
Limits: Ora reads public URLs only, says two runs of one scan land within a couple of points without publishing repeat-scan data, and keeps the product that fixes what it finds behind a waitlist. Cloudflare's scanner at isitagentready.com is a quick free alternative, and Mintlify's score covers documentation.
What the viewer does
It sends four plain GET requests with the user agent Mozilla/5.0 (compatible; agent-readiness-crawl/1.0): the URL itself, the same URL with Accept: text/markdown, /llms.txt on the same host, and a made-up path at the root. It runs no JavaScript. The left pane is the first bytes of the HTML as text, with long scripts and styles folded into a marker that says how many characters they hide. The H1 and the first 200 words of visible text are marked in both panes. The flags under the panes say what the four responses added up to.
Limits
- Ten seconds for all four requests together, 1.5 MB read from the home page, at most five redirects, each one checked again.
- http and https only, default ports only. Private, local and internal addresses and names are refused.
- Ten runs per address per minute. The counter lives in memory on the edge function, so it is per instance rather than global. Past ten you get a 429 with a Retry-After header.
- Results are cached for 24 hours by the response headers. Nothing is written to a database: the viewer keeps the first 200 words and the extracted fields for the length of the request and keeps no page body beyond that.
What it does not tell you
A plain fetch from this server is not a real agent. Bot protection weighs the source address more than the user agent, so a page that answers 200 here can still refuse an agent, and the reverse. Ora's lab found (2026-10-19) that returning 403 to agent user agents and hiding the answer in JavaScript were the only two of 19 configurations that stopped retrieval; the viewer can see the second, and can only hint at the first. The initial HTML reference covers both. The server logs and the published crawler address ranges settle the first.
The seven flags
- H1 in the initial HTML
- Whether the HTML the server sends already contains an H1. It is the cheapest sign that the page does not depend on scripts to say what it is.
- First 200 words in the initial HTML
- Whether at least 200 words of visible text arrive in the initial HTML. Under 40 words with an app root element is flagged as a JavaScript shell.
- llms.txt present and linked
- Whether /llms.txt answers with a plain-text file, whether the home page links it (an anchor, a link element or a Link header), and the structure grade the index uses.
- Markdown on request
- Whether a request with Accept: text/markdown comes back as text/markdown. Cloudflare Radar found 3.9 percent of scanned top sites passing this at its April 2026 launch.
- Status of a made-up path
- Whether a path that should not exist returns 404 or 410. A 200 is a soft 404 and reads as a live page.
- JSON-LD types
- The schema.org types found in JSON-LD blocks on the page. Ora's lab found JSON-LD made no difference when the answer was already in the HTML.
- OpenAPI link
- Whether the page links an OpenAPI file, by an anchor or a service-desc link relation. It matters only for a site that ships an API.
Sources
- Ora: AgentReady launch post (Ora's lab findings) https://ora.ai/blog/agentready-launch, read 4 November 2026
- Ora check catalogue, contract 1.38.0 (132 checks, 42 in the Access layer) https://ora.ai/api/checks, read 5 November 2026
- Ora home page (the fixing product is behind a waitlist) https://ora.ai/, read 5 November 2026
- Ora: Introducing Deep Scan (repeat scans) https://ora.ai/blog/introducing-deep-scan, read 5 November 2026
- Ora llms.txt (public URLs only) https://ora.ai/llms.txt, read 5 November 2026
- Vercel: Make your site readable by AI agents https://vercel.com/kb/guide/make-your-site-readable-by-ai-agents, read 4 November 2026
- llms.txt proposal (llmstxt.org) https://llmstxt.org/, read 4 November 2026
Last reviewed 5 November 2026