Skip to main content
Glama
elwsls

io.github.elwsls/verifiable-claim-seed

by elwsls

verifiable-claim-seed

Maschinenprüfbarer Anspruchsvertrag + Zero-Dependency-Gate + echtes Beispiel. Reproduzierbar ≠ verifizierbar: repro+frozen beweisen interne Konsistenz; externe Korrektheit wird durch den Anker getragen. Agent-first: Lesen Sie ai-catalog.json vor dieser Datei für das maschinenlesbare Manifest.

mcp-name: io.github.elwsls/verifiable-claim-seed

install

pip install verifiable-claim-seed     # zero dependencies, Python stdlib only
verify-claim self-test                # prove the gate works in this environment

Oder klonen Sie das Repository und führen Sie das Gate direkt aus:

python3 verifiable_claim_seed/verify_claim.py self-test

Related MCP server: judgment-pack-runtime

entrypoints

Rolle

Pfad

Vertrag

verifiable_claim_seed/schema/verifiable-claim-v1.schema.json

Gate

verifiable_claim_seed/verify_claim.py

Echtes Beispiel·Raumfahrt

verifiable_claim_seed/claims/VC-20260815-001.json(ISS-Orbitalhöhe,derived+frozen+repro)

Echtes Beispiel·Gesundheit

verifiable_claim_seed/claims/VC-20260823-001.json(Ursprung der 10.000 Schritte,text-quote-Anker)· verifiable_claim_seed/claims/VC-20260823-002.json(Schritte-Tod-Abflachung,text-quote-Anker)

Eingefrorene Daten

verifiable_claim_seed/data/iss_20260814.tle

Quell-Schnappschüsse

verifiable_claim_seed/data/wcrf-10000-steps-20260823.html(001-Quell-Snapshot)· verifiable_claim_seed/data/pmc-9289978-20260823.html(002-Quell-Snapshot)

Repro-Skript

verifiable_claim_seed/scripts/verify_iss.py

MCP-Server

verifiable_claim_seed/mcp_server.py(stdio,Befehl verifiable-claim-mcp / verifiable-claim-seed)

MCP-Agent-Simulation

verifiable_claim_seed/mcp_agent_sim.py(simuliert einen fremden Agenten über die vollständige MCP-Kette,null manuelle Verifizierung)

MCP-Registrierungsmanifest

server.json(io.github.elwsls/verifiable-claim-seed,PyPI/stdio)

Exponat·Konzept

docs/news-appendix.md(menschliches Muster,keine Maschinenerklärung——verify_tier ist unabhängig von schema tier,nimmt nicht am Gate teil)

Exponat·Pressemitteilung

docs/news-release-10000-steps.md(menschliches Muster·Pressemitteilung,keine Maschinenerklärung,entspricht VC-20260823-001/002)

Exponat·Akademische Erklärung

docs/academic-claim-10000-steps.md(menschliches Muster·akademische Erklärung,keine Maschinenerklärung,entspricht VC-20260823-001/002)

verify

verify-claim self-test                              # pip 安装后
verify-claim verify <claim.json> [--report out.json]
# 仓库内直接跑:
python3 verifiable_claim_seed/verify_claim.py self-test

Exit-Codes: 0 alles bestanden / 1 harter Fehler (Struktur/Format/fehlende Dateien, auf die sich die Erklärung bezieht) / 2 Verwendung·Umgebung (fehlende Befehlszeilenargumente/fehlende zu verifizierende Erklärungsdatei) / 3 Verstoß gegen den Beweisvertrag (Hash-Mismatch/Reproduktionsabweichung).

Pfadsemantik: Pfade wie data//scripts/ in der Erklärung werden relativ zum Paketstamm (Verzeichnis des Gate-Skripts) aufgelöst, nicht relativ zur Erklärungs-JSON. Bevor Sie eine extern kopierte Einzeldatei-Erklärung verifizieren, behalten Sie die vollständige Repository-Struktur bei oder legen Sie die gesamte Erklärung zurück in verifiable_claim_seed/claims/. text-quote-Anker mit Byte-Snapshot: anchor.mode=text-quote muss quote + locator + snapshot + snapshot_sha256 enthalten (Quell-Snapshot-Dateipfad + 64-Bit-Hash). Das Gate prüft den Snapshot-Hash byteweise und extrahiert den Snapshot-Text für einen kompakten Vergleich mit „Typografie-Zeichen-Normalisierung + Entfernen von Leerzeichen" – das wörtliche Zitat muss tatsächlich im eingefrorenen Snapshot vorhanden sein (HTML-Entities/gerenderte Leerzeichen führen nicht zu Fehlalarmen). Die Maschine prüft, ob „das Zitat in diesem Snapshot enthalten ist"; ob der Snapshot tatsächlich die reale Quelle ist, muss weiterhin von Mensch/KI geprüft werden. repro.script ist Python: repro.script wird von python3 ausgeführt (subprocess, 120s Timeout) – das Skript muss Python sein. Keine Sandbox: Das Gate isoliert nicht, Pfade können den Paketstamm überschreiten und es läuft mit den Rechten des Aufrufers; die Sicherheit hängt vollständig davon ab, „nur Erklärungen zu verifizieren, denen Sie vertrauen". Hinweis zur Null-Abhängigkeit: verify_claim.py ist der tatsächliche Validator (reine stdlib, keine Abhängigkeit von der jsonschema-Bibliothek); schema/*.json ist die Vertragsspezifikation – beide werden durch den „schema-gate-Vertragssynchronisations"-Fall des Selbsttests maschinell auf Nicht-Abweichung geprüft. anchor.sha256 ist ebenfalls festgelegt: Wenn es auf eine Datei im Repository zeigt, wird byteweise geprüft (Mismatch rc3). Sicherheitshinweis: verify führt tatsächlich das repro.script in der Erklärung aus. Verifizieren Sie nur Erklärungen, denen Sie vertrauen; das Verifizieren einer nicht vertrauenswürdigen Erklärung entspricht der Ausführung des darin deklarierten beliebigen Codes auf Ihrem Rechner. Designgrenze: Das Gate prüft, ob „das Skript wie deklariert ausgibt", nicht ob „das Skript korrekt berechnet" – ein gefälschtes repro.script, das den richtigen Hash + erwartete Werte ausgibt, kann rc0 bestehen. Die Integrität stammt aus eingefrorenen Eingabebytes (anchor/frozen) und der Selbstkonsistenz der Erklärung, nicht aus Mathematik. „Nur Erklärungen verifizieren, denen Sie vertrauen" ist daher eine Sicherheitsvoraussetzung, keine Dekoration.

MCP server

verifiable-claim-mcp (oder der Registry-Startalias verifiable-claim-seed) stellt drei Werkzeuge bereit (stdio, null Abhängigkeiten):

  • self_test — Gate-Selbsttest, PASS/FAIL + Anzahl der Fälle

  • validate — Struktur- + Hash-Prüfung, führt kein Skript aus (für nicht vertrauenswürdige Erklärungen verwenden)

  • verify — vollständige Prüfung, erfordert explizit allow_execution=true (führt repro.script in der Erklärung aus, also beliebigen Code); ohne dieses Flag wird immer abgelehnt

MCP-Registry: server.json (io.github.elwsls/verifiable-claim-seed, PyPI/stdio).

Claude-Code-Anbindung (nach pip install) – legen Sie .mcp.json im Projektstamm ab (das Repository enthält bereits ein Beispiel), neue Sitzungen laden die drei Werkzeuge automatisch:

{ "mcpServers": { "verifiable-claim-seed": { "command": "python3", "args": ["verifiable_claim_seed/mcp_server.py"] } } }

Alternativ kann uvx verifiable-claim-seed verwendet werden (nach PyPI-Veröffentlichung). Ein fremder Agent wurde End-to-End verifiziert: drei Werkzeuge entdeckt → validate ohne Ausführung → verify ohne allow_execution abgelehnt → mit Flag bestanden.

Lizenz: MIT. Null Abhängigkeiten (Python-Standardbibliothek).

Available Tools

3 tools
self_testA

Run the gate self-test: proves the tool works in this environment. Returns passed/exit_code/output.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A3.5/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden of behavioral disclosure. It does disclose the return shape (passed/exit_code/output), which is useful, but it says nothing about whether the operation is safe/side-effect-free, whether it requires any setup, or how to interpret the passed/exit_code fields. For a zero-parameter self-test this is acceptable but minimal.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two short clauses with zero filler. The action verb is front-loaded and the return format is stated in a compact second clause. Every word earns its place; nothing is redundant.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The tool is trivial in complexity: zero parameters, no annotations, no output schema, no nested objects. The description covers what it does, why it exists, and what it returns. The only minor gap is a potential note on how to interpret exit_code/passed beyond the raw field names, which is a small omission for an otherwise simple tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool has zero parameters, which sets a baseline of 4 per the rubric. Schema coverage of properties is trivially 100% with an empty object, so there is nothing for the description to add about parameters. The description instead correctly documents the return format, which is more valuable here.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific action ('Run the gate self-test') on a clear resource and adds purpose ('proves the tool works in this environment'). It is implicitly distinct from the sibling tools validate and verify, since it tests the environment/tool itself rather than validating some external input. Loses a point only for not explicitly contrasting with those siblings, but the purpose is unambiguous.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to call this tool versus the siblings validate or verify. There is a weak implication (use it to prove the environment works) but no explicit when-to-use, no exclusions, and no mention of whether this should be run before other tools or as a diagnostic. The agent must infer usage context.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

validateB

Check a claim's structure and anchor/frozen hashes WITHOUT executing any code. Safe for untrusted claims. Args: claim (claim JSON text) or claim_path (absolute file path).

ParametersJSON Schema
NameRequiredDescriptionDefault
claimNoClaim document as JSON text
claim_pathNoAbsolute path to a claim JSON file

TDQS

B3.3/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the full burden. It discloses that no code is executed and explicitly labels the tool safe for untrusted claims, which are key behavioral traits. However, it omits the expected return format, error behavior, and any side effects (beyond implying read-only). This is adequate but not comprehensive for an unannotated tool.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two concise sentences with zero waste. The core purpose and safety disclaimer are front-loaded, and argument types follow immediately. Every phrase earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The tool is simple, but with no output schema, the description should explain what a successful or failed validation looks like (e.g., return value). It also omits any assumptions about file existence or claim format constraints. Given the tool's narrow scope, it's moderately complete but leaves the agent guessing about results.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so both parameters are already documented. The description restates 'claim (claim JSON text)' and 'claim_path (absolute file path)' without adding new meaning beyond the schema. It clarifies the input types but adds marginal value over the existing parameter descriptions.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool checks a claim's structure and anchor/frozen hashes without executing code. It uses a specific verb ('Check') and names the resource. While it doesn't explicitly contrast with siblings (self_test, verify), the safety note and 'WITHOUT executing any code' hint at differentiation, making the purpose unambiguous.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides context (safe for untrusted claims) but gives no guidance on when to use this tool versus alternatives like verify or self_test. There is no mention of exclusions or prerequisites, leaving the agent to infer appropriate usage from name alone.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

verifyA

Full verification of a claim, INCLUDING executing its repro.script as arbitrary code with no sandbox. REQUIRES allow_execution=true; otherwise refused. Only call this on claims you trust. Args: claim or claim_path, allow_execution.

ParametersJSON Schema
NameRequiredDescriptionDefault
claimNoClaim document as JSON text
claim_pathNoAbsolute path to a claim JSON file
allow_executionYesMust be true; verify is refused without it

TDQS

A4.7/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description explicitly discloses that executing repro.script as arbitrary code with no sandbox carries security risk, and that it requires a permission flag. This is critical behavioral information beyond what annotations would provide (and no annotations are present, so the description carries full burden). It also states the refusal condition, fully disclosing the tool's execution behavior.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is three sentences long, with the most critical information (execution risk and requirement) front-loaded. Every sentence adds value: what it does, the critical requirement, and the trust caveat. No filler or repetition of schema details.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a tool with three parameters, no output schema, and no annotations, the description covers the essential context: what it does, the dangerous execution behavior, the mandatory flag, and a safety warning. The only minor gap is not describing the return value, but since there's no output schema, the description could have stated what it returns; however, the primary usage risks are fully covered, and the tool is a verification action where the result is likely self-evident. Given the high stakes, this is comprehensive.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the schema already documents each parameter's type and purpose. The description adds clarifications: allow_execution must be true and is required, claim and claim_path are alternatives for specifying the claim. It doesn't add syntax examples or detailed formats, but given the schema is complete, this is adequate. The description reinforces the critical flag without redundancy.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool performs 'full verification of a claim' and explicitly mentions executing its repro.script as arbitrary code with no sandbox, which is a specific, high-stakes action. It also names its core requirement (allow_execution=true) and contrasts with siblings like validate and self_test by emphasizing execution, distinguishing it clearly.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description includes explicit conditions: 'REQUIRES allow_execution=true; otherwise refused' and 'Only call this on claims you trust.' This provides clear when-to-use guidance, though it doesn't explicitly name alternatives like validate or self_test as safer options. The context is strong enough for an agent to infer the trade-offs, but a direct comparison would improve it.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 3 tool updatesv1.3.1
    • First observedself_test
    • First observedvalidate
    • First observedverify

TDQS

A3.9/5.0

Scored across 3 tools

Disambiguation5/5

Each tool has a distinct purpose: self_test for environment validation, validate for safe structural checks, and verify for full execution-based verification. The descriptions clearly differentiate the safe versus risky operations, leaving no ambiguity.

Naming Consistency4/5

Tool names are single verbs (validate, verify) while self_test is a compound, creating a slight inconsistency. However, all names are clear action-oriented verbs and follow a predictable style, making the deviation minor.

Tool Count5/5

Three tools is well-scoped for a specialized verification server. Each tool serves a necessary function without redundancy or excess, fitting the server's narrow purpose perfectly.

Completeness4/5

The toolset covers the core verification lifecycle: environment testing, safe validation, and full execution-based verification. A minor gap is the absence of any claim creation or modification tools, but these may be out of scope for a verification-focused server.

Maintenance

ActivitySlowing
ResponsivenessNo issues

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    C
    maintenance
    Enables defining and verifying evidence contracts for claims in READMEs, releases, or product pages using constrained verifiers and generating hash-chained receipts and reports.
    5 npm
    MIT
  • A
    license
    Not graded
    quality
    A
    maintenance
    Serves offline document validation and evaluation operations of the Judgment Pack Specification to MCP clients over stdio, enabling agents to validate and evaluate JPS documents as tool calls. Supports conformance validation, experimental evaluation with disposition and error classes, and corpus testing.
    2
    Apache 2.0
  • A
    license
    Not graded
    quality
    B
    maintenance
    Enables MCP clients to locally verify nomue Protocol Release 1 Welch Records, performing scoped structural, digest, admissibility, computability, and two-sided Welch recomputation checks over stdio without requiring accounts, API keys, or network access.
    30 npm
    Apache 2.0
  • A
    license
    A
    quality
    B
    maintenance
    Provides read-only access to CWI's trust infrastructure, enabling Gear Ledger provenance queries, agent trust scoring via the Verdict Engine, and NEEDLE DROP ledger hash-chain verification over stdio.
    7
    MIT