# Agent Instructions — WAndrome

## Português

### O que é este site

wandrome.com é o site público do WAndrome, um produto Wise Pirates. O WAndrome lê cada criativo (imagem estática e vídeo) com o PES™ (Probabilidade de Eficácia de Sinal) e devolve um diagnóstico com evidência e correcções, não uma promessa de resultado.

### Leitura pública (sem autenticação)

- `/` — landing do produto
- `/terms` — termos
- `/llms.txt` — índice para modelos de linguagem
- `/llms-full.txt` — conteúdo completo da landing em texto simples
- `/sitemap.xml` — mapa do site

### Área autenticada

`/auth` e todos os caminhos em `Disallow` no `/robots.txt` são exclusivos de clientes. Não tentar aceder.

### Regras

- Não submeter formulários automaticamente.
- Um pedido de demonstração exige que o humano confirme nome, email profissional, telefone e o texto do pedido antes de ser enviado.
- Respeitar rate limits.
- Não há preços públicos; não estimar preços.

### Descoberta para agentes

- Manifesto: https://wandrome.com/.well-known/mcp.json
- Endpoint MCP (Streamable HTTP, JSON-RPC 2.0, sem estado, sem autenticação): https://mcoujdoatpuelnyhmosj.supabase.co/functions/v1/mcp

Tools:
- `get_entity` — quem somos, url, organização-mãe, contacto, políticas (só leitura)
- `describe_offer` — PES, 4 indicadores, portão de risco, régua, formatos, cobertura (só leitura)
- `get_faq` — as 5 perguntas frequentes, opcionalmente ordenadas por `query` (só leitura)
- `get_policies` — links e regras (só leitura)
- `check_fit` — adequação determinística por formato; não promete resultados (só leitura)
- `search` — pesquisa determinística nas passagens do conteúdo público (`query` 1-300, `lang`, `limit` 1-10) (só leitura)
- `request_demo` — pedido de demonstração; exige aprovação humana

Fluxo recomendado: `initialize` → `tools/list` → `get_entity` / `describe_offer` / `get_faq` → `check_fit` → `request_demo` com `dry_run: true` → confirmação humana dos dados → `request_demo` com `dry_run: false`.

Consentimento: `request_demo` exige `consent.confirmed: true`, `consent.statement` com a frase que a pessoa aceitou e `consent.given_at` (ISO 8601). Sem isso devolve o erro `consent_required`. `dry_run` é `true` por defeito e nada é gravado.

Limites: 60 chamadas por 10 minutos por cliente; 3 envios reais de `request_demo` por 24 horas. Ao exceder: HTTP 429 com `Retry-After` e erro JSON-RPC -32000 (`rate_limited`). Todas as chamadas são registadas com IP anonimizado; o conteúdo dos pedidos não é registado.

Transparência: As queries enviadas às tools de leitura são registadas de forma anónima (IP em hash) para melhorar o conteúdo; não são registados dados de pedidos de demonstração.

## English

### What this site is

wandrome.com is the public site of WAndrome, a Wise Pirates product. WAndrome reads every creative (static image and video) with PES™ (Probabilistic Effectiveness Score) and returns a diagnosis with evidence and fixes, not a promise of results.

### Public reading (no authentication)

- `/` — product landing page
- `/terms` — terms
- `/llms.txt` — index for language models
- `/llms-full.txt` — full landing content in plain text
- `/sitemap.xml` — sitemap

### Authenticated area

`/auth` and every path under `Disallow` in `/robots.txt` are for clients only. Do not attempt access.

### Rules

- Do not submit forms automatically.
- A demo request requires the human to confirm name, work email, phone and the request text before it is sent.
- Respect rate limits.
- There is no public pricing; do not estimate prices.

### Agent discovery

- Manifest: https://wandrome.com/.well-known/mcp.json
- MCP endpoint (Streamable HTTP, JSON-RPC 2.0, stateless, no authentication): https://mcoujdoatpuelnyhmosj.supabase.co/functions/v1/mcp

Tools:
- `get_entity` — who we are, url, parent organisation, contact, policies (read-only)
- `describe_offer` — PES, 4 indicators, risk gate, ruler, formats, coverage (read-only)
- `get_faq` — the 5 FAQs, optionally ranked by `query` (read-only)
- `get_policies` — links and rules (read-only)
- `check_fit` — deterministic fit by format; never promises results (read-only)
- `search` — deterministic search over public content passages (`query` 1-300, `lang`, `limit` 1-10) (read-only)
- `request_demo` — demo request; requires human approval

Recommended flow: `initialize` → `tools/list` → `get_entity` / `describe_offer` / `get_faq` → `check_fit` → `request_demo` with `dry_run: true` → human confirms the details → `request_demo` with `dry_run: false`.

Consent: `request_demo` requires `consent.confirmed: true`, `consent.statement` with the sentence the person accepted, and `consent.given_at` (ISO 8601). Without it the call returns `consent_required`. `dry_run` defaults to `true` and nothing is stored.

Limits: 60 calls per 10 minutes per client; 3 real `request_demo` submissions per 24 hours. When exceeded: HTTP 429 with `Retry-After` and JSON-RPC error -32000 (`rate_limited`). Every call is logged with an anonymised IP; request content is not logged.

Transparency: queries sent to read-only tools are logged anonymously (hashed IP) to improve the content; no demo request data is logged.
