Umay AI Markdown
Serves clean Markdown to AI agents (ChatGPT, Claude, Perplexity) on Accept: text/markdown. HTML stays default for browsers. Zero-config.
Use with caution
Umay AI Markdown works, but test it on a staging site before relying on it in 2026. It runs on 10+ sites and was last updated 5 months ago, and scores 51/100 on our health check.
- Momentum — downloads up 289.1% vs the previous 30 days
- Small user base (10+ active installs)
- Very few reviews so far
How does it stack up?
Side-by-side on installs, updates, ratings & supportDaily downloads
Download spikes usually follow a new release — each site that auto-updates counts as a download.
Rankings
Where Umay AI Markdown stands todayWordPress.org search rankings
Live position in the plugin search, top 100| Keyword | Position |
|---|---|
| ai agents | >100 |
| content negotiation | #23 |
| geo | >100 |
| LLM | >100 |
| markdown | #53 |
Version adoption
Share of active sites per release.
About Umay AI Markdown
From the official readme · v1.1.1Description
Modern AI agents (ChatGPT, Claude, Perplexity, Gemini, etc.) work much better with Markdown than HTML. Umay AI Markdown inspects the incoming Accept header and, only when text/markdown is requested, intercepts the response and serves a clean, agent-friendly Markdown representation of the page.
Browsers, search engines, and any client that does not explicitly ask for Markdown receive the unchanged HTML response. There is no settings page, no cron job, and no external service call.
Key features
- Zero configuration — install, activate, done.
- Only triggers when
Accept: text/markdownis present. Regular visitors and search engines are never affected. - Hybrid content extraction: uses
the_contentfor posts/pages, falls back to a DOM-based extractor for archives, taxonomies, and the homepage. - Powered by the industry-standard league/html-to-markdown library.
- Transient-cached for 12 hours per URL (sha256-keyed). Auto-invalidated on
save_post, term edits, theme switches, and menu updates. - Built-in IP rate limiter (30 requests / minute by default) to mitigate abuse.
- Strict input sanitization, header injection protection, libxml entity hardening (XXE-safe), and full WordPress Coding Standards compliance.
- PSR-4 autoloaded, namespaced OOP code. No globals.
- Sends
Vary: Accept,X-Robots-Tag: noindex, andX-Content-Type-Options: nosniffon every Markdown response.
What gets sent to AI agents
Each Markdown response includes a YAML front-matter block with the page title, site name, canonical URL, and ISO-8601 generation timestamp, followed by the page body converted to Markdown. Navigation, footer, sidebars, scripts, styles, comment forms, related posts, and other page chrome are stripped before conversion.
Filters
Two filters are available for advanced customization:
umay_mdn_bypass— Returntrueto skip Markdown handling for the current request.umay_mdn_cache_ttl— Override the default 12-hour cache lifetime (in seconds, minimum 60).umay_mdn_rate_limit— Override the default 30-requests-per-minute rate limit.umay_mdn_converter_options— Modify the league/html-to-markdown converter options array.
Installation
- Upload the
markdown-negotiatorfolder (or the ZIP) via Plugins > Add New > Upload Plugin. - Activate the plugin.
- There is no settings page. The plugin starts working immediately.
To verify:
curl -H "Accept: text/markdown" https://your-site.com/
You should get back a Content-Type: text/markdown; charset=utf-8 response with a YAML front-matter and a Markdown body.
Frequently asked questions
Does it slow down my normal site?
No. The plugin returns immediately on template_redirect priority 1 if the request does not include Accept: text/markdown. The cost is roughly a single if check per request.
Does this plugin contact any external services?
No. The plugin does not call any external service, does not send analytics, does not check for updates against a remote server, and does not load any remote assets. All HTML-to-Markdown conversion happens locally using the bundled league/html-to-markdown library.
How is the cache invalidated?
Per-URL cache keys are deleted on save_post and transition_post_status for the affected post. Term edits, theme switches, and menu updates flush the entire Markdown cache.
Is logged-in personalization supported?
No. Logged-in requests always fall back to HTML to avoid leaking nonces, admin bars, or per-user content into a shared Markdown cache. This is by design.
How do I clear the cache manually?
Deactivate and re-activate the plugin. Deactivation calls Cache::flush_all().
Is the Markdown response indexable by search engines?
No. Every Markdown response includes X-Robots-Tag: noindex to prevent duplicate-content issues. The HTML version remains the canonical, indexable representation.
Does this work with caching plugins like LiteSpeed Cache, WP Rocket, or W3 Total Cache?
The plugin sets Vary: Accept so any well-behaved cache layer will store the Markdown and HTML variants separately. If your cache layer ignores the Vary header, exclude the URLs from the cache when the Accept: text/markdown header is present.
Changelog
Aligned text domain with plugin slug (markdown-negotiator), hardened Markdown output escaping for Plugin Check compliance, and switched distribution language files to English POT-only.
1.1.1
- Aligned text domain with WordPress.org plugin slug: changed from
umay-ai-markdowntomarkdown-negotiatoracross plugin header, gettext calls, and POT file (per WP.org review feedback). - Hardened Markdown response output: replaced raw
echo $markdownwithwp_kses( $markdown, array() )to satisfy Plugin Check’s late-escape rule while preserving Markdown syntax. - Removed bundled tr_TR translation files; only the English POT template ships in the WordPress.org distribution. Translations now flow through translate.wordpress.org.
1.1.0
- Renamed plugin: “Markdown Negotiator” → “Umay AI Markdown”; slug and text domain changed to
markdown-negotiator(per WordPress.org review feedback to ensure the name is distinctive). - Removed deprecated
libxml_disable_entity_loader()calls inContentExtractorandConverter. XXE protection unchanged: libxml 2.9+ disables external entities by default, andLIBXML_NONETis still passed toloadHTML(). - Refactored Tier 2 (non-singular) request pipeline: replaced the open
ob_start( $callback )ontemplate_redirectwith atemplate_includefilter that opens and closes its buffer (ob_startpaired withob_get_clean) inside a single function scope, satisfying Plugin Check’s buffer-pairing requirement. - Added
try/catcharound the template render so a fatal in a theme/plugin returns a clean 500 instead of a half-buffered response.
1.0.1
- HTML sanitization hardening: strip
<style>,<script>,<noscript>blocks via regex (defense in depth on top of league/html-to-markdown’sremove_nodes). - Lazy-load image normalization: promotes
data-lazy-src/data-src/data-originaland the firstsrcsetURL into the realsrc. Drops empty/placeholder images. - Page-builder anchor cleanup: anchors with
href="#elementor-action:...",javascript:, or bare#are unwrapped to plain text. - Internationalization: text domain is now loaded on
initand a base POT file ships in/languages/.
1.0.0
- Initial release.
For developers
Is this your plugin? Show off the numbers.
Add a live badge to your site, docs or GitHub README. It updates on its own — no account needed.
Best Umay AI Markdown alternatives
All ai agents plugins →FAQ
Umay AI Markdown: quick answers
Straight answers, pulled from live WordPress.org data.
Live data from WordPress.org · checked Oct 9, 2026
Is Umay AI Markdown free?
Yes. Umay AI Markdown is free to download and use from the official WordPress.org plugin directory.
Is Umay AI Markdown safe to use in 2026?
Umay AI Markdown works, but test it on a staging site before relying on it in 2026. It runs on 10+ sites and was last updated 5 months ago, and scores 51/100 on our health check.
How many websites use Umay AI Markdown?
Umay AI Markdown is active on 10+ WordPress websites and has been downloaded 910 times since it launched in May 2026. It was downloaded 572 times in the last 30 days.
Does Umay AI Markdown work with WordPress 7.1?
Umay AI Markdown is officially tested up to WordPress 7.0.7, while the latest release is 7.1.3. It may still work, but try it on a staging site first.
What PHP version does Umay AI Markdown need?
Umay AI Markdown requires PHP 7.4 or higher. Most hosts run PHP 8.x today, so it works on any modern WordPress hosting.
When was Umay AI Markdown last updated?
The latest version, 1.1.1, was released on May 20, 2026 (5 months ago).
Who makes Umay AI Markdown?
Umay AI Markdown is developed and maintained by Umay Ajans.
What are the best alternatives to Umay AI Markdown?
The most popular alternatives to Umay AI Markdown are Lime Connect (formerly User… (900+ installs), StoreAgent (600+ installs) and Spyglasses (30+ installs).
Powered by PageForge
Want thousands of pages that rank like these? Build them in an afternoon.
This directory runs on the same engine as PageForge. Turn any spreadsheet, CSV or API into thousands of fast, SEO-ready WordPress pages — with schema, internal links and AI-written copy baked in.
- CSV, Google Sheets & API data sources
- AI content, schema & internal links per page
- Works with Elementor, Gutenberg, Yoast & Rank Math
- Free on WordPress.org — no credit card


