{
  "ok": true,
  "role": "product",
  "slug": "azmail",
  "name": "AZMail",
  "version": "0.1.0",
  "one_line": "AZMail (APP 1.0): advisory airlock + local isolate mailbox + anonymous mesh (default off). Not a full internet MTA. FragGate only.",
  "author": "Aziel Eliab",
  "identity": "Aziel Eliab",
  "aka": "Aziel Elroi Eliab",
  "license": "Apache-2.0",
  "github": "https://github.com/AzielEliab/azmail",
  "skill_url": "https://godlock.uk/runtime/v1/pull/azmail/skill",
  "worker_skill": "https://azmail-download-tracker.vibelock.workers.dev/v1/skill",
  "skill": "---\nname: AZMail\ndescription: Use when isolating, analyzing, or classifying mail through the APP 1.0 Mail Airlock, or when toggling anonymous MCP mesh mail (off by default). Not a public MTA. Author Aziel Eliab.\n---\n\n# AZMail\n\nAnti-phishing Mail Airlock (APP 1.0). No message is trusted until verified across identity, origin, structure, and behavior.\n\nAuthor: **Aziel Eliab** only.\n\n**THIS IS:** local airlock + advisory SPF/DKIM/DMARC parsers + reputation / identity / behavior heuristics + link sandbox + HTML scrub + trust badges + user confirmation + mesh *client helpers*.\n\n**THIS IS NOT:** a public MTA, SMTP/IMAP server, mixnet, VPN, AZ-OS, Lumen, or a guaranteed phishing block. v0.1 does not send internet email.\n\nAlways send `User-Agent: Mozilla/5.0`. Cloudflare Workers may 403 an empty agent.\n\n**Agent path is FragGate only.** There is no separate AZMail MCP outside the door. Do not POST this Worker's `/mcp`.\n\n`POST https://godlock.uk/runtime/v1/fraggate/call` body `{\"slug\":\"azmail\",\"op\":\"…\",\"payload\":{}}`\n\nSame door as MCP `fraggate_call` (`slug=azmail`). Kernel: https://github.com/AzielEliab/fraggate.\n\nThis Worker `/v1/fraggate/*` (list / describe / call), `/v1/runtime/*`, and `/v1/mesh/*` PROXY to aziel-runtime via the `AZIEL_RUNTIME` service binding. Local ops are `/v1/{op}` only.\n\n**Human UI stays on this Worker / `azmail ui`.** AI path is FragGate.\n\n**Two meshes, kept separate:**\n- Suite QNM (QNM-BUILD-1.0): `GET /v1/mesh` PROXY. Default OFF. live|locked|isolated. No Node Gate. No auto-heal. Not anonymity. Catalog MCP `mesh_*` + FragGate `slug=mesh`. **QNS-CD-1.0** (photon QNS1 packet transfer) is a hub cite / Worker mesh cross-map only — not a Softwares-tab product. Local qnsd lives in https://github.com/AzielEliab/qnm-node. Runtime cites + catalog field live in https://github.com/AzielEliab/aziel-runtime. Pair custody is AZInterface. No public qnsd proxy.\n- AZMail product-local leftover ring: `POST /v1/mesh_disable` (easy off-switch). Agents: FragGate `slug=azmail` `op=mesh_enable|mesh_disable|broadcast|listen`.\n\nSuite mesh is **off by default**. Product-local `mesh_disable` is the easy off-switch for the anonymous ring.\n\n## Human Worker (not the agent door)\n\nHost: `https://azmail-download-tracker.vibelock.workers.dev`\n\n| Method | Path | What |\n|--------|------|------|\n| GET | `/v1/health` | Liveness. Does not increment downloads. |\n| GET | `/v1/skill` | This markdown. Does not increment downloads. |\n| GET | `/v1/example` | Sample airlock payload. |\n| POST | `/v1/airlock_classify` | Human-UI classify. Same name as FragGate op. Not stored. |\n| POST | `/v1/classify` | Leftover alias of `airlock_classify`. |\n| POST | `/v1/scrub` | Human-UI demo scrub. |\n| POST | `/v1/keyword-alerts` | Demo match. Agents use FragGate. |\n| POST | `/v1/mesh_enable` | Leftover product-local ring stub (not suite QNM). |\n| POST | `/v1/mesh_disable` | Leftover product-local easy off-switch. |\n| POST | `/v1/broadcast` | Leftover product-local broadcast stub. |\n| POST | `/v1/listen` | Leftover product-local listen stub. |\n| GET | `/v1/mesh` | PROXY → aziel-runtime suite QNM status. Default OFF. |\n| GET | `/v1/mesh/nodes` | PROXY → aziel-runtime Live Nodes roster. |\n| GET | `/v1/fraggate/list` | PROXY → aziel-runtime FragGate list. |\n| GET | `/v1/fraggate/describe` | PROXY → aziel-runtime FragGate describe. |\n| POST | `/v1/fraggate/call` | PROXY → aziel-runtime FragGate call. |\n\nWorks with ChatGPT (GPT Actions / OpenAI), Grok (xAI), Venice, Claude (Anthropic), Cursor (MCP), Glama (MCP), Perplexity, Microsoft Copilot / Bing, Google Gemini / Vertex, Mistral, Meta AI, Apple Intelligence surfaces, Amazon Q tooling, DuckAssist, You.com, Cohere, and other MCP/OpenAPI-capable assistants — **through FragGate**, not a mail MCP of their own.\n\n## Local\n\n```bash\ncurl -fsSL https://azmail-download-tracker.vibelock.workers.dev/install.sh | bash\nazmail ui\nazmail doctor\n```\n\nThen open http://127.0.0.1:8876 (this computer only).\n\n## Honest banner\n\nTHIS IS: a local Mail Airlock plus advisory APP 1.0 layers and mesh client helpers. THIS IS NOT: a public MTA, SMTP/IMAP server, mixnet, VPN, or a guaranteed phishing block. v0.1 does not send internet email. Hosted Worker is a counted download + human UI + demo HTTP. The AI / MCP path is FragGate only: POST https://godlock.uk/runtime/v1/fraggate/call with slug=azmail op=airlock_classify — not a separate mail MCP. This Worker /v1/fraggate/* PROXY to aziel-runtime. No hard dependency on AZ-OS, Lumen, or a separate interface product. Author: Aziel Eliab only.\n\nApache-2.0. Forks are welcome and always allowed.\n\n- Catalog: https://godlock.uk/runtime/p/azmail/\n- Library: https://www.azielcorpuslibrary.net/\n- FragGate: https://github.com/AzielEliab/fraggate\n- godlock.uk · https://www.azieleliab.com\n",
  "download": "https://azmail-download-tracker.vibelock.workers.dev/download",
  "cite": "https://azmail-download-tracker.vibelock.workers.dev/cite.json",
  "llms": "https://azmail-download-tracker.vibelock.workers.dev/llms.txt",
  "sitemap": "https://azmail-download-tracker.vibelock.workers.dev/sitemap.xml",
  "count": "https://azmail-download-tracker.vibelock.workers.dev/count",
  "install": "https://azmail-download-tracker.vibelock.workers.dev/install.sh",
  "install_sh": "curl -fsSL https://azmail-download-tracker.vibelock.workers.dev/install.sh | bash",
  "update_check": "https://godlock.uk/runtime/v1/update/check?slug=azmail&version=0.1.0",
  "software": "https://godlock.uk/runtime/v1/software",
  "openapi": "https://azmail-download-tracker.vibelock.workers.dev/openapi.json",
  "runtime_openapi": "https://godlock.uk/runtime/openapi.json",
  "ops": [
    {
      "op": "health",
      "method": "GET",
      "summary": "Liveness. Does not increment download KV."
    },
    {
      "op": "airlock_classify",
      "method": "POST",
      "summary": "Classify text with the APP 1.0 airlock. Advisory only. Not an MTA."
    },
    {
      "op": "scrub",
      "method": "POST",
      "summary": "Scrub emails, secrets, PANs, and phones from text. Advisory only."
    },
    {
      "op": "trust_score",
      "method": "POST",
      "summary": "Advisory trust score (hard 0.75 cap). Not identity."
    },
    {
      "op": "mesh_post",
      "method": "POST",
      "summary": "Post to the anonymous MCP mesh. Refuses when mesh is off (default). Strips identity keys."
    },
    {
      "op": "mesh_poll",
      "method": "POST",
      "summary": "Poll the anonymous MCP mesh ring. Alias of listen."
    },
    {
      "op": "mesh_listen",
      "method": "POST",
      "summary": "Listen on the anonymous MCP mesh ring. Alias of poll."
    },
    {
      "op": "mesh_enable",
      "method": "POST",
      "summary": "Turn the mesh on. Rate-limited. Mesh default is off."
    },
    {
      "op": "mesh_disable",
      "method": "POST",
      "summary": "Chaos switch: always allowed. Turns the mesh off."
    },
    {
      "op": "keyword_alert_set",
      "method": "POST",
      "summary": "Set fine-tuned keyword alerts for the anonymous ring."
    },
    {
      "op": "keyword_alert_list",
      "method": "POST",
      "summary": "List keyword alerts."
    },
    {
      "op": "keyword_alert_check",
      "method": "POST",
      "summary": "Check text against keyword alerts without posting."
    },
    {
      "op": "classify",
      "method": "POST",
      "summary": "UI alias of airlock_classify. Same FragGate backend as the Worker UI button."
    },
    {
      "op": "mailbox_open",
      "method": "POST",
      "summary": "Open a local isolate mailbox. Not SMTP. Not a public MTA."
    },
    {
      "op": "notice_post",
      "method": "POST",
      "summary": "Agent→user notice (class error|update|health|receipt). Worker inbox. Not SMTP."
    },
    {
      "op": "mail_post",
      "method": "POST",
      "summary": "User→user local mail in this isolate. Not SMTP. Not deanonymize."
    },
    {
      "op": "inbox_pull",
      "method": "POST",
      "summary": "Pull the caller's local inbox only. Stranger pull is empty/404."
    },
    {
      "op": "ack",
      "method": "POST",
      "summary": "Acknowledge a local mailbox item. Not a release valve."
    },
    {
      "op": "verify_receipt",
      "method": "POST",
      "summary": "Recompute a mailbox receipt hash. Not SMTP."
    },
    {
      "op": "import_export",
      "method": "POST",
      "summary": "Client-held mailbox JSON. Hosted does not become an MTA."
    },
    {
      "op": "transport_status",
      "method": "POST",
      "summary": "Public MTA stays NOT IMPLEMENTED. Transport is gated; no public send."
    },
    {
      "op": "doctor",
      "method": "GET",
      "summary": "Richer liveness: transport refuse, mailbox ops, mesh default off. Does not increment download KV."
    },
    {
      "op": "mailbox",
      "method": "POST",
      "summary": "UI alias of mailbox_open."
    },
    {
      "op": "notice",
      "method": "POST",
      "summary": "UI alias of notice_post."
    },
    {
      "op": "inbox",
      "method": "POST",
      "summary": "UI alias of inbox_pull."
    },
    {
      "op": "skill",
      "method": "GET",
      "summary": "Return AZMail skill markdown. Does not increment download KV."
    }
  ],
  "banner": "AZMail (APP 1.0): anonymous MCP mesh + advisory airlock. Reached only via FragGate (POST /v1/fraggate/call { slug: \"azmail\", op }). Not a full internet MTA. Mesh default off. Independent of AZ-OS / Lumen. SMTP / deanonymize / harvest stay stub. Author Aziel Eliab.",
  "limitations": "AZMail (APP 1.0): anonymous MCP mesh + advisory airlock. Reached only via FragGate (POST /v1/fraggate/call { slug: \"azmail\", op }). Not a full internet MTA. Mesh default off. Independent of AZ-OS / Lumen. SMTP / deanonymize / harvest stay stub. Author Aziel Eliab.",
  "aliases": {
    "catalog_card": "https://godlock.uk/runtime/p/azmail",
    "catalog_skill": "https://godlock.uk/runtime/p/azmail/skill",
    "catalog_health": "https://godlock.uk/runtime/p/azmail/health",
    "invoke_prefix": "https://godlock.uk/runtime/p/azmail",
    "update_check": "https://godlock.uk/runtime/v1/update/check?slug=azmail&version=0.1.0",
    "software": "https://godlock.uk/runtime/v1/software",
    "worker_home": "https://azmail-download-tracker.vibelock.workers.dev/",
    "slugs": [
      "azmail",
      "az-mail",
      "app-1.0",
      "app-1"
    ]
  },
  "doi": null,
  "doi_note": "No DOI. Zenodo software deposit needed. Do not invent one.",
  "skill_source": "https://azmail-download-tracker.vibelock.workers.dev/v1/skill (service binding)",
  "kv_increment": false,
  "godlock_runtime": "https://godlock.uk/runtime",
  "library_runtime": "https://www.azielcorpuslibrary.net/runtime",
  "origin_runtime": "https://aziel-runtime.vibelock.workers.dev/",
  "sameAs": [
    "https://godlock.uk/runtime",
    "https://www.azielcorpuslibrary.net/runtime",
    "https://aziel-runtime.vibelock.workers.dev/",
    "https://github.com/AzielEliab/aziel-runtime",
    "https://glama.ai/mcp/servers/AzielEliab/aziel-runtime"
  ],
  "related": [
    "https://godlock.uk/runtime",
    "https://www.azielcorpuslibrary.net/runtime",
    "https://aziel-runtime.vibelock.workers.dev/",
    "https://github.com/AzielEliab/aziel-runtime",
    "https://glama.ai/mcp/servers/AzielEliab/aziel-runtime"
  ]
}