---
title: "How to fix “Site does not support Markdown for Agents” on WordPress"
url: "https://gindex.cc/blog/fix-markdown-for-agents-isitagentready/"
date: "2026-10-18"
category: "WP Markdown"
author: "Yasser Mamdouh"
lang: "en"
description: "Your WordPress site fails the Markdown check on isitagentready.com. Here is what the check asks for, why WordPress fails it, and three ways to pass."
---

# How to fix “Site does not support Markdown for Agents” on WordPress

You ran your site through [isitagentready.com](https://isitagentready.com/), opened the **Content** section and found a red line: *Site does not support Markdown for Agents*. On a WordPress site that result is normal, and it is fixable. This guide explains what the check actually tests, why WordPress fails it out of the box, and how to pass it.

## What the check sends

The scanner requests your page the way an AI agent would, with one extra header:

```
GET /your-post/
Accept: text/markdown
```

That header means *“if you have this page in Markdown, I would rather have that.”* The check passes when the answer comes back with:

```
content-type: text/markdown
```

It also looks for an `x-markdown-tokens` header, an estimate of how many tokens the Markdown costs, when the site provides one. If the answer is `content-type: text/html`, the check fails with the message you saw.

## Why WordPress fails

WordPress has one way to answer a page request: it runs your theme and sends HTML. It does not read the `Accept` header, so an agent that asks for Markdown gets the same page a browser gets, with the header, menus, scripts and footer around your article.

That is not only a scanner problem. On a test post with the default WordPress theme, the HTML page was **152,958 bytes** and the article itself in Markdown was **1,719 bytes**. An AI tool that reads the HTML has to dig the article out of everything around it.

## Three ways to pass

### 1. A plugin that answers in Markdown

[WP Markdown](/wp-markdown/) gives every post and page a Markdown copy at its own address plus `.md` (`/your-post/` also answers at `/your-post.md`), and it answers the `Accept: text/markdown` request at the normal address too. A passing response looks like this:

```
200 OK
content-type: text/markdown; charset=utf-8
x-markdown-tokens: 430
vary: Accept
```

Browsers keep getting HTML. The plugin also adds a `Link` header to every HTML page that points to its Markdown copy, which is what the scanner's **Link headers** check in Discoverability looks for. It works with block themes, classic themes, Elementor, ACF and WooCommerce products.

### 2. Conversion at the edge

If your site sits behind Cloudflare on a paid plan (Pro, Business or Enterprise), you can turn on [Markdown for Agents](https://developers.cloudflare.com/fundamentals/reference/markdown-for-agents/) under AI Crawl Control. Cloudflare then converts your HTML to Markdown on its network whenever a request asks for it, and answers with `content-type: text/markdown` and `vary: accept`. Before converting, it strips the page's header, footer, navigation, scripts and styles.

Two things to know: it works from the finished HTML, so whatever else your theme prints, such as a sidebar, comments, share buttons or a "related posts" block, comes along unless it sits inside those stripped parts; and if your server sends no `content-signal` header, Cloudflare adds `ai-train=yes, search=yes, ai-input=yes` for you. Test the output on a few of your pages.

### 3. Your own code

A developer can hook WordPress early in the request (`template_redirect`), read the `Accept` header and send a Markdown version of the post. Three details are easy to miss:

- **Respond only when Markdown is preferred.** Browsers send `text/html` first; only switch when `text/markdown` is ranked at or above `text/html`.
- **Send `Vary: Accept`.** Without it, a cache can store the Markdown answer and give it to the next browser, or the other way round.
- **Keep it out of page caches.** Most WordPress cache plugins key on the URL alone. Mark the Markdown response as not cacheable for them.

## Check that it works

You can test it yourself before you scan again:

```
curl -sI -H "Accept: text/markdown" https://yoursite.com/your-post/
```

Look for `content-type: text/markdown` in the answer. Then rerun the scan on isitagentready.com.

**Scan a post or a page, not only the homepage.** If your homepage is the list of latest posts, there is no single article to turn into Markdown, and a correct setup still answers that address with HTML.

## Will this hurt my SEO?

No, if the Markdown copy says where the original is. WP Markdown sends `Link: <your page>; rel="canonical"` with every Markdown answer, so search engines keep ranking the HTML page your visitors see. Avoid `noindex` on the Markdown copy: some AI crawlers obey it too, which would defeat the purpose.

## Summary

The Markdown check asks one question: when an agent asks for Markdown, does it get Markdown? WordPress says no by default. A plugin such as [WP Markdown](/wp-markdown/), conversion at the edge, or your own code can change the answer to yes; whichever you choose, send `Vary: Accept`, keep browsers on HTML, and test a real post.
