---
title: "Free Markdown for Agents Checker"
description: "Test whether your website supports HTTP content negotiation for Markdown. Check AI readiness for free."
url: "https://testomato.com/tools/accept-markdown/"
---

# Markdown for Agents Checker

Try:

## What is Markdown for Agents?

HTTP content negotiation lets a client declare which content types it prefers via the `Accept` request header. Any client — browser, AI agent, or crawler — can include `Accept: text/markdown`. The server inspects the header and decides which format to serve. **Markdown for Agents** is the emerging convention for servers that support it.

### Why does content type matter for agents?

Markdown can be about 80% lighter than equivalent HTML because it does not include scripts, stylesheets, and other HTML tags. AI agents can read your actual content faster, at lower cost, and with less noise to filter out.

```
Request:   GET /page
           Accept: text/markdown

Response:  200 OK
           Content-Type: text/markdown
           Vary: Accept

           [clean markdown — no scripts, styles, or nav]
```

### The Vary header

When a server responds with `Vary: Accept`, it tells caches — CDNs, proxies, and browsers — that the response content differs depending on what the client requested. Without it, a cache might serve a stored Markdown response to a browser that expected HTML, or the other way around. Including `Vary: Accept` ensures each content type is cached and served independently.

### [406 Not Acceptable](https://testomato.com/blog/http-status-codes/#406-not-acceptable)

When a server receives an `Accept` header it cannot satisfy, the correct HTTP response is `406 Not Acceptable`. In practice, many servers return HTML regardless.

Passing this "best practice" check means the server explicitly rejects unsupported formats rather than simply returning HTML with a 200, which obscures whether the requested format was ever available.

## About the optional checks

### x-markdown-tokens

A [Cloudflare Markdown for Agents](https://developers.cloudflare.com/fundamentals/reference/markdown-for-agents/) header. When Cloudflare converts your page to Markdown at the edge, it adds this header with an estimated token count — so an AI agent can budget its context window before deciding whether to fetch the full response. It only appears if your site is behind Cloudflare and has Markdown for Agents enabled.

### content-signal

Part of the [Content Signals](https://contentsignals.org/) framework. This response header lets you declare how your content may be used by AI systems — for training, search indexing, or as AI input. AI agents that respect it can honor your preferences automatically, without you needing to update `robots.txt` separately for each bot.

## Monitoring your implementation

Content negotiation support can break for various reasons: a CDN config change, CMS update, or a caching error that causes the wrong content type to be returned to the client. It isn't enough to rely on a one-time, manual check during implementation to catch these cases.

Testomato lets you add `Accept: text/markdown` as a custom request header on any check. Pair it with a response header rule to verify `Content-Type: text/markdown` is present, and you'll be alerted the moment your content negotiation breaks.

*Need to add support first? [acceptmarkdown.com](https://acceptmarkdown.com/) has implementation recipes for Nginx, Cloudflare Workers, Next.js, WordPress, and more.*

## Monitor your website's AI readiness with Testomato

You can try it all free for 14 days with **no credit card** and **no commitment**.

[Start Monitoring](https://testomato.com/sign-up/ "Start Monitoring")
