⚡ Quick Start

From zero to verified in 5 minutes.

Prerequisites
Node.js 18+ and npm. A government-issued ID and a camera are required for the verification step.

Step 1 — Install the CLI

npm install -g soulprint
# or run without installing:
npx soulprint --version

Step 2 — Install local dependencies

Soulprint uses on-device OCR and face recognition. Install them once:

npx soulprint install-deps
# Downloads: tesseract (OCR), InsightFace model (~200 MB)
# Nothing is uploaded — everything runs locally

Step 3 — Verify your identity

npx soulprint verify-me

The interactive CLI will guide you through:

  1. Photograph or upload your government ID (front side)
  2. Take a selfie or upload a photo for face matching
  3. Review extracted data (name, DOB, document number — never sent anywhere)
  4. Generate a privacy-preserving proof
  5. Receive your signed SPT token
Privacy first
All biometric processing happens on your device. No photos, no OCR data, and no identity details leave your machine. Only the proof hash is shared with validator nodes.

Step 4 — Check your token

npx soulprint show

Example output:

DID:        did:soulprint:abc123...
Score:      72/100
  Identity: 52/80  (email ✓  document ✓  face_match ✓)
  Reputation: 10/20 (neutral — no attestations yet)
Expires:    2026-08-24T15:00:00Z
Issuer:     soulprint-cli/0.1.3

Step 5 — Integrate with an MCP server

import { requireSoulprint } from "soulprint-mcp";

server.tool(
  "my-protected-tool",
  requireSoulprint({ minScore: 60 }),
  async (args, ctx) => {
    const { did, score } = ctx.soulprint;
    return { message: `Hello verified human (score: ${score})` };
  }
);

Any client whose x-soulprint-token header has a score ≥ 60 will be allowed through. Others receive a 403.

What's next?