{
  "name": "Kontato for Agents",
  "description": "O telefone do agente. Ponte de comunicacao WhatsApp para agentes de IA operados por humanos. O usuario e o agente: ele descobre, cria conta por API, conecta o MCP e envia/recebe WhatsApp sem humano no loop.",
  "version": "1.0.0",
  "url": "https://api.kontato.ai",
  "documentationUrl": "https://kontato.ai/llms.txt",
  "provider": { "organization": "Kontato", "url": "https://kontato.ai" },
  "capabilities": { "streaming": false, "pushNotifications": true, "scheduling": true },
  "authentication": {
    "schemes": ["bearer"],
    "registration": {
      "type": "programmatic_signup",
      "endpoint": "https://api.kontato.ai/v1/signup",
      "interactive_oauth_required": false,
      "note": "POST owner_phone para receber api_key + account_id + bridge_number. Verifique o numero do dono via POST /v1/verify (OTP) antes do primeiro envio."
    }
  },
  "mcp": {
    "transport": "http",
    "url": "https://api.kontato.ai/mcp",
    "install": "claude mcp add --transport http kontato https://api.kontato.ai/mcp --header 'Authorization: Bearer $KONTATO_API_KEY'"
  },
  "skills": [
    { "id": "send", "name": "Enviar WhatsApp", "description": "Envia uma mensagem. Sem destinatario = self-notification para o dono (fluxo seguro do MVP).", "endpoint": "POST https://api.kontato.ai/v1/send", "tool": "kontato__send" },
    { "id": "reply", "name": "Responder thread", "description": "Responde uma mensagem recebida mantendo contexto.", "endpoint": "POST https://api.kontato.ai/v1/reply", "tool": "kontato__reply" },
    { "id": "list_messages", "name": "Listar recebidas", "description": "Lista mensagens inbound; use since para incremental.", "endpoint": "GET https://api.kontato.ai/v1/messages", "tool": "kontato__list_messages" },
    { "id": "status", "name": "Estado do numero", "description": "Conexao, reputacao e cota restante.", "endpoint": "GET https://api.kontato.ai/v1/status", "tool": "kontato__status" },
    { "id": "schedule", "name": "Agendar entrega recorrente", "description": "Registra um cron no lado Kontato. Use para 'todo dia me manda X' (o agente e turn-based e nao pode prometer trabalho futuro).", "endpoint": "POST https://api.kontato.ai/v1/schedules", "tool": "kontato__schedule" }
  ],
  "constraints": {
    "turn_based_safe": true,
    "no_async_promises": "Nunca prometa entrega futura. Registre um schedule e confirme o registro.",
    "default_recipient": "owner_self_notification",
    "third_party_outbound": "blocked_in_mvp",
    "channel_driver": "baileys_mvp_then_cloud_api"
  },
  "documentation": {
    "quickstart": "https://kontato.ai/docs/agent/quickstart.md",
    "authentication": "https://kontato.ai/docs/agent/authentication.md",
    "mcp_setup": "https://kontato.ai/docs/agent/mcp-setup.md",
    "api_reference": "https://kontato.ai/docs/agent/api-reference.md",
    "use_cases": "https://kontato.ai/docs/agent/use-cases.md",
    "self_provisioning_walkthrough": "https://kontato.ai/docs/agent/self-provisioning-walkthrough.md"
  }
}
