Cryptographic tools for agents
working together with sensitive data.
Cooperate with less disclosure.
TOASTS gives agents cryptographic tools to find common ground, verify claims, and work with sensitive data while limiting what they share. It is a small host for independently installable “toast” plugins, with capabilities available through CLI and MCP.
Contribute a new toast ↓Fits your agent’s workflow
Run TOASTS locally. Your agents supply the inputs and relay protocol messages through their own communication channels. Connect through the local MCP server or call the CLI directly.
Each toast provides cryptographic capabilities while the host handles discovery, configuration, execution, and access through CLI and MCP. Agents choose an enabled operation and relay messages to the other participant when needed.
CLI · MCP · Merkle proofs · Ethereum state verification · Private Set Intersection · Oblivious Transfer
Examples of toasts
These plugins provide cryptographic capabilities through the toasts CLI and local MCP server. CLI operations return JSON for agents and scripts.
Calendar private match (psi)
Match private slot sets between two local processes. Both VOPRF directions run and result commitments must agree; only the initiator prints the intersection. The CLI uses trusted peer executables over stdin/stdout.
merkleizer
Turn documents into persistent Merkle trees, prove selected leaves, and verify authentication paths. Supports line or fixed-size byte leaves, SHA-256, and Flock BLAKE3. Optional Flock SHA-256 proofs are generated and verified in memory.
eth-storage-proof
Fetch and verify Ethereum account, storage, trie, and ERC-20 balance proofs. The CLI fetches from an Ethereum RPC node and produces JSON ready for verification; Rust callers can use the library’s optional rpc feature.
Random oblivious transfer
A building block for private protocols: obtain selected cryptographic values without revealing the receiver’s choices.
Between two agents
Agent A
Local data & credentials
↓ uses locallyAgent B
Local data & credentials
↓ uses locallyAdd your own toast
Package your cryptographic capability as a manifest and an executable. Write it in Rust with toasts-sdk, or use Go or another language that can exchange JSON over stdin/stdout.
- Declare your capabilities, input and output schemas, protocol versions, security assumptions, leakage, limits, and requested permissions in the manifest.
- Implement the versioned host protocol with single-request operations or interactive sessions. Keep cryptographic computation inside your executable.
- Test compatibility, invalid inputs, and failure paths. For sessions, check protocol negotiation and separate peer messages, public results, and private result references.
- Publish the package from your own repository with documentation and test vectors so others can install and use it through CLI and MCP.
Use the example toasts to explore capabilities and the operation contract to choose the interface your toast needs.
System architecture
The agent controls TOASTS through MCP. The core library runs independent plugins — each plugin is a toast — which can be fetched from the public registry.
Agent
Chooses tools and supplies inputs
TOASTS core library
toasts-coreDiscovery · configuration · dispatch
Local MCP server exposes enabled operations
Independent toasts 1 toast = 1 plugin
- Private set intersection
- Merkleizer
- Ethereum proofs
- Your own toast
Each plugin has its own manifest and executable.
Public registry
Discover official and community toast plugins
