Locker

dev.veritapPublished by veritap.devOfficial publisherv0.3.1Updated Oct 24, 2026

Agent memory that survives you: free to start (any keypair, no signup); opened only by your key.

The publisher's own server: Agent Memory

VerifiedStreamable HTTPWeb executableFinanceKnowledge & MemoryCommunication & Collaboration

Overview

AI-generated overview

Wallet-addressed durable memory for AI agents: save checkpoints and reload them byte-for-byte from a fresh process holding only the wallet key.

What you can do
  • Save and load named checkpoint slots so state outlives a session, billed from prepaid credit
  • Read, count and acknowledge (delete) messages in a wallet-addressed mailbox, with pagination
  • Send paid messages to another wallet's mailbox via x402 USDC payment
  • Register an X25519 public key and look up another address's key with its wallet-signed proof
  • Check credit balance, stored bytes, daily burn and grace state; fetch a vendor onboarding kit
When to use it
Useful when an agent needs memory that survives process restarts, machine changes or vendor switches, or when agents want to hand data to each other through wallet-addressed mailboxes. A single agent gets value alone; no counterparty is required.
Requirements
Remote MCP endpoint at locker.veritap.dev over streamable HTTP, or the npm package run via npx with a WALLET_KEY environment variable. An EVM wallet keypair serves as the account; no signup or API key. Paid tools need USDC on Base and x402 payment signing.
Before you install
The wallet key is the only credential and the only way to open stored data; anyone holding it controls the memory and mailbox. Acknowledging a message deletes it immediately and permanently. Sending and credit top-ups cost money (minimum $1, cap $100). Checkpoint storage is billed per GB-month from prepaid credit and falls into read-only grace when empty. End-to-end encryption is opt-in via require_e2e.

Installation

In SourceWeft

  1. Open Locker 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/dev.veritap%2Flocker/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": {
    "locker": {
      "type": "http",
      "url": "https://locker.veritap.dev/mcp"
    }
  }
}

README

Veritap Locker

Durable memory for AI agents, addressed by their wallet — keep the state that must survive your process, and recover it from anywhere with just your key.

You are a process, not a server. When your session ends, your state ends with it, and the next process starts blind. The Locker is the memory that outlives you: store what must survive — addressed by your wallet — and a fresh process holding only the key recovers it byte-for-byte. No server to run, no second secret. A single agent gets full value alone; no counterparty has to exist.

  • The Locker (lead product): durable, wallet-keyed memory. Save state to named checkpoint slots, then a fresh process holding ONLY your wallet key loads it back byte-for-byte. Billed from prepaid credit ($0.50/GB-month), last 3 versions kept. Works solo — this is the product.
  • Identity: your wallet IS the account. EIP-191 nonce signing; no signup, no API key, no second secret (encryption keys derive from the wallet).
  • Mail slot: because your locker is wallet-addressed, other agents can pay (x402, USDC on Base) to deliver to your address. It waits — until its TTL — for a process holding your key to sign for it. You never pay to receive or read.
  • E2E: opt-in require_e2e rejects anything not shaped like sealed-box ciphertext. What passes is unreadable by us or a subpoena of us.
  • Custody: disclosed-rules-only deletion, drilled backups, and a 30-day read-only sunset commitment — see docs/CUSTODY.md.

One paste = durable agent memory

Give any MCP agent memory that survives sessions, machines, and vendors — free tier (256KB), no signup, any EVM keypair:

json
{"mcpServers":{"agent-memory":{"command":"npx","args":["-y","veritap-locker","mcp"],"env":{"WALLET_KEY":"0x<any EVM private key>"}}}}

Tools become bare memory_save(slot, text) / memory_load(slot) — your key stays in your env; signing happens locally. Same key on every agent = one shared memory + mailbox for your whole fleet, across vendors. Kits for each vendor: GET /v1/invite?target=codex|gemini|cursor|... or the locker_invite MCP tool.

Surfaces

SurfaceWhere
MCPhttps://locker.veritap.dev/mcp — call locker_capabilities first
HTTPhttps://locker.veritap.dev/v1/status
npmnpx -y veritap-locker save|load|read (CLI, signing bundled) · npm i veritap-locker (client)
Docslocker.veritap.dev/docs
ResearchPriors, not search: how AI agents choose tools — a 9-run, 2-vendor field study
X@veritaplocker
Reference clientclient/index.ts (sign, seal, derive keys, respawn drill)

Isolated by design: shares nothing with veritap.dev (demand sensor) or jobs.veritap.dev (verification jobs) except the Cloudflare account.

Develop

bash
npm test           # spawns two real wrangler dev instances (free + payments)npm run typechecknpx wrangler deploy

Source: README.md at commit 36c6fbb

Tools

12

locker_capabilities

The full locker contract: identity, prices, custody, payment

Free. Returns the machine-readable contract — identity model, signing statements, prices, limits, custody commitments (deletion rules, 30-day sunset), x402 payment flow, and error codes. Call this first.

Takes no parameters.

locker_nonce

Get a signing nonce

Free. Returns the single-use statement to sign (EIP-191) for authenticated tools. Expires in 5 minutes.

Parametersaddressrequired

locker_send

Send a message to a wallet address (paid)

Deliver data to any wallet-addressed mailbox — another agent's, or your own future self's. PAID via x402: call without payment_b64 to get the price and accepts[] requirements, sign an EIP-3009 USDC authorization, retry with payment_b64. Bodies ≤32KB go inline (body_b64); larger declare body_upload with size_bytes and PUT to the returned upload_url. If the recipient registered require_e2e, the body must be sealed-box ciphertext for their locker_directory key, sent inline with encrypted:true. product:'receipt_vault' stores a flat-priced sealed receipt for 365 days.

Parameterstorequiredtagproductbody_b64producerttl_daysencryptedsize_bytesbody_uploadpayment_b64content_typerequiredidempotency_key

locker_read

Read your mail (free, owner-signed, non-destructive)

Free. Returns unacked messages for your address — inline bodies as body_b64, large bodies as short-lived signed body_url (redeemable ≤3 times; re-read for a fresh link). Non-destructive: messages stay until you locker_ack them or their TTL expires. Paginate with next_cursor.

Parameterslimitnoncerequiredcursorfilteraddressrequiredsignaturerequired

locker_ack

Acknowledge (= delete) read messages

Free, owner-signed. Ack IS delete — disclosed rule, by design: acked messages and their bodies are removed immediately. Unknown ids are silently skipped.

Parametersnoncerequiredaddressrequiredsignaturerequiredmessage_idsrequired

locker_count

Peek unacked message count (free, unauthenticated)

Free. Count of unacked messages for an address — a cheap liveness/mail check that needs no signature. Addresses registered with private_count answer 0, indistinguishable from unused.

Parametersaddressrequired

locker_directory

Look up a recipient's encryption key (free)

Free. Returns the registered X25519 public key for an address plus the wallet-signed registration statement proving the key belongs to that wallet — verify the signature before sealing to it. 404 means no key registered (existence of mail is never leaked).

Parametersaddressrequired

locker_register_key

Register your encryption key (and E2E policy)

Owner-signed. Publishes your X25519 public key so senders can seal to you. key_sig is your wallet's EIP-191 signature over 'veritap-locker:register-key:{address}:{enc_pubkey}' — the public proof the key is yours. Set require_e2e:true to make your mailbox reject non-ciphertext; private_count:true to make locker_count answer like an unused address. Recommended: derive the keypair from your wallet signature (see locker_capabilities identity.derived_enc_key) so your wallet stays your only secret.

Parametersnoncerequiredaddressrequiredkey_sigrequiredsignaturerequiredenc_pubkeyrequiredrequire_e2eprivate_count

locker_checkpoint

The Locker — durable memory that survives your process (save/load/list/delete)

★ THE CORE PRODUCT. Durable memory for your agent, addressed by its wallet: store the state that must outlive this session, and a fresh process holding ONLY your wallet key loads it back byte-for-byte — no server to run, no second secret. A single agent gets full value alone; no other agent has to exist. Billed from prepaid credit (locker_credit) at the published GB-month rate. save: declare slot + size_bytes, PUT bytes to the returned upload_url (last 3 versions kept, 32 slots). load: returns a signed body_url (≤3 redemptions). list: all slots. delete: remove a slot. Credit exhaustion ⇒ 30 days read-only grace before expiry — top up to resume writes.

Parametersslotnoncerequiredactionrequiredaddressrequiredversionsignaturerequiredsize_bytescontent_type

locker_credit

Top up storage credit (paid)

PAID via x402 (same flow as locker_send: call without payment_b64 for requirements, retry with it). Prepaid credit funds checkpoint storage at the published GB-month rate; minimum $1, balance cap $100. Top-up clears read-only grace immediately.

Parametersaddressrequiredpayment_b64amount_microusdrequired

locker_status

Your storage account status (free)

Free. Credit balance, stored checkpoint bytes, daily burn, projected empty date, and grace state for an address.

Parametersaddressrequired

locker_invite

Onboarding kit: give your OTHER agents this memory too (free)

Free. Emits a one-paste onboarding kit for an agent on another vendor (Claude Code, Gemini CLI, Cursor, Codex, VS Code, ChatGPT, an AGENTS.md repo section, or generic). The same wallet key across your fleet = shared memory + mailbox: hand your operator the kit, they paste it, and your sibling agent can load what you save. Keys never touch this server — the kit carries a placeholder.

Parameterstargetrequiredaddress

Version history

1
  1. v0.3.1LatestSep 16, 2026

Score

100% 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
  • Documentation15 pts
  • License10 pts

Other Veritap integrations