Docs

This site is readable by machines

Every page here has a plain markdown twin, and the whole site is published as a single file. If you are an agent, a crawler, or a person writing one, start with llms.txt.

We build agent systems, so it would be strange to run a site an agent cannot read. Every page on monogram.io is served twice: once as HTML for people, and once as markdown at the same path with .md on the end. Nothing is rendered by JavaScript that is missing from the markdown.

The fastest way in is https://monogram.io/llms.txt, an index of every page on the site with a one line description of each. If you would rather have the entire site as one document, https://monogram.io/llms-full.txt is exactly that, around 1.4 MB.

What is here

Three ways to read this site

  1. Markdown twins of every page

    Add .md to any path, or append /markdown, and you get that page as plain markdown. The two forms are separate routes serving one document, so during a revalidation one can trail the other briefly. Case studies keep their metrics and technology pages keep their project links.

  2. Two index files

    llms.txt lists every page with a short description, grouped by section. llms-full.txt inlines the full text of all of them in one file, with a source comment above each entry so you can tell where a passage came from. Navigate with the first, ingest the second.

  3. Discovery documents

    The well-known directory carries an OpenAPI 3.1 description of the public read-only endpoints, an RFC 9727 catalog linking them together, and OAuth and OpenID metadata. Every one of them is listed below with its direct URL, so nothing here needs to be guessed at.

The index

Every machine-readable surface, by URL

Before you build against it

What is published, and what is not live

  1. The MCP server card describes an endpoint that is not enabled

    The server card at the well-known path advertises tools, resources and prompts at /mcp. That transport is not switched on, and a request to it returns 501 with a message saying so. Read the card as a statement of intended shape rather than a live server.

  2. There is no interactive OAuth for external clients

    The authorization server and protected resource documents are published so discovery resolves, and auth.md describes the model. The authorize endpoint itself returns 501, and the JWKS document is an empty key set. Nothing here issues you a token today.

  3. Freshness varies by route, so check the header

    llms.txt and llms-full.txt revalidate on every request, so the index is never stale. Blog markdown and the markdown sitemap cache for an hour with a day of stale while revalidate. Most other markdown routes send no explicit lifetime, so treat the HTML as the fresher copy.

Want your own site to read like this?

We build the agent-readable layer into the sites we ship: markdown mirrors, index files, and discovery documents that resolve. If you are working out what your own site should expose to agents, that is a conversation worth having.

Talk to us