Link Headers for AI Agents: Why HTTP Discovery Matters
Most SEO discovery happens in HTML: links, canonicals, hreflang, schema, navigation, and sitemaps.
AI agents add another place to look: the HTTP response.
Before an agent parses your full HTML page, it can inspect response headers. A useful Link header can point to resources such as llms.txt, an API catalog, service documentation, or an agent-facing audit page.
That is why Link headers are becoming a practical Agent SEO topic.
They are not a ranking trick. They are a machine-readable discovery layer.
This article is the HTTP discovery spoke in the broader Agent SEO audit cluster. If you need the measurement layer first, start with the AI Search Visibility Scorecard.
What A Link Header Does
The HTTP Link header lets a server describe typed relationships between the requested URL and another resource.
A simple example:
Link: </llms.txt>; rel="alternate"; type="text/plain"; title="FennecSEO llms.txt"
That says: this response has an alternate related resource at /llms.txt, served as text/plain.
Multiple links can appear in one header:
Link: </.well-known/api-catalog>; rel="api-catalog"; type="application/linkset+json",
</llms.txt>; rel="alternate"; type="text/plain",
</audit/agent-seo/>; rel="service-doc"; type="text/html"
For a browser user, this may be invisible. For an agent, crawler, validator, or API client, it can be a fast map of where to look next.
Why Agents Care
An agent trying to understand a website has several choices:
- Fetch the homepage.
- Parse the HTML.
- Follow navigation and internal links.
- Fetch sitemap and
robots.txt. - Look for
llms.txt, API docs, or well-known files. - Decide whether the site exposes any capabilities.
Link headers can shorten that path.
They are especially useful when a site has resources that are not obvious in visual navigation:
| Resource | Why an agent might care |
|---|---|
llms.txt | Curated site summary for AI readers |
llms-full.txt | Larger readable export or content map |
/.well-known/api-catalog | API discovery per RFC 9727 |
| Product or API docs | Service documentation for real capabilities |
| Agent SEO audit page | Human-readable explanation of supported agent signals |
| RSS feed | Fresh content discovery |
| Sitemap | Canonical URL discovery |
This does not replace HTML links or XML sitemaps. It adds one more structured discovery path.
Where This Fits In Agent Readiness
IsItAgentReady and similar agent-readiness tools check whether a site exposes obvious discovery signals.
The early layers are familiar:
robots.txt- XML sitemap
- Link headers
llms.txt- Content Signals
- Markdown content negotiation
The later layers become more product-specific:
- API catalog
- MCP Server Card
- Agent Skills index
- OAuth metadata
- A2A Agent Card
- WebMCP
For many content and SaaS marketing sites, Link headers are a sensible next step because they are small, visible to scanners, and do not require inventing an API or authentication flow that does not exist.
A Practical Header Set
A product content site can start with homepage headers like this:
Link: </.well-known/api-catalog>; rel="api-catalog"; type="application/linkset+json",
</llms.txt>; rel="alternate"; type="text/plain"; title="llms.txt",
</llms-full.txt>; rel="service-doc"; type="text/plain"; title="Full LLM-readable export",
</audit/agent-seo/>; rel="service-doc"; type="text/html"; title="Agent SEO audit"
For a Chinese homepage, use localized machine resources where they exist:
Link: </.well-known/api-catalog>; rel="api-catalog"; type="application/linkset+json",
</zh/llms.txt>; rel="alternate"; type="text/plain"; title="Chinese llms.txt",
</zh/llms-full.txt>; rel="service-doc"; type="text/plain"; title="Chinese full export",
</zh/audit/agent-seo/>; rel="service-doc"; type="text/html"; title="Agent SEO audit"
The important rule is simple:
Only advertise resources you can keep accurate.
If llms.txt is stale, the header helps agents find stale information faster. If the API catalog points to dead docs, discovery becomes noise.
Which Relations To Use
Use relation types that match the resource.
| Relation | Good use |
|---|---|
api-catalog | Points to a Linkset API catalog per RFC 9727 |
alternate | Points to an alternate representation such as llms.txt or Markdown |
describedby | Points to a resource that describes the current page or site |
service-doc | Points to documentation for a service or capability |
service-desc | Points to a machine-readable service description such as OpenAPI |
Do not overload one relation for everything. The more precise the relation, the easier it is for agents and validators to understand the site.
API Catalog Example
If you expose an API catalog, the resource should be real JSON with the right content type.
Example:
{
"linkset": [
{
"anchor": "https://example.com/.well-known/api-catalog",
"item": [
{
"href": "https://example.com/llms.txt",
"type": "text/plain",
"title": "LLM-readable site summary"
}
],
"service-doc": [
{
"href": "https://example.com/audit/agent-seo/",
"type": "text/html",
"title": "Agent SEO audit"
}
]
}
]
}
If the server returns application/octet-stream, some scanners may still fetch it, but the signal is weaker. Use application/linkset+json for an RFC 9727 API catalog.
How To Test It
Test the homepage first:
curl -I https://example.com/
Check for:
Linkheader exists- Each referenced URL returns
200 - Content types match the header
- URLs are absolute or root-relative and valid
- Localized resources use the right language path
- The resources are linked somewhere human-readable when appropriate
Then test the API catalog:
curl -I https://example.com/.well-known/api-catalog
curl https://example.com/.well-known/api-catalog
Finally, scan with an agent-readiness checker and compare the result with your manual findings.
Use Bot Simulator when you also need to compare crawler and agent views of the page itself.
How This Supports AI Search Visibility
Link headers do not make weak content source-worthy.
They help with a narrower problem: machine discovery.
That matters when the rest of the page is already good:
- The page is crawlable
- The content is useful and specific
- The sitemap is clean
llms.txtis maintained- The site has real tools, docs, or machine-readable resources
- The team measures results in Search Console and logs
In the AI Search Visibility Scorecard, Link headers sit in the discovery layer. They are worth points only when the resources behind them are useful.
Common Mistakes
Avoid these:
- Adding Link headers that point to missing files
- Advertising an API catalog when no API or machine-readable resource exists
- Forgetting the generated deployment headers and only editing a local file
- Sending the wrong content type for
/.well-known/api-catalog - Using English-only resources for localized pages
- Treating Link headers as a replacement for HTML links, sitemap, or content quality
- Adding every emerging agent protocol just to improve a scanner score
The best Agent SEO work is boring in a good way: clear signals, accurate resources, testable behavior.
Next Action With Fennec
For a fast check:
- Run
curl -Ion your homepage. - Look for agent-useful
Linkrelations. - Fetch the referenced
llms.txt, API catalog, and service docs. - Validate the page in Agent SEO Audit.
- Use Technical SEO and Bot Simulator to confirm the page remains crawlable and consistent.
If the page has no measurement baseline yet, pair this with the AI Search Visibility Scorecard before treating it as a priority AI search asset.
Sources
- IETF RFC 8288: Web Linking
- IETF RFC 9727: The api-catalog Link Relation Type
- IsItAgentReady: Link Headers implementation guide
- Cloudflare: Introducing the Agent Readiness score
- Google Search Central: AI optimization guide
Q&A
Do Link headers improve Google rankings?
No direct ranking benefit should be assumed. Link headers are discovery signals for machines and agents, not a shortcut around normal SEO fundamentals.
Which Link relations matter for Agent SEO?
Start with api-catalog, alternate, describedby, service-doc, and related well-known resources that point to real machine-readable assets.
Should every page have many Link headers?
No. Use them on the homepage, important hubs, API documentation, and pages where machine-readable resources genuinely help agents.
How do I test Link headers?
Run curl -I on the URL, inspect the Link header, fetch each referenced resource, and verify status code, content type, and freshness.