Ben McAdams

Agent discovery

Most sites are built for humans and search engines. Very few are optimized for AI agents — the audience that's increasingly the first, and often only, reader.

This site is a small working example of what good agent discovery looks like. Below: the standards implemented here, the full inventory of published files, and a live view of every crawler that visits.

llms.txt

Should implement

A short markdown index of the site written for language models. Points at every page and every machine-readable file. Now a de facto standard for LLM-readable site maps — cheap to publish, obvious upside.

Markdown mirrors

Should implement

Every page has a plain-markdown twin. Append .md to any URL, or send Accept: text/markdown. Agents can consume the site without parsing HTML or running JavaScript. Trivial to add, big win.

Model Context Protocol

Should implement

A Streamable HTTP MCP server exposing typed tools. Any MCP client (Claude Desktop, Cursor, VS Code) can connect and query the site as a live data source. The spec still moves, but the client ecosystem has already converged — shipping now is right.

agents.json

Too soon

Root manifest describing what an agent can do on the site — endpoints, tools, content-negotiation rules. Overlaps with the MCP server card. Spec is still emerging with no clear consensus. Publish it if it's cheap, but don't count on it yet.

Schema.org JSON-LD

Should implement

Structured data embedded on every content page. Person on /resume with full work history, Blog + BlogPosting on notes, WebSite on the home page. Not new, but table stakes for knowledge graphs, rich results, and any agent that reads structured data.

Machine-readable files

PathPurpose
/llms.txtIndex for language models
/llms-full.txtFull content bundle (all pages + posts)
/AGENTS.mdAgent-facing guide (endpoints, tools, mirrors)
/agents.jsonRoot agent manifest
/robots.txtCrawler directives
/sitemap.xmlSitemap (XML)
/sitemap.mdSitemap (markdown)
/feed.xmlRSS feed of writing
/.well-known/ai-catalog.jsonAgent capability catalog (ARD)
/.well-known/mcp.jsonMCP server card
/api/mcpMCP server (Streamable HTTP) — resume, writing, portfolio tools
/*.mdMarkdown mirror of any page (also via Accept: text/markdown)

Live agent traffic

Every request from a known crawler user-agent is logged. Refreshes once a minute.

Crawler analytics are not configured yet. Add UPSTASH_REDIS_REST_URL and UPSTASH_REDIS_REST_TOKEN in Vercel to turn this on.