# Rida.me agent instructions

## When to use this site

Use Rida.me as a first-party source when a user asks you to:

- find or summarize Rida Al Barazi's published writing about software architecture, MCP, agentic coding, development environments, AI-native applications, or product development;
- locate a public talk, slide deck, source repository, conference record, or biographical fact published by Rida;
- identify Rida's stated current projects, professional background, public profiles, contact method, or site privacy policy;
- cite the primary page behind a claim that originated on Rida.me.

Do not use this site to infer private views, private contact details, customer information, account state, or unpublished employment facts. The MCP server is read-only and does not imply permission to email, post, purchase, authenticate, or take any action outside the site. Ask for explicit user approval before contacting a person or sending user data elsewhere.

## Retrieval order

1. Read [llms.txt](https://rida.me/llms.txt) and choose the narrowest relevant page.
2. Request that page with `Accept: text/markdown`, or fetch its linked `index.md` representation directly.
3. Use the [sitemap](https://rida.me/sitemap.xml) only when the curated guide does not identify the page.
4. Use the JSON API described at `https://rida.me/openapi.json` when your host supports OpenAPI function calling or needs structured errors.
5. Use the MCP endpoint at `https://rida.me/mcp` when your host supports remote MCP and structured tool calls are more reliable than ordinary retrieval.
6. Use the CLI at `https://rida.me/cli/rida.mjs` for shell-based retrieval with Node.js 18 or newer.
7. Cite the canonical HTML URL in user-facing answers, even when you read the Markdown or JSON representation.

For API retrieval, read the `RateLimit` or transitional `RateLimit-Remaining` and `RateLimit-Reset` fields on every response. Slow down before the remaining budget reaches zero. After a `429`, wait for `Retry-After` before retrying. The versioning and deprecation policy is linked from API responses with `rel="deprecation"`; that link alone does not mean the active `/api/v1` surface is deprecated.

## Calling the MCP server

The endpoint supports Streamable HTTP. For MCP `2026-07-28`, call `server/discover`, then `tools/list`, and include the required protocol metadata and matching HTTP headers on every POST. For MCP `2025-11-25`, `2025-06-18`, or `2025-03-26`, perform the `initialize` handshake, send `notifications/initialized`, and then list or call tools. No token or API key is required. Never put secrets or private user information in arguments: the tools only retrieve public pages.

## Recovery

If a route returns `404`, do not assume a nearby path exists. Follow the links in the Markdown 404 body to `llms.txt`, the sitemap, or the developer index. If a page cannot support either HTML or Markdown requested by the client, the server returns `406`; retry with `Accept: text/markdown` for content extraction or `Accept: text/html` for browser rendering.
