Prototyp · Vorschau: alle Server aus der offiziellen Registry, alle 30 Minuten synchronisiert. Bewertungen und Benutzerkonten folgen in einem späteren Schritt.
PopNx MCPMCP-Server für alle, die KI nutzen · in einfachen Worten erklärt

POPCORN Witness Verifier

von violetclaireVersion 2.0.1i★ –iLäuft in der Cloud
Name in der Registryio.github.violetclaire/popcorn-tain-verifier

Installieren

Überblick

Beschreibung vom Entwickler (englisches Original)

MCP server for verifying receipts: POPCORN-WITNESS/2.0 signature, digest, and time. Free, read only.

Die drei Säulen von PopNx MCP

Diese drei werden nie zu einer Punktzahl zusammengefasst: Meinungen, Messungen und Beliebtheit sind verschiedene Dinge.

Was du damit machen kannst

Für diesen Server haben wir noch keine Zusammenfassung in einfacher Sprache geschrieben. Unten stehen die Fakten, die wir aus der Registry gelesen haben.

  • Verbindung: Läuft in der Cloud
  • Transport: Streamable HTTP
  • Kategorie: Sonstiges

Installation

Wähle die KI-App, die du nutzt, und kopiere die Einstellungen.

Bevor du installierst

Du brauchst

Welche App nutzt du?

Wähle oben deine App. Wir merken sie uns, damit der Button beim nächsten Mal „In … installieren“ anzeigt.

Funktioniert in Claude im Web, auf dem Desktop und auf dem Handy:

  1. Öffne Settings → Connectors
  2. Tippe auf Add custom connector
  3. Füge die Adresse unten ein und tippe auf Add
  4. Wenn eine Anmeldung verlangt wird, melde dich beim Dienst des Entwicklers an
SettingsConnectors1+ Add2https://…3
https://popcorn-tain-verify-mcp-v2.violetherod.workers.dev/mcp

Führe das in deinem Terminal aus

claude mcp add --transport http popcorn-tain-verifier https://popcorn-tain-verify-mcp-v2.violetherod.workers.dev/mcp

In Cursor öffnen

Oder kopier die Einstellungen selbst

In .cursor/mcp.json in deinem Projekt oder in ~/.cursor/mcp.json einfügen

{
  "mcpServers": {
    "popcorn-tain-verifier": {
      "url": "https://popcorn-tain-verify-mcp-v2.violetherod.workers.dev/mcp"
    }
  }
}

Dein Browser fragt, ob er die App öffnen darf, dann zeigt die App die Einstellungen und bittet dich um Bestätigung. Schlüsselwerte bleiben leer, damit du sie selbst einträgst.

In VS Code öffnen

Oder kopier die Einstellungen selbst

In .vscode/mcp.json in deinem Projekt einfügen

{
  "servers": {
    "popcorn-tain-verifier": {
      "type": "http",
      "url": "https://popcorn-tain-verify-mcp-v2.violetherod.workers.dev/mcp"
    }
  }
}

Dein Browser fragt, ob er die App öffnen darf, dann zeigt die App die Einstellungen und bittet dich um Bestätigung. Schlüsselwerte bleiben leer, damit du sie selbst einträgst.

ChatGPT verbindet sich nur mit Servern im Internet:

  1. Öffne ChatGPT im Web → Settings → Connectors (Apps)
  2. Tippe auf Create oder Add (bei manchen Tarifen musst du zuerst Developer mode unter Advanced einschalten)
  3. Füge die Adresse unten ein, gib ihr einen Namen und speichere
  4. Wenn eine Anmeldung verlangt wird, melde dich beim Dienst des Entwicklers an
SettingsConnectors1+ Create2https://…3
https://popcorn-tain-verify-mcp-v2.violetherod.workers.dev/mcp

Menünamen können sich je nach Tarif und mit der Zeit leicht unterscheiden.

Deine Auswahl bleibt in einem Cookie auf diesem Gerät; kein Konto nötig.

Diese Einstellungen werden aus dem Registry-Eintrag des Entwicklers erzeugt. Wenn in der README etwas anderes steht, folge der README.

Was er kann

Tool-Namen und -Beschreibungen genau so, wie der Server sie am 7. Nov. 2026 gemeldet hat. Geschrieben hat sie der Entwickler, nicht wir; wir zeigen sie als reinen Text.

  • popcorn_verify_v2

    Verify a POPCORN-WITNESS/2.0 receipt against a caller-computed SHA-256 payload digest, nonce, and independently trusted issuer keys. Send only the digest, never private payload bytes. Caller-supplied keys do not establish issuer identity. This does not prove on-chain settlement,

Basischecksi

Wir prüfen Informationen, die jeder sehen kann; den Code haben wir nicht gelesen. Checks, die nicht zutreffen, werden nicht mitgezählt. · Geprüft am 8. Nov. 2026

  • ✓ Bestanden

    Entwickler passt zum Repo

    Der Registry-Name wurde mit dem GitHub-Konto violetclaire bestätigt, dem das Repo gehört

  • … Noch nicht geprüft

    Wird noch gepflegt

    Dieses Repo haben wir noch nicht von GitHub gelesen

  • … Noch nicht geprüft

    Hat eine Lizenz

    Dieses Repo haben wir noch nicht von GitHub gelesen

  • ✓ Bestanden

    Endpunkt antwortet

    Antwort in 226 ms (HTTP 200)

  • – Nicht zutreffend

    Anmeldung mit OAuth

    Keine Anmeldung nötig

  • ✓ Bestanden

    Keine versteckten Anweisungen in Tool-Beschreibungen

    Wir haben 1 Tool-Beschreibungen gelesen und keine versteckten Anweisungen an die KI gefunden

Im Vergleich mit anderen in Sonstigesi

  • Mehr Sterne als 0 % der anderen 18584 Server in dieser Kategorie
  • Neuer in der Registry veröffentlicht als 67 % der anderen 18584 Server in dieser Kategorie
  • Basischecks gleich gut wie oder besser als bei 100 % der anderen 18584 Server in dieser Kategorie

Verglichen mit allen aktiven Servern dieser Kategorie in der Registry. Sterne zählen nur, wenn dem Herausgeber das Repo gehört.

Häufige Fragen

Ist POPCORN Witness Verifier sicher?

Er hat 3 von 3 zutreffenden Basischecks bestanden. Den Code haben wir nicht gelesen. Bevor du einen Schlüssel oder Token hinzufügst, sieh nach, welche Zugriffe der Server verlangt, und nutze einen Schlüssel, der nur die Berechtigungen hat, die du brauchst.

Welche Schlüssel oder Codes braucht er?

Die Registry nennt keinen erforderlichen Schlüssel, manche Server bitten dich aber bei der ersten Nutzung, dich anzumelden.

Läuft er auf meinem Computer oder in der Cloud?

Er läuft in der Cloud des Entwicklers. Du verbindest dich übers Internet, ohne etwas zu installieren, aber was du sendest, läuft über die Server des Entwicklers.

Wird er noch gepflegt?

Das GitHub-Repo wurde zuletzt – geändert, und die neueste Version (2.0.1) kam vor 21 Tagen in die Registry.

Welche Apps können ihn nutzen?

Apps, die MCP unterstützen, etwa Claude Desktop, Claude Code, Cursor und VS Code. Er verbindet sich per URL, also funktionieren auch Apps, die Remote-MCP-Server akzeptieren, zum Beispiel ChatGPT im Entwicklermodus.

Was kann ich stattdessen nutzen?

In derselben Kategorie: Spec Driven Development, Remote Desktop Commander, aamio rendezvous

Alternativen

Server derselben Kategorie von anderen Entwicklern, sortiert nach Sternen.

So liest du eine Karte:↓ Downloads pro Wochei★ GitHub-SterneiDrei Säulen: Bewertungen · Checks · NutzungiAktualisiert = neueste Version in der Registry veröffentlichti

Spec Driven Development

MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.

von formulahendryAm Anfang↓ 66/Wo.★ 440Aktualisiert vor 14 Monaten

Läuft auf deinem Computer

Remote Desktop Commander

Remote Desktop Commander: use files, terminal and processes on your own computers from any AI app.

von desktop-commanderWachsend★ 211Aktualisiert vor 3 Tagen

Läuft in der Cloud✓ desktopcommander.app

aamio rendezvous

Meet an agent you have not met, exchange messages that expire, and prove it happened. No account.

von aamio.atAm AnfangAktualisiert heute

Läuft in der Cloud✓ aamio.at

README vom Entwickler

README öffnen

Unverändert aus dem Repo des Entwicklers übernommen. PopNx MCP hat den Inhalt weder geprüft noch empfiehlt es ihn. HTML, Bilder und Skripte wurden entfernt. Links führen von dieser Website weg.

Briarwood AI / POPCORN MCP server

For RFC 3161, FreeTSA, OpenTimestamps, a trusted timestamp, proof of existence, authorization expiry, a signed execution receipt, or independent verification, start with Proving an action happened before an authorization expired.

Read-only time and task evidence from Briarwood AI, usable across independent agents. POPCORN supplies signed time and digest checkpoints at https://767-2676.com.

Try it first, without a wallet

At the hosted HTTP MCP endpoint, call popcorn_sample with {}. This free check verifies a real historical TAIN 2.0 receipt dated October 14, 2026: genuine.accepted: true, changed_digest_control.accepted: false, and passed: true. It requires no wallet and returns payment_sent: false, current_time_established: false, and authorization_granted: false. It does not independently establish issuer-key trust or check on-chain settlement.

The bundled npm sample below is a separate offline evaluation of historical pre-TAIN receipts.

Save sample.mjs, read it, then run node sample.mjs with Node.js 20 or newer. This standalone sample includes an exact eight-line schedule with who, its SHA-256 digest, and a real signed receipt. It runs offline and rejects a one-byte change to who.

The plain-text contract and full packet can be retained locally. The receipt is historical evidence. Fetch new time for a new decision.

Run the current source from this public repository:

git clone https://github.com/violetclaire/popcorn-temporal-anchor.git

cd popcorn-temporal-anchor/packages/mcp npm ci npm run build node dist/packages/mcp/src/index.js --sample

Run this release's bundled offline sample with:

npx -y @violetclaire/popcorn-mcp@0.1.5 --sample

The evaluation checks the eight-line task schedule and two legacy, historically settled receipts with the maintained verifier. It returns valid signatures, STOP for a checkpoint after its task window, TIME_CHECK_PASSED for one inside its window, and a rejected one-byte change for each. Every result retains authorization_granted: false. The sample needs no account, wallet, or original task data. npm may download the package; the verification itself runs entirely offline.

With the npm package or this source checkout running as a local stdio MCP server, call popcorn_sample with {} for this bundled historical result. The hosted HTTP MCP endpoint runs the separate TAIN 2.0 sample described above. The bundled sample's public source links let another developer repeat the check. Its historical keys are for sample reproduction. A real task requires independently trusted issuer keys; an old receipt is not a fresh clock reading. This bundled offline sample tests historical pre-TAIN receipts only. Passing it does not test the currently deployed TAIN 2.0 service or establish integration readiness.

Use it for a real task

NeedToolWhat stays local
A fresh, signed time reference for a deadline or expirypopcorn_timeThe task and decision
Evidence of one exact task version at a stated timepopcorn_hash, then popcorn_witnessRaw task bytes; only the digest, nonce, and optional predecessor digest go to the witness
Check evidence received from another agentpopcorn_verifyThe receipt, trusted keys, payload, and verification
Check a TAIN 2.0 witness receiptpopcorn_verify_v2 or local CLI verify-v2Exact expected bytes and independently trusted keys

These uses apply across agent providers and industries. Share a receipt and the relevant exact bytes through your existing authorized handoff, then let the receiving system verify them. No account at the originating agent provider is required for offline verification. Each participant decides what to do.

This source checkout exposes five free tools and two x402 tools. The x402 tools are dry run by default. They cannot spend unless the individual tool call contains approve_payment: true. A wallet key is read only from EVM_PRIVATE_KEY in the server process environment. It is never accepted as a tool parameter.

This is a clock and a seal. It does not refund, authorize, or hold funds.

Run with npx

Install and run the published package with:

npx -y @violetclaire/popcorn-mcp

Node.js 20 or newer is required.

Programmatic core

The supported @violetclaire/popcorn-mcp/core export exposes the same local hashing, offline verification, and paid client functions used by the stdio server:

import {

popcornHash, popcornVerifyWitnessChain, popcornWitness, } from "@violetclaire/popcorn-mcp/core";

popcornVerifyWitnessChain accepts receipts in chronological order, starting with a receipt whose previous_attestation_digest is null. It verifies each receipt and signature once, checks each link against the prior receipt's exact signed-payload bytes, and returns the verified entries plus the head digest. It is free, local, and sends no network request.

Tools

popcorn_sample

Input: {}. The result depends on which server you connect to:

  • Hosted HTTP MCP at `https://767-2676.com/mcp`: verifies the historical October 14, 2026 TAIN 2.0 receipt and rejects the changed-digest control. It sends no payment and establishes neither current time nor authorization.
  • Local stdio MCP from npm 0.1.5 or this source checkout: checks the bundled eight-line schedule, two historical pre-TAIN receipt examples, and their tamper controls. It makes no network request or payment. These historical receipts are not a TAIN 2.0 conformance test.
popcorn_verify_v2

Verifies a POPCORN-WITNESS/2.0 signed envelope, required TAIN fields, exact expected payload digest and nonce, and the signed time interval. Both this local MCP tool and popcorn-mcp verify-v2 call the same verifier. The fixed positive and negative vectors under verify/test-vectors/interface-parity-v2/ run through both interfaces in npm run check and fail the check on any result or reason mismatch.

Provide the full response, expected SHA-256 payload digest as canonical unpadded base64url, the expected nonce, and issuer keys obtained independently of the receipt. The local CLI and stdio MCP also accept exact payload bytes as expected_payload_base64url instead of a digest; the remote HTTP MCP accepts only a digest, including for predecessor receipts, so private payload bytes need not leave the caller. Supply previous_receipt with its own response, JWKS, and verification inputs for a chained receipt, up to eight links. Caller-supplied keys alone do not establish issuer identity; this verifier does not prove on-chain settlement or grant authority.

popcorn_catalog

Fetches the live service catalog, published JWKS, and public schemas. It is free and sends no payment.

Input:

{}
popcorn_hash

Hashes exact bytes locally and returns the SHA-256 digest plus byte length. It is free, local, and sends no network request.

Provide exactly one input form:

{ "payload_text": "exact UTF-8 text" }
{ "payload_base64url": "ZXhhY3QgYnl0ZXM" }
popcorn_verify

Verifies a POPCORN temporal or witness receipt locally against caller-supplied keys and expected values. It is free, local, and sends no payment.

For a witness receipt:

{

"receipt_type": "witness", "response": { "witness_receipt": {}, "witness_attestation": {}, "payment_status": "settled" }, "jwks": { "keys": [] }, "verification": { "expected_nonce": "<43-character-base64url>", "expected_payload_base64url": " ", "expected_node_id": "767-2676.com", "max_clock_accuracy_radius_ms": 10000 } }

Provide exactly one of expected_payload_text, expected_payload_base64url, or expected_payload_digest.

When previous_attestation_digest is non-null, add this recursively under verification:

{

"previous_receipt": { "response": { "witness_receipt": {}, "witness_attestation": {}, "payment_status": "settled" }, "jwks": { "keys": [] }, "verification": { "expected_nonce": " ", "expected_payload_digest": " " } } }

The verifier first verifies the predecessor. It then hashes the exact bytes obtained by base64url-decoding the predecessor compact JWS payload segment and compares that digest with previous_attestation_digest.

For a temporal receipt, verification.observation carries the monotonic timer values required by the existing offline verifier. An optional verification.policy can carry execution_window_utc.

popcorn_time

Requests GET /v1/time. The default call is a free dry run:

{

"freshness_ms": 30000, "approve_payment": false }

It returns the HTTP 402 terms and the exact request that would be paid. To authorize one payment, the caller must set approve_payment to true in that specific call.

popcorn_witness

Requests POST /v2/receipt. POST /v1/receipt remains available to existing integrations. The default call is a free dry run:

{

"digest": "<43-character-sha256-base64url>", "nonce": "<43-character-random-base64url>", "previous_attestation_digest": null, "approve_payment": false }

The optional predecessor digest is SHA-256 over the exact decoded signed payload bytes of the predecessor compact JWS. It is not a digest of the full compact JWS string.

Both paid tools lock payment to exactly $0.001 USDC on Base, the published USDC contract, and POPCORN's published payTo. A changed challenge fails closed. A successful paid result includes the settlement transaction hash and server_processing_duration_ms.

Wallet environment

Paid calls require:

EVM_PRIVATE_KEY=0x<dedicated-32-byte-Base-payer-key>

Use a dedicated payer with a small balance. Do not commit this value. The free tools and all dry runs work without it.

Claude Desktop

Add this server to the mcpServers object in Claude Desktop's configuration:

{

"mcpServers": { "popcorn": { "command": "npx", "args": ["-y", "@violetclaire/popcorn-mcp"] } } }

That configuration supports all free tools and dry runs. For paid calls, launch Claude Desktop from an environment containing EVM_PRIVATE_KEY, or add an env object to its private local configuration. Never paste the key into a tool call or chat.

Claude Code

claude mcp add --transport stdio popcorn -- npx -y @violetclaire/popcorn-mcp

Set EVM_PRIVATE_KEY in the environment that launches Claude Code only when paid calls are needed. Every paid call still requires approve_payment: true.

Local development

From packages/mcp:

npm install

npm run check npm start

The package build includes the repository's existing TypeScript verifier in the published files. Runtime dependencies remain normal npm dependencies.

PopNx fragen