How it works

One layer.
Two integration points.

No system changes required. Works with your existing flow. Mnemo sits beside your embedding step on insert and your retrieval step on read.

01The flow

embed → use → verify → decide.

Storage is optional. A vector database is not required.

input
embed
store
retrieve
verify

Expanded: input → embed → store optional → retrieve → verify → decision.

Input
Documents, queries, products, indicators. Whatever your pipeline already accepts.
Embed
Your model produces a vector. Mnemo returns a measurably perturbed watermarked copy and a vector_uid registered to your account.
Store (optional)
Store the watermarked copy anywhere that returns it unchanged, or skip storage entirely. No native connectors.
Retrieve
Your retriever queries the store, or your service hands the vector back directly.
Verify
Mnemo checks whether the vector resolves to an object registered to your account or namespace.
Decision
Your service uses verified results. Unverified results are excluded.
02SDK

Two calls in your application.

Wrap your embedding step with embed(). Wrap your retrieval step with verify(). Your model and your storage stay where they are.

embed()
Returns a watermarked copy of a freshly produced vector and its vector_uid. Store the watermarked copy.
WHEN
Once per ingest, after your model returns.
verify()
Checks whether a vector you read back resolves to an object registered to your account. Returns verified, confidence and vector_uid, or None when not verified.
WHEN
On retrieval, before the result reaches the model or the user.

Mnemo is the embedding-vector provenance and verification API at trymnemo.com. The official Python distribution is mnemo-protocol, imported as mnemo_sdk, and the official GitHub organization is MnemoProtocol.

pip install mnemo-protocol

SDK docs · PyPI: mnemo-protocol · GitHub: MnemoProtocol/mnemo-sdk · OpenAPI

import os
from mnemo_sdk import MnemoClient

client = MnemoClient(api_key=os.environ["MNEMO_API_KEY"])

# on insert
vec = model.embed(doc)
r = client.embed(vec, model_id="text-embedding-3-small")
store.upsert(r.vector_uid, r.watermarked_vector)

# on retrieve
for hit in store.query(q, top_k=5):
    check = client.verify(hit.values)  # None if not verified
    if check is not None and check.verified:
        ctx.append(hit)
03Trust Guardian

Verification for agents and services.

MCP support (Trust Guardian) is planned. Today, agents call the Mnemo HTTP API directly at api.trymnemo.com with no account required and pay $0.01 per verification with x402 on Base or MPP on Tempo. See the agent protocol.

Planned actions
mnemo.verify
Check whether a vector matches a trusted source registered in this workspace.
mnemo.embed
Register a vector before insert. Returns the registered vector and a source UID.
Flow
01 · Agent
Reads an embedding from the vector store or another service.
02 · Verify
Calls mnemo.verify through Trust Guardian.
03 · Result
Receives identity and confidence. Proceeds or stops.
04Deployment options

Run it where it fits.

Use via API
Multi-customer hosted Mnemo. Free Trial, Starter, Growth, and Scale plans. Get going in minutes.
Run inside your infrastructure
Enterprise option. Mnemo runs in your VPC. Deployment, SLA, and pricing scoped per engagement.
05See it in action

One embedding is verified. One is not.

Mnemo shows the difference before data moves through your system.

Identity is attached once at embed and checked when the vector is read back from your own stores and indexes. Verify checks whether the vector resolves to an object registered to your account or namespace; it does not judge whether the content is true or benign.

Example data · not a live API call
Verified
Statusqueued
verifiedqueued
Decisionqueued
Detail
vector_uidqueued
Decisionqueued
Not verified
Statusqueued
verifiedqueued
Decisionqueued
Detail
vector_uidqueued
Decisionqueued
Checked at read time
Verified
created
12:01:04
embedded
12:01:05
indexed
12:01:08
stored
12:01:12
retrieved
12:01:15
verified
12:01:15
Not verified
created
12:02:11
embedded
12:02:12
indexed
12:02:16
stored
12:02:21
retrieved
12:02:25
verified
12:02:26

Start verifying in minutes.

Create a workspace. Register a service. Issue a credential. Run embed. Run verify.