Open source Umbraco package

See your pages the way AI agents see them

Crumpled AgentSpecs adds an Agent Specs view to every content item in the Umbraco backoffice. Fetch the published page the way an AI agent would, then see the markdown, the structured data and what to improve, without leaving the CMS.

Crumpled AgentSpecs icon

Is it working? Now you can show people

Cloudflare’s Markdown for Agents can serve AI agents a clean, text-only version of your pages. Once it is enabled, the questions start: is it working, what exactly is being served, and what do agents see on our pages? Answering them usually means a command-line tool or Postman.

Agent Specs puts the answer where editors already work. It sits on every content item in the backoffice and requests the published page the way an agent would, so anyone can see the result for themselves.

What Agent Specs shows you

Everything is one click from the content item you are editing. Nothing is requested until you press Fetch as agent.

Fetch as an agent

Pick one of the item’s front-end URLs and request the live page with Accept: text/markdown, the way an agent would.

A preview of what agents read

The front matter and rendered markdown an agent receives, with plain-language findings about clean text, content preferences and structured data.

The raw markdown

The response exactly as it was served, in a read-only code editor with a copy button.

Your JSON-LD, checked

Each JSON-LD block in a collapsible viewer, with a link to validate the page at schema.org when it is publicly reachable.

A guide for editors

A guide you can switch on and off explains Markdown for agents, content signals and structured data, with links to learn more.

Advice when it is not set up

If the site does not serve markdown yet, Agent Specs suggests what to do next, with a summary you can copy and send to whoever looks after the site.

Fetch the page as an agent

Open any published content item, choose the Agent Specs view and press Fetch as agent. The result shows the response status, the content type and any content signals the site declares, with plain-language findings underneath.

The Agent Specs view on a content item, with the Fetch as agent button and an explanation of what it does

The result of a fetch: the response status, content type, content signals and findings

See exactly what the agent receives

The Preview tab shows the page as an agent reads it. The Markdown tab shows the raw response, and the JSON-LD tab lists every structured data block on the page, with a link to validate it at schema.org.

The Preview tab, showing the front matter and the page content as an agent reads it

The Markdown tab, showing the raw markdown response with a copy button

The JSON-LD tab, showing the page’s structured data with a link to validate it at schema.org

Built for editors

The package includes a guide that explains Markdown for agents, content signals and structured data in plain language, with links to the outside world to learn more. It is there so editors can understand what they are looking at.

The editor guide, with short explanations of Markdown for agents, content signals and structured data

No Cloudflare? You can still use it

Agent Specs only needs the site to answer a request with Accept: text/markdown with markdown. Cloudflare Markdown for Agents is the easiest way to do that, but it is not the only one. If it is not an option for your site, you can install AI Visibility for Umbraco, which serves markdown for those requests, or add a small middleware of your own. The README has an example.

If the site does not return markdown, Agent Specs says so and suggests the options. You also do not need Markdown for Agents to get on with designing good structured data for your pages.

Get started in three steps

  1. Install

    Add the package with dotnet add package Crumpled.AgentSpecs. No configuration is required.

  2. Open a content item

    Choose the Agent Specs view on any published item and pick one of its front-end URLs.

  3. Fetch as agent

    Press Fetch as agent, then read the preview, the markdown and the JSON-LD.

Questions about Agent Specs

Do I need Cloudflare?

No. Agent Specs needs the site to answer Accept: text/markdown requests with markdown. Cloudflare Markdown for Agents is the easiest way, but AI Visibility for Umbraco or your own middleware works too.

Does Agent Specs change my site?

No. It only requests pages that are already published. The request is made by a small authenticated Management API endpoint, which only accepts URLs that belong to the content item and only follows redirects within the same origin.

Which versions of Umbraco does it support?

The 1.x package line is for Umbraco 17. Each Umbraco major version has its own package version line.

Can I use it on pages that are not published?

No. Only published pages can be requested.

Can I change what it sends, or which URLs it offers?

Yes. You can set the User-Agent, pin the base URL, exclude document types, and change the timeout and maximum response size. You can also register a URL processor to narrow or rewrite the URLs it offers. See the README for details.

Need help?

Need help installing Agent Specs to your Umbraco installation?

Tell us about your Umbraco site and we will reply within one working day.

Supported Umbraco versions
17
License
MIT