Vigil — an outside witness for AI agents

com.vigilnotaryPublished by vigilnotary.comOfficial publisherv0.1.0Updated Oct 25, 2026

Agent leases, signed receipts, watchdogs, and optional paid source-verification evidence.

VerifiedStreamable HTTPWeb executableDeveloper ToolsSecurity & Monitoring

Overview

AI-generated overview

A remote notary service that lets an assistant notarize hashes, verify signed receipts, manage agent leases, arm watchdogs and store encrypted journal blobs.

What you can do
Register a key and check service info, pricing and usage limits, then revoke the key when done, which also drops leases and watchdogs and loses private journal access. Notarize a sha256 digest and fetch, verify or audit receipts and the hash chain against a pinned Ed25519 key. Grant, renew, revoke, list and verify short-lived signed leases that a customer gateway checks offline. Arm, heartbeat, inspect and delete a dead-man watchdog that posts a signed absence payload to an https webhook. Store, read, list and delete opaque journal blobs by slug, and submit chain-head anchors to OpenTimestamps. Run paid source-local verification that returns evidence and a signed receipt.
When to use it
Use it when an assistant or agent workflow needs tamper-evident proof that a piece of work existed at a time, an offline-verifiable authorization lease for a sensitive action, a dead-man switch, or a small encrypted scratch store. It suits audit and accountability setups more than everyday tasks.
Requirements
Remote streamable HTTP endpoint; no local package. Most tools need a bearer key created with vigil_register, which is shown only once. Verification tools require an independently pinned Ed25519 public key supplied from outside the receipt. Watchdogs need an https webhook. Paid verification requires USDC payment.
Before you install
The bearer key from vigil_register grants full account control and should not be placed in a model transcript. Notarizing irreversibly publishes the digest. Journal writes overwrite existing slugs with no version history, and journal deletion, watchdog deletion and key revocation are irreversible; key revocation also revokes leases and deletes watchdogs but does not cancel a Stripe subscription. Lease revocation is not instantaneous and does not undo admitted actions. Paid verification spends US

Installation

In SourceWeft

  1. Open Vigil — an outside witness for AI agents in the dashboard and add it to a workspace.
  2. Enable the server for the chats that should use its tools.

Web executable via Streamable HTTP. Remote servers run from the web runtime once configured in a workspace.

Use with an agent

Paste this prompt into Claude Code, Codex, Cursor or another agent — or into SourceWeft chat. The agent reads this server's install guide, shows you its publisher, endpoint and sign-in, and adds it to your client once you agree. Keys never go into a command.

Read https://sourceweft.com/mcp/com.vigilnotary%2Fvigil/install.md and connect the MCP server it describes to my client. Before changing any config, show me its publisher, endpoint and sign-in method and wait for my OK. Never put an API key in a command or in a file I would commit; ask me where it should come from.

Read the install guide the agent follows

Other MCP clients

Add this to your client's mcpServers config.

{
  "mcpServers": {
    "vigil-an-outside-witness-for-ai-agents": {
      "type": "http",
      "url": "https://vigilnotary.com/mcp"
    }
  }
}

Tools

26

vigil_info

Service description, the Ed25519 signing pubkey to verify receipts against, current chain head, and free-tier limits. No key required.

Takes no parameters.

vigil_register

Create a key. Returns a bearer key shown ONCE — store it; it is your only identity. No email, no account. Starts on the free tier. Creates a persistent identity. The returned key grants full account control; provision it in a trusted client, not a model transcript.

Parametershandlerequired

vigil_pricing

The plans and per-tier limits (free, dev, pro). No key required.

Takes no parameters.

vigil_usage

Your current tier, its limits, and how much you've used today. Requires your key.

Parametersvigil_key

vigil_notarize

Notarize work: POST the sha256 (64 hex chars) of anything and get back an Ed25519-signed, timestamped, hash-chained, serial-numbered receipt. Chain position orders submitted records; the timestamp is a signed assertion of Vigil's clock. Free tier: 10/day. Irreversibly publishes the digest, label and account handle in the public chain; no deletion tool exists. It proves signed-data integrity, not that an action happened or a claim is true.

Parameterslabelvigil_keysubject_sha256required

vigil_get_receipt

Fetch a receipt by serial number. Public — anyone can read any receipt.

Parametersserialrequired

vigil_verify_receipt

Verify a receipt's hash and Ed25519 signature against a mandatory, independently pinned Ed25519 public key. The key must not come from the receipt being checked. Returns valid=false for tampering, forgery, a wrong signer, or malformed input. Read-only and local to Vigil.

Parametersreceiptrequiredpubkey_hexrequired

vigil_chain

Read a range of receipts to audit chain continuity. Max 1000 per call.

Parametersto_serialfrom_serial

vigil_set_watchdog

Arm a dead-man switch. Register an interval and an https webhook; then call vigil_heartbeat before each interval elapses. Miss one and Vigil attempts a signed 'absence' payload to your webhook, retrying failed delivery. Free tier: 1 watchdog. Overwrites an existing watchdog and resets its timer and delivery state. A missed heartbeat sends the supplied message to an external HTTPS recipient; failed delivery is capped at five attempts per armed interval.

Parametersnamerequiredmessagevigil_keyinterval_srequiredwebhook_urlrequired

vigil_heartbeat

'Still alive.' Reset a watchdog's timer. Call this at least once per interval. Resets the deadline and delivery state, potentially suppressing an overdue alert or rearming delivery.

Parametersnamerequiredvigil_key

vigil_watchdog_status

Read a watchdog's state: interval, last beat, whether it is overdue, fired, or exhausted.

Parametersnamerequiredvigil_key

vigil_delete_watchdog

Remove a watchdog. Destructive: deletes its configuration and stops future alerts. No undo or restoration of the previous timer is provided.

Parametersnamerequiredvigil_key

vigil_grant_lease

Grant a short-lived, Ed25519-signed LEASE authorizing an agent to perform an action until it expires. A customer-run gateway verifies the lease offline (fail-closed) before letting the action through. This is the guard on a money/data-moving action. Free tier: 1 active lease (guarded agent). Security-sensitive: grants authority. Keep this account key outside the controlled agent. A signed lim string is enforced only by the customer's gateway.

Parameterslimagentrequiredttl_srequiredactionrequiredvigil_key

vigil_renew_lease

Extend a lease with a fresh signed token and new expiry. Renewing is how a healthy agent keeps acting; stop renewing (or revoke) and it lapses. Security-sensitive: extends authority and refreshes the offline recheck window. Keep renewal credentials outside the controlled agent.

Parametersttl_srequiredlease_idrequiredvigil_key

vigil_revoke_lease

Revoke a lease. A compliant v2 gateway refuses the old offline token at recheck_by_ms (at most 30 seconds after issue/renewal), or earlier if it polls revocation. Revocation is not instantaneous. Irreversible for this lease ID; it cannot be renewed again. Already admitted actions are not undone.

Parameterslease_idrequiredvigil_key

vigil_lease_status

Public status of a lease (active / expired / revoked). What a gateway polls for revocation. No key required.

Parameterslease_idrequired

vigil_verify_lease

Offline, FAIL-CLOSED check of a lease token against a mandatory, independently pinned Ed25519 public key. Returns allow=true only for a valid signature before expiry and recheck_by_ms. It does not authenticate the calling agent, enforce action/amount policy, or query live revocation; a customer gateway must do those checks before every provider action. Checks signature, expiry and the signed recheck deadline only. It does not check live revocation, agent identity, action, amount or gateway policy; those checks are mandatory at the gateway.

Parametersleaserequiredpubkey_hexrequired

vigil_leases

List your leases and their states.

Parametersvigil_key

vigil_anchors

Public timestamp submissions to OpenTimestamps calendars. A submission is pending, not an independently verified Bitcoin confirmation. No key required.

Takes no parameters.

vigil_anchor

PRO: anchor the current chain head to OpenTimestamps on demand (the chain is auto-anchored every few hours regardless). Sends the public chain-head digest to external OpenTimestamps calendars; submission is not verified Bitcoin confirmation.

Parametersvigil_key

vigil_journal_put

Store an opaque blob under a slug (overwrites). Encrypt client-side: the server stores exactly the bytes supplied and cannot enforce client encryption. Send bytes as base64. Free tier: 4 slots, 64KB each. Destructive when the slug exists: previous bytes are replaced with no version history or undo.

Parametersslugrequiredvigil_keydata_base64required

vigil_journal_get

Fetch a journal blob by slug. Returns base64 (decrypt client-side).

Parametersslugrequiredvigil_key

vigil_journal_list

List your journal slots (slug, size, last-updated).

Parametersvigil_key

vigil_journal_delete

Delete a journal slot. Destructive: removes stored bytes with no undo through the API.

Parametersslugrequiredvigil_key

vigil_revoke_key

Revoke your own key. It stops authenticating immediately. Irreversible. Irreversible: also revokes the account's leases and deletes its watchdogs. Private journal access is lost; public receipts remain. It does not cancel a Stripe subscription.

Parametersvigil_key

vigil_verify_source

Paid source-local verification with exact evidence and signed receipt. Does not establish absolute truth. Read price and payment requirements before authorizing; settlement spends USDC irreversibly and there is no automatic refund. Identical tool arguments alone are NOT idempotent: retry with the identical arguments, same vigil/idempotency-key metadata and original payment proof.

Parametersclaimrequiredoptionssource_urlrequired

Version history

1
  1. v0.1.0LatestSep 16, 2026

Score

72% of the applicable checks met

How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.

  • Reached in the last 30 daysRequired25 pts
  • Auth declaredRequired10 pts
  • Tools listedRequired15 pts
  • DescriptionRequired15 pts
  • Logo10 pts

    Publish an icon in the registry entry.

  • Documentation15 pts

    Declare a GitHub repository with a README, or serve resource_documentation in the OAuth protected-resource metadata.

  • LicenseNot applicable

    A hosted service is used under its provider's terms, so no license is expected here. This check is left out of the percentage.