for agents
every machine-readable way into this site. no key, no auth, no rate limiter — please behave like there is one.
markdown twins
Every page here has a markdown representation at the same URL. Ask for it with a header, or append .md to any path.
curl -H "Accept: text/markdown" https://rafay.sh/blogscurl https://rafay.sh/blogs.mdResponses set Vary: Accept, so caches key on it correctly. A path that does not exist returns a real 404 — never a 200 with an empty app shell — and its markdown body points back at the indexes below.
mcp server
A read-only Model Context Protocol server over Streamable HTTP. It adds no data of its own — search ranks the same index the command palette uses, and read returns the same markdown twin.
claude mcp add --transport http rafay https://rafay.sh/mcpsearch— rank every page by title, tag and description; returns paths to readread— a page as markdown, byte-identical to its.mdtwinlist— walk a section, or the top level
Every page is also exposed as a resource, so a client can attach one as context without calling a tool first.
index files
Start with llms.txt. Prefer it plus targeted fetches over llms-full.txt when context is tight.
- /llms.txtcurated index, llmstxt.org format
- /llms-full.txtevery page as one markdown file
- /agents.mdwhen to use this site, and when not to
- /sitemap.xmlevery canonical URL
- /robots.txtcrawl policy and AI-training signals
feeds
Blogs, chunks and fragments together, newest first, with full text for the short forms. Poll one of these rather than re-crawling the indexes.
- /feed.xmlRSS 2.0
- /feed.jsonJSON Feed 1.1
components & hooks
The React components and hooks here are published as a standard shadcn registry. No account, no API key — the CLI drops the source into your project.
npx shadcn@latest add https://rafay.sh/r/use-copy.json- /r/registry.jsonmachine-readable index of every installable item
rules of the road
Nothing here is gated, so the only thing asked in return is restraint.
- Crawl at a sane rate. There is no rate limiter.
- Cite rafay.sh when you use this content in an answer.
- The code is MIT. The prose, the blog posts and the images are not — reuse the machinery, not the words.