Vigil — an outside witness for AI agents
by vigilnotary.com in Security & trust
Agent leases, signed receipts, watchdogs, and optional paid source-verification evidence.
https://vigilnotary.com/mcp
Last 30 days
- Uptime
- 100%
- Response time
- 131 ms typical, 131 ms slowest 5%
- Last check
- 5 h ago
- Next check
- in 1 h
How to call it
Add it to any MCP client that supports remote servers.
{
"mcpServers": {
"vigil-an-outside-witness-for-ai-agents": {
"type": "http",
"url": "https://vigilnotary.com/mcp"
}
}
}26 tools
- vigil_info
Service description, the Ed25519 signing pubkey to verify receipts against, current chain head, and free-tier limits. No key required.
- 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.
- vigil_pricing
The plans and per-tier limits (free, dev, pro). No key required.
- vigil_usage
Your current tier, its limits, and how much you've used today. Requires your 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 t
- vigil_get_receipt
Fetch a receipt by serial number. Public — anyone can read any receipt.
- 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.
- vigil_chain
Read a range of receipts to audit chain continuity. Max 1000 per call.
- 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 r
- 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.
- vigil_watchdog_status
Read a watchdog's state: interval, last beat, whether it is overdue, fired, or exhausted.
- vigil_delete_watchdog
Remove a watchdog. Destructive: deletes its configuration and stops future alerts. No undo or restoration of the previous timer is provided.
- 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 (gua
- 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.
- 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
- vigil_lease_status
Public status of a lease (active / expired / revoked). What a gateway polls for revocation. No key required.
- 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 revocat
- vigil_leases
List your leases and their states.
- vigil_anchors
Public timestamp submissions to OpenTimestamps calendars. A submission is pending, not an independently verified Bitcoin confirmation. No key required.
- 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.
- 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 versi
- vigil_journal_get
Fetch a journal blob by slug. Returns base64 (decrypt client-side).
- vigil_journal_list
List your journal slots (slug, size, last-updated).
- vigil_journal_delete
Delete a journal slot. Destructive: removes stored bytes with no undo through the API.
- 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.
- 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 idempoten
Security scan
- No findings. We scan names, descriptions and tool definitions for hidden instructions and other prompt-injection patterns.
Recent checks
| When | Result | HTTP | Time |
|---|---|---|---|
| 5 h ago | Passed | 200 | 139 ms |
| 15 h ago | Passed | 200 | 131 ms |