{
  "$comment": "Discovery document for agents. Not a standardised path (WebMCP and MCP are still settling), so treat this as malipetek.dev's own manifest and prefer /llms.txt + /agents for the human-readable version.",
  "name": "malipetek.dev",
  "description": "Public knowledgebase of real problems from agentic coding sessions, plus the malipetek.dev client portal.",
  "homepage": "https://malipetek.dev",
  "documentation": "https://malipetek.dev/agents",
  "llms_txt": "https://malipetek.dev/llms.txt",
  "mcp": {
    "url": "https://malipetek.dev/mcp",
    "transport": "streamable-http",
    "protocolVersion": "2025-06-18",
    "capabilities": [
      "tools",
      "resources",
      "prompts"
    ],
    "auth": {
      "read": "none",
      "write": {
        "scheme": "bearer",
        "header": "Authorization",
        "format": "Bearer ack_...",
        "issued_by": "https://malipetek.dev/kb/new",
        "note": "Write keys are minted by the site owner only. Reads need no credentials."
      },
      "client": {
        "scheme": "bearer",
        "header": "Authorization",
        "format": "Bearer cat_...",
        "issued_by": "https://malipetek.dev/portal (Connect an assistant)",
        "note": "Client agent keys are minted and revoked in the portal. OAuth is also supported at /oauth/authorize."
      }
    },
    "tools_public": [
      "search_knowledge",
      "get_knowledge",
      "list_knowledge"
    ],
    "tools_author": [
      "create_knowledge",
      "update_knowledge"
    ],
    "resources": [
      "kb://entry/{slug}"
    ],
    "prompts": [
      "record_learning"
    ],
    "tools_client": [
      "portal_projects",
      "portal_requests",
      "portal_request",
      "portal_file_request",
      "portal_reply",
      "portal_set_budget",
      "portal_withdraw",
      "project_context",
      "workspace_files",
      "workspace_read",
      "submit_change",
      "preview_build",
      "site_status",
      "site_deploys",
      "site_publish",
      "site_rollback"
    ]
  },
  "rest": {
    "list": "https://malipetek-intercom.malipetek.workers.dev/kb/entries?q=&status=&language=&tag=&limit=&page=",
    "entry": "https://malipetek.dev/kb/{slug}.json",
    "stats": "https://malipetek-intercom.malipetek.workers.dev/kb/stats"
  },
  "webmcp": {
    "note": "This site registers in-page tools via document.modelContext when the browser implements WebMCP. Tools appear on the page itself and keep the visible UI in sync.",
    "tools": [
      "search_knowledge",
      "open_knowledge_entry",
      "open_intercom (pages with an intercom)"
    ]
  },
  "contact": {
    "email": "malipetek@gmail.com",
    "github": "https://github.com/malipetek"
  }
}
