Delivery

MCP · API · SDK · CLI.

Every VerifAI capability, exposed the way your team prefers to work. Same evidence layer under all four surfaces.

MCP

Model Context Protocol server

Point Claude Desktop, Cursor, Zed, or any MCP-capable client at vryf-mcp and get every VerifAI capability as first-class tools — with a verified receipt on every call.

# claude_desktop_config.json
{
  "mcpServers": {
    "vryf": {
      "command": "npx",
      "args": ["-y", "@vryf/mcp"],
      "env": { "VRYF_API_KEY": "sk_live_..." }
    }
  }
}
API

REST + streaming HTTP

One endpoint. Bearer auth. Streaming when it helps. Every response ships with a VeriStamp header carrying the check digit and the evidence file id.

curl https://api.vryf.ai/v1/chat/completions \
  -H "Authorization: Bearer $VRYF_KEY" \
  -H "X-Verify: on" \
  -d '{ "model": "anthropic/claude-sonnet-4.5",
        "messages": [{"role":"user","content":"..."}] }'
SDK

TypeScript · Python · Go

Typed clients that mirror the API 1:1. Auto-retry, streaming iterators, verified receipts as first-class objects. Tree-shakable in the browser.

import { VryfClient } from "@vryf/sdk";
const vryf = new VryfClient({ apiKey: process.env.VRYF_KEY });
const res = await vryf.chat.create({
  model: "openai/gpt-5",
  messages: [{ role: "user", content: "Summarise this PDF" }],
  verify: true,
});
console.log(res.veriStamp.checkDigit);
CLI

vryf, the command line

Explore models, run evals, replay an evidence file, or ship a new concierge — all from the terminal. Piped output is JSON by default.

$ vryf ask "How do I stay GDPR-compliant?"
$ vryf run --evidence file_abc123.json --replay
$ vryf models list --provider anthropic
$ vryf concierge deploy ./site.yml

One evidence layer under all four surfaces.