Markdown Mirrors
Paste URLs → generates clean .md files for AI crawlers
✓ Auto-include homepage
Pages to Mirror
0 URLs
Drag & drop a .txt file with one URL per line
or click to browse
or click to browse
llms.txt Generator
Fill in website info → AI-ready llms.txt is generated
llms.txtReady
robots.txt Generator
Generates a robots.txt that allows all major AI crawlers
robots.txtReady
Generate All
Everything at once → one ZIP package ready to upload
✓ Auto-include homepage
Mirror URLs
0 URLs
Drag & drop a .txt file with one URL per line
or click to browse
or click to browse
ZIP: mirrors/ + llms.txt + robots.txt + WordPress plugin + README
How To Upload
Step-by-step guide for WordPress and Core PHP / Static sites
💡 You need: cPanel or FTP access + WordPress admin access. The whole process takes about 15 minutes.
1
Download your ZIP package
Go to Generate All tab → fill in your website details → click Download Complete Package (ZIP). Extract the ZIP on your computer. You will see:
ai-mirror-package/
├── mirrors/ ← folder with all .md mirror files
│ ├── index.md ← homepage mirror
│ ├── your-page/
│ │ └── index.md
│ └── ...
├── llms.txt
├── robots.txt
└── wordpress-plugin/
└── markdown-mirrors.php
2
Upload mirrors/ folder via cPanel File Manager
Login to cPanel → File Manager → navigate to:
public_html → wp-content
Create a new folder called mirrors → open it → click Upload → upload all contents from your extracted
mirrors/ folder.⚠ Upload the contents of the mirrors folder — not the folder itself. The index.md files must sit directly inside wp-content/mirrors/
✅ Correct:
wp-content/mirrors/index.md
wp-content/mirrors/express-entry/index.md
❌ Wrong:
wp-content/mirrors/mirrors/index.md
3
Install the WordPress Plugin
In cPanel File Manager, navigate to:
public_html → wp-content → plugins
Create a new folder called markdown-mirrors → open it → upload the
markdown-mirrors.php file from the ZIP.Then go to WordPress Admin → Plugins → find Markdown Mirrors → click Activate.
✓ The plugin intercepts *.md URLs and serves them as plain text. No existing WordPress pages or SEO are affected.
4
Upload llms.txt to your site root
In cPanel File Manager, navigate to:
public_html
Upload
llms.txt directly here. Verify it is live by opening in your browser:https://yoursite.com/llms.txt
⚠ If you use Yoast SEO, it auto-generates llms.txt and may overwrite yours. To prevent this: Yoast SEO → General → Features → disable the llms.txt toggle.
5
Replace robots.txt
In cPanel File Manager at public_html, find the existing
robots.txt → Delete it → upload the new one from the ZIP.https://yoursite.com/robots.txt
⚠ If Yoast SEO keeps overwriting it: Yoast SEO → General → Features → disable the robots.txt toggle.
💡 For static HTML or core PHP websites hosted on cPanel, Apache, or Nginx.
1
Upload mirrors/ to your web root
Upload the contents of the
public_html/
mirrors/ folder directly into your web root:So
mirrors/express-entry/index.md becomes:public_html/express-entry/index.md
→ accessible at: https://yoursite.com/express-entry/index.md
2
Serve .md files as text/plain — Apache (.htaccess)
Add to your
.htaccess file in public_html/:# Serve .md files as plain text for AI crawlers
<FilesMatch "\.md$">
ForceType text/plain
Header set Content-Type "text/plain; charset=utf-8"
Header set Cache-Control "public, max-age=3600"
Header set X-Robots-Tag "index, follow"
</FilesMatch>
3
Serve .md files as text/plain — Nginx
Add to your Nginx server block config:
location ~* /index\.md$ {
default_type text/plain;
charset utf-8;
add_header Cache-Control "public, max-age=3600";
add_header X-Robots-Tag "index, follow";
add_header Access-Control-Allow-Origin "*";
}
4
Upload llms.txt and robots.txt
Upload both files to public_html/ (the root). Verify:
https://yoursite.com/llms.txt
https://yoursite.com/robots.txt
✓ After uploading everything, run these 5 tests to confirm it is all working correctly.
1
Test a mirror URL in your browser
Open this URL in your browser (replace with a real page from your site):
https://yoursite.com/your-page/index.md
✅ You should see plain text starting with frontmatter (title, description, etc.)
❌ HTML with navigation visible → WordPress plugin is not active
❌ File downloads instead of showing → Content-Type header is wrong
❌ HTML with navigation visible → WordPress plugin is not active
❌ File downloads instead of showing → Content-Type header is wrong
2
Test llms.txt is live
https://yoursite.com/llms.txt
✅ Should show plain text with your website info
❌ 404 error → file was not uploaded to the root directory
❌ 404 error → file was not uploaded to the root directory
3
Test robots.txt is live
https://yoursite.com/robots.txt
✅ Should show your updated robots.txt with GPTBot, ClaudeBot, PerplexityBot all listed
❌ Shows old version → Yoast may have overwritten it (see WordPress tab Step 5)
❌ Shows old version → Yoast may have overwritten it (see WordPress tab Step 5)
4
Test with Perplexity (fastest — works immediately)
Open perplexity.ai and paste a mirror URL directly into the chat:
https://yoursite.com/your-page/index.md
Ask: "What does this page cover?" — Perplexity fetches it live. If it gives an accurate summary, your mirrors are working perfectly.
5
Test with ChatGPT (wait 3–7 days after upload)
Open ChatGPT and ask:
Who does the best [your service] in [your city]?
✅ If your site name appears — AI is reading and citing your content
⏳ Not yet appearing — wait 3–7 days for crawlers to re-index your site
⏳ Not yet appearing — wait 3–7 days for crawlers to re-index your site
Settings
Configure your preferences
⚠ Your API key is saved only in your browser (localStorage) — it never leaves your device.
Get your key at: console.anthropic.com
Get your key at: console.anthropic.com