BACK TO DIRECTORY

LLM Markdown – Markdown Endpoints for AI Agents

by Michael Sablone

5.0
(5 ratings)

LLM Markdown makes your public WordPress content available as clean, structured Markdown at predictable .md URLs. See it on a live site:

For regular supported posts, pages, and custom post types, the .md URL follows the permalink. Static front pages also have an /index.md alias.

LLM Markdown converts the actual server-rendered page after WordPress, blocks, shortcodes, and the active theme have processed it. You can choose the content container and exclude unwanted page elements. The original post remains unchanged. Markdown is generated on demand and cached temporarily; no API keys, external service, or static file management are required.

Preview and control from the editor

The block editor sidebar checks Markdown availability and shows the last public response, word count, approximate token count, and document size. Both the block and Classic Editors provide an in-editor View Markdown panel, Copy Markdown action, and link to the public Markdown URL. Editors can disable Markdown for an individual post without changing its normal HTML page. Editor tools can be turned off in the plugin settings.

Structured Markdown output

Each document begins with YAML front matter containing the title, post ID, content type, slug, publication and modification dates, canonical URL, Markdown URL, excerpt, and terms from public taxonomies when available.

The converter handles headings, paragraphs, emphasis, links, ordered and unordered lists, blockquotes, inline and fenced code, horizontal rules, deletion text, figures and captions, and simple tables. Images can be included as an option, with support for common lazy-loading source attributes.

Content selection and access control

Choose which public post types expose Markdown. Simple CSS selectors determine the main content container and which elements are excluded before conversion. A test on the DOM & Selectors tab shows which selector matched and previews the resulting Markdown. Password-protected, unpublished, and individually disabled content is rejected. The optional Honor Noindex setting respects WordPress search visibility and supported noindex settings from Yoast SEO, Rank Math, and All in One SEO. Developers can apply an additional access-control filter for membership or privacy rules.

Discovery, delivery, and caching

Eligible HTML pages advertise their Markdown counterpart with both a <link rel="alternate" type="text/markdown"> element and an HTTP Link header. Documents generated for anonymous requests are cached for performance and invalidated after relevant settings, theme, navigation, or per-post availability changes. A manual cache control is available under Tools.

An advanced, disabled-by-default content-negotiation option can also return Markdown from the normal canonical URL when a client explicitly requests Accept: text/markdown. This mode sends Vary: Accept, but it should be enabled only after confirming every cache and CDN in front of the site honors that header correctly.

LLM Markdown also works with the Classic Editor and supports public custom post types without requiring one.

Screenshots

Check Markdown status and size, copy or view the response, and control availability in the block editor.

Check Markdown status and size, copy or view the response, and control availability in the block editor.

A public .md endpoint serves rendered content as Markdown with YAML front matter.

A public .md endpoint serves rendered content as Markdown with YAML front matter.

Test content selectors and inspect a generated Markdown excerpt.

Test content selectors and inspect a generated Markdown excerpt.

Choose supported content types and configure Markdown behavior.

Choose supported content types and configure Markdown behavior.

Set main-content and exclusion selectors for rendered HTML.

Set main-content and exclusion selectors for rendered HTML.

Configure optional header-based Markdown delivery and Accept-header matching.

Configure optional header-based Markdown delivery and Accept-header matching.

Plugin Details

Active Installs
700
Total Downloads
4,897
Version
1.1.1
Requires WP
6.0
Requires PHP
7.4
Tested Up To
7.1.4
Added
2026-02-26
Last Updated
2026-10-26 8:11am GMT

Ratings

5
5
4
0
3
0
2
0
1
0