Alpha · Devnet · Your keys, not ours

Notes that stay yours.
Forever.

End-to-end encrypted, local-first, with optional blockchain-backed proof of authorship. Your data stays on your device — even we can't read it.

Download for Mac

Free to start · No account required · You hold the keys

zkpnote.com · Encrypted
Local

Whitepaper v0.5

Proved on Solana · tx:7A25…QNRc
Saved · Encrypted on your device · 0.3s ago

zKPnote is a local-first, end-to-end encrypted notebook with optional on-chain proof of authorship. The server never sees plaintext — not even us.

Notes are encrypted with XChaCha20-Poly1305 keys derived from your seed phrase. Sync works across devices without handing us your content.

const key = deriveFromSeed(phrase);

Built on open standards

SolanaNext.jsSupabaseYjs CRDTlibsodiumAnchor

Anatomy of one note

What you write.
What the wire carries.

Here's the same note you just wrote, shown twice — once on your machine, once as it reaches our database. Nothing in the second column is readable. Ever. Not by us, not by our backup provider, not by a subpoena.

On your device~/.zkpnote/vault.db

Q2 strategy — agent marketplace

Edited · 2 min ago

If the wedge is private context, the moat is the same data that can't be trained on. Two bets —

  • MCP endpoint ships before Dec so Claude writes direct to vault
  • Marketplace licensing deal with Helius for on-chain proofs

Nobody should see this but me. Not even Supabase.

On our serversnotes.rows[184]sealed
nonce
dK3p9Fm8vT6qX2nL4zR7
ciphertext
8f2Ja0mK7x9Lq3R5vT1wB4nD6pH0cF8gI2kM5oQ7sU9wY1zA3bC5dE7fG9hI1jK8f2Ja0mK7x9Lq3R5vT1wB4nD6pH0cF8gI2kM…
auth tag
aB3cD4eF5gH6iJ7kL8mN
No title. No body. No metadata we can read.
Optional · On-chain proof

If you tap Prove, this is what Solana records.

A hash of the ciphertext above, signed by your wallet, anchored to a specific slot. Anyone can replay it. Nobody can backdate it.

signer3zT6…your_pubkey
data_hash7b8a…sha256(ciphertext)
slot287,461,903
time2026-04-16 14:23 UTC
tx5M3Q…QNRc

The sealed envelope above is decrypted locally the moment you open the note, using a key your passphrase derives on this machine via BIP-39 → SLIP-0010. No secret material leaves the device. A forgotten passphrase means permanent loss — that's the cost of real zero-knowledge, and we won't pretend otherwise.

What's actually different

Private note apps ask you to trust them.
zKPnote doesn't need you to.

Your passphrase derives a key on your device. That key wraps every note in XChaCha20-Poly1305 ciphertext before sync touches the wire. We store opaque bytes; you hold the only thing that can turn them back into words.

Encrypted before it leaves your keyboard.

Every character you type is wrapped with a key your seed phrase produces on this machine. Supabase, Solana, and us only ever handle the sealed envelope. Lose the phrase and the ciphertext is inert — including to us.

seed → BIP-39
SLIP-0010 Ed25519
XChaCha20-Poly1305
ciphertext → anywhere
Solana

A receipt, not a promise.

Stamp a note and we write a SHA-256 hash of the ciphertext, your wallet pubkey, and the slot time to the chain. Anyone can replay the transaction — we can't backdate it, you can't disavow it.

See a verifier run
Desktop only

No server, no signal, still works.

The zKPnote desktop app for macOS keeps your vault on a local SQLCipher database. Open a note on a plane, in a SCIF, after we've been offline for a week. The web app still needs a connection; the desktop doesn't.

Download desktop beta
Export

Plain markdown, always.

Cmd-Shift-P → Export vault. You get a directory of `.md` files that opens in anything — Obsidian, VS Code, a text editor from 1998. No lock-in, ever.

MCP

Let Claude work your notes — without leaking them.

zKPnote exposes an MCP endpoint that runs inside your session. Agents save, search, and retrieve notes using your key. Nothing routes through a third-party SaaS.

Marketplace

Sell or license a note for SOL.

Prove you wrote it, list it at a price, settle peer-to-peer on Solana. The buyer gets decrypted access to that one note; the rest of your vault stays dark.

Browse marketplace

How we compare

We only win a few boxes — but the ones that matter for ownership and proof. Where competitors win, we say so.

Capability
zKPnote
NotionEvernoteObsidian
End-to-end encrypteddefaultpaid add-onplugin only
Local-first desktop app
Syncs across devicesE2EE syncpaid/manual
Proof of authorship on-chain
Plain-markdown exportpartial
Sell / license notes peer-to-peer
Agent / MCP endpoint

Notion, Evernote, and Obsidian are trademarks of their respective owners. Capability snapshot as of 2026; verify directly with each vendor.

For developers & agents

An encrypted notebook your agents can write to.

  • Local-first MCP endpoint for Claude, Cursor, and custom agents
  • TypeScript SDK + Rust client for the desktop app
  • Zero-knowledge: agents read and write your notes without hitting a third-party SaaS
agent.ts
// Claude agent writing to zKPnote via MCP
const mcp = new zKPnoteMCP({
  seedPhrase: process.env.ZKP_SEED, // derives encryption key
});

await mcp.save_note({
  title: "Design review — v0.5",
  content: "## Decisions\n- RSC for marketing\n- MCP for agents",
  folder: "Agent Logs",
  tags: ["design", "2026"],
});

// The server never sees plaintext. Ever.
Use case · AI research workflow

“Writing research memos I actually don't want training a stranger's model — without losing the speed of a normal note-taking app.”

zKPnote lets knowledge workers draft, iterate, and timestamp proprietary thinking end-to-end encrypted, with an on-chain receipt when it matters. No lock-in: everything exports to plain markdown any time.

Named user case studies will replace this callout as alpha testers come online.

FAQ

The questions new users ask us first.

Your notes. Your keys.
Forever.

Start local-only in under 30 seconds. Opt into sync and on-chain proof when you're ready.

Download for Mac

End-to-end encrypted · No account required · You hold the keys

Download for Mac