Analyzed URL
https://glintbase.dev
Measured 2 days ago
AI-Ready Score
Good
out of 100
Token Savings
Score Breakdown
Emerging protocols
0 of 6 detectedWell-known endpoints AI agents look for. Detected here means an agent can discover and connect to your service automatically.
-
OAuth Protected Resource RFC 9728
/.well-known/oauth-protected-resource -
OAuth Discovery RFC 8414
/.well-known/oauth-authorization-server -
MCP Server Card SEP-1649 draft
/.well-known/mcp/server-card.json -
A2A Agent Card A2A v1.0
/.well-known/agent-card.json -
API Catalog RFC 9727
/.well-known/api-catalog -
Agent Skills index Discovery RFC v0.2.0 draft
/.well-known/agent-skills/index.json
Doesn't stay fixed by itself. Monitoring isn't built yet — join the list and we'll tell you when it is.
You're on the list! We'll notify you when it launches.
What we measured No Markdown for Agents support detected
Your site doesn't support Markdown for Agents. This Cloudflare standard lets AI agents request content in markdown format, reducing token usage by ~80%.
How to implement
Implement one or more: (1) Respond to Accept: text/markdown with markdown content. (2) Serve .md URLs (e.g., /page.md). (3) Add <link rel="alternate" type="text/markdown"> tags. (4) Add Link HTTP headers for markdown discovery.
What we measured No Content-Signal found (robots.txt or HTTP headers)
No Content-Signal directives found. These tell AI agents how they may use your content (search indexing, AI input, training data). The recommended location is robots.txt.
How to implement
Add Content-Signal to your robots.txt: User-agent: *\nContent-Signal: search=yes, ai-input=yes, ai-train=no. You can also add it as an HTTP header on markdown responses.
What we measured 15 semantic elements, 306 divs (ratio: 5%)
Your page relies heavily on <div> elements. Semantic elements like <section>, <nav>, <header>, <footer>, and <aside> provide meaningful structure for AI agents.
How to implement
Replace generic <div> containers with appropriate semantic elements. Use <section> for thematic groups, <nav> for navigation, <header>/<footer> for page/section headers and footers.
What we measured Content ratio: 5.9% (6141 content chars / 104485 HTML bytes)
Your page has a low ratio of actual content to total HTML. Much of the page weight is markup, scripts, or styles rather than content.
How to implement
Move CSS to external stylesheets, remove inline styles, minimize JavaScript, and ensure the HTML focuses on content structure.
What we measured 2/3 OG tags present
Missing or incomplete Open Graph tags. OG tags help AI agents (and social platforms) understand your page title, description, and image.
How to implement
Add og:title, og:description, and og:image meta tags to your page's <head>.
What we measured 91/821 elements with inline styles (11.1%)
Many elements have inline style attributes. These add noise for AI agents extracting content.
How to implement
Move all inline styles to CSS classes in your stylesheet. Use utility CSS frameworks like Tailwind if you need many unique styles.
What we measured 2/3 images with meaningful alt text
Some images lack descriptive alt text. Good alt text helps AI agents understand image content and context.
How to implement
Add descriptive alt attributes to all images. Describe what the image shows, not just 'image' or 'photo'. For decorative images, use alt="" (empty).
Agent Readiness Infrastructure ## Software Was Built for Humans.The Next Users Are AI Agents. Glintbase helps companies measure, understand, and improve how AI agents discover, navigate, and operate software across documentation, APIs, onboarding, SDKs, and support surfaces. [Run Free Scan](https://scan.glintbase.dev/)[Read Research Report](https://glintbase.dev/research) ## The way software is consumed has fundamentally changed. For decades, every assumption baked into software design was built around a human on the other end. That assumption no longer holds. Human user AI agent 01 Browse Navigates UI surfaces, follows menus, clicks links Retrieve Fetches structured context directly from endpoints and indexes 02 Search Types queries into search bars, scans results visually Reason Constructs multi-hop inferences from fragmented knowledge 03 Click Interacts with visual affordances and interactive elements Execute Calls functions, invokes tools, triggers API endpoints 04 Read Absorbs prose sequentially, extracts meaning from narrative Infer Derives parameter types, constraints, and relationships from structure 05 Scroll Explores content spatially, skims for relevance Consume context Loads entire token windows, processes all available representations Most software was designed for none of this. The documentation, APIs, onboarding, and support surfaces that exist today were built entirely for human consumption — and they break in predictable ways when AI agents attempt to use them. ## Current software breaks when AI agents try to use it. These are not edge cases. They are the predictable, structural consequences of building software that was never designed for machine consumption. 01 ### AI wastes context. When documentation is unstructured, narrative, or formatted for human reading, agents consume enormous token budgets attempting to extract actionable information. Most of what they consume is irrelevant to their task. 02 ### AI encounters dead ends. Incomplete API references, broken cross-links, undocumented parameters, and missing authentication flows cause agents to stall mid-journey. Without recovery paths, they give up or hallucinate continuations. 03 ### AI hallucinates. When structural information is absent or ambiguous, agents fill gaps with plausible-seeming fabrications. This is not a model failure — it is a documentation failure. Missing context forces inference. 04 ### AI repeats work. Without persistent, structured knowledge representations, every agent session begins from scratch. Agents re-parse the same surfaces, re-resolve the same ambiguities, and re-discover the same information. 05 ### AI consumes excessive tokens. Prose-heavy documentation, inconsistent structures, and redundant content dramatically increase the token cost of operating software. At scale, this translates directly to operational expense and latency. ## An intelligence layer for software. Glintbase sits between your existing software and the AI agents that need to operate it. It continuously extracts, structures, and optimises the knowledge those agents require. Runtime analysis Evaluates software surfaces as they actually behave, not as they are documented to behave. Graph intelligence Maps relationships between entities, surfaces, endpoints, and concepts across an entire codebase. Semantic understanding Derives meaning from structure — not just text — to build representations agents can navigate. Journey simulation Traces the paths an AI agent would follow to complete real tasks, identifying failures before they occur. Intelligence pipeline ## Every surface your software exposes to agents. Scanner analyses ten distinct software surfaces. Hover any card to see what we look for. ## Measure agent readiness. For free. Run Scanner against any public URL. In minutes, you receive a detailed readiness report across six dimensions — no account required. - AI Readiness Score (0–100) - Context Health analysis - Structural Health evaluation - AI Journey Simulation - Machine Entry Point detection - Confidence assessment [Run Scanner](https://scan.glintbase.dev/) ## For teams who need certainty. Deep Audit is an expert-led engagement that delivers a complete understanding of your software's agent readiness — and a precise roadmap to improve it. [Request Enterprise Assessment](https://glintbase.dev/enterprise) AI Journey Simulation Full end-to-end tracing of agent paths through your software surfaces. Runtime Validation Live execution testing of documentation code examples and API calls. Knowledge Graph A complete entity-relationship map of your software's agent-facing structure. Executive Recommendations Prioritised action plans with estimated token savings and risk reduction. Hallucination Risk Assessment Identifies specific gaps in coverage that are causing or will cause agent hallucination. Agent Readiness Roadmap Phased implementation plan to reach full agent operability. ## Latest research. Built for AI agents. ## Built in the open. The core of what Glintbase is building is open source. We believe agent readiness infrastructure should be inspectable, forkable, and community-owned. [View on GitHub](https://github.com/glintbase/glintscanner) Vision ## Software increasingly serves machines. Software is increasingly operating in a world where its primary consumers are not humans. AI agents — systems that retrieve, reason, execute, and infer — are becoming active participants in every software workflow. They read documentation. They call APIs. They follow onboarding flows. They use CLIs, SDKs, and support surfaces. This is happening now. And virtually no software was designed for it. The gap between what software exposes and what AI agents need to operate it effectively is one of the most consequential infrastructure problems of the next decade. Glintbase exists to close that gap. We are building the intelligence layer that enables software to become understandable, navigable, and operable by the machines that increasingly depend on it. This is not a documentation product. It is not an AI writing assistant. It is infrastructure — the kind that sits underneath, does its work quietly, and becomes foundational. The companies that build this layer into their software now will have a compounding structural advantage as the agentic era develops. We are building that layer. Get Started ## Help shape the agentic internet. Run a free scan on any URL. Or join the waitlist to be part of what we build next.
Glintbase — Agent Readiness Infrastructure Agent Readiness Infrastructure # Software Was Built for Humans.The Next Users Are AI Agents. Glintbase helps companies measure, understand, and improve how AI agents discover, navigate, and operate software across documentation, APIs, onboarding, SDKs, and support surfaces. [Run Free Scan](https://scan.glintbase.dev/)[Read Research Report](https://glintbase.dev/research) The Shift## The way software is consumed has fundamentally changed. For decades, every assumption baked into software design was built around a human on the other end. That assumption no longer holds. Human user AI agent 01 Browse Navigates UI surfaces, follows menus, clicks links Retrieve Fetches structured context directly from endpoints and indexes 02 Search Types queries into search bars, scans results visually Reason Constructs multi-hop inferences from fragmented knowledge 03 Click Interacts with visual affordances and interactive elements Execute Calls functions, invokes tools, triggers API endpoints 04 Read Absorbs prose sequentially, extracts meaning from narrative Infer Derives parameter types, constraints, and relationships from structure 05 Scroll Explores content spatially, skims for relevance Consume context Loads entire token windows, processes all available representations Most software was designed for none of this. The documentation, APIs, onboarding, and support surfaces that exist today were built entirely for human consumption — and they break in predictable ways when AI agents attempt to use them. The Problem## Current software breaks when AI agents try to use it. These are not edge cases. They are the predictable, structural consequences of building software that was never designed for machine consumption. 01 ### AI wastes context. When documentation is unstructured, narrative, or formatted for human reading, agents consume enormous token budgets attempting to extract actionable information. Most of what they consume is irrelevant to their task. 02 ### AI encounters dead ends. Incomplete API references, broken cross-links, undocumented parameters, and missing authentication flows cause agents to stall mid-journey. Without recovery paths, they give up or hallucinate continuations. 03 ### AI hallucinates. When structural information is absent or ambiguous, agents fill gaps with plausible-seeming fabrications. This is not a model failure — it is a documentation failure. Missing context forces inference. 04 ### AI repeats work. Without persistent, structured knowledge representations, every agent session begins from scratch. Agents re-parse the same surfaces, re-resolve the same ambiguities, and re-discover the same information. 05 ### AI consumes excessive tokens. Prose-heavy documentation, inconsistent structures, and redundant content dramatically increase the token cost of operating software. At scale, this translates directly to operational expense and latency. The Platform## An intelligence layer for software. Glintbase sits between your existing software and the AI agents that need to operate it. It continuously extracts, structures, and optimises the knowledge those agents require. Runtime analysis Evaluates software surfaces as they actually behave, not as they are documented to behave. Graph intelligence Maps relationships between entities, surfaces, endpoints, and concepts across an entire codebase. Semantic understanding Derives meaning from structure — not just text — to build representations agents can navigate. Journey simulation Traces the paths an AI agent would follow to complete real tasks, identifying failures before they occur. Intelligence pipeline Coverage## Every surface your software exposes to agents. Scanner analyses ten distinct software surfaces. Hover any card to see what we look for. Documentation Prose references, guides, and conceptual content. APIs REST, GraphQL, and RPC endpoint surfaces. SDKs Client libraries, type definitions, and wrappers. GitHub READMEs, wikis, and repository structure. Support Centers Help articles, FAQs, and troubleshooting guides. Onboarding Setup guides, quickstarts, and first-run experiences. Authentication OAuth, API keys, and identity flows. MCP Model Context Protocol servers and tool manifests. OpenAPI OpenAPI 3.x and Swagger specification files. CLI Command-line interfaces and developer tooling. Soon More coming LLMs.txt, changelogs, runbooks, internal wikis. Scanner## Measure agent readiness. For free. Run Scanner against any public URL. In minutes, you receive a detailed readiness report across six dimensions — no account required. - AI Readiness Score (0–100) - Context Health analysis - Structural Health evaluation - AI Journey Simulation - Machine Entry Point detection - Confidence assessment [Run Scanner](https://scan.glintbase.dev/)  Deep Audit## For teams who need certainty. Deep Audit is an expert-led engagement that delivers a complete understanding of your software's agent readiness — and a precise roadmap to improve it. [Request Enterprise Assessment](https://glintbase.dev/enterprise) AI Journey Simulation Full end-to-end tracing of agent paths through your software surfaces. Runtime Validation Live execution testing of documentation code examples and API calls. Knowledge Graph A complete entity-relationship map of your software's agent-facing structure. Executive Recommendations Prioritised action plans with estimated token savings and risk reduction. Hallucination Risk Assessment Identifies specific gaps in coverage that are causing or will cause agent hallucination. Agent Readiness Roadmap Phased implementation plan to reach full agent operability. Research & Insights## Latest research. Built for AI agents. [ARS 2026 Report](https://glintbase.dev/research)[Journal](https://glintbase.dev/blog) [ Code AST: v2.4 (Updated) SYNC Drift Detected (-42%) README.md (Outdated) STALE Documentation IntelligenceJul 2026 ### Docs Drift Is Killing AI: Why Your Documentation Becomes a Liability the Moment It's Published Every codebase is in constant motion. Functions are renamed, endpoints are versioned, parameters change type. Documentation is static. The gap between what code does and what documentation says it does is not a minor inconvenience — for AI agents, it is a critical failure surface. Read paper ](https://glintbase.dev/blog/docs-drift-is-killing-ai) [ Vector RAG Flat Chunks vs Graph RAG Semantic Graph AI ReadinessJul 2026 ### Why Most RAG Fails: The Structural Problem Underneath the Vector Problem Retrieval-Augmented Generation is widely assumed to solve the knowledge problem for AI agents. It does not. The real problem is that the source documents being retrieved were never structured for machine consumption in the first place. Read paper ](https://glintbase.dev/blog/why-most-rag-fails) [ Agent Interface99.8% READY Deterministic Execution100% Schema Validation98% Agent SystemsJun 2026 ### The Future of Agent-Operable Software Within three years, every software product will require an agent-facing layer — a structured, machine-readable representation of its capabilities, interfaces, and knowledge. The companies that build this layer now will have a compounding infrastructure advantage. Read paper ](https://glintbase.dev/blog/future-of-agent-operable-software) Open Source## Built in the open. The core of what Glintbase is building is open source. We believe agent readiness infrastructure should be inspectable, forkable, and community-owned. [ glintbase/glintscanner stable Open-source agent readiness scanner. Analyses documentation, APIs, SDKs, and support surfaces for AI operability. TypeScript ](https://github.com/glintbase/glintscanner)[ @glintbase/cli stable Command-line interface for running Scanner locally. Integrates into CI/CD pipelines and pre-deploy checks. TypeScript ](https://github.com/glintbase/glintscanner/tree/main/cli)[ @glintbase/mcp stable Model Context Protocol server that exposes agent readiness data and documentation queries as structured tools. TypeScript ](https://github.com/glintbase/glintscanner/tree/main/mcp)[ glintbase/sdk planned Official SDK for integrating agent readiness checks and documentation intelligence directly into your application. TypeScript ](https://github.com/glintbase) [View on GitHub](https://github.com/glintbase/glintscanner) Vision ## Software increasingly serves machines. Software is increasingly operating in a world where its primary consumers are not humans. AI agents — systems that retrieve, reason, execute, and infer — are becoming active participants in every software workflow. They read documentation. They call APIs. They follow onboarding flows. They use CLIs, SDKs, and support surfaces. This is happening now. And virtually no software was designed for it. The gap between what software exposes and what AI agents need to operate it effectively is one of the most consequential infrastructure problems of the next decade. Glintbase exists to close that gap. We are building the intelligence layer that enables software to become understandable, navigable, and operable by the machines that increasingly depend on it. This is not a documentation product. It is not an AI writing assistant. It is infrastructure — the kind that sits underneath, does its work quietly, and becomes foundational. The companies that build this layer into their software now will have a compounding structural advantage as the agentic era develops. We are building that layer. Get Started ## Help shape the agentic internet. Run a free scan on any URL. Or join the waitlist to be part of what we build next. [Run Scanner](https://scan.glintbase.dev/)Join Waitlist
Upload this file as /index.md on your server so AI agents can access a clean version of your page. You can also configure Accept: text/markdown content negotiation to serve it automatically.
Our recommendation
# Glintbase > Glintbase helps companies measure, understand, and improve how AI agents discover, navigate, and operate software across documentation, APIs, onboarding, SDKs, and support surfaces. ## Documentation - [Docs](https://glintbase.dev/docs) - [llms.txt](https://glintbase.dev/llms.txt) ## Main - [Glintbase — Agent Readiness Infrastructure](https://glintbase.dev): Glintbase helps companies measure, understand, and improve how AI agents discover, navigate, and operate software acros… - [Glintbase](https://glintbase.dev/) - [Research](https://glintbase.dev/research) - [Docs](https://glintbase.dev/docs) - [Enterprise](https://glintbase.dev/enterprise) - [llms.txt](https://glintbase.dev/llms.txt) - [Changelog](https://glintbase.dev/changelog) - [Status](https://glintbase.dev/status) ## Blog - [Blog](https://glintbase.dev/blog) ## Support - [Support](https://glintbase.dev/support)
Full llms.txt requires domain-wide analysis (coming soon)
Upload this file to https://glintbase.dev/llms.txt at the root of your domain. AI agents like ChatGPT, Claude, and Perplexity check this file to understand your site structure.
This site already has a llms.txt file.
Valid format# Glintbase — Agent Readiness Infrastructure > Glintbase helps companies measure, understand, and improve how AI agents discover, navigate, and operate software across documentation, APIs, onboarding, SDKs, and support surfaces. ## Core Machine Surfaces & Plain-Text Endpoints - [/llms.txt](https://glintbase.dev/llms.txt): Plain-text machine index (this file). - [/llms-full.txt](https://glintbase.dev/llms-full.txt): Comprehensive concatenated documentation & research manuscript for LLM ingestion. - [/research.md](https://glintbase.dev/research.md): Full 24-page research manuscript: "State of Agent Readiness 2026". - [/docs.md](https://glintbase.dev/docs.md): Developer documentation in raw Markdown format (CLI, MCP Server, Agent Skill, ARS 1.0). - [/blog.md](https://glintbase.dev/blog.md): Catalog of all Glintbase research journal articles in raw Markdown format. - [/mcp.json](https://glintbase.dev/mcp.json): Model Context Protocol server manifest (@glintbase/mcp). - [/reports/STATE_OF_AGENT_READINESS_2026.pdf](https://glintbase.dev/reports/STATE_OF_AGENT_READINESS_2026.pdf): Published 24-page research PDF (1.1 MB). - [/research/data/full-scores.csv](https://glintbase.dev/research/data/full-scores.csv): Raw 100-platform cohort benchmark scores CSV. - [/research/data/research-dataset.json](https://glintbase.dev/research/data/research-dataset.json): Full 100-platform empirical dataset JSON. ## Key Research & Benchmark Publications - [State of Agent Readiness 2026](https://glintbase.dev/research): Global Benchmark Report evaluating 100 AI engineering platforms across 1,000 Pathfinder scans and 450 live coding agent executions. Mean ARS Score: 50.7/100 (Grade C). - [The Agent Resilience Paradox](https://glintbase.dev/research.md#63-the-agent-resilience-paradox-in-detail): Why smart LLMs succeed despite bad docs by paying a massive token tax ($433.2k/yr per team). - [9-Action Remediation Playbook](https://glintbase.dev/research.md#remediation-playbook): Actionable steps to boost platform ARS scores by up to +35 points. ## Developer Products & Tools - [Glintbase Hosted Scanner](https://scan.glintbase.dev): Probe any documentation or product URL to calculate its Agent Readiness Score (0-100). - [Glintbase CLI (@glintbase/cli)](https://glintbase.dev/docs#cli): Terminal scanner and CI/CD quality gate for agent readiness. - [Glintbase MCP Server (@glintbase/mcp)](https://glintbase.dev/docs#mcp): Model Context Protocol server with 9 readiness tools. - [Glintbase Agent Skill](https://glintbase.dev/docs#skill): Installable skill teaching coding agents to scan and fix repos autonomously. ## Research Journal Articles (Raw Markdown) - [Agent Readiness: The Missing Metric in Modern Software](https://glintbase.dev/blog/Agent-readiness-missing-metric-in-modern-software) - [Why AI Agents Need a Different Interface Than Humans](https://glintbase.dev/blog/AI-agents-needs-a-different-interface) - [Why Most RAG Fails for Technical Documentation](https://glintbase.dev/blog/why-most-rag-fails) - [Documentation Drift is Killing AI Agents](https://glintbase.dev/blog/docs-drift-is-killing-ai) - [Why Agents Use the Web Differently Than Browsers](https://glintbase.dev/blog/why-agents-use-the-web-differently) - [The Future of Agent-Operable Software](https://glintbase.dev/blog/future-of-agent-operable-software) - [What is Agent Readiness?](https://glintbase.dev/blog/what-is-ai-readiness) - [The $433k Token Tax: Why Bad Docs Drain AI Infrastructure Budgets](https://glintbase.dev/blog/token-tax-ai-docs) - [The Agent Resilience Paradox: Why 'Working' Software Fails AI Agents](https://glintbase.dev/blog/agent-resilience-paradox) - [Beyond /llms.txt: The Full Machine-Readable Stack for AI Agents](https://glintbase.dev/blog/llms-txt-machine-surfaces) - [State of Agent Readiness 2026: What We Found Across 75 Software Platforms](https://glintbase.dev/blog/state-of-agent-readiness-2026) - [How to Gate CI/CD on Agent Readiness: A Practical Glintbase CLI Tutorial](https://glintbase.dev/blog/agent-readiness-cicd-gate) ## Open Source Repositories - [glintbase/ars-report](https://github.com/glintbase/ars-report): Research report build engine & benchmark execution suite. - [glintbase/glintscanner](https://github.com/glintbase/glintscanner): Core scanner engine, CLI, and MCP server.
Accessibility
Content available without JavaScript
Main content starts at 8% of HTML
Page size: 102KB
AI Discoverability
All major AI search bots allowed
Sitemap found
robots.txt exists
llms.txt exists and is valid
Structured Data
JSON-LD found: Organization, WebSite
2/3 OG tags present
Meta description: 181 chars
Canonical URL present
lang="en"
Semantic HTML
Clean heading hierarchy
Has <main>
15 semantic elements, 306 divs (ratio: 5%)
2/3 images with meaningful alt text
Avg div depth: 3.6, max: 8
Content Efficiency
96% token reduction (HTML→Markdown)
Content ratio: 5.9% (6141 content chars / 104485 HTML bytes)
HTML size: 102KB
91/821 elements with inline styles (11.1%)
{
"url": "https://glintbase.dev",
"timestamp": 1787444791739,
"fetch": {
"mode": "simple",
"timeMs": 376,
"htmlSizeBytes": 104485,
"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": "Glintbase — Agent Readiness Infrastructure",
"excerpt": "Measure, understand, and improve how AI agents operate your software. Free scanner, deep audit, and agent-ready documentation.",
"byline": null,
"siteName": "Glintbase",
"lang": "en",
"contentLength": 6141,
"metadata": {
"description": "Glintbase helps companies measure, understand, and improve how AI agents discover, navigate, and operate software across documentation, APIs, onboarding, SDKs, and support surfaces.",
"ogTitle": "Glintbase — Agent Readiness Infrastructure",
"ogDescription": "Measure, understand, and improve how AI agents operate your software. Free scanner, deep audit, and agent-ready documentation.",
"ogImage": null,
"ogType": "website",
"canonical": "https://glintbase.dev",
"lang": "en",
"schemas": [
{
"@context": "https://schema.org",
"@type": "Organization",
"name": "Glintbase",
"url": "https://glintbase.dev",
"logo": "https://glintbase.dev/glintbase-official-icon.png",
"description": "Agent Readiness Infrastructure — helping companies make their software understandable and operable by AI agents.",
"sameAs": [
"https://github.com/glintbase",
"https://twitter.com/glintbase"
]
},
{
"@context": "https://schema.org",
"@type": "WebSite",
"name": "Glintbase",
"url": "https://glintbase.dev",
"description": "Agent Readiness Infrastructure for modern software."
}
],
"robotsMeta": "index, follow",
"author": null,
"generator": null,
"markdownAlternateHref": null
}
},
"markdown": "Agent Readiness Infrastructure\n\n## Software Was Built for Humans.The Next Users Are AI Agents.\n\nGlintbase helps companies measure, understand, and improve how AI agents discover, navigate, and operate software across documentation, APIs, onboarding, SDKs, and support surfaces.\n\n[Run Free Scan](https://scan.glintbase.dev/)[Read Research Report](https://glintbase.dev/research)\n\n## The way software is consumed has fundamentally changed.\n\nFor decades, every assumption baked into software design was built around a human on the other end. That assumption no longer holds.\n\nHuman user\n\nAI agent\n\n01\n\nBrowse\n\nNavigates UI surfaces, follows menus, clicks links\n\nRetrieve\n\nFetches structured context directly from endpoints and indexes\n\n02\n\nSearch\n\nTypes queries into search bars, scans results visually\n\nReason\n\nConstructs multi-hop inferences from fragmented knowledge\n\n03\n\nClick\n\nInteracts with visual affordances and interactive elements\n\nExecute\n\nCalls functions, invokes tools, triggers API endpoints\n\n04\n\nRead\n\nAbsorbs prose sequentially, extracts meaning from narrative\n\nInfer\n\nDerives parameter types, constraints, and relationships from structure\n\n05\n\nScroll\n\nExplores content spatially, skims for relevance\n\nConsume context\n\nLoads entire token windows, processes all available representations\n\nMost software was designed for none of this. The documentation, APIs, onboarding, and support surfaces that exist today were built entirely for human consumption — and they break in predictable ways when AI agents attempt to use them.\n\n## Current software breaks when AI agents try to use it.\n\nThese are not edge cases. They are the predictable, structural consequences of building software that was never designed for machine consumption.\n\n01\n\n### AI wastes context.\n\nWhen documentation is unstructured, narrative, or formatted for human reading, agents consume enormous token budgets attempting to extract actionable information. Most of what they consume is irrelevant to their task.\n\n02\n\n### AI encounters dead ends.\n\nIncomplete API references, broken cross-links, undocumented parameters, and missing authentication flows cause agents to stall mid-journey. Without recovery paths, they give up or hallucinate continuations.\n\n03\n\n### AI hallucinates.\n\nWhen structural information is absent or ambiguous, agents fill gaps with plausible-seeming fabrications. This is not a model failure — it is a documentation failure. Missing context forces inference.\n\n04\n\n### AI repeats work.\n\nWithout persistent, structured knowledge representations, every agent session begins from scratch. Agents re-parse the same surfaces, re-resolve the same ambiguities, and re-discover the same information.\n\n05\n\n### AI consumes excessive tokens.\n\nProse-heavy documentation, inconsistent structures, and redundant content dramatically increase the token cost of operating software. At scale, this translates directly to operational expense and latency.\n\n## An intelligence layer for software.\n\nGlintbase sits between your existing software and the AI agents that need to operate it. It continuously extracts, structures, and optimises the knowledge those agents require.\n\nRuntime analysis\n\nEvaluates software surfaces as they actually behave, not as they are documented to behave.\n\nGraph intelligence\n\nMaps relationships between entities, surfaces, endpoints, and concepts across an entire codebase.\n\nSemantic understanding\n\nDerives meaning from structure — not just text — to build representations agents can navigate.\n\nJourney simulation\n\nTraces the paths an AI agent would follow to complete real tasks, identifying failures before they occur.\n\nIntelligence pipeline\n\n## Every surface your software exposes to agents.\n\nScanner analyses ten distinct software surfaces. Hover any card to see what we look for.\n\n## Measure agent readiness. For free.\n\nRun Scanner against any public URL. In minutes, you receive a detailed readiness report across six dimensions — no account required.\n\n- AI Readiness Score (0–100)\n- Context Health analysis\n- Structural Health evaluation\n- AI Journey Simulation\n- Machine Entry Point detection\n- Confidence assessment\n\n[Run Scanner](https://scan.glintbase.dev/)\n\n## For teams who need certainty.\n\nDeep Audit is an expert-led engagement that delivers a complete understanding of your software's agent readiness — and a precise roadmap to improve it.\n\n[Request Enterprise Assessment](https://glintbase.dev/enterprise)\n\nAI Journey Simulation\n\nFull end-to-end tracing of agent paths through your software surfaces.\n\nRuntime Validation\n\nLive execution testing of documentation code examples and API calls.\n\nKnowledge Graph\n\nA complete entity-relationship map of your software's agent-facing structure.\n\nExecutive Recommendations\n\nPrioritised action plans with estimated token savings and risk reduction.\n\nHallucination Risk Assessment\n\nIdentifies specific gaps in coverage that are causing or will cause agent hallucination.\n\nAgent Readiness Roadmap\n\nPhased implementation plan to reach full agent operability.\n\n## Latest research. Built for AI agents.\n\n## Built in the open.\n\nThe core of what Glintbase is building is open source. We believe agent readiness infrastructure should be inspectable, forkable, and community-owned.\n\n[View on GitHub](https://github.com/glintbase/glintscanner)\n\nVision\n\n## Software increasingly serves machines.\n\nSoftware is increasingly operating in a world where its primary consumers are not humans.\n\nAI agents — systems that retrieve, reason, execute, and infer — are becoming active participants in every software workflow. They read documentation. They call APIs. They follow onboarding flows. They use CLIs, SDKs, and support surfaces.\n\nThis is happening now. And virtually no software was designed for it.\n\nThe gap between what software exposes and what AI agents need to operate it effectively is one of the most consequential infrastructure problems of the next decade.\n\nGlintbase exists to close that gap.\n\nWe are building the intelligence layer that enables software to become understandable, navigable, and operable by the machines that increasingly depend on it.\n\nThis is not a documentation product. It is not an AI writing assistant. It is infrastructure — the kind that sits underneath, does its work quietly, and becomes foundational.\n\nThe companies that build this layer into their software now will have a compounding structural advantage as the agentic era develops.\n\nWe are building that layer.\n\nGet Started\n\n## Help shape the agentic internet.\n\nRun a free scan on any URL. Or join the waitlist to be part of what we build next.\n",
"fullPageMarkdown": "Glintbase — Agent Readiness Infrastructure\n\nAgent Readiness Infrastructure\n\n# Software Was Built for Humans.The Next Users Are AI Agents.\n\nGlintbase helps companies measure, understand, and improve how AI agents discover, navigate, and operate software across documentation, APIs, onboarding, SDKs, and support surfaces.\n\n[Run Free Scan](https://scan.glintbase.dev/)[Read Research Report](https://glintbase.dev/research)\n\nThe Shift## The way software is consumed has fundamentally changed.\n\nFor decades, every assumption baked into software design was built around a human on the other end. That assumption no longer holds.\n\nHuman user\n\nAI agent\n\n01\n\nBrowse\n\nNavigates UI surfaces, follows menus, clicks links\n\nRetrieve\n\nFetches structured context directly from endpoints and indexes\n\n02\n\nSearch\n\nTypes queries into search bars, scans results visually\n\nReason\n\nConstructs multi-hop inferences from fragmented knowledge\n\n03\n\nClick\n\nInteracts with visual affordances and interactive elements\n\nExecute\n\nCalls functions, invokes tools, triggers API endpoints\n\n04\n\nRead\n\nAbsorbs prose sequentially, extracts meaning from narrative\n\nInfer\n\nDerives parameter types, constraints, and relationships from structure\n\n05\n\nScroll\n\nExplores content spatially, skims for relevance\n\nConsume context\n\nLoads entire token windows, processes all available representations\n\nMost software was designed for none of this. The documentation, APIs, onboarding, and support surfaces that exist today were built entirely for human consumption — and they break in predictable ways when AI agents attempt to use them.\n\nThe Problem## Current software breaks when AI agents try to use it.\n\nThese are not edge cases. They are the predictable, structural consequences of building software that was never designed for machine consumption.\n\n01\n\n### AI wastes context.\n\nWhen documentation is unstructured, narrative, or formatted for human reading, agents consume enormous token budgets attempting to extract actionable information. Most of what they consume is irrelevant to their task.\n\n02\n\n### AI encounters dead ends.\n\nIncomplete API references, broken cross-links, undocumented parameters, and missing authentication flows cause agents to stall mid-journey. Without recovery paths, they give up or hallucinate continuations.\n\n03\n\n### AI hallucinates.\n\nWhen structural information is absent or ambiguous, agents fill gaps with plausible-seeming fabrications. This is not a model failure — it is a documentation failure. Missing context forces inference.\n\n04\n\n### AI repeats work.\n\nWithout persistent, structured knowledge representations, every agent session begins from scratch. Agents re-parse the same surfaces, re-resolve the same ambiguities, and re-discover the same information.\n\n05\n\n### AI consumes excessive tokens.\n\nProse-heavy documentation, inconsistent structures, and redundant content dramatically increase the token cost of operating software. At scale, this translates directly to operational expense and latency.\n\nThe Platform## An intelligence layer for software.\n\nGlintbase sits between your existing software and the AI agents that need to operate it. It continuously extracts, structures, and optimises the knowledge those agents require.\n\nRuntime analysis\n\nEvaluates software surfaces as they actually behave, not as they are documented to behave.\n\nGraph intelligence\n\nMaps relationships between entities, surfaces, endpoints, and concepts across an entire codebase.\n\nSemantic understanding\n\nDerives meaning from structure — not just text — to build representations agents can navigate.\n\nJourney simulation\n\nTraces the paths an AI agent would follow to complete real tasks, identifying failures before they occur.\n\nIntelligence pipeline\n\nCoverage## Every surface your software exposes to agents.\n\nScanner analyses ten distinct software surfaces. Hover any card to see what we look for.\n\nDocumentation\n\nProse references, guides, and conceptual content.\n\nAPIs\n\nREST, GraphQL, and RPC endpoint surfaces.\n\nSDKs\n\nClient libraries, type definitions, and wrappers.\n\nGitHub\n\nREADMEs, wikis, and repository structure.\n\nSupport Centers\n\nHelp articles, FAQs, and troubleshooting guides.\n\nOnboarding\n\nSetup guides, quickstarts, and first-run experiences.\n\nAuthentication\n\nOAuth, API keys, and identity flows.\n\nMCP\n\nModel Context Protocol servers and tool manifests.\n\nOpenAPI\n\nOpenAPI 3.x and Swagger specification files.\n\nCLI\n\nCommand-line interfaces and developer tooling.\n\nSoon\n\nMore coming\n\nLLMs.txt, changelogs, runbooks, internal wikis.\n\nScanner## Measure agent readiness. For free.\n\nRun Scanner against any public URL. In minutes, you receive a detailed readiness report across six dimensions — no account required.\n\n- AI Readiness Score (0–100)\n- Context Health analysis\n- Structural Health evaluation\n- AI Journey Simulation\n- Machine Entry Point detection\n- Confidence assessment\n\n[Run Scanner](https://scan.glintbase.dev/)\n\n\n\nDeep Audit## For teams who need certainty.\n\nDeep Audit is an expert-led engagement that delivers a complete understanding of your software's agent readiness — and a precise roadmap to improve it.\n\n[Request Enterprise Assessment](https://glintbase.dev/enterprise)\n\nAI Journey Simulation\n\nFull end-to-end tracing of agent paths through your software surfaces.\n\nRuntime Validation\n\nLive execution testing of documentation code examples and API calls.\n\nKnowledge Graph\n\nA complete entity-relationship map of your software's agent-facing structure.\n\nExecutive Recommendations\n\nPrioritised action plans with estimated token savings and risk reduction.\n\nHallucination Risk Assessment\n\nIdentifies specific gaps in coverage that are causing or will cause agent hallucination.\n\nAgent Readiness Roadmap\n\nPhased implementation plan to reach full agent operability.\n\nResearch & Insights## Latest research. Built for AI agents.\n\n[ARS 2026 Report](https://glintbase.dev/research)[Journal](https://glintbase.dev/blog)\n\n[\n\nCode AST: v2.4 (Updated)\n\nSYNC\n\nDrift Detected (-42%)\n\nREADME.md (Outdated)\n\nSTALE\n\nDocumentation IntelligenceJul 2026\n\n### Docs Drift Is Killing AI: Why Your Documentation Becomes a Liability the Moment It's Published\n\nEvery codebase is in constant motion. Functions are renamed, endpoints are versioned, parameters change type. Documentation is static. The gap between what code does and what documentation says it does is not a minor inconvenience — for AI agents, it is a critical failure surface.\n\nRead paper\n\n](https://glintbase.dev/blog/docs-drift-is-killing-ai)\n\n[\n\nVector RAG\n\nFlat Chunks\n\nvs\n\nGraph RAG\n\nSemantic Graph\n\nAI ReadinessJul 2026\n\n### Why Most RAG Fails: The Structural Problem Underneath the Vector Problem\n\nRetrieval-Augmented Generation is widely assumed to solve the knowledge problem for AI agents. It does not. The real problem is that the source documents being retrieved were never structured for machine consumption in the first place.\n\nRead paper\n\n](https://glintbase.dev/blog/why-most-rag-fails)\n\n[\n\nAgent Interface99.8% READY\n\nDeterministic Execution100%\n\nSchema Validation98%\n\nAgent SystemsJun 2026\n\n### The Future of Agent-Operable Software\n\nWithin three years, every software product will require an agent-facing layer — a structured, machine-readable representation of its capabilities, interfaces, and knowledge. The companies that build this layer now will have a compounding infrastructure advantage.\n\nRead paper\n\n](https://glintbase.dev/blog/future-of-agent-operable-software)\n\nOpen Source## Built in the open.\n\nThe core of what Glintbase is building is open source. We believe agent readiness infrastructure should be inspectable, forkable, and community-owned.\n\n[\n\nglintbase/glintscanner\n\nstable\n\nOpen-source agent readiness scanner. Analyses documentation, APIs, SDKs, and support surfaces for AI operability.\n\nTypeScript\n\n](https://github.com/glintbase/glintscanner)[\n\n@glintbase/cli\n\nstable\n\nCommand-line interface for running Scanner locally. Integrates into CI/CD pipelines and pre-deploy checks.\n\nTypeScript\n\n](https://github.com/glintbase/glintscanner/tree/main/cli)[\n\n@glintbase/mcp\n\nstable\n\nModel Context Protocol server that exposes agent readiness data and documentation queries as structured tools.\n\nTypeScript\n\n](https://github.com/glintbase/glintscanner/tree/main/mcp)[\n\nglintbase/sdk\n\nplanned\n\nOfficial SDK for integrating agent readiness checks and documentation intelligence directly into your application.\n\nTypeScript\n\n](https://github.com/glintbase)\n\n[View on GitHub](https://github.com/glintbase/glintscanner)\n\nVision\n\n## Software increasingly serves machines.\n\nSoftware is increasingly operating in a world where its primary consumers are not humans.\n\nAI agents — systems that retrieve, reason, execute, and infer — are becoming active participants in every software workflow. They read documentation. They call APIs. They follow onboarding flows. They use CLIs, SDKs, and support surfaces.\n\nThis is happening now. And virtually no software was designed for it.\n\nThe gap between what software exposes and what AI agents need to operate it effectively is one of the most consequential infrastructure problems of the next decade.\n\nGlintbase exists to close that gap.\n\nWe are building the intelligence layer that enables software to become understandable, navigable, and operable by the machines that increasingly depend on it.\n\nThis is not a documentation product. It is not an AI writing assistant. It is infrastructure — the kind that sits underneath, does its work quietly, and becomes foundational.\n\nThe companies that build this layer into their software now will have a compounding structural advantage as the agentic era develops.\n\nWe are building that layer.\n\nGet Started\n\n## Help shape the agentic internet.\n\nRun a free scan on any URL. Or join the waitlist to be part of what we build next.\n\n[Run Scanner](https://scan.glintbase.dev/)Join Waitlist\n",
"markdownStats": {
"images": 0,
"links": 5,
"tables": 0,
"codeBlocks": 0,
"headings": 16
},
"tokens": {
"htmlTokens": 33793,
"markdownTokens": 1257,
"reduction": 32536,
"reductionPercent": 96
},
"score": {
"score": 84,
"grade": "B",
"rubricVersion": 2,
"dimensions": {
"accessibility": {
"score": 100,
"weight": 30,
"grade": "A",
"checks": {
"content_without_js": {
"score": 100,
"weight": 55,
"evidence": "proven",
"details": "Content available without JavaScript"
},
"fast_content_position": {
"score": 100,
"weight": 25,
"evidence": "plausible",
"details": "Main content starts at 8% of HTML"
},
"reasonable_page_size": {
"score": 100,
"weight": 20,
"evidence": "plausible",
"details": "Page size: 102KB"
}
}
},
"aiDiscoverability": {
"score": 70,
"weight": 25,
"grade": "C",
"checks": {
"robots_allows_ai_bots": {
"score": 100,
"weight": 35,
"evidence": "proven",
"details": "All major AI search bots allowed"
},
"supports_markdown_negotiation": {
"score": 0,
"weight": 20,
"evidence": "plausible",
"details": "No Markdown for Agents support detected"
},
"has_sitemap": {
"score": 100,
"weight": 15,
"evidence": "plausible",
"details": "Sitemap found"
},
"has_robots_txt": {
"score": 100,
"weight": 10,
"evidence": "plausible",
"details": "robots.txt exists"
},
"has_llms_txt": {
"score": 100,
"weight": 10,
"evidence": "speculative",
"details": "llms.txt exists and is valid"
},
"has_content_signals": {
"score": 0,
"weight": 10,
"evidence": "speculative",
"details": "No Content-Signal found (robots.txt or HTTP headers)"
}
}
},
"structuredData": {
"score": 93,
"weight": 20,
"grade": "A",
"checks": {
"has_schema_org": {
"score": 100,
"weight": 35,
"evidence": "proven",
"details": "JSON-LD found: Organization, WebSite"
},
"has_open_graph": {
"score": 67,
"weight": 20,
"evidence": "plausible",
"details": "2/3 OG tags present"
},
"has_meta_description": {
"score": 100,
"weight": 20,
"evidence": "plausible",
"details": "Meta description: 181 chars"
},
"has_canonical_url": {
"score": 100,
"weight": 15,
"evidence": "plausible",
"details": "Canonical URL present"
},
"has_lang_attribute": {
"score": 100,
"weight": 10,
"evidence": "plausible",
"details": "lang=\"en\""
}
}
},
"semanticHtml": {
"score": 78,
"weight": 15,
"grade": "B",
"checks": {
"proper_heading_hierarchy": {
"score": 100,
"weight": 30,
"evidence": "plausible",
"details": "Clean heading hierarchy"
},
"uses_article_or_main": {
"score": 100,
"weight": 25,
"evidence": "plausible",
"details": "Has <main>"
},
"semantic_elements": {
"score": 16,
"weight": 20,
"evidence": "plausible",
"details": "15 semantic elements, 306 divs (ratio: 5%)"
},
"meaningful_alt_texts": {
"score": 67,
"weight": 15,
"evidence": "plausible",
"details": "2/3 images with meaningful alt text"
},
"low_div_nesting": {
"score": 100,
"weight": 10,
"evidence": "speculative",
"details": "Avg div depth: 3.6, max: 8"
}
}
},
"contentEfficiency": {
"score": 64,
"weight": 10,
"grade": "C",
"checks": {
"token_reduction_ratio": {
"score": 100,
"weight": 40,
"evidence": "speculative",
"details": "96% token reduction (HTML→Markdown)"
},
"content_to_noise_ratio": {
"score": 25,
"weight": 30,
"evidence": "speculative",
"details": "Content ratio: 5.9% (6141 content chars / 104485 HTML bytes)"
},
"reasonable_page_weight": {
"score": 80,
"weight": 20,
"evidence": "speculative",
"details": "HTML size: 102KB"
},
"minimal_inline_styles": {
"score": 0,
"weight": 10,
"evidence": "speculative",
"details": "91/821 elements with inline styles (11.1%)"
}
}
}
}
},
"recommendations": [
{
"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": 5,
"maxImpact": 5,
"evidence": "plausible",
"checkScore": 0,
"checkDetails": "No Markdown for Agents support detected"
},
{
"id": "add_content_signals",
"priority": "high",
"category": "aiDiscoverability",
"titleKey": "rec.add_content_signals.title",
"descriptionKey": "rec.add_content_signals.description",
"howToKey": "rec.add_content_signals.howto",
"effort": "quick-win",
"estimatedImpact": 2.5,
"maxImpact": 2.5,
"evidence": "speculative",
"checkScore": 0,
"checkDetails": "No Content-Signal found (robots.txt or HTTP headers)"
},
{
"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": 2.5,
"maxImpact": 3,
"evidence": "plausible",
"checkScore": 16,
"checkDetails": "15 semantic elements, 306 divs (ratio: 5%)"
},
{
"id": "improve_content_ratio",
"priority": "medium",
"category": "contentEfficiency",
"titleKey": "rec.improve_content_ratio.title",
"descriptionKey": "rec.improve_content_ratio.description",
"howToKey": "rec.improve_content_ratio.howto",
"effort": "moderate",
"estimatedImpact": 2.3,
"maxImpact": 3,
"evidence": "speculative",
"checkScore": 25,
"checkDetails": "Content ratio: 5.9% (6141 content chars / 104485 HTML bytes)"
},
{
"id": "add_open_graph",
"priority": "medium",
"category": "structuredData",
"titleKey": "rec.add_open_graph.title",
"descriptionKey": "rec.add_open_graph.description",
"howToKey": "rec.add_open_graph.howto",
"effort": "quick-win",
"estimatedImpact": 1.3,
"maxImpact": 4,
"evidence": "plausible",
"checkScore": 67,
"checkDetails": "2/3 OG tags present"
},
{
"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": 1,
"maxImpact": 1,
"evidence": "speculative",
"checkScore": 0,
"checkDetails": "91/821 elements with inline styles (11.1%)"
},
{
"id": "improve_alt_texts",
"priority": "low",
"category": "semanticHtml",
"titleKey": "rec.improve_alt_texts.title",
"descriptionKey": "rec.improve_alt_texts.description",
"howToKey": "rec.improve_alt_texts.howto",
"effort": "moderate",
"estimatedImpact": 0.7,
"maxImpact": 2.3,
"evidence": "plausible",
"checkScore": 67,
"checkDetails": "2/3 images with meaningful alt text"
}
],
"llmsTxtPreview": "# Glintbase\n\n> Glintbase helps companies measure, understand, and improve how AI agents discover, navigate, and operate software across documentation, APIs, onboarding, SDKs, and support surfaces.\n\n## Documentation\n- [Docs](https://glintbase.dev/docs)\n- [llms.txt](https://glintbase.dev/llms.txt)\n\n## Main\n- [Glintbase — Agent Readiness Infrastructure](https://glintbase.dev): Glintbase helps companies measure, understand, and improve how AI agents discover, navigate, and operate software acros…\n- [Glintbase](https://glintbase.dev/)\n- [Research](https://glintbase.dev/research)\n- [Docs](https://glintbase.dev/docs)\n- [Enterprise](https://glintbase.dev/enterprise)\n- [llms.txt](https://glintbase.dev/llms.txt)\n- [Changelog](https://glintbase.dev/changelog)\n- [Status](https://glintbase.dev/status)\n\n## Blog\n- [Blog](https://glintbase.dev/blog)\n\n## Support\n- [Support](https://glintbase.dev/support)\n\n",
"llmsTxtExisting": "# Glintbase — Agent Readiness Infrastructure\n> Glintbase helps companies measure, understand, and improve how AI agents discover, navigate, and operate software across documentation, APIs, onboarding, SDKs, and support surfaces.\n\n## Core Machine Surfaces & Plain-Text Endpoints\n- [/llms.txt](https://glintbase.dev/llms.txt): Plain-text machine index (this file).\n- [/llms-full.txt](https://glintbase.dev/llms-full.txt): Comprehensive concatenated documentation & research manuscript for LLM ingestion.\n- [/research.md](https://glintbase.dev/research.md): Full 24-page research manuscript: \"State of Agent Readiness 2026\".\n- [/docs.md](https://glintbase.dev/docs.md): Developer documentation in raw Markdown format (CLI, MCP Server, Agent Skill, ARS 1.0).\n- [/blog.md](https://glintbase.dev/blog.md): Catalog of all Glintbase research journal articles in raw Markdown format.\n- [/mcp.json](https://glintbase.dev/mcp.json): Model Context Protocol server manifest (@glintbase/mcp).\n- [/reports/STATE_OF_AGENT_READINESS_2026.pdf](https://glintbase.dev/reports/STATE_OF_AGENT_READINESS_2026.pdf): Published 24-page research PDF (1.1 MB).\n- [/research/data/full-scores.csv](https://glintbase.dev/research/data/full-scores.csv): Raw 100-platform cohort benchmark scores CSV.\n- [/research/data/research-dataset.json](https://glintbase.dev/research/data/research-dataset.json): Full 100-platform empirical dataset JSON.\n\n## Key Research & Benchmark Publications\n- [State of Agent Readiness 2026](https://glintbase.dev/research): Global Benchmark Report evaluating 100 AI engineering platforms across 1,000 Pathfinder scans and 450 live coding agent executions. Mean ARS Score: 50.7/100 (Grade C).\n- [The Agent Resilience Paradox](https://glintbase.dev/research.md#63-the-agent-resilience-paradox-in-detail): Why smart LLMs succeed despite bad docs by paying a massive token tax ($433.2k/yr per team).\n- [9-Action Remediation Playbook](https://glintbase.dev/research.md#remediation-playbook): Actionable steps to boost platform ARS scores by up to +35 points.\n\n## Developer Products & Tools\n- [Glintbase Hosted Scanner](https://scan.glintbase.dev): Probe any documentation or product URL to calculate its Agent Readiness Score (0-100).\n- [Glintbase CLI (@glintbase/cli)](https://glintbase.dev/docs#cli): Terminal scanner and CI/CD quality gate for agent readiness.\n- [Glintbase MCP Server (@glintbase/mcp)](https://glintbase.dev/docs#mcp): Model Context Protocol server with 9 readiness tools.\n- [Glintbase Agent Skill](https://glintbase.dev/docs#skill): Installable skill teaching coding agents to scan and fix repos autonomously.\n\n## Research Journal Articles (Raw Markdown)\n- [Agent Readiness: The Missing Metric in Modern Software](https://glintbase.dev/blog/Agent-readiness-missing-metric-in-modern-software)\n- [Why AI Agents Need a Different Interface Than Humans](https://glintbase.dev/blog/AI-agents-needs-a-different-interface)\n- [Why Most RAG Fails for Technical Documentation](https://glintbase.dev/blog/why-most-rag-fails)\n- [Documentation Drift is Killing AI Agents](https://glintbase.dev/blog/docs-drift-is-killing-ai)\n- [Why Agents Use the Web Differently Than Browsers](https://glintbase.dev/blog/why-agents-use-the-web-differently)\n- [The Future of Agent-Operable Software](https://glintbase.dev/blog/future-of-agent-operable-software)\n- [What is Agent Readiness?](https://glintbase.dev/blog/what-is-ai-readiness)\n- [The $433k Token Tax: Why Bad Docs Drain AI Infrastructure Budgets](https://glintbase.dev/blog/token-tax-ai-docs)\n- [The Agent Resilience Paradox: Why 'Working' Software Fails AI Agents](https://glintbase.dev/blog/agent-resilience-paradox)\n- [Beyond /llms.txt: The Full Machine-Readable Stack for AI Agents](https://glintbase.dev/blog/llms-txt-machine-surfaces)\n- [State of Agent Readiness 2026: What We Found Across 75 Software Platforms](https://glintbase.dev/blog/state-of-agent-readiness-2026)\n- [How to Gate CI/CD on Agent Readiness: A Practical Glintbase CLI Tutorial](https://glintbase.dev/blog/agent-readiness-cicd-gate)\n\n## Open Source Repositories\n- [glintbase/ars-report](https://github.com/glintbase/ars-report): Research report build engine & benchmark execution suite.\n- [glintbase/glintscanner](https://github.com/glintbase/glintscanner): Core scanner engine, CLI, and MCP server.",
"emergingProtocols": {
"oauthProtectedResource": {
"exists": false,
"url": "https://glintbase.dev/.well-known/oauth-protected-resource"
},
"oauthDiscovery": {
"exists": false,
"url": "https://glintbase.dev/.well-known/oauth-authorization-server"
},
"mcpServerCard": {
"exists": false,
"url": "https://glintbase.dev/.well-known/mcp/server-card.json",
"draft": true
},
"a2aAgentCard": {
"exists": false,
"url": "https://glintbase.dev/.well-known/agent-card.json"
},
"apiCatalog": {
"exists": false,
"url": "https://glintbase.dev/.well-known/api-catalog"
},
"agentSkills": {
"exists": false,
"url": "https://glintbase.dev/.well-known/agent-skills/index.json",
"draft": true
},
"count": 0,
"total": 6
},
"botAccess": {
"probed": true,
"bot": "OAI-SearchBot",
"controlStatus": 200,
"botStatus": 200,
"discriminates": false,
"refusedAsBot": false,
"edge": "Vercel",
"verifiable": false,
"detail": "This origin answers OAI-SearchBot exactly as it answers any other client (200). No edge-level filtering of AI crawlers observed."
},
"snippets": [
{
"id": "add_open_graph",
"title": "Add missing Open Graph tags",
"description": "Open Graph tags control how your page looks when shared on social media and how AI platforms preview your URL in answers.",
"language": "html",
"code": "<meta property=\"og:image\" content=\"https://yoursite.com/og-image.jpg\">\n<meta property=\"og:url\" content=\"https://glintbase.dev\">\n<meta property=\"og:type\" content=\"website\">",
"filename": "<head>",
"stacks": [
{
"id": "html",
"label": "HTML <head>",
"language": "html",
"filename": "<head>",
"code": "<meta property=\"og:image\" content=\"https://yoursite.com/og-image.jpg\">\n<meta property=\"og:url\" content=\"https://glintbase.dev\">\n<meta property=\"og:type\" content=\"website\">"
},
{
"id": "wordpress",
"label": "WordPress",
"language": "php",
"filename": "functions.php",
"code": "<?php\n// Quick Open Graph tags without a plugin (skip if Yoast / Rank Math is active)\nadd_action('wp_head', function () {\n if (!is_singular()) return;\n $post = get_queried_object();\n $title = get_the_title($post);\n $desc = get_the_excerpt($post) ?: wp_trim_words(strip_tags($post->post_content), 30);\n $image = get_the_post_thumbnail_url($post, 'large') ?: 'https://yoursite.com/og-image.jpg';\n $url = get_permalink($post);\n printf('<meta property=\"og:title\" content=\"%s\">' . \"\\n\", esc_attr($title));\n printf('<meta property=\"og:description\" content=\"%s\">' . \"\\n\", esc_attr($desc));\n printf('<meta property=\"og:image\" content=\"%s\">' . \"\\n\", esc_url($image));\n printf('<meta property=\"og:url\" content=\"%s\">' . \"\\n\", esc_url($url));\n echo '<meta property=\"og:type\" content=\"article\">' . \"\\n\";\n}, 5);"
},
{
"id": "nextjs",
"label": "Next.js",
"language": "typescript",
"filename": "app/page.tsx",
"code": "// Next.js App Router — Metadata API\nimport type { Metadata } from 'next';\n\nexport const metadata: Metadata = {\n title: \"Glintbase — Agent Readiness Infrastructure\",\n description: \"Measure, understand, and improve how AI agents operate your software. Free scanner, deep audit, and agent-ready documentation.\",\n openGraph: {\n title: \"Glintbase — Agent Readiness Infrastructure\",\n description: \"Measure, understand, and improve how AI agents operate your software. Free scanner, deep audit, and agent-ready documentation.\",\n url: \"https://glintbase.dev\",\n images: [\"https://yoursite.com/og-image.jpg\"],\n type: 'website',\n },\n};"
}
]
},
{
"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\">"
}
]
}
]
}
Use our API to get this programmatically (coming soon)
This JSON is for internal use — unlike the Markdown and llms.txt files, it's not meant to be uploaded to your site. Save it as a baseline to track your score over time, share it with your dev team, or integrate it into your CI/CD pipeline.
Share your results
Or ask an AI to help you fix it
Want a second opinion?
Cloudflare runs a free scanner too, and it asks a different question. It scores what your site publishes for agents to call — MCP server cards, Agent Skills, API catalogs, DNS records. We score whether an agent can reach, read and understand your content. A site can do well on one and poorly on the other, so expect two different numbers: they are answers to two different questions, and both are worth knowing.
Scan glintbase.dev with CloudflareEmbed your badge
Add this badge to your site. It updates automatically as your AI-readiness score changes.
<script src="https://agentready.md/badge.js" data-id="9a84af52-ef4e-4ee7-b713-ae26e4ebc48c" data-domain="glintbase.dev"></script>
[](https://agentready.md/r/9a84af52-ef4e-4ee7-b713-ae26e4ebc48c)
Coming soon: Full Domain Analysis
Crawl your entire domain, generate llms.txt, and monitor your AI-readiness score over time. Join the waitlist to be notified.
You're on the list! We'll notify you when it launches.