Agent Ready HTML

Fern against Mintlify on what an agent reads

In short

Fern generates and maintains llms.txt automatically and links the OpenAPI spec in it for sites with API endpoints, and the AsyncAPI spec for WebSocket channels. Mintlify: Page descriptions in llms.txt come from the frontmatter description field, truncated at 300 characters. Mintlify leads on JSON-LD output, 1 to 0; Fern: Not documented on the pages read.

The sourced difference

Fern serves llms.txt for every navigation node (sections, versions, tabs, API references, changelogs) and accepts lang and excludeChangelog filters; Mintlify serves one root llms.txt that links split indexes under /_llms when it passes 100,000 characters. Source, read 4 November 2026.

The rubric side by side

KeyFernMintlify
Content in the initial HTML2, on by default2, on by default
Real status codes2, on by default2, on by default
llms.txt generation2, on by default2, on by default
llms.txt linking2, on by default2, on by default
Markdown on request2, on by default2, on by default
JSON-LD output0, not offered1, with setup
OpenAPI exposure2, on by default2, on by default
Fenced, tagged code2, on by default2, on by default
Total14 of 1615 of 16

The two differ on 1 of the numeric keys: JSON-LD output. Evidence for each score is on the profiles of Fern and Mintlify.

Verdicts by reader

Technical SEO
Fern exposes more llms.txt URLs per site, which matters only if agents are linked to them.
Docs owner
Fern filters SDK examples by language in llms.txt, useful for multi-SDK API docs.
Front-end developer
Both negotiate markdown on Accept; Fern also accepts .mdx suffixes.

What each leaves undone

Fern

  • Does not give individual pages their own llms.txt.
  • Does not serve custom llms.txt files for non-default locales.

Mintlify

  • Does not publish the llms.txt behind a fully authenticated site to tools that cannot sign in.
  • Does not cap llms-full.txt size; the 100,000 character split applies to llms.txt only.

Work left to the developer: Fern, Low: write frontmatter descriptions; use llms-only and llms-ignore controls where needed. Mintlify, Low: write a description in each page frontmatter so llms.txt entries carry one.

Sources

  1. buildwithfern.com: the difference https://buildwithfern.com/learn/docs/changelog, read 4 November 2026
  2. Mintlify: documentation https://www.mintlify.com/docs/ai/markdown-export, read 4 November 2026

Last reviewed 4 November 2026