ZTL Judge

Official registry AI and agents

Zero-trust logic judge: your AI writes a claim as a ZFL table, the ZTL core judges it.

Install

Add this to your client's MCP configuration (Claude Desktop: claude_desktop_config.json; Cursor: .cursor/mcp.json; VS Code and others use the same "mcpServers" shape).

Remote (streamable-http)
Claude Code
claude mcp add --transport http ztl-judge 'https://api.vitalyreznik.com/mcp'
JSON configuration (Claude Desktop, Cursor, VS Code)
{
    "mcpServers": {
        "ztl-judge": {
            "type": "http",
            "url": "https://api.vitalyreznik.com/mcp"
        }
    }
}

Documentation

From the project's README on GitHub, refreshed weekly. Links open on GitHub.

Contents
  1. ZTLStudio
  2. Run
  3. What you hand it: one table, no genre to declare
  4. The workflow
  5. What the core reports
  6. Providers
  7. Related
  8. AI disclosure
  9. License

ZTLStudio

The AI translates; the measured core judges — truth is never granted on credit, not even to the translator.

A local studio for judging claims and paradoxes. You state one in natural language (any language); an LLM only translates it into ZFL, the formal table language — it never judges. A deterministic, measured ZTL core does the judging: verdicts with warranties, quarantine passports for self-referential systems, and a deterministic back-reading that verbalizes exactly what the core read from your table.

The pipeline embodies the logic it serves: the LLM's output is an unverified input (the mark Z), and the core is the customs house — truth is never granted on credit, not even to the translator.

human ──meta-chat──► the AI fills a ZFL table (rows + a claim), you sign off
                         │
                         ▼ validator ──► the deterministic core judges
                         ▼ back-reading (no AI — the second auditor)
                         ▼
                   verdict · warranty · passport · stipulations

Run

python3 ztlstudio.py        # → http://localhost:8190

Python stdlib only; the ZTL core is vendored in ztlcore/, so a clone is self-contained (no submodules, no dependencies). The AI is optional: with no key the studio runs in pro mode — fill the ZFL table by hand. To enable AI translation, open ⚙ Model, pick a provider + model + key, or set the env var, or drop a key into a local .<provider>_key file (all gitignored — no keys ship).

What you hand it: one table, no genre to declare

ZFL v2 is a single table of rows plus a claim. Each row states a fact, its status (T verified / F refuted / Z unverified — the zero-trust default), its ground, and — importantly — what it means in words (the polarity auditor: it lets the back-reading catch an encoding that says the opposite of what you intended). You never declare whether this is a "statement" or a "paradox": the genre is computed, and whichever instruments apply fire — a verdict + warranty for a claim, a passport for a self-referential system.

The studio ships 41 worked examples — open one to see the exact shape of the table, then edit it. The back-reading verbalizes what the core actually read, so your translation is audited by a component that cannot hallucinate.

The workflow

  1. Meta-chat — describe the claim in your language; the AI fills the table's rows and asks only when formalization is genuinely blocked. It knows its boundary: arithmetic, quantities and numeric wordplay get an honest "does not formalize into propositional ZTL", never an invented encoding.
  2. The table — a grid of rows, the grounds bar, and the claim line, all hand-editable (pros skip the chat entirely). Run validates and judges; validator issues are machine-readable and can be fed back to the AI to repair.
  3. The report — the core's verdict, its warranty grade (hereditary / sound / until-verification), the passport of unverified inputs, and the completion table — followed by the deterministic back-reading and an optional AI explanation that retells the verdict and is forbidden to re-judge (labeled unverified by definition: the pipeline applies its own logic to itself).

What the core reports

  • Claims — the verdict (T/F — verdicts are always two-valued; Z is a mark on an input, never a verdict), the warranty grade, the passport of unverified inputs, and the completion table showing how the verdict behaves under every reading of the unverified rows.
  • Self-referential systems — the grounded part (identical in every fixed point), the quarantine set, and a passport per component: PARADOX (no classical solution — permanent refusal, with the oscillation period), UNDERDETERMINED (refusal until stipulation), INPUT (until verification), DOWNSTREAM (inherited).

Providers

Keys stay on this machine, read in order: the Settings field, the env var (GROQ_API_KEY, ANTHROPIC_API_KEY, …), then a local .<provider>_key file. Supported: Groq, Anthropic (Claude), OpenAI, OpenRouter, DeepSeek, Gemini, xAI, NVIDIA. A stronger model formalizes cleaner; the core judges the same regardless of who translated.

  • ZTL — the logic itself: the kernel, the papers, and the ZFL language.
  • introspect — the same zero-trust core applied to code: a taint analyzer for seven languages.

AI disclosure

Built by Claude (Anthropic) as architect and implementer, with Vitaly Reznik as human curator and decision-maker, under a strict honesty discipline: mark boundaries honestly, measure — don't guess, and never claim more than was verified.

License

Dual-licensed under MIT and Apache-2.0 (see LICENSE-MIT, LICENSE-APACHE).

Frequently asked questions

What is ZTL Judge?

Zero-trust logic judge: your AI writes a claim as a ZFL table, the ZTL core judges it.

How do I install ZTL Judge?

It runs as a remote server. In Claude Code: claude mcp add --transport http ztl-judge 'https://api.vitalyreznik.com/mcp'. For other clients, paste the JSON configuration from this page into their MCP settings.

Does ZTL Judge need an API key?

Its registry entry lists no required key or secret. Some features may still need an account with the service it connects to.

Is ZTL Judge open source?

Yes. Its code is on GitHub under the Apache-2.0 license.

Who maintains ZTL Judge?

It is published by inventor1975. AI.tn lists it but does not maintain or endorse it.

From the official MCP Registry. Listing is not an endorsement: review a server's code and permissions before giving it access to your data.