New Package: Umbraco.Community.AiVisibility — make your Umbraco 17 site visible to AI search engines

A free, open source Umbraco 17 package that makes your CMS content readable by ChatGPT, Claude, Perplexity, Gemini and Bing Copilot, and gives editors visibility into who’s actually crawling the site.

It renders pages as Markdown on demand through Umbraco’s normal Razor pipeline (so Block List composition, custom view components, route hijacking and custom view models all work without any config changes), serves standard Accept: text/markdown content negotiation alongside .md URLs, and auto-generates the /llms.txt and /llms-full.txt manifests.

The renderer uses an Auto default that tries a fast in-process path first and automatically falls back to an HTTP loopback render if your site has the kind of routing complexity most agency-built Umbraco sites have. Zero-config on a typical install.

The bit I’m most pleased with is the AI Traffic dashboard in the Backoffice. It logs every hit broken down into seven categories (AI training, AI search retrieval, AI user-triggered, deprecated AI bots, human browsers, other crawlers, unknown) so editors and marketers can actually see what’s happening rather than guessing.

There’s also a Health Check that audits your robots.txt against the canonical ai-robots-txt/ai.robots.txt list with build-time SHA pinning, so accidental ClaudeBot or GPTBot blocks get flagged without the package ever modifying your file.

NuGet: dotnet add package Umbraco.Community.AiVisibility Marketplace: [link] Source + issues: GitHub - ashallcross/Umbraco.Community.AiVisibility · GitHub

1 Like

Hi @ashallcross ,

This looks interesting. Will try it out.

Hey Shekhar

Please do let me know if you do!

I’d love some feedback on how it works, how it installs, does it work etc!!

Cheers

1 Like

Would you say that this is not useful in a headless context? As in: in that case the frontend should do what your package is doing instead of the Umbraco instance?

Hi @Luuk

The next version I have in progress will also (hopefully) provide for headless sites too, so should serve up the same content so a headless front end can consume it too.

Is that what you mean, or do you mean something else?

Question: Would a version of this package targeting V13 be useful, do you think?