explainer

How AI agents discover what a website can do

By Project Auxo · 2026-06-28

The gap

AI agents can already read a site (via llms.txt) and respect its crawl rules (via robots.txt). What they have had no standard way to discover is what a site can do — check inventory, start a return, open a ticket — and how to call it. That discovery has happened through bespoke, one-vendor-at-a-time integrations, which doesn’t scale to a web where the fastest-growing visitor is software acting on a user’s behalf.

The layers an agent uses

MechanismAnswersType
robots.txtWhat may a crawler access?Static file
sitemap.xmlWhat pages exist?Static file
llms.txtWhat content is worth reading?Static file
capabilities.txtWhat can this site do?Static file
schema.org potentialActionWhat actions can run on this page?Page markup
MCPInvoke a tool (live)Live connection

They compose. capabilities.txt is the static, crawlable catalog of what you can do; it hands off to schema.org Action (page-level) or an API/MCP server (live) for the actual invocation.

How an agent does it, step by step

  1. Discover — fetch https://site/capabilities.txt (or query the registry: GET /api/discover?q=…, or the registry MCP).
  2. Choose — pick a capability by id and read its description.
  3. Invoke — call it via the endpoint the file points to (MCP server, HTTP API, or a schema.org potentialAction EntryPoint).

How does an AI agent know what actions a website supports?

Today, mostly through bespoke per-vendor integrations. The emerging standard way is a capabilities.txt file at the site root that declares the invocable capabilities, optionally a structured /.well-known/capabilities.json, schema.org potentialAction markup on pages, and — for live invocation — an MCP server. An agent reads the static declarations to discover, then calls the API/MCP to act.

What is capabilities.txt?

An open convention: a /capabilities.txt file (markdown — categories and capability ids with descriptions) where a site declares what it can do, sibling to robots.txt and llms.txt. It is the discovery layer before invocation; it points at your MCP server or API for the actual call.

Is capabilities.txt the same as MCP or schema.org Action?

No — they compose. MCP invokes tools over a live connection; schema.org potentialAction embeds actions in page markup; capabilities.txt is a static, crawlable, well-known file that catalogs capabilities and points to either of them for invocation. A site can publish all three.

How do I make my site discoverable to AI agents?

Publish a /capabilities.txt (generate it from your OpenAPI in seconds), optionally emit schema.org potentialAction on key pages, expose an MCP server or API for invocation, and allow the AI crawlers (GPTBot, ClaudeBot, PerplexityBot, CCBot) in robots.txt. Then check it for conformance and list it so agents can find it.

Make your site discoverable

Generate your capabilities.txtUse the registry in your agentCompare the standards