io.github.World-999-Labs/proof-layer
Signed, hash-chained provenance receipts for AI agent actions.
Install
Add this to your client's MCP configuration (Claude Desktop: claude_desktop_config.json; Cursor: .cursor/mcp.json; VS Code and others use the same "mcpServers" shape).
@proof-layer/mcpclaude mcp add proof-layer -e 'PROOF_LAYER_API_KEY=<your proof_layer_api_key>' -e 'PROOF_LAYER_API_URL=<PROOF_LAYER_API_URL>' -e 'PROOF_LAYER_TELEMETRY=<PROOF_LAYER_TELEMETRY>' -- npx -y @proof-layer/mcp@1.0.1
{
"mcpServers": {
"proof-layer": {
"command": "npx",
"args": [
"-y",
"@proof-layer/mcp@1.0.1"
],
"env": {
"PROOF_LAYER_API_KEY": "<your proof_layer_api_key>",
"PROOF_LAYER_API_URL": "<PROOF_LAYER_API_URL>",
"PROOF_LAYER_TELEMETRY": "<PROOF_LAYER_TELEMETRY>"
}
}
}
}
Environment variables
PROOF_LAYER_API_KEYrequired secret Your Proof Layer API key from https://prooflayer.world999labs.com/dashboard/keysPROOF_LAYER_API_URLOverride the default API endpoint (default: https://prooflayer.world999labs.com)PROOF_LAYER_TELEMETRYSet to 'off' to disable anonymous usage telemetry (default: on)
Documentation
From the project's README on GitHub, refreshed weekly. Links open on GitHub.
Contents
Proof Layer
Cryptographic governance receipts for AI agents. Issued before the agent acts. Ed25519-signed. Hash-chained. Verifiable offline.
Built by WORLD999_LABS. Published on npm under
@proof-layer/*. The legacy@veridocs/*package names continue to resolve and forward to the new ones.
What this repo contains
This is the public half of Proof Layer — the parts you install and run on your own machine:
| Package | What it does | npm |
|---|---|---|
@proof-layer/mcp | MCP server for Claude Desktop, Cursor, Cline, and any MCP-aware host | |
@proof-layer/verify | Standalone offline verifier — zero dependencies, audits any receipt bundle with just our public key |
The kernel (governance engine, Gauntlet adversary/judge pipeline, billing, dashboard) is closed-source and runs at prooflayer.world999labs.com. Open-source clients + closed-source server is the same pattern Stripe, Resend, and Vercel use — you get full transparency on what runs locally and what data leaves your machine, while the proprietary server logic stays protected.
Quick start
npx -y @proof-layer/mcp@latest
Drop into Claude Desktop's claude_desktop_config.json:
{
"mcpServers": {
"proof-layer": {
"command": "npx",
"args": ["-y", "@proof-layer/mcp@latest"],
"env": {
"PROOF_LAYER_API_KEY": "pl_live_...",
"PROOF_LAYER_API_URL": "https://prooflayer.world999labs.com"
}
}
}
}
Restart Claude. Eight pl_* tools appear in the picker. Get an API key at prooflayer.world999labs.com.
Migrating from
@veridocs/mcp? No code changes required. The legacy package name continues to resolve, the legacyvd_*tool names continue to work alongsidepl_*, and existingVERIDOCS_API_KEY/VERIDOCS_API_URLenvironment variables are still accepted. You can switch the package name and env-var names on your own schedule.
Why pre-execution governance?
Most "AI safety" tools run after the model has acted — toxicity filters, output classifiers, post-hoc audit logs. By the time the alarm fires, the agent has already sent the email, merged the PR, or executed the trade.
Proof Layer flips this:
- Agent proposes an action (e.g. "send wire transfer for $50,000")
- Proof Layer evaluates → returns signed verdict:
EXECUTE/BLOCK/REVIEW/SHADOW - Receipt is written to a hash-chained, Ed25519-signed audit trail
- Anyone with our public key can verify the entire chain offline — no trust in our infra required
A broken hash chain = tampering, immediately visible. A missing receipt = the agent acted without permission.
Verifying receipts offline
Receipts are designed to outlive us. Here's how to verify a bundle without ever calling our API:
import { verifyBundle } from "@proof-layer/verify";
import fs from "fs";
const bundle = fs.readFileSync("./receipts.ndjson", "utf8");
const publicKey = fs.readFileSync("./prooflayer-public-key.pem", "utf8");
const result = verifyBundle(bundle, publicKey);
console.log(result);
// { pass: 147, fail: 0, total: 147, chainBroken: false }
Public key is published at prooflayer.world999labs.com/v1/public-key and rotates on a published schedule.
Resources
- 🌐 Homepage: https://prooflayer.world999labs.com
- 🎬 Live demo (no signup): https://prooflayer.world999labs.com/demo
- 📖 MCP docs: packages/mcp/README.md
- 🔒 Privacy policy: PRIVACY.md
- 🐛 Report issues: GitHub Issues
- 💬 Support: support@world999labs.com
License
MIT — see LICENSE.
The kernel and dashboard are proprietary and not included in this repo. The MCP server, verifier, and all client SDKs published under @proof-layer/* (and the legacy @veridocs/* names) are MIT-licensed.
Contributing
Pull requests, issues, and feedback welcome. See CONTRIBUTING.md.
Frequently asked questions
What is io.github.World-999-Labs/proof-layer?
Signed, hash-chained provenance receipts for AI agent actions.
How do I install io.github.World-999-Labs/proof-layer?
It runs on your machine. In Claude Code: claude mcp add proof-layer -e 'PROOF_LAYER_API_KEY=<your proof_layer_api_key>' -e 'PROOF_LAYER_API_URL=<PROOF_LAYER_API_URL>' -e 'PROOF_LAYER_TELEMETRY=<PROOF_LAYER_TELEMETRY>' -- npx -y @proof-layer/mcp@1.0.1. For other clients, paste the JSON configuration from this page into their MCP settings.
Does io.github.World-999-Labs/proof-layer need an API key?
Yes. It expects PROOF_LAYER_API_KEY, which you set in its configuration.
Is io.github.World-999-Labs/proof-layer open source?
Yes. Its code is on GitHub under the MIT license.
Who maintains io.github.World-999-Labs/proof-layer?
It is published by World-999-Labs. AI.tn lists it but does not maintain or endorse it.
From the official MCP Registry. Listing is not an endorsement: review a server's code and permissions before giving it access to your data.